Simon Ser
ab924064f2
scene: drop wlr_scene_set_presentation()
1 year ago
Simon Ser
d68ba9d6c2
presentation-time: drop wlr_presentation arg
...
There can only be a single presentation-time global advertised to
clients, this it's unnecessary to pass around the wlr_presentation
pointer.
1 year ago
Simon Ser
2eb225236e
util/transform: add wlr_output_transform_coords()
...
We hand-roll this in multiple places.
1 year ago
Simon Ser
9e702e9cfe
util/transform: move over wl_output_transform helpers
...
These aren't really tied to wlr_output.
1 year ago
Alexander Orzechowski
d1ddd4ca3a
wlr_scene_surface: Introduce scene_surface_set_clip
1 year ago
Alexander Orzechowski
c6d356648c
set_buffer_with_surface_state: Take whole surface struct
1 year ago
Alexander Orzechowski
33b437d574
wlr_scene: Amend scene_buffer.point_accepts_input to take coordinate pointers
...
The pointers mean that we can mutate them. This will be useful later
so we can hide details from the compositor when we clip subsurface trees.
1 year ago
Leonardo Hernández Hernández
4de9c9c47f
scene: send wl_surface.preferred_buffer_scale
1 year ago
Simon Ser
67447d6cb4
presentation-time: add separate helper for zero-copy
...
The backend is not able to tell whether a surface is being
presented via direct scan-out or not. The backend will set
ZERO_COPY if the buffer submitted via the output commit was
presented in a zero-copy fashion, but will no know whether the
buffer comes from the compositor or the client.
1 year ago
Simon Ser
fe84bfc8d9
scene: add wlr_scene_output_sample_event
...
This contains the output and a bool indicating direct scan-out.
1 year ago
Simon Ser
88942d43fd
scene: rename output_present event to output_sample
...
Using "present" is confusing here: the event is emitted when the
buffer is being sampled to be displayed on an output, not when it's
being presented on-screen.
Rename to match the presentation-time terminology.
1 year ago
Alexander Orzechowski
323f0b94db
wlr_scene: Cleanup header includes
...
We don't need to pull wlr_compositor.
2 years ago
Kenny Levinsen
1225f81a6a
scene: Add fractional scale handling
2 years ago
Alexander Orzechowski
7b32c25a4f
wlr_scene: Rename wlr_scene_surface_from_buffer
...
This renames it to wlr_scene_surface_try_from_buffer to be more clear
that this function can return NULL. This is inline with the rest of
wlroots[1].
[1] https://gitlab.freedesktop.org/wlroots/wlroots/-/merge_requests/3991
2 years ago
Alexander Orzechowski
ea40ba4f6a
wlr_scene: Fix texture reuse
...
Add private interface to ignore a buffer that's locking a client_buffer
for damage tracking. This should eventually be replaced by wlr_raster.
2 years ago
Alexander Orzechowski
2e06ff5688
wlr_scene: Clarify surface commit frame events
2 years ago
Alexander Orzechowski
342830e99c
wlr_scene/surface: Hook through opaque metadata
2 years ago
Alexander Orzechowski
ccd0f85c2a
wlr_scene: Only allow parenting on a wlr_scene_tree
3 years ago
Alexander Orzechowski
dc9bc5683a
wlr_scene: Refactor wlr_scene_surface to be a helper on top of wlr_scene_buffer
3 years ago