Commit Graph

75 Commits

Author SHA1 Message Date
6491310e12 layer-shell: crop surfaces to output bounds 2024-03-20 13:23:36 +01:00
3f49ff9631 deps: update zig-wayland for a minor cleanup 2024-03-15 19:10:18 +01:00
1b63c463a7 security-context: implement protocol
Sensitive Wayland protocols such as wlr_screencopy and wlr_data_control
(clipboard managment) are now blocked by default inside security
contexts (e.g. flatpak 1.15.6 or later).

User configuration of the allowlist/blocklist is TODO.
2024-03-15 14:47:43 +01:00
46dbbe9799 deps: switch to codeberg upstreams, update 2024-03-12 14:12:54 +01:00
49a779b24d tablet-v2: implement tablet tool support
There is not any pointer emulation for tablet tool input. This means
that only clients implementing the tablet-v2 protocol will be able to
process tablet tool input.

Tablet pad support is TODO
2024-03-11 15:05:42 +01:00
0eacde7d01 deps: update to latest zig-wayland and zig-wlroots 2024-03-02 17:36:47 +01:00
0cb7c49cc3 command/input: add map-to-output 2024-02-23 12:22:42 +01:00
93c2a2fd08 deps: update zig-wlroots
Simplifies wlr_seat.keyboardNotifyEnter() signature.
2024-02-18 16:08:51 +00:00
540ca043df Keyboard: fix mapping XF86ScreenSaver 2024-01-06 20:36:53 -06:00
afbc84c994 river: re-add wl_drm support for now
It seems to be a bit too early to drop support for this legacy protocol.

Xwayland apparently still relies on it for hardware acceleration as do
fairly recent mesa versions still in widespread use.
2024-01-06 19:23:55 -06:00
913770975b Cursor: clean up cursor theme loading
wlroots will now load xcursor themes at the correct scale automatically
based on the scale of the outputs where ther cursors are displayed.

Also make the error handling a bit more robust.
2024-01-04 14:44:51 -06:00
9ce4525f08 river: Implement cursor_shape_v1 2024-01-04 14:14:00 -06:00
80ced04f68 river: drop support for wl_drm
wl_drm is a legacy interface superseded by the linux-dmabuf
protocol. All clients should migrate.

This commit drops support for the protocol which should help find
whatever problematic clients are left in the wild.

If it turns out that this is too soon we can easily keep supporting
wl_drm for a little while longer as wlroots has not yet dropped support
for it.
2024-01-03 17:22:00 -06:00
6a74ed99fa river: Implement fractional_scale_v1 2024-01-03 12:47:31 -06:00
a128a574a4 output-management: work around wlroots crash 2024-01-01 22:52:25 -06:00
b440767b54 gamma-control: track wlroots 0.17 changes 2023-12-29 16:22:15 -06:00
677766956e deps: update to lastest zig-wlroots
This fixes a few issues with the XwaylandSurface bindings
2023-12-06 11:00:45 +01:00
7ee6c79b6b build: update to wlroots 0.17 2023-12-01 17:29:05 +01:00
bf4154007d river: add outputs rule 2023-10-19 12:58:11 +02:00
2e586c7061 build: update to Zig 0.11.0 2023-10-16 16:27:03 +02:00
05eac54b07 xdg-decoration: clean up implementation
We now send some protocol errors that wlroots 0.16 is missing [1].
This also allows us to access the xdg decoration from a view, which will
be necessary for some future changes.

[1]: https://gitlab.freedesktop.org/wlroots/wlroots/-/merge_requests/4051
2023-03-10 18:49:30 +01:00
8d9b6ab99e deps: update zig-wlroots to fix Xwayland crash 2023-03-03 15:50:24 +01:00
8cb5ca9041 river: fix various fullscreen related bugs 2023-02-28 22:56:12 +01:00
c0c08ab919 deps: update to latest zig-wayland/zig-wlroots 2023-02-27 17:51:31 +01:00
0ccf0e65d5 deps: update to latest zig-wayland/zig-wlroots 2023-02-27 13:35:55 +01:00
946173005d wlr-output-management: leverage new wlroots APIs
These new functions allow testing commits without messing up the
pending state of the output and needing to rollback. The new apply()
function also makes the code considerably more concise.
2023-01-24 13:55:40 +01:00
f20692e329 deps: update zig-wayland to fix build on aarch64 2023-01-09 14:55:18 +01:00
09f3f141ae deps: update to Zig 0.10 2023-01-08 16:21:42 +01:00
2c86c2b6e5 river-control: update zig-wayland to fix leak
It was forgotten to destroy the callback server side object when sending
the destructor event. With the new zig-wayland version, this cannot be
forgotten.
2022-12-31 23:22:47 +01:00
2eb0a7a75c river: support wp-single-pixel-buffer-v1 2022-12-24 20:14:30 +01:00
6ac3928556 idle: support ext-idle-notify-v1, drop KDE protocol
This commit is a breaking change as it drops support for the now
obsolete org_kde_kwin_idle protocol.
2022-12-24 18:18:09 +01:00
05c9194eba build: handle wlroots built without xwayland support 2022-12-24 17:38:02 +01:00
e603c5460a river-status: correctly advertise version 4
This should have been a compile error but slipped through due to a bug
in zig-wayland. This bug has now been fixed and the submodule updated.
2022-12-02 15:19:13 +01:00
3ed71c51e2 deps: update to latest zig-wlroots
This fixes a crash handling switch toggle events
2022-11-20 11:33:42 +01:00
489a49735a river: update to wlroots 0.16 2022-11-13 16:16:07 +01:00
7402cb8aea deps: update to latest zig-wlroots
This fixes the return type of Foo.fromWlrSurface() functions which can
in fact return null in the edge case that the role matches but the
corresponding object has already been destroyed.
2022-07-01 20:53:45 +02:00
7d9d889226 deps: update to latest zig-wlroots
This fixes a nasty ABI bug that could cause river to crash when
hotplugging down to 0 outputs.
2022-06-23 18:50:00 +02:00
d47be3b592 deps: update to latest zig-wayland 2022-05-11 18:02:32 +02:00
44aaee3a51 command/map: layout-pinned mappings
e.g. `riverctl map -layout 0 normal Super Y spawn foot`

When this mapping is checked against a pressed key, layout 0 will be used to translate the pressed key instead of the currently active layout.

The number denotes to an index of the layouts set with
`XKB_DEFAULT_LAYOUT`.
2022-04-27 18:31:08 +02:00
60fdefc3fd input: add map-switch/unmap-switch commands
This allows running a command on a laptop's lid being opened/closed
or a tablet's button/switch being pressed/toggled.
2022-04-14 12:49:47 +02:00
e16eabd928 Xwayland: move window to top of X11 stack on focus
This is required for X11 input handling to work properly with
overlapping windows.
2022-01-02 04:32:28 +00:00
c1d985ac29 build: update to zig version 0.9.0 2021-12-24 05:28:14 +00:00
6a093fecee river: remove wlroots 0.14 workarounds
Since updating to wlroots 0.15 we can remove several workarounds we had
in place due to wlroots improvements.
2021-12-22 20:15:57 +00:00
2288778dd7 ci: update for wlroots 0.15.0 2021-12-22 03:56:47 +00:00
c34d850397 layer-shell: fix regression from wlroots 0.15 update
The way wlroots handles the layer surface configure flow has changed a
bit and river's logic needs updating.
2021-12-21 19:41:47 +00:00
4d19621f1e river: update to wlroots 0.15.0 2021-12-21 03:18:30 +00:00
bd70c010e9 Cursor: add workaround in pointer drag termination
Currently wlroots sends use the drag destroy event before sending the
wl_data_device.leave event to the client, which makes things a bit
awkward. My patch fixing this has been merged to wlroots master so we
can remove this when upgrading to wlroots 0.15, but until then this
workaround will fix the issue.
2021-11-23 22:54:19 +01:00
50814e0ffe pointer-constraints: fix coordinates
Currently the implementation treats the x/y coordinates of
View.State.box as layout coordinates instead of output-relative. This
causes issues when using an output not at 0,0.
2021-10-11 15:01:57 +02:00
e59c2a73d7 river: implement xdg-activation-v1
- add a new "urgent" border color
- add a new event to river-status-unstable-v1

Co-authored-by: Isaac Freund <ifreund@ifreund.xyz>
2021-08-19 12:58:52 +00:00
505639432e Revert "build: assert wlroots version at comptime"
zig-wlroots now has this assert built in

This reverts commit 3392b21aa8.
2021-06-24 20:21:07 +02:00