Simon Ser
738bbf01ee
cursor: add support for linux-drm-syncobj-v1
2024-08-06 17:37:06 +00:00
Simon Ser
fe429b2463
Switch to stable tablet-v2 protocol
...
References: https://gitlab.freedesktop.org/wayland/wayland-protocols/-/merge_requests/284
2024-06-27 18:04:00 +00:00
Simon Ser
78c76ddd09
backend: add wlr_backend_{test,commit}()
2024-03-14 22:03:10 +00:00
Kirill Primak
811ca199c4
xdg-shell: drop automatic surface configuration
...
Compositors now are expected to wait for an initial commit by checking
wlr_xdg_surface.initial_commit on every surface commit and send
(schedule) configure events manually.
2024-02-06 13:48:00 +00:00
Simon Ser
4b3553409a
xdg-shell: use wlr_surface_synced for popups
2023-12-25 11:47:15 +01:00
Simon Ser
9201431c29
xdg-shell: use wlr_surface_synced for toplevel
2023-12-25 11:47:15 +01:00
Simon Ser
c31ca04264
output: drop stale references to wlr_output_attach_render()
...
It turns out we forgot about the function declaration in the header.
Also some docs were still referring to that function.
Move the wlr_output_attach_render() docs to
wlr_output_begin_render_pass().
2023-11-30 16:52:11 +01:00
Kirill Primak
86b2cac921
Add missing type declarations in headers
2023-11-14 18:44:53 +00:00
Alexander Orzechowski
d1ddd4ca3a
wlr_scene_surface: Introduce scene_surface_set_clip
2023-11-14 17:27:08 +00:00
Kirill Primak
a09d649439
docs: replace the less commonly used "::" with "."
2023-10-02 22:10:16 +03:00
Rose Hudson
83af3202f9
output: defer fake present events until after commit
...
Since headless and wayland-without-presentation-feedback were firing
present inside their commit impls, present was getting fired before
commit, which is cursed. Defer this with an idle timer so that commit
handlers can run before present handlers.
2023-10-02 12:34:06 +00:00
Simon Ser
e5fc8cd4c7
output: trigger frame/present events on all commits on enabled output
...
Up until now, frame/present events were only triggered when the
user submitted a buffer. Change the wlr_output API so that these
events are triggered when any commit is applied on an enabled
output.
Closes: https://gitlab.freedesktop.org/wlroots/wlroots/-/issues/3708
2023-08-23 15:42:22 +00:00
Kirill Primak
bd5c4f4a4a
xdg-shell: rework roles
2023-08-21 16:30:29 +00:00
Kirill Primak
f0cc712af1
xdg-shell: don't return anything from create_xdg_surface()
2023-08-21 16:30:29 +00:00
Simon Ser
9b8cd1f5d6
buffer: make wlr_client_buffer functions private
...
We want to eventually remove this. Let's make sure compositors
don't start using either of these functions.
2023-08-21 15:45:10 +00:00
Simon Ser
000081db19
cursor, output: apply viewport to cursor
...
Instead of passing the scale, pass the source and destination
boxes.
Closes: https://gitlab.freedesktop.org/wlroots/wlroots/-/issues/3676
2023-07-17 14:55:22 +00:00
Simon Ser
b625a13156
output: attach buffer to state in output_ensure_buffer()
2023-06-20 16:33:41 +00:00
Kirill Primak
3dc646ea88
Add some missing includes/declarations
2023-06-05 21:06:19 +00:00
Kirill Primak
49e9be62ae
subcompositor: consider mapping on parent map
...
Fixes: https://gitlab.freedesktop.org/wlroots/wlroots/-/issues/3654
2023-06-03 14:36:41 +00:00
Kirill Primak
b0437fc416
xdg-shell: use unified map logic
2023-06-02 17:26:18 +00:00
Alexander Orzechowski
90d08f8f1c
wlr_drm_format: Rework wlr_drm_format_intersect
...
Now it takes a reference to a destination format
2023-05-11 18:24:43 +02:00
Simon Ser
b64e7e88bf
output: add output_cursor_set_texture()
2023-05-06 17:48:56 +00:00
Andri Yngvason
00489b11a0
seat: Provide dummy resources for inert seats
2023-04-18 08:29:30 +00:00
Alexander Orzechowski
b1e38fc7ea
output: Drop output_is_direct_scanout
2023-04-06 22:39:08 +02:00
Kirill Primak
a3489f2c64
xdg-shell: improve unmapping logic slightly
2023-03-12 11:09:36 +00:00
Simon Ser
7215bd1e0f
output: expose wlr_output_state_set_buffer()
2023-02-21 09:43:43 +00:00
Simon Ser
6c277e3c39
buffer: drop wlr_shm_client_buffer
...
It's been superseded by wlr_shm.
2022-11-15 16:30:00 +00:00
Kirill Primak
acd5a64fd1
xdg-shell: use role object destroy handler
2022-11-06 17:00:00 +03:00
Simon Ser
8e8b9a7217
output: fix back buffer checks
...
The back buffer is no longer set at commit time since 0556aa0c59
("output: rejigger attach/clear for back buffer").
Instead, check whether the buffer belongs to the output swapchain.
This is more robust.
Closes: https://gitlab.freedesktop.org/wlroots/wlroots/-/issues/3496
2022-09-21 16:18:16 +02:00
Simon Ser
69c47717c2
buffer: split into multiple files
...
wlr_buffer.c is difficult to read because it contains a mixed bag
of unrelated things: base buffer type, buffer implementations,
buffer resource factory, and client buffer.
Split each of these into their own file.
2022-09-16 18:32:22 +02:00
Kirill Primak
3abedaf211
subcompositor: move+rename subsurface_parent_commit()
2022-09-12 18:44:36 +00:00
Simon Ser
29291cb47c
render/texture: drop wlr_texture_is_opaque
...
Whether a texture is opaque or not doesn't depend on the renderer
at all, it just depends on the source buffer. Instead of forcing
all renderers to implement wlr_texture_impl.is_opaque, let's move
this in common code and use the wlr_buffer format to know whether
a texture will be opaque.
2022-06-16 14:43:24 +02:00
Simon Ser
96b594110d
matrix: remove wlr_matrix_projection()
...
69477051cc
("matrix: deprecate wlr_matrix_projection") marked it
as deprecated. 1 year later, we can now remove it from our public
API.
2022-06-08 19:27:36 +00:00
Isaac Freund
0deef6fe44
output: fix leak of empty back buffer lock
...
This refactors output_ensure_buffer() to not mutate the state passed,
making the previous subtle behavior much more explicit.
Fixes: d483dd2f
("output: add wlr_output_commit_state")
Closes : #3442
2022-06-07 15:30:08 +00:00
Simon Ser
9e25d3074d
output: pass wlr_output_state to rendering functions
...
No functional change.
2022-05-30 11:34:57 +02:00
Simon Ser
927661d246
output: pass wlr_output_state to output_pending_resolution
2022-05-30 11:34:57 +02:00
Kirill Primak
4a968576e4
xdg-popup: add proper configure flow
2022-05-27 13:31:30 +00:00
Alexander Orzechowski
5f56246571
wlr_scene: Pull scene_node_get_root into a private header
...
We will need this for surface emulation on buffers.
2022-05-19 14:24:05 -04:00
Simon Zeni
9a17200446
types/wlr_keyboard: uniformize events name
2022-03-17 18:16:14 +00:00
Kirill Primak
5879e77d68
xdg-positioner: rename structs
...
To be consistent with other wlr_xdg_* structs,
wlr_xdg_positioner_resource is renamed to wlr_xdg_positioner and made
public, and wlr_xdg_positioner is renamed to wlr_xdg_positioner_rules.
Functions which operated on wlr_xdg_positioner were renamed and updated
accordingly.
2022-02-21 17:26:51 +00:00
Kirill Primak
b5b15b2625
xdg-{toplevel,popup}: extract destructors
2022-02-21 17:26:51 +00:00
Kirill Primak
88f3040438
xdg-popup: destroy popup-less grab
...
This also fixes a seat destruction segfaulting if xdg-shell was
destroyed first.
2022-02-02 21:06:12 +03:00
Kirill Primak
c35d14ecfa
xdg-shell: extract role-specific unmap logic
2022-02-02 21:06:12 +03:00
Kirill Primak
27c8865a4d
xdg-shell: unify function arguments' names
...
`wlr_xdg_surface`s are now named "surface" everywhere, and
`wlr_surface`s are called "wlr_surface".
2022-02-02 21:06:12 +03:00
Kirill Primak
41412cadbe
xdg-popup: fix functions' main argument type
...
With this commit, `wlr_xdg_popup_*()` functions now expect
a `wlr_xdg_popup` instead of a `wlr_xdg_surface`.
2022-02-02 21:06:12 +03:00
Kirill Primak
affe0d8713
xdg-toplevel: fix functions' main argument type
...
With this commit, `wlr_xdg_toplevel_*()` functions now expect
a `wlr_xdg_toplevel` instead of a `wlr_xdg_surface`.
2022-02-02 21:06:11 +03:00
Kirill Primak
ee52c32915
xdg-shell: fix create_xdg_popup() param type
2022-02-02 21:04:59 +03:00
Kirill Primak
05dd990e43
xdg-shell: rename surface role handlers
2022-02-02 21:04:59 +03:00
Kirill Primak
50827ed7f5
surface: improve role precommit hook
...
Now the role precommit hook is called before the commit, not on
wl_surface.commit request, and takes a state which is to be applied.
2022-01-13 15:15:54 +03:00
Kirill Primak
36b5d5888c
surface: move impl to types/wlr_{sub,}compositor.c
2022-01-13 10:06:41 +00:00