aboutsummaryrefslogtreecommitdiff
path: root/src/layout
AgeCommit message (Collapse)Author
2025-02-06layout: Extract col variableIvan Molodetskikh
2025-02-06layout: Preserve focused window in column when window above is closedIvan Molodetskikh
Might be the longest standing bug in niri?
2025-02-05Add focus-window-in-column (by index) actionIvan Molodetskikh
2025-02-05Add focus-window-top/bottom/down-or-top/up-or-bottom actionsIvan Molodetskikh
2025-02-05Fix find_window_and_output() returning None with no outputsIvan Molodetskikh
As far as I can tell, this would mess up a ton of the logic. Not sure how anything worked with no outputs before?
2025-02-04layout/scrolling: Extract tiles_origin()Ivan Molodetskikh
2025-02-02Add impl From<Color> for GradientIvan Molodetskikh
2025-02-01layout: Extract max_tile_heightIvan Molodetskikh
2025-02-01layout: Inline variableIvan Molodetskikh
2025-02-01layout: Verify that individual tiles don't get sized taller than working areaIvan Molodetskikh
2025-01-31Take border into account for fixed preset-column-width for tiled windowsIvan Molodetskikh
2025-01-31Extract SizeChange::from(PresetSize)Ivan Molodetskikh
2025-01-31layout: Update module commentIvan Molodetskikh
2025-01-31layout: Move tests to separate fileIvan Molodetskikh
This way changing just the tests won't rebuild the main library.
2025-01-30adjust horizontal view movement gestures snap points for ↵fable
center-focused-column "on-overflow" (#1052) * Adjust snap points for center-focused-column "on-overflow" * fix outer gaps not being accounted for in is_overflowing
2025-01-30misc: Fix typosbbb651
Using [`typos`](https://github.com/crate-ci/typos) cli
2025-01-29layout: Do not update original output for named workspaces upon adding windowsIvan Molodetskikh
The way named workspaces are generally used makes them more "attached" to their original output. For example, you have a two-monitor setup with named workspaces on both. When you disconnect the monitor to go somewhere and work for a while, then return, you probably want your named workspaces to return to where they were on your second monitor. This is in contrast to unnamed workspaces which are more transient and should more easily follow you wherever you're working.
2025-01-29layout: Update workspace original output on moving even if same monitorIvan Molodetskikh
Moving is an explicit action that puts the workspace on a specific monitor. It makes sense to update the original output even if the workspace already happens to be on the target monitor.
2025-01-25Add move-workspace-to-index and move-workspace-to-monitor actions (#1007)Kirottu
* Added move-workspace-to-index and move-workspace-to-monitor IPC actions * Added redraws to the workspace handling actions, fixed tests that panicked, fixed other mentioned problems. * Fixed workspace focusing and handling numbered workspaces with `move-workspace-to-index` * Fixed more inconsistencies with move-workspace-to-monitor * Added back `self.workspace_switch = None` * Reordered some workspace cleanup logic * Fix formatting * Add missing blank lines * Fix moving workspace to same monitor and wrong current index updating * Move function up and add fixme comment --------- Co-authored-by: Ivan Molodetskikh <yalterz@gmail.com>
2025-01-23Add toggle-window-rule-opacity actionIvan Molodetskikh
2025-01-21tile: Rename update() to update_render_elements()Ivan Molodetskikh
2025-01-18Remove Vec from Shadow::render()Ivan Molodetskikh
2025-01-17Implement window shadowsIvan Molodetskikh
2025-01-15Remove obsolete commentIvan Molodetskikh
2025-01-10Fix new Clippy warningsIvan Molodetskikh
2025-01-10Allow workspace names to be changed dynamically (#904)rustn00b
* Add un/set workspace name actions * Add SetWorkspaceName reference to proptests * Simplify unname_workspace * Add ewaf version of set first workspace name test * Simplify more * Fix comment * Make workspace in set-workspace-name a positional option --------- Co-authored-by: Ivan Molodetskikh <yalterz@gmail.com>
2025-01-09Add missing interactively moved window check in center_windowIvan Molodetskikh
2025-01-09Add a window swap operation (#899)rustn00b
Swap the active window with the a neighboring column's active window. --------- Co-authored-by: Ivan Molodetskikh <yalterz@gmail.com> Take into account PR comments - no longer behave like an expel when a swap is made in a direction where there is no column to swap with - fix janky animation
2025-01-04Migrate to new Rectangle functionsIvan Molodetskikh
2024-12-30Fix width shrinking when going from floating to scrollingIvan Molodetskikh
2024-12-30Add default-floating-position relative-to propertyIvan Molodetskikh
2024-12-30Add toggle-window-width by-id actionIvan Molodetskikh
2024-12-30Implement default-window-height for scrolling windowsIvan Molodetskikh
2024-12-30Fix move-window-to-workspace panic when wrong monitor is activeIvan Molodetskikh
2024-12-30Add center-window by-id actionIvan Molodetskikh
2024-12-30Clamp single tiled window heightIvan Molodetskikh
Now that we have floating for taller-than-screen windows.
2024-12-30Hide focus ring for unfocused layout and under interactive moveIvan Molodetskikh
2024-12-30Add default-floating-position window ruleIvan Molodetskikh
2024-12-30floating: Remove initial offset when always-centeringIvan Molodetskikh
2024-12-30layout: Add animate arg to move_floating_window()Ivan Molodetskikh
2024-12-30Add move-floating-window actionIvan Molodetskikh
2024-12-30floating: Cancel resize when moving or changing sizeIvan Molodetskikh
2024-12-30Add focus-floating/tiling actionsIvan Molodetskikh
2024-12-30Add move-window-to-floating/tiling actionsIvan Molodetskikh
2024-12-30Add set-window-width actionIvan Molodetskikh
2024-12-30Implement is-floating window rule matcherIvan Molodetskikh
2024-12-30Implement default-window-height window ruleIvan Molodetskikh
Only works for floats that aren't initially fullscreen atm.
2024-12-30floating: Support default-column-width in most casesIvan Molodetskikh
open-fullscreen + open-floating default width is still not supported in this commit.
2024-12-30layout: Use new helper functionIvan Molodetskikh
2024-12-30layout: Implement next-to + open-fullscreenIvan Molodetskikh