Simon Ser
08a06a7b6b
Add debug flag to re-enable wl_drm
...
7e69a7076f
("Drop wl_drm") has dropped wl_drm, however a lot of
software wasn't quite ready for this (Xwayland, libva, amdvlk).
Keep wl_drm disabled by default to pressure the wl_drm phase-out,
but add a -Dlegacy-wl-drm flag for users to restore the previous
behavior in the meantime.
References: https://github.com/swaywm/sway/issues/7897
11 months ago
Alexander Orzechowski
5fc85c5066
scene_graph: port wlr_forgein_toplevel_management output enter/leave events
11 months ago
Alexander Orzechowski
7c635b61fe
remove damage debug options
...
Now that we use wlr_scene, wlroots handles these. If available use
the wlroots debug options instead.
11 months ago
Alexander Orzechowski
9da295c11f
scene_graph: Implement toplevel clipping
11 months ago
Alexander Orzechowski
5f0801b6f2
container: Don't track outputs
...
The scene graph abstraction does this for us
11 months ago
Alexander Orzechowski
1e018e72b4
Delete old damage tracking code
...
The new scene graph abstraction handles this for us.
11 months ago
Alexander Orzechowski
06ad734e70
scene_graph: Port view saved buffers
11 months ago
Alexander Orzechowski
6e5fc4c2aa
scene_graph: Port xwayland
11 months ago
Alexander Orzechowski
b38ed8b479
scene_graph: Port xdg_shell
11 months ago
Alexander Orzechowski
08c484f46f
transaction: ready signals will return success bools
11 months ago
Alexander Orzechowski
6d7b1321db
scene_graph: Port container server side decorations
11 months ago
Alexander Orzechowski
188811f808
scene_graph: Port layer_shell
11 months ago
Alexander Orzechowski
5b8b505af5
input: Query scene graph for relevant surface/node intersections
11 months ago
Alexander Orzechowski
946fc80945
Introduce sway_text_node
...
This is a helper on top of a wlr_scene_buffer that will handle text
rendering for us.
11 months ago
Alexander Orzechowski
869baff252
renderer: Remove in favor of scene_graph
11 months ago
Alexander Orzechowski
bac3ab5526
seat: Remove dead seatop_render function
11 months ago
Alexander Orzechowski
9a57966606
scene_graph: Port ext_session_v1
11 months ago
Alexander Orzechowski
c640c3015f
scene_graph: Port seat drag icons
11 months ago
Alexander Orzechowski
9c17cba0b2
renderer: Render scene_graph
11 months ago
Alexander Orzechowski
0e1a02bf0a
scene_graph: Introduce sway_scene_descriptor
...
Across a wayland compositor, there are multiple shells: It can be
a toplevel, or a layer_shell, or even something more meta like a drag
icon or highlight indicators when dragging windows around.
This object lets us store values that represent these modes of operation
and keep track of what object is being represented.
11 months ago
Alexander Orzechowski
1eb16d1367
scene_graph: Maintain `wlr_scene_node`s for the sway tree.
11 months ago
Alexander Orzechowski
dbd2fbf430
view: init function should return a success bool
11 months ago
Alexander Orzechowski
b4d7e84d38
desktop: Rename layers to shell_layers
...
This code will be deleted later, but for the time being rename
it so it doesn't conflict with future properties.
11 months ago
Simon Ser
95265fba59
input: reconfigure send_events on output hotplug
...
Closes: https://github.com/swaywm/sway/issues/7890
12 months ago
Billli11
0aceff7469
Remove wlr_presentation in sway_server struct
...
It is no longer in use.
12 months ago
Alexander Orzechowski
bbabb9aae8
output: Destroy when output layout is destroyed
...
Since output layout is destroyed when the wayland display is destroyed
we run into a destroy listener order problem: Either the display starts
destroying the outputs first, in which case we're good: The existing
handling will clean up. However, things go wrong if the display decides
to destroy the output layout first. In this case, sway will hold
invalid references to the output layout as part of each output so that
when it finally goes to destroy them, sway will dereference destroyed
output layout bits.
Ref: https://github.com/swaywm/sway/pull/6844#issuecomment-1843599513
1 year ago
Simon Ser
e8a0205607
input/seat: rename seat_set_exclusive_client()
1 year ago
Simon Ser
dbd70faf2e
input/seat: drop exclusive_client
...
This was a input-inhibit concept.
1 year ago
Simon Ser
ff07eab85b
Detect Nvidia proprietary driver via drmGetVersion()
...
This is less punishing for users with the Nvidia driver loaded but
not used by Sway (e.g. for CUDA).
1 year ago
Kirill Primak
47e6a1164c
xdg-shell: chase events update
1 year ago
Simon Ser
128b6253a9
Pass wl_display to wlr_output_layout
...
References: https://gitlab.freedesktop.org/wlroots/wlroots/-/merge_requests/4310
1 year ago
llyyr
a946b1aecf
Chase wlroots!4440
...
References: https://gitlab.freedesktop.org/wlroots/wlroots/-/merge_requests/4440
1 year ago
Simon Ser
072fa60cb4
Add support for security-context-v1
...
As a first step, deny access to privileged protocols to sandboxed
apps.
References: https://gitlab.freedesktop.org/wlroots/wlroots/-/merge_requests/3589
1 year ago
Simon Ser
5c99b98805
input/input-manager: drop input_manager_configure_all_inputs
...
This is now unused.
1 year ago
Simon Ser
7036769bea
Only reconfigure input mappings on output change
...
Fully reconfiguring all input devices on output change takes a
loooong time. Let's just reconfigure what we need: only mappings
depend on outputs.
1 year ago
Simon Ser
7cf4e1d5c6
Drop support for KDE's idle protocol
...
We support the standard idle-notify protocol since Sway 1.8.
1 year ago
Johan Sköld
d952ce403e
i3 compat: Adding support for the `all` criteria
...
Matches all views. i3 PR: https://github.com/i3/i3/pull/4460
Fixes #7110
1 year ago
luzpaz
d84b3832f4
Fix typo
1 year ago
Simon Ser
f8ddd97e0e
output: drop current_mode
...
This is now unused.
1 year ago
Simon Ser
6bd11ad0df
Add support for cursor-shape-v1
...
References: https://gitlab.freedesktop.org/wlroots/wlroots/-/merge_requests/4106
1 year ago
Mark Bolhuis
20c91335f6
input: Move wlr_pointer_gestures_v1 to sway_input_manager
...
On multi-seat configurations a zwp_pointer_gestures_v1 global was
created for every seat.
Instead, create the global once in the input manager, to be shared
across all seats.
1 year ago
Simon Ser
b762f455d9
idle-inhibit-v1: simplify with server global
...
We only have a single running server, no need to keep track of
multiple server instances. Also no need to support multiple
idle inhibit managers.
1 year ago
Cezary Drożak
c08762901e
input/libinput: add scroll_button_lock method
...
Closes https://github.com/swaywm/sway/issues/6987
Co-authored-by: JJGadgets <git@jjgadgets.tech>
Co-authored-by: DeltaWhy <mike5713@gmail.com>
2 years ago
Simon Ser
b1b3563d54
Handle gamma-control-v1 set_gamma events
...
References: https://gitlab.freedesktop.org/wlroots/wlroots/-/merge_requests/4046
2 years ago
Erik Reider
913a7679cb
Add support for wlr-layer-shell ON_DEMAND keyboard interactivity
...
This allows for layer shell surfaces to receive focus while the surface is explicitly focused, i.e allowing
text fields to receive keyboard input just like a regular surface.
2 years ago
Kirill Primak
c9e1dab318
chore: chase wlroots map logic unification
2 years ago
hrdl
e8f7551e46
Add support for touch cancel events
2 years ago
Alexander Orzechowski
029b99b482
render: Use wlr_render_pass
2 years ago
Alexander Orzechowski
d5cc474aef
render: pass rendering state together in a struct
...
This lets us easily add rendering state that we need in the future
2 years ago
Simon Ser
ea279f4df3
swaynag: add printf attribute to swaynag_log()
2 years ago