Commit Graph

220 Commits

Author SHA1 Message Date
Ivan Molodetskikh
31ea816d2b layout: Add randomized test 2023-09-27 13:35:02 +04:00
Ivan Molodetskikh
f2e28f54d6 Fix test name 2023-09-27 13:09:39 +04:00
Ivan Molodetskikh
6472901cbe Sort dependencies 2023-09-27 11:51:27 +04:00
Ivan Molodetskikh
5d8bb2589e Fix layer-shell render layering 2023-09-27 08:50:00 +04:00
Ivan Molodetskikh
93369e1958 Implement primary selecton
Firefox clipboard doesn't always work without it.
2023-09-26 22:22:11 +04:00
Ivan Molodetskikh
d3735227ce Fix panic when the last window on previous workspace is closed 2023-09-26 20:42:16 +04:00
Ivan Molodetskikh
5ad5f29a92 Extract check_ops 2023-09-26 20:41:55 +04:00
Ivan Molodetskikh
756997ca83 Fix panic when adding previously-removed output sometimes 2023-09-26 20:36:48 +04:00
Ivan Molodetskikh
b7be8fcb75 Fix verify_invariants() asserts 2023-09-26 20:35:08 +04:00
Ivan Molodetskikh
953d1064c2 Add layer shell exclusive zone support 2023-09-26 20:12:04 +04:00
Ivan Molodetskikh
4a585a3293 Add initial config hot reloading 2023-09-26 19:24:50 +04:00
Ivan Molodetskikh
3b83b2fb16 README: Update screenshot 2023-09-26 14:34:26 +04:00
Ivan Molodetskikh
80928632ba Add prefer-no-csd option 2023-09-26 13:45:03 +04:00
Ivan Molodetskikh
dc10e464ad tty: Take metadata by value 2023-09-26 13:45:03 +04:00
Ivan Molodetskikh
a62e1cbef6 Make focus ring configurable 2023-09-26 13:45:03 +04:00
Ivan Molodetskikh
906ee36a93 Skip rendering when backend is inactive 2023-09-26 13:45:03 +04:00
Ivan Molodetskikh
ac16717f4e Avoid unwraps in more places 2023-09-26 13:45:03 +04:00
Ivan Molodetskikh
52aee11aa5 tty: Add more trace spans 2023-09-26 13:45:03 +04:00
Ivan Molodetskikh
e299328741 tty: Extract other event handlers into functions 2023-09-26 13:45:03 +04:00
Ivan Molodetskikh
0f43e90b2a tty: Avoid panicks in the vblank callback 2023-09-26 13:45:03 +04:00
Ivan Molodetskikh
bbf707367a tty: Extract on_vblank() 2023-09-26 13:45:03 +04:00
Ivan Molodetskikh
cfe80574df Use new tracy-client new_leak() methods
I added them to avoid the use of internal module and leaks when tracing
is disabled.
2023-09-26 13:45:03 +04:00
Ivan Molodetskikh
fb43dcd61e Remove obsolete comment 2023-09-26 13:45:03 +04:00
Ivan Molodetskikh
cd4f7c0378 Remove LoopData
The calloop Smithay update finally lets me do this.
2023-09-26 13:45:03 +04:00
Ivan Molodetskikh
c422fdab0f Update Smithay 2023-09-26 13:45:03 +04:00
Ivan Molodetskikh
f58e56d65a Add focus rings 2023-09-24 18:11:20 +04:00
Ivan Molodetskikh
51df1aba01 layout: Focus prev column when removing just created column
This works similar to tabs in Firefox: when you create a tab and then
close it without focusing any other tabs, the focus returns to the
previously-focused tab, rather than the usual next tab. The logic is
that in this case, the new tab was likely transient, and the user wants
to get right back to what they were doing.

In niri's case, this also serves as a workaround for wl-clipboard
spawning and destroying a window, messing up the focus.
2023-09-24 10:08:43 +04:00
Ivan Molodetskikh
b3b1e082ac layout: Preserve active column when column to the left is removed 2023-09-24 09:42:49 +04:00
Ivan Molodetskikh
34db4bcd48 Commit Cargo.toml update 2023-09-21 20:05:10 +04:00
Ivan Molodetskikh
a7e338b3c0 Add spawn-at-startup config option
Fixes https://github.com/YaLTeR/niri/issues/12
2023-09-21 19:58:03 +04:00
Ivan Molodetskikh
80dce054cb Use double-fork when spawning subprocesses
Fixes https://github.com/YaLTeR/niri/issues/10
2023-09-21 19:35:02 +04:00
Ivan Molodetskikh
109668fa30 Add output configuration & integer scaling support 2023-09-21 13:48:50 +04:00
Ivan Molodetskikh
cfa73c153c layout: Fix workspace output updating 2023-09-21 13:48:50 +04:00
Ivan Molodetskikh
dbcd667877 niri: Fix Output global creation and removal 2023-09-21 13:48:50 +04:00
Ivan Molodetskikh
9fc731c115 Plot target presentation time offset 2023-09-20 11:51:25 +04:00
Ivan Molodetskikh
1963aaa775 Add initial impl of org.gnome.Shell.Screenshot
Enough to make the portal all-outputs screenshot work. With this,
Flameshot kinda-works.
2023-09-20 09:28:23 +04:00
Ivan Molodetskikh
8b4f2cf483 niri: Add include_pointer argument to render() 2023-09-20 09:22:39 +04:00
Ivan Molodetskikh
1c85230d18 niri: Make render helpers generic over RenderElement 2023-09-20 09:22:15 +04:00
Ivan Molodetskikh
e88577bc82 niri: Extract render_to_vec() 2023-09-19 19:08:45 +04:00
Ivan Molodetskikh
69f561cd6f Extract make_screenshot_path() 2023-09-19 19:05:03 +04:00
Ivan Molodetskikh
495cce054b Update Smithay 2023-09-19 17:03:24 +04:00
Ivan Molodetskikh
99b945c385 Allow replacement of screencast and displayconfig dbus
This way the session can start with those dbus services registered, but
then for debugging they can be subsequently replaced anyway.
2023-09-19 16:46:13 +04:00
Ivan Molodetskikh
361b34f460 tty: Pass output name to tracy span 2023-09-19 07:39:21 +04:00
Ivan Molodetskikh
699c6c3ed1 README: Update PrtSc hotkey 2023-09-18 21:08:28 +04:00
Ivan Molodetskikh
1505c6d3d8 README: Update default bind list 2023-09-18 21:06:47 +04:00
Ivan Molodetskikh
94da8b1e3e tty: Try to create context with high priority 2023-09-18 20:09:57 +04:00
Ivan Molodetskikh
2854874793 Upgrade dependencies 2023-09-18 19:53:15 +04:00
Ivan Molodetskikh
e0deea3f68 default-config: Add PgUp/Down for workspace switching 2023-09-18 11:53:44 +04:00
Ivan Molodetskikh
3a52489330 Change default repeat to 600
660 comes from Xorg, but feels kind of slow. The wlroots and sway
default is 600, which is a little better.

The 25 repeat interval matches between Xorg (where it is defined in
terms of interval, rather than rate) and wlroots.
2023-09-16 21:52:25 +04:00
Kirill Chibisov
b66b4399ad Add keyboard.repeat-rate and keyboard.repeat-delay
Add option to let the users configure the keyboard repeat delay and
rate. Also change the default values to mimic the Xorg, which is
also the values used by default by the majority of the compositors.

Fixes: #7
2023-09-16 18:13:52 +03:00