Christian Meissl
8e3e93b624
bump calloop to 0.14.4
...
resolves an issue where cancelling
timers can result in performance degradation
over time and memory buildup
2026-02-14 13:50:16 +08:00
Christian Meissl
c1146c0bef
bump smithay: fix zxdg_exported crash
2026-02-13 15:16:38 +08:00
Ivan Molodetskikh
41b5de8769
Change all links from YaLTeR/niri to niri-wm/niri
2026-02-10 17:59:14 +03:00
blue linden
8d9bc2a5c9
replace yalter/ and vortriz/ with niri-wm/ in repo links
2026-02-10 21:52:58 +08:00
Christian Meissl
6d5c5f12b2
Fix dead surface hook VRAM leak ( #3404 )
...
* remove pre-commit hook when surface is destroyed
this re-uses the already existing remove_default_dmabuf_pre_commit_hook
during surface destruction instead of just removing the hook from the
stored list of hooks.
* do not add dmabuf pre-commit hook for destroyed surfaces
this prevents surfaces getting stored indefinitely in case
some logic tries to add the hook for an already
destroyed surface.
* align surface/toplevel destruction order for client destruction
resource destruction has undefined order in case
the client does not explicitly destroy the resourced
and wait for destruction to complete.
the same applies for clients exiting unexpectedly.
* rearrange some things
---------
Co-authored-by: Ivan Molodetskikh <yalterz@gmail.com >
2026-02-10 05:55:49 +00:00
Ivan Molodetskikh
42b2aeb6e6
wiki: Add missing Since
2026-02-10 08:25:51 +03:00
Ivan Molodetskikh
ab47f5cec4
Remove obsolete FIXME
2026-02-06 19:22:39 +03:00
ジムワルド
549148d277
Add load-config-file --path to load a different config ( #3395 )
...
* ipc: allow load-config to relocate the path of the config
* doc: add info about alternative configuration paths and relocating
Co-authored-by: Ivan Molodetskikh <yalterz@gmail.com >
* Update docs/wiki/Integrating-niri.md
* Update niri-ipc/src/lib.rs
* Update src/ipc/server.rs
---------
Co-authored-by: Ivan Molodetskikh <yalterz@gmail.com >
2026-02-06 19:22:16 +03:00
Manuel Mendez
189917c933
Add trackball to Configuration:-Input overview
2026-02-03 12:29:25 +08:00
Ivan Molodetskikh
f30db163b5
layout/tile: Remove redundant .to_f64()
2026-01-28 08:12:06 +03:00
Ivan Molodetskikh
a78f07cd58
Remove ResolvedLayerRules::empty()
...
Same cleanup as ResolvedWindowRules earlier, but here we didn't even
have any reason to keep having it.
2026-01-28 08:12:06 +03:00
Semper_
765a241c5a
Link to Electron section of the wiki in FAQ ( #3324 )
...
* Update Electron info
There were changes made that remove the env variable:
https://github.com/electron/electron/issues/48001
* Clarify Electron versions
* Link to the electron section of the wiki
* Edit wording and link to the electron section of the wiki
2026-01-27 20:52:25 +03:00
Ivan Molodetskikh
a00b271a15
pw_utils: Lower default buffer count to 8
...
We certainly don't need 16 buffers.
2026-01-27 20:42:25 +03:00
Semper_
e1015ac92f
Docs: Update Electron info ( #3320 )
...
* Update Electron info
There were changes made that remove the env variable:
https://github.com/electron/electron/issues/48001
* Clarify Electron versions
2026-01-27 09:21:21 +03:00
Ivan Molodetskikh
a34ed51586
Make debug_draw_opaque_regions work in screencasts again
2026-01-26 06:18:35 +03:00
Ivan Molodetskikh
5ddcf195dd
Remove unused portable-atomic dep
...
Has been unused for a long while (since the animation clock refactor).
2026-01-25 20:49:07 +03:00
Ivan Molodetskikh
e11abe554f
Fix expel-window-from-column comment
...
It's been changed to this a while ago.
2026-01-25 13:33:15 +03:00
Ivan Molodetskikh
9261fd6342
layout/tests: Add test for second workspace y = 0
2026-01-25 18:28:35 +08:00
SAKURA
fb2f66f361
layout/monitor: round workspace render geo to physical pixels
2026-01-25 18:28:35 +08:00
dependabot[bot]
e2e15b7a18
build(deps): bump zbus in the rust-dependencies group
...
Bumps the rust-dependencies group with 1 update: [zbus](https://github.com/z-galaxy/zbus ).
Updates `zbus` from 5.13.0 to 5.13.1
- [Release notes](https://github.com/z-galaxy/zbus/releases )
- [Changelog](https://github.com/z-galaxy/zbus/blob/main/release-plz.toml )
- [Commits](https://github.com/z-galaxy/zbus/compare/zbus-5.13.0...zbus-5.13.1 )
---
updated-dependencies:
- dependency-name: zbus
dependency-version: 5.13.1
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: rust-dependencies
...
Signed-off-by: dependabot[bot] <support@github.com >
2026-01-25 18:23:49 +08:00
Xarth
0a416eedda
docs: Update Arch Linux installation instructions
...
Removed 'wl-clipboard' and 'cliphist' from the installation command for Arch Linux. Because dms doesn't request that now.
2026-01-25 18:22:38 +08:00
Ivan Molodetskikh
d7184a04b9
render_helpers: Add Smithay Tracy GPU spans
2026-01-17 22:31:05 +03:00
Ivan Molodetskikh
bdf394260a
render_helpers: Add Tracy spans to draw() calls
2026-01-17 22:30:32 +03:00
Ivan Molodetskikh
74d14be01f
Update Smithay (virtual keyboard, layer-shell geometry, GPU profiling)
...
Also includes the necessary code to handle the virtual keyboard
compositor-side. Similar to the virtual pointer, we have an InputDevice
impl that allows reusing the logic from process_input_event().
Co-authored-by: wxt <3264117476@qq.com >
2026-01-17 22:29:10 +03:00
Ivan Molodetskikh
3ccb06f564
Fix panic in screencopy manager destroyed()
2026-01-17 15:32:20 +03:00
Ivan Molodetskikh
d9e755d575
screencasting: Only render pointer when it's within output
2026-01-17 13:59:23 +03:00
Ivan Molodetskikh
87e2dd0361
Revert "Move set_dynamic_cast_target() stub closer to the other ones"
...
This reverts commit dd93c39ed0 .
Why did I do this, that function is on a different type
2026-01-15 17:29:37 +03:00
Ivan Molodetskikh
dd93c39ed0
Move set_dynamic_cast_target() stub closer to the other ones
2026-01-15 13:14:23 +03:00
Ivan Molodetskikh
849788bb28
Add niri msg stop-cast --session-id
2026-01-15 13:13:50 +03:00
Ivan Molodetskikh
9015ff8e36
ipc: Add pw_node_id to PipeWire Casts
2026-01-15 08:42:25 +03:00
Ivan Molodetskikh
e546b339a3
ipc: Add PID to screencopy Casts
2026-01-15 08:42:25 +03:00
Ivan Molodetskikh
b39edf405a
screencopy: Add timeout to casts considered stopped
...
Otherwise xdp-wlr never stops the cast after it first starts.
2026-01-15 08:42:25 +03:00
Ivan Molodetskikh
b98f4906da
ipc: Add CastKind
2026-01-15 08:42:25 +03:00
Ivan Molodetskikh
e82830c68c
ipc: Add screencopy cast tracking
...
Track wlr-screencopy sessions that use with_damage as screencasts. These
are used by tools like wl-screenrec for continuous recording.
2026-01-15 08:42:25 +03:00
Ivan Molodetskikh
238caaf8da
ipc: Add screencast request and events for PipeWire casts
...
Allows desktop bars to show when screen recording is active.
2026-01-15 08:42:25 +03:00
Ivan Molodetskikh
9c79108afa
Refactor wlr-screencopy state cleanup
...
Before we cleaned up when binding a new manager, meaning that after a
screencopy client exited, the queue kept existing until a new one is
bound. We'll need precise tracking for the screencast IPC, so this
commit refactors to do just that: clean up the queue immediately when
all referring objects no longer exist.
This commit also fixes an issue where destroyed frames (e.g. from a
killed client) didn't clean the corresponding screencopy objects,
leading them to exist forever.
2026-01-13 23:01:21 +03:00
Ivan Molodetskikh
2571242887
screencopy: Pop first screencopy instead of last
...
This was never found probably because no client submits multiple frames
at once.
2026-01-13 23:00:38 +03:00
Ivan Molodetskikh
6f92b3296a
Store output name in CastTarget
...
Will be useful in the next commit to avoid fetching it every time.
2026-01-13 21:31:51 +03:00
Ivan Molodetskikh
570ea119ba
Extract cast session/stream ID counters to global scope
...
Add CastSessionId and CastStreamId newtypes. This lifts the atomic
counters from the D-Bus mutter_screen_cast module to a shared location,
preparing for adding screencopy cast tracking which will need the same
ID types.
2026-01-13 21:31:51 +03:00
Ivan Molodetskikh
df4614e62c
screencasting: Use spans to reduce logging boilerplate
2026-01-12 21:33:29 +03:00
Ivan Molodetskikh
3672e79369
Delay starting dynamic casts until there's a target
...
This avoids a weird 1x1 stream as well as one renegotiation which is a
complex operation, and some clients apparently have a problem with it.
2026-01-12 08:45:03 +03:00
Ivan Molodetskikh
2d16abdaae
Move dynamic_target set outside pw_utils
2026-01-12 08:37:58 +03:00
Ivan Molodetskikh
ff081acddc
screencasting: Extract some logic into functions
2026-01-12 08:37:58 +03:00
Ivan Molodetskikh
afe27a143b
Move xdp-gnome-screencast code into separate module
2026-01-12 07:59:56 +03:00
Ivan Molodetskikh
fd2916eb72
Honor pointer visibility in screencasts
...
Regressed in 05599ce2c4 .
2026-01-12 07:11:56 +03:00
Janis
e9d888cd52
Set NIRI_BUILD_COMMIT in flake.nix ( #3235 )
2026-01-11 19:59:43 +03:00
abmantis
05599ce2c4
Implement cursor metadata in window screencast
...
Co-authored-by: Ivan Molodetskikh <yalterz@gmail.com >
2026-01-11 06:51:14 -08:00
Ivan Molodetskikh
0fb6c5706b
Extract pointer_pos_for_window_cast()
...
Will be used for window screencasts too.
2026-01-11 06:51:14 -08:00
Ivan Molodetskikh
79aaa4c6c0
Upgrade dependencies
2026-01-11 15:37:00 +03:00
Ivan Molodetskikh
7e559dc468
Use unadjusted clock for config notification shown duration
...
It shouldn't be affected by anim slowdown (or, more importantly,
speedup).
2026-01-11 15:08:58 +03:00