aboutsummaryrefslogtreecommitdiff
path: root/src
AgeCommit message (Collapse)Author
2025-03-17Track uncommitted windowed fullscreen stateIvan Molodetskikh
Alright, this is the proper implementation. No more flickering.
2025-03-17Implement toggle-windowed-fullscreenIvan Molodetskikh
Windowed, or fake, or detached, fullscreen, is when a window thinks that it's fullscreen, but the compositor treats it as a normal window.
2025-03-17layout: Rename argument from window to idIvan Molodetskikh
2025-03-17layout: Don't forget to call on_commit() for the interactively moved windowIvan Molodetskikh
2025-03-17layout/tests: Implement going into fullscreen stateIvan Molodetskikh
2025-03-17layout/tile: Don't take fullscreen into account in min/max sizeIvan Molodetskikh
They are used strictly for non-fullscreen size computation.
2025-03-17layout: Verify moved tile invariantsIvan Molodetskikh
2025-03-17layout: Test that interactively moved window is not pending fullscreenIvan Molodetskikh
2025-03-17Refactor request_fullscreen() to be an argument on request_size()Ivan Molodetskikh
2025-03-17layout: Switch two places to workspaces_mut()Ivan Molodetskikh
2025-03-17Add wait-for-frame-completion-in-pipewire debug flag for NVIDIA screencastsCole Leavitt
2025-03-16Keep buffer size when switching dynamic cast to NothingIvan Molodetskikh
Otherwise, we won't actually clear it because it'll become Pending.
2025-03-15Implement dynamic screencast targetIvan Molodetskikh
2025-03-15Move CastTarget to src/niri.rsIvan Molodetskikh
2025-03-15Use windows() instead of with_windows()Ivan Molodetskikh
2025-03-15Store cast Stream ID, use it for Redraw requestIvan Molodetskikh
Unlike StopCast, Redraw targets a specific Cast. Use the stream ID to identify it.
2025-03-14Add move-column-to-index actionDuncan Overbruck
2025-03-14Add focus-column (by index) actionDuncan Overbruck
2025-03-14layout: Preserve previous view offset on consume-leftIvan Molodetskikh
2025-03-13Try default when configured xkb keymap fails to compileIvan Molodetskikh
Fixes panic at startup.
2025-03-13Wait for lock surfaces before lockingIvan Molodetskikh
Fixes the red flash when locking.
2025-03-13Extract utils::is_mapped()Ivan Molodetskikh
2025-03-13Add tiled-state window rule, update the tiled state liveIvan Molodetskikh
2025-03-13feat(trackpoint): add left-handed option supportdbeley
2025-03-10added move window to monitor by idAnnika Hannig
2025-03-10Implemented move-window-to-monitor and move-column-to-monitorAnnika Hannig
2025-03-10Implement focus-monitor to focus a specific monitor by output.Annika Hannig
2025-03-10feat: 🎉 add `show-pointer` for `Screenshot` and `ScreenshotScreen`Toby Bridle
2025-03-10Add Shell completions (#1226)Jon Heinritz
* feat(cli): add subcommand to generate shell completions * Update src/cli.rs Co-authored-by: Ivan Molodetskikh <yalterz@gmail.com> --------- Co-authored-by: Ivan Molodetskikh <yalterz@gmail.com>
2025-03-10Keep track of RenderElementStates in offscreensIvan Molodetskikh
This both avoids sending frame callbacks to surfaces invisible on the offscreen (fixing Firefox with subsurface compositing in the process), and fixes searching for split popups during the resize animation.
2025-03-10Store offscreen element id on Mapped instead of user dataIvan Molodetskikh
We don't need user data for this.
2025-03-10Make interactively moved window semitransparentIvan Molodetskikh
2025-03-10Offscreen semitransparent tilesIvan Molodetskikh
Now that offscreen does damage tracking, we can reasonably do this. Note this only affects full-tile opacity, not window opacity.
2025-03-10layout/tile: Use animated tile size for open anim geoIvan Molodetskikh
This is the right value to use as the texture will also match the animated size.
2025-03-10tile: Use OffscreenBuffer for resize animsIvan Molodetskikh
OffscreenBuffer knows how to avoid recreating the texture every frame.
2025-03-10render_helpers/resize: Fix logic to allow for partially-filled textureIvan Molodetskikh
"texture geo" defines offset and src size, rather than the full texture size.
2025-03-10offscreen: Don't recreate if size decreasedIvan Molodetskikh
2025-03-10offscreen: Track and return damageIvan Molodetskikh
This is the second part of the damage equation: now the offscreen element itself reports correct damage, so partial redraws to the texture don't cause full redraws of the texture element itself.
2025-03-10offscreen: Take damage into account when renderingIvan Molodetskikh
Does not yet signal the damage outside, but does skip rerendering if there was no damage.
2025-03-10Cache texture in OpenAnimationIvan Molodetskikh
Don't recreate it unless the size changes. This lays the groundwork for also tracking damage in the future.
2025-03-10Update Smithay (Framebuffer type)Ivan Molodetskikh
2025-03-09doc: fix wrongly formatted link that `rustdoc` kept complaining aboutJon Heinritz
2025-03-02mapped: Omit popups from animation snapshotIvan Molodetskikh
It's used only for resizes, and those render popups on top.
2025-03-02Allow disabling tap-and-drag (#1107)Alex David
* Allow disabling tap-and-drag Similar to https://github.com/YaLTeR/niri/pull/1088, this adds a new touchpad `drag` configuration option that configures tap-and-drag behavior. Currently tap-and-drag is always enabled when the `tap` setting is enabled, but other compositors allow setting this separately. * Update wiki/Configuration:-Input.md --------- Co-authored-by: Ivan Molodetskikh <yalterz@gmail.com>
2025-03-01Added top, left, bottom and right floating windows alignement (#1169)Martino Ferrari
* feat: added top, left, bottom, right alignement options * feat: implemented extra alignement * feat: added example * doc: updated documentation with extra alignements * doc: moved example in wiki and typo correction * fix: relative position should be positive and not negative * fixes --------- Co-authored-by: Martino Ferrari <martinogiordano.ferrari@iter.org> Co-authored-by: Ivan Molodetskikh <yalterz@gmail.com>
2025-02-27Extract encompassing_geo()Ivan Molodetskikh
2025-02-27render_helpers: Use upscale(-1)Ivan Molodetskikh
2025-02-27layout/monitor: Remove unused functionIvan Molodetskikh
2025-02-27layout/monitor: Remove redundant passthrough functionsIvan Molodetskikh
2025-02-26Add honor-xdg-activation-with-invalid-serial debug flagIvan Molodetskikh