Commit Graph

1123 Commits

Author SHA1 Message Date
Ivan Molodetskikh dbcc1182ef Update primary selection focus 2023-09-27 16:51:17 +04:00
Ivan Molodetskikh 1085ea99ff Send pointer.frame() after pointer.button() 2023-09-27 15:31:40 +04:00
Ivan Molodetskikh 06d15e4adc layout: Add more ops for proptest to play with 2023-09-27 13:45:49 +04:00
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