Add an overview/zooming feature #352
Replies: 11 comments 15 replies
-
I thought about this a bit, I do have some vague ideas but nothing concrete yet. I'd need to experiment myself to tell what design I like. |
Beta Was this translation helpful? Give feedback.
-
If you'd be up to it, I'd be happy to call or just chat about possible designs, and issues that may come up with them :) |
Beta Was this translation helpful? Give feedback.
-
Something I thought about was zooming out "all the way" so that you see all your workspaces top to bottom, then however many windows fits left and right on each of them. Then you can click on the window that you need, or scroll the strip on every workspace left and right. Which is basically what you're suggesting, but zooming out even more. |
Beta Was this translation helpful? Give feedback.
-
That would work well. Though I wonder if it's better to have zoom stages, like adding more workspaces above and below the more you zoom out. Though doing it this was may be more work, it may be easier to tell what's on a window/what a window is, unless the thought is just to show the app icon on the area the window takes up. |
Beta Was this translation helpful? Give feedback.
-
I would love this. I still lose windows with Niri, I simply lose track of where I put them. Not having a workspace indicator, and workspaces disappearing when they're empty so their numbering keeps shifting, is probably what's causing that for me -- with Sway, I'd always have notes on 1, web on 2, code on 3, mail on 8, music on 9, etc. ChromeOS's overview mode has been nice to me. If you haven't used it, note how it has both zoomed-out windows to pick from, and shows miniature workspaces. Of course, Niri's window layout would make that look quite different -- but it's definitely proving the concept animated zoom out. |
Beta Was this translation helpful? Give feedback.
-
I have this same problem. Sometimes I'll end up with 5 or 6 terminals and not realize it. As much as I hate alt-tab in this type of setup, something that would just bring-up a mini live view strip of windows at the bottom, top, etc for that screen, when used, would really push Niri forward in usability. I'm thinking along the lines of the "large icons" switcher for KDE, but with live window preview. EDIT: re-reading other's posts, maybe when such a hotkey is pressed, a strip is shown for each active screen. |
Beta Was this translation helpful? Give feedback.
-
Only ~3 strips when zoomed-out, vertically scrollable, is better with window mini-previews. All workspaces visible zoomed-out, is better with icons. Strips being individually scrollable horizontally is great in either case. The problem with choosing between window previews and icons is neither one has solved the problem at least for me. Same icons can be present multiple times, e.g. in case of terminal windows but mini-previews can also make windows difficult to identify e.g. in case of terminal windows again. Assigning icons with window rules or something will be almost ideal. I know Brodie Robertson makes news videos on this wayland protocol. Maybe choose between icons and mini-previews dynamically based on number of workspaces? |
Beta Was this translation helpful? Give feedback.
-
Cool, it is minimap in game. Hopefully, may add one-click to destination key bindings. |
Beta Was this translation helpful? Give feedback.
-
My opinionated take on this, in case it helps. As a user who transitioned to niri after a decade+ with i3/sway, here's how I would intuitively expect this to work: I wouldn't override any keybindings or mouse behaviour as users will have already configured and customised that to their liking. Instead, keep the same key bindings and use the same workspace navigation actions, just within a zoomed-out view. In terms of additional actions to implement, I can see this working very well with just one: Further down the line you might want commands for |
Beta Was this translation helpful? Give feedback.
-
The zoom-out idea is very good, I miss the KDE's "exposè" effect and this zoom-out idea in @boomskats animation is the best for a scrollable-tiling compositor. Another way to resolve the lost-windows-problem is to have a sort of horizontal scrolling bar and below each window its appicon: center aligned for visible windows, piled up on the left/right for not visible windows. I was thinking about something like that done with EWW but I know that it's not possible for now to retrieve the list of open windows through niri msg. |
Beta Was this translation helpful? Give feedback.
-
I would like to have things modular since the point of WMs is to be extremely customizable, modular, and unbloated, so could this be a separate program or plugin? |
Beta Was this translation helpful? Give feedback.
-
I'm wondering if it's feasible to add a zooming feature into niri, I'd be happy to work on it if pointed in the correct direction.
I currently have the issue that windows and columns tend to get lost between workspaces and I think one the best ways to fix this is adding zoom functionality. Zooming out should show the workspace above and below, show additional columns left and right (if they exist), make the windows showing non-interactable, and you should be able to click on a column to focus it.
Beta Was this translation helpful? Give feedback.
All reactions