Ivan Molodetskikh
d3e72245b0
Don't show the cursor on programmatic movement
...
For keyboard-only use, especially with warp-mouse-to-focus, the
intention is that the cursor stays hidden from keyboard and other
automatic actions, and only shows up with an actual mouse movement.
2024-10-29 21:52:03 -07:00
Rasmus Eneman
e887ee93a3
Implement interactive window move
2024-10-27 23:07:39 -07:00
Ivan Molodetskikh
8d08782eba
Set CLOEXEC on logind inhibit fd
...
Don't leak it to child processes.
2024-10-17 08:59:06 +03:00
Ivan Molodetskikh
a13b9298c6
Draw the layout as inactive when layer-shell has focus
2024-10-15 11:11:57 +03:00
Ivan Molodetskikh
29602ca995
layout: Extract Monitor::workspaces_with_render_positions()
2024-10-14 11:08:44 +03:00
Ivan Molodetskikh
6fb60dacd2
Rework pointer inactivity hide as a timer
...
The previous way was prone to triggering late due to compositor idling
and therefore never calling the check function.
2024-10-06 22:09:19 -07:00
yzy-1
42a9daec9d
Implement hide cursor on key press and on timeout
2024-10-06 22:09:19 -07:00
Ivan Molodetskikh
94e5408f46
Update Smithay
2024-09-30 15:24:50 +03:00
Christian Meissl
eb190e3f94
handle role specific buffer offset
2024-09-30 05:04:58 -07:00
spazzylemons
80bb0d5876
Remove one unnecessary .clone() call and reorder another
2024-09-30 00:45:44 -07:00
Ivan Molodetskikh
55a798bd8b
Prevent unintended focus-follows-mouse during workspace switch
2024-09-12 16:48:29 +03:00
Ivan Molodetskikh
6b6a84e55b
Avoid panics on more wrong VBlank events
2024-09-10 10:48:45 +03:00
Ivan Molodetskikh
7d5785e96f
Give focus to on-demand layer surfaces on map
2024-09-10 10:14:34 +03:00
Ivan Molodetskikh
3514cd2e36
Prefer exclusive layer focus to on-demand on the same layer
2024-09-10 09:10:03 +03:00
Ivan Molodetskikh
d25d6ce337
Arrange layer map after sending new scale/transform
...
I think that should be a slightly better ordering of events.
2024-09-08 22:33:09 +03:00
Ivan Molodetskikh
bb044075fa
Inform layer surfaces of scale/transform changes
...
How'd I miss this and then never catch it?
2024-09-08 22:05:56 +03:00
Ivan Molodetskikh
dcb29efce5
Implement by-id window addressing in IPC and CLI, fix move-column-to-workspace
...
This is a JSON-breaking change for the IPC actions that changed from
unit variants to struct variants. Unfortunately, I couldn't find a way
with serde to both preserve a single variant, and make it serialize to
the old value when the new field is None. I don't think anyone is using
these actions from JSON at the moment, so this breaking change is fine.
2024-09-06 18:32:41 +03:00
Ivan Molodetskikh
608ab7d8b1
Change output sorting to match make/model/serial first
...
We can do this now that we have libdisplay-info.
2024-09-05 20:10:01 +03:00
Ivan Molodetskikh
5460c792bd
Fix missing KeyboardLayoutSwitched event on XKB switch
2024-09-04 20:54:11 +03:00
Ivan Molodetskikh
b65a243fc9
Remove warning about missing output config
2024-09-03 13:48:08 +03:00
Ivan Molodetskikh
f0157e03e7
Use libdisplay-info for make/model/serial parsing, implement throughout
2024-09-03 13:48:08 +03:00
Ivan Molodetskikh
f7181fb066
Implement by-id workspace action addressing
...
It's not added to clap because there's no convenient mutually-exclusive
argument enum derive yet (to have either the current <REFERENCE> or an
--id <ID>). It's not added to config parsing because I don't see how it
could be useful there. As such, it's only accessible through raw IPC.
2024-09-01 23:47:19 -07:00
Ivan Molodetskikh
0f522f209b
Change MappedIt::get() to return u64
2024-09-01 23:47:19 -07:00
Ivan Molodetskikh
30b213601a
Implement the event stream IPC
2024-09-01 23:47:19 -07:00
Ivan Molodetskikh
2b3d196876
Remove unused function
2024-09-01 23:47:19 -07:00
Ivan Molodetskikh
b2c7d3ad40
Rework PW screencast frame timing
...
- Remove the 0.5 ms hack.
- Add redraw scheduling to fix stuck frame if the last redrawn frame
happened too soon.
2024-08-24 10:49:32 +03:00
Ivan Molodetskikh
ff7cbb97df
Fix screen transition across scale/transform changes
2024-08-23 12:54:07 +03:00
Ivan Molodetskikh
09f3d3fb12
Extract Niri::update_render_elements()
2024-08-23 12:54:07 +03:00
Ivan Molodetskikh
63defc25d2
Fix Clippy warnings
2024-08-23 12:21:47 +03:00
Ivan Molodetskikh
471dc714aa
Add damage check to PW screencasts
...
Avoids unnecessary frames.
2024-08-23 11:02:34 +03:00
Ivan Molodetskikh
7bfdf87bf0
Implement resize transactions
2024-08-22 15:19:11 +03:00
Ivan Molodetskikh
618fa08aa5
Update Smithay (apply state in post commit)
2024-08-22 14:15:04 +03:00
Ivan Molodetskikh
a40e7b4470
Handle dmabuf blocker separately in toplevel pre-commit
...
Will be needed for transactions.
2024-08-22 13:13:28 +03:00
Michael Yang
f1894f6f9a
feature: add on-demand vrr ( #586 )
...
* feature: add on-demand vrr
* Don't require connector::Info in try_to_set_vrr
* Improve VRR help message
* Rename connector_handle => connector
* Fix tracy span name
* Move on demand vrr flag set higher
* wiki: Mention on-demand VRR
---------
Co-authored-by: Ivan Molodetskikh <yalterz@gmail.com >
2024-08-22 11:58:07 +03:00
Ivan Molodetskikh
883763c172
Implement stub mutter-x11-interop
...
Allows xdp-gnome dialogs to work with X11 clients.
Fixes https://github.com/YaLTeR/niri/issues/594
2024-08-13 09:15:57 +03:00
Ivan Molodetskikh
47680e43c5
screencopy: Wait for SyncPoint before submitting
2024-08-08 13:32:37 +03:00
Ivan Molodetskikh
0f1e44aac6
screencopy: Fix transformed damage calculation
2024-08-08 13:32:37 +03:00
Michael Yang
b6a7b3e9e4
feat: update screencopy to version 3
2024-08-08 13:32:37 +03:00
Ivan Molodetskikh
8ff90c4fc2
Implement PipeWire DMA-BUF modifier negotiation
2024-08-06 18:01:52 +03:00
Anant Sharma
689338f059
Add background color option for output
2024-07-26 11:51:29 +03:00
Ivan Molodetskikh
4513663084
screenshot-ui: Animate opening
2024-07-08 11:24:08 +04:00
Ivan Molodetskikh
236f96e676
screenshot-ui: Add a help panel
2024-07-08 10:54:21 +04:00
Ivan Molodetskikh
6ec9c72539
Clear pointer grab upon opening the screenshot UI
...
Gets rid of DND surfaces.
2024-07-07 09:54:19 +04:00
Ivan Molodetskikh
1a1086206c
Extract capture_screenshots()
2024-07-07 09:48:19 +04:00
Ivan Molodetskikh
f2766b103d
Implement toggling pointer for the screenshot UI
2024-07-07 09:23:59 +04:00
Ivan Molodetskikh
e394a7ff20
Implement on-demand layer-shell keyboard focus
2024-07-06 18:20:19 +04:00
Ivan Molodetskikh
921ed63204
Add LayerSurface to PointerFocus
2024-07-06 18:17:48 +04:00
Ivan Molodetskikh
1da99f4003
Implement focus-follows-mouse max-scroll-amount
2024-07-05 20:53:11 +04:00
Ivan Molodetskikh
de6caec685
Recompute current pointer focus for focus-follows-mouse
...
Fixes https://github.com/YaLTeR/niri/issues/377 .
2024-07-05 10:13:50 +04:00
Salman Farooq
d3aebdbec4
Implement key repeat for compositor binds
2024-07-05 08:40:25 +03:00