Without explicit sync, we have no way to signal the PipeWire consumer when the
rendering is done. So, wait until it's done before giving it the frame.
This should fix flickering screencasts on NVIDIA.
We're gonna need to store these in the future, and the lifetime on the pw-rs
Buffer prevents us from easily doing that. Besides, we'll need access to
metadata which pw-rs doesn't expose yet.
Makes Orca work with niri:
- keyboard watching and announcing everywhere (not just GTK 3 windows)
- grabs for the Orca modifier (with double-press to pass through) and keystrokes
* Add Nvidia.md leaf file, add links in sidebar & getting started
* squash review-commits from gh to one commit
* heap reuse ratio from 1 => 0 to match currently shipped solution
* Update wiki/Nvidia.md
---------
Co-authored-by: Ivan Molodetskikh <yalterz@gmail.com>
* Set logind LockedHint on lock/unlock
* fixup! Set logind LockedHint on lock/unlock
- use warn!() instead of error!()
- extract dbus call into a separate method
* fixup! Set logind LockedHint on lock/unlock
- Update LockedHint in refresh_and_flush_clients
* fixup! Set logind LockedHint on lock/unlock
woops
* fixup! Set logind LockedHint on lock/unlock
- only call SetLockedHint if niri was run with `--session`
* fixes
---------
Co-authored-by: Ivan Molodetskikh <yalterz@gmail.com>
* Add nushell completion support
Adds `clap_complete_nushell` crate and implements it into the `niri
completions` command.
* Add nushell to flake.nix autocompletions
* Convert to `TryFrom`
* Fix linting errors
* Move types down
---------
Co-authored-by: Ivan Molodetskikh <yalterz@gmail.com>
Minor change so that `get_pointer()` (which has a lock) does not get
called twice. Also moved the call to `current_location()` to the scope
where it is needed.
* feat: add hint to disable "Important Hotkeys" in the default config file
* Update resources/default-config.kdl
---------
Co-authored-by: Ivan Molodetskikh <yalterz@gmail.com>