Leon Henrik Plickat and Isaac Freund
e857631936
rivertile: Use saturating arithmetics to prevent over-/underflow when using user defined values
2022-02-26 16:19:15 +01:00
Leon Henrik Plickat and Isaac Freund
422cd3e01f
input: Improve input device name format
...
The name now includes the type, for the case of a physical device
advertising more than one logical device.
2022-02-05 18:52:46 +01:00
Leon Henrik Plickat and Isaac Freund
53f84b76f3
input: keep applying input configs after first match
...
Device identifiers aren't so unique after all
2022-02-05 18:52:16 +01:00
Leon Henrik Plickat and GitHub
214ad65b72
Cursor: update image if needed on xcursor theme change
2022-01-29 15:40:29 +01:00
Leon Henrik Plickat and GitHub
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
Leon Henrik Plickat and Isaac Freund
61d6aecb10
contrib: add python layout
2021-10-06 12:16:36 +02:00
Leon Henrik Plickat and Isaac Freund
196c52885f
Decrease layout demand timeout to 100ms
...
Layout generators are generally pretty fast. The timeout is only reached when
the generator is faulty / stuck. In that case, freezing for 1 second is simply
bad UX.
2021-10-04 11:07:59 +02:00
Leon Henrik Plickat and Isaac Freund
ab55ab8fc2
command: Use std.ComptimeStringMap to get impl. function from command string
2021-09-16 11:47:44 +02:00
Leon Henrik Plickat and Isaac Freund
a3c6571326
cursor: reset state if needed on transaction commit
...
A transaction may move the current target of a cursor action to a
non-visible tag, make it fullscreen, or otherwise change things such
that the current cursor state no longer makes sense.
To handle this, check if we should reset cursor state every time a
transaction is committed.
2021-07-23 11:48:01 +00:00
Leon Henrik Plickat and Isaac Freund
dfa2471141
contrib: update layout.c for river-layout-v3
2021-07-21 14:01:51 +02:00
Leon Henrik Plickat and Isaac Freund
968aef3459
river: make CSD-filters apply to existing views
2021-07-12 17:57:01 +00:00
Leon Henrik Plickat and Isaac Freund
9ec04c764e
river: add commands to remove filter entries
2021-07-12 17:57:01 +00:00
Leon Henrik Plickat and Isaac Freund
61829d82fe
completions: Add bash completion for set-cursor-warp commands
2021-06-26 19:03:49 +02:00
Leon Henrik Plickat and Isaac Freund
085cca0d5e
cursor: add option to warp on output change
...
On output change, if the cursor is not already on the newly focused
output, it will now be warped to its center. The check is necessary,
since focusing outputs with the pointer will be implemented in
the future.
2021-06-26 19:03:49 +02:00
Leon Henrik Plickat and Isaac Freund
d3a9e96f7d
Add spacial output operations
...
List based output operations are tedious for complex output layouts.
2021-06-23 12:47:20 +02:00
Leon Henrik Plickat and Isaac Freund
3405e2a87c
Ignore move and resize requests from fullscreened XDG toplevels
2021-06-16 10:03:30 -07:00
Leon Henrik Plickat and Isaac Freund
1fd8d4d828
add bash completion for input commands
2021-06-13 10:37:36 -07:00
Leon Henrik Plickat and Isaac Freund
a267262a17
Add list-input-configs command
2021-06-13 10:37:36 -07:00
Leon Henrik Plickat and Isaac Freund
3f4fd97b6e
Add list-inputs command
2021-06-13 10:37:36 -07:00
Leon Henrik Plickat and Isaac Freund
c9c9901c5b
doc: Document input config commands
2021-06-13 10:37:36 -07:00
Leon Henrik Plickat and Isaac Freund
833248e805
Add basic input configuration
2021-06-13 10:37:36 -07:00
Leon Henrik Plickat and Isaac Freund
6333e465d2
Allow changing output focus with pointer
2021-05-19 14:15:28 +02:00
Leon Henrik Plickat and Isaac Freund
6ab06120fa
rivertile: clamp main_amount
2021-05-19 13:54:54 +02:00
Leon Henrik Plickat and Isaac Freund
7ffa2f4b9e
contrib: Update layout.c for river-layout-v2
2021-05-07 00:34:41 +02:00
Leon Henrik Plickat and Isaac Freund
924a4707b7
contrib: update layouts for river-layout and river-options
...
- Remove old layouts which no longer work.
- Add new C layout.
2021-04-20 18:27:03 +02:00
Leon Henrik Plickat and Isaac Freund
f72656b72e
river-layout: create and implement protocol
...
Replace the current layout mechanism based on passing args to a child
process and parsing it's stdout with a new wayland protocol. This much
more robust and allows for more featureful layout generators.
Co-authored-by: Isaac Freund <ifreund@ifreund.xyz >
2021-04-20 18:27:03 +02:00
Leon Henrik Plickat and Isaac Freund
e6f11fc5d2
Fix crash when layer surface dimensions or margins are unexpectedly large
2021-03-27 13:10:19 +01:00
Leon Henrik Plickat and Isaac Freund
e43e58432f
riverctl: Do not use std.debug.print()
2021-03-27 12:17:47 +01:00
Leon Henrik Plickat and Isaac Freund
f99071f1da
riverctl: Print error messages instead of error traces for common user mistakes
2021-03-27 12:17:47 +01:00
Leon Henrik Plickat and Isaac Freund
eb1dd401f8
Add bash completion for riverctl
2021-03-14 17:06:43 +01:00
Leon Henrik Plickat and Isaac Freund
5887d54f04
Deny move/resize requests from tiled XdgToplevel Views
2021-02-17 14:42:23 +01:00
Leon Henrik Plickat and GitHub
aeeae92611
riverctl: add mod-option command
2021-02-09 22:53:17 +01:00
Leon Henrik Plickat and Isaac Freund
7029a5cd3e
output: add output_title default option
...
Outputs now have a default option, "output_title". If this changes, the
outputs title is set to the option value. This title is currently only
relevant when run nested in a wayland/X11 session.
Co-authored-by: Isaac Freund <ifreund@ifreund.xyz >
2021-02-02 01:14:06 +01:00
Leon Henrik Plickat and Isaac Freund
0c5e5a7b4a
doc: Remove outdated configuration instructions
2020-12-13 01:19:27 +01:00
Leon Henrik Plickat and Isaac Freund
58d9bfc766
contrib: Unify style
...
Unify indentation and variables and add link to non-standard programs
called.
2020-12-13 01:19:27 +01:00
Leon Henrik Plickat and Isaac Freund
f08d37ab28
doc: unify scdoc style
...
This unifies the style of the man page source files. Most noticable are
the now consistent line endings at 80 chars (assuming a tabwidth of 8).
2020-12-13 01:19:27 +01:00
Leon Henrik Plickat and Isaac Freund
1626203c44
Add default config location
2020-11-18 15:15:22 +01:00
Leon Henrik Plickat and Isaac Freund
5407325400
Add tests for ViewStack.swap()
2020-10-26 22:58:09 +01:00
Leon Henrik Plickat and Isaac Freund
ac1762567c
Send zriver_seat_status_v1.focused_view when title of focused view changes
2020-10-25 17:28:13 +01:00
Leon Henrik Plickat and Isaac Freund
dd92b05af0
Add mediakey maps for locked and normal mode to example config
...
The example config now additionally demonstrates how to use a shell loop
to create a mapping in multiple modes, how mediakeys can be mapped and
how to use the "None" modifier.
2020-10-22 21:10:12 +02:00
Leon Henrik Plickat and Isaac Freund
03a2da9690
Introduce mode "locked"
...
This mode is automatically entered when the screen is locked.
2020-10-19 16:00:17 +02:00
Leon Henrik Plickat and Isaac Freund
744e6b3052
Remove checking translated keysyms
...
Raw keysyms are enough to handle all possible keybinds
2020-10-18 16:36:11 +02:00
Leon Henrik Plickat and Isaac Freund
4b4f7c464c
Allow "None" as modifier string for bindings without modifiers
...
This is more userfriendly than the empty string approach.
2020-10-18 16:36:11 +02:00
Leon Henrik Plickat and Isaac Freund
ec5d5e8826
Move Cursor.Mode impl functions to Cursor
2020-10-17 23:42:37 +02:00
Leon Henrik Plickat and Isaac Freund
d5d1e87a95
Implement XDG-Toplevel move and resize request handlers
2020-10-17 23:42:37 +02:00
Leon Henrik Plickat and Isaac Freund
1e0ee3b146
Remove unused event parameter from Cursor.Mode.enter()
2020-10-17 23:42:37 +02:00
Leon Henrik Plickat and Isaac Freund
b6861bc80b
Update view.float_box when setting a floating view to fullscreen
2020-10-17 21:23:13 +02:00
Leon Henrik Plickat and Isaac Freund
036f9a1cb9
Always set fullscreen views to fully opaque
2020-10-08 18:41:47 +02:00
Leon Henrik Plickat and Isaac Freund
d4ca5d7a88
introduce Output.getEffectiveResolution()
2020-10-07 21:03:59 +02:00
Leon Henrik Plickat and Isaac Freund
b2f13f5bcc
Implement "move", "snap" and "resize" commands
2020-10-07 21:03:59 +02:00
Leon Henrik Plickat and Isaac Freund
6f9ecd4eda
Create wlr_viewporter
2020-10-06 20:19:07 +02:00
Leon Henrik Plickat and Isaac Freund
1e58e8b7f8
Create wlr_export_dmabuf_manager_v1
2020-10-06 20:19:07 +02:00
Leon Henrik Plickat and Isaac Freund
18f5fcb1ef
Implement primary selection
2020-10-06 17:46:05 +02:00
Leon Henrik Plickat and Isaac Freund
bb23464322
Send view tags when applying pending state in XdgToplevel.zig
2020-10-05 23:03:57 +02:00
Leon Henrik Plickat and Isaac Freund
b67ea748a3
Implement configurable view opacity with fade effect
2020-10-05 23:03:57 +02:00
Leon Henrik Plickat and Isaac Freund
59d6432332
Implement "attach-mode"
2020-08-18 11:00:51 +02:00
Leon Henrik Plickat and Isaac Freund
946e4f21ba
Enforce minimum window size also for views with constraints
2020-08-10 22:15:09 +02:00
Leon Henrik Plickat and Isaac Freund
45a730cbd3
Fix crashing bug for window size smaller than 2 * (border width + gap size)
2020-08-10 19:26:13 +02:00
Leon Henrik Plickat and Isaac Freund
228c2c372f
Fix bug causing XDG toplevels with a parent to not respect the CSD filter
2020-07-16 21:24:08 +02:00
Leon Henrik Plickat and Isaac Freund
a93c263502
Implement csd-filter-add and float-filter-add commands
2020-07-16 21:24:08 +02:00
Leon Henrik Plickat and Isaac Freund
76da7e2b0d
Make float_filter a slice list
2020-07-16 21:24:08 +02:00
Leon Henrik Plickat and Isaac Freund
be29b0ef95
Implement csd_filter list
2020-07-16 17:08:19 +02:00
Leon Henrik Plickat and Isaac Freund
d77ac5ac7a
cursor: close view on middleclick when pointer_modifier is active
2020-07-08 12:25:52 +02:00
Leon Henrik Plickat and Isaac Freund
d292e61cfd
cursor: implement moving views
2020-07-07 19:06:52 +02:00
Leon Henrik Plickat and Isaac Freund
ec0631dcef
Doc: Add layout documentation
2020-06-16 15:48:53 +02:00
Leon Henrik Plickat and Isaac Freund
4cbef71a8d
Contrib: Add debug layouts
2020-06-16 15:48:53 +02:00
Leon Henrik Plickat and Isaac Freund
5de21d0d23
Commands: rework layout command
2020-06-16 15:48:53 +02:00
Leon Henrik Plickat and Isaac Freund
2fce8c7108
Output: Add layoutExternal()
2020-06-16 15:48:53 +02:00
Leon Henrik Plickat and Isaac Freund
754e24a710
Output: Rework layout switching in arrangeViews()
2020-06-16 15:48:53 +02:00
Leon Henrik Plickat and Isaac Freund
bdc56517e9
Output: Remove layoutMasterStack() and rework layoutFull()
...
layoutFull() now enforces a minimum view size of 50x50
2020-06-16 15:48:53 +02:00
Leon Henrik Plickat and Isaac Freund
2575f642f1
Fix layout bugs
...
This fixes two bugs: First, the height of the slave stack was to high
when using the TopMaster or BottomMaster layouts with no views in the
master stack. Second, the view padding was not respected when using the
Full layout.
2020-05-22 11:21:36 +02:00
Leon Henrik Plickat and Isaac Freund
7934cbfaea
Add layout command
2020-05-20 23:02:28 +02:00
Leon Henrik Plickat and Isaac Freund
3c5eaec50b
Add layout variable to Output class
...
This variable in controls which layout is chosen when
arrangeViews() is called. The default is LeftMaster
2020-05-20 23:02:28 +02:00
Leon Henrik Plickat and Isaac Freund
fd3f48c1a7
Switch to layoutFull() for one or no visible views
2020-05-20 23:02:28 +02:00
Leon Henrik Plickat and Isaac Freund
444cf77ad3
Add "full" layout
...
Similar to dwm's "monocle" layout
2020-05-20 23:02:28 +02:00
Leon Henrik Plickat and Isaac Freund
b40c5d912e
Modify default layout to allow master area on all four sides
...
Also move it into a separate function
2020-05-20 23:02:28 +02:00