Commit Graph

800 Commits

Author SHA1 Message Date
214ad65b72 Cursor: update image if needed on xcursor theme change 2022-01-29 15:40:29 +01:00
363efd3e79 ci: run on 0.1.x branch 2022-01-29 13:48:50 +01:00
1e3ea826c0 wlr-output-management: simplify implementation
Notably, we no longer call both wlr_output_test and wlr_output_commit
when applying an output config, which seems to fix or workaround an
occasional crash since updating to wlroots 0.15.0.
2022-01-28 23:28:00 +01:00
745fe82947 layer-shell: center when opposing anchors are set
Currently river will place the surface at the top or left edge if
opposing anchors are set without a 0 width/height. Instead, center
the surface between the anchors.
2022-01-25 00:11:20 +01:00
b716e262cd XdgPopup: remove commit listener on destroy if mapped
Since the destroy() function may be called by river while the popup is
mapped, we must handle this case.
2022-01-23 20:37:37 +01:00
20ca8a2051 docs: fix typo in river(1) man page 2022-01-23 12:09:27 +01:00
e13650864c docs: Fix typo in readme 2022-01-23 12:07:34 +01:00
a782c6a6f2 Xwayland: Handle minimize request
Fix X11 clients getting stuck minimized, and displaying a black screen
after they lose focus.
2022-01-18 16:14:33 +01:00
0116dfe96e command/map: Warn users on keybinding overwritten 2022-01-17 18:19:39 +01:00
f6b1632af2 example/init: Use Alt/Super aliases 2022-01-17 13:15:15 +01:00
f79c784e84 command/map: add Alt/Super as aliases for Mod1/Mod4
I personally made the mistake of using Alt instead of Mod1 when messing
with my config. This change makes things a bit more user
friendly/intuitive.
2022-01-17 12:38:41 +01:00
0bdf348883 rivertile: Use saturating addition 2022-01-15 00:45:11 +01:00
c9fd8b3f37 XdgPopup: fix unconstrain from box coords
We currently don't properly handle xdg surface geometry of the parent,
which causes popups to render partially off-screen in some cases.

GTK4 clients such as easyeffects seem to trigger this issue reliably.
2022-01-12 14:50:55 +01:00
0c3a581f54 contrib: add desktop file 2022-01-08 15:37:47 +09:00
a340a605a4 Cursor: remove minor outdated workaround
Since Zig 0.9 @tagName() and other similar builtins return 0 terminated
data.
2022-01-05 18:13:08 +01:00
1c515759b4 Seat: do a better job of cleaning up listeners
I thought this should be fine as river won't yield to the event loop
when Seat.deinit() is called before the wlroots seat is destroyed, but
a segfault on exit has been reported with a stack trace mentioning
wlr_seat_destroy(). Let's hope this clears that up.
2022-01-02 19:46:18 +00: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
ea4bd5e54b Cursor: fix down mode motion events for subsurfaces
There are a couple of TODOs here that are not worth resolving until
after moving to the scene graph api.
2021-12-29 06:19:37 +00:00
9c2e3b6738 docs: update zig version required in readme 2021-12-24 16:41:59 +00:00
c1d985ac29 build: update to zig version 0.9.0 2021-12-24 05:28:14 +00:00
1edaa5ad21 docs: soften the README disclaimer a bit 2021-12-22 22:09:45 +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
90aee02b70 Subsurface: add commit listener on create if mapped
Subsurfaces may already be mapped when create is called, in which case
we must add the commit listener.
2021-12-22 05:30:20 +00:00
334ede00e1 Cursor: properly handle clients setting the cursor image
The new code to dedup XcursorManager.setCursorImage() calls for
efficiency currently doesn't handle clients setting the cursor properly.
This commit corrects this oversight.
2021-12-22 04:32:23 +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
f2fc9aca18 Cursor: dedup XcursorManager.setCursorImage() calls
wlroots doesn't avoid re-setting the same cursor image so this is
relatively expensive to call repeatedly if nothing has changed.
2021-12-21 03:50:12 +00:00
4d19621f1e river: update to wlroots 0.15.0 2021-12-21 03:18:30 +00:00
c3370afa3d common/flags: make argFlag() return a slice
We always pass the result of this to mem.span() currently, no need for
the code duplication.
2021-12-15 17:09:45 +01:00
d93ee2c27e Cursor: improve output focus handling on button press
This patch allows to focus outputs by clicking on the empty background and by
clicking on layer surfaces without keyboard interactivity. This makes it
possible to use the cursor to focus outputs with no visible views.

This also fixes problems with pointer interactive layer surfaces (for example
launchers and docks) on non-focused outputs.
2021-12-10 23:40:48 +01:00
93afdb32bf layer-shell: tighten up handling of large margins 2021-11-29 23:56:26 +01: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
9212ac89fa Cursor: fix pointer drags with focus-follows-cursor 2021-11-19 11:33:27 +01:00
0cbe2b9fc3 docs: remove reference to /etc/river/init
We used to look in /etc/river/init if no init at ~/.config/river/init
or $XDG_CONFIG_HOME/river/init was found but this feature was
removed. It seems that we forgot to remove this mention of the old
behavior however.
2021-11-11 16:07:19 +01:00
663e839e9d docs: fix wlroots link in readme 2021-11-08 21:18:32 +01:00
f3475c5932 docs: clarify description of dependencies 2021-11-03 13:40:46 +01:00
18072e00bf build: bump version to 0.2.0-dev 2021-11-03 00:31:55 +01:00
40e6a83ba8 build: bump version to 0.1.0 2021-11-03 00:01:31 +01:00
69d1453741 build: fix trailing newline in version string 2021-11-02 23:54:44 +01:00
d4aa64034c docs: remove AUTHORS file
We haven't managed to keep this at all up to date, which defeats the
purpose. Please refer to the git history for a complete list of
contributors.
2021-11-02 23:29:23 +01:00
363fd3f6a4 completions/fish: simplify 2021-11-01 18:27:41 +07:00
c9de08fa10 docs: update URLs for migration to riverwm github org 2021-11-01 11:28:43 +01:00
f2cf4b9455 common: use -h instead of -help
This doesn't really matter that much as unrecognized options will still
trigger a help message to be printed, but -h is much more standard so
lets make the predictable choice here while sticking to only single '-'
flags.
2021-11-01 00:34:15 +01:00
4cee1fb881 docs: assorted fixes/cleanups 2021-11-01 00:29:06 +01:00
8757644b2a docs: standardize on "layout generator"
This is likely more clear than "layout client" to most users.
2021-10-31 22:32:59 +01:00
8134b81283 Cursor: fix move/resize with high poll rate/low dpi mice 2021-10-30 20:40:35 +02:00
4b0c5acc46 View: fix checks to respect client side move/resize 2021-10-30 12:54:23 +02:00
b986196118 view: respect client size resize of floating views
mpv for example has key bindings to set the window size to a multiple of
the video resolution. This is a valid use case for client-size resizing
of the view and river should respect this if the view is floating.
2021-10-30 12:22:49 +02:00
e447e1b41f Xwayland: always send configure if requested
This seems to fix an issue with mouse input for steam if steam is not
started on an output at 0,0. X11 is pretty spooky.
2021-10-20 15:40:50 +02:00
c84fd1a936 View: send enter/leave events to full surface tree 2021-10-20 14:11:19 +02:00