-
Notifications
You must be signed in to change notification settings - Fork 94
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
New Tiling With Keyboard Designs #36
Comments
We've made some updates to the presentation of tiled windows, especially during moving windows. We've found during testing that we can simplify the borders indicating groups. We've also found that there's a lot of aspect ratios that don't scale well during the zoom out of the movement animation. To address both, we've added slight backgrounds to the tiles to help maintain the sense of a grid, and taken away most outer group borders. Active windows get a stronger tile background, and the window itself may get an active hint within that tile if the active hint is enabled. In this screenshot, the only borders shown are to indicate new groups that would be created if the active window moves in their direction. In many cases where a new group wouldn't be created, we use a stronger border to show which windows are adjacent. We've also taken another look at selected groups to make sure it fits with our new border rules and spacing. Selected groups will get a selection border, and a background that appears within gaps. When moving, the border is drawn around all the tiles of the group, and the tiles all receive the brighter active window background with no gaps in between. |
It should be possible to get those proportions for the columns, but at the moment there aren't plans to have master and stack functionality in terms of launching windows in specific tiles. There is some appetite to investigate ways of spawning windows but it's not set in the current roadmap. Although, I'm interested in that topic, personally :) |
It's not launching windows in specific tiles, it's an automatic layout. There are a couple of ways this can be configured: LIFO stack - the last app launched is always in the master tile and all previously launched apps are pushed down the stack or FIFO stack - the first launched app is always in the master tile and subsequent apps are in the stack. In hyprland I use the LIFO stack for my desktops. |
Hi, Is it possible to have some fixed tiling templates 👍 like vertical window layout or a master stack layout. This is the only feature I miss from my i3 when I moved to POPos. I know in POPos I can use the SUPER + O key to do, it but if it was predefined that would be even better 🥇 |
This issue is a design proposal to improve the usability of COSMIC's tiling features for keyboard users. We're starting an overall initiative to make common tiling tasks easier outside of the adjustment mode that is present in Pop!_OS, and our designs below re-imagine our tiling layout system to make layouts more flexible. Here are this issue's main goals:
Designs
We'll create a new shortcut to move windows in a tiling layout without using an adjustment mode. That shortcut will be Shift-Super with the arrow keys (or h/j/k/l, the vim equivalents for arrows), pending further testing.
Initially, we will have grouping hints show up after initiating the first move, done by hitting Shift-Super and an arrow key. We are also considering having the hints show up after just hitting Shift-Super, with the additional possibility of only showing up after a delay as to not interrupt the user if they have a custom shortcut using the Shift and Super modifiers.
When moving windows, the background is covered by a 90% opacity overlay and the tiling area of the desktop gets 16px padding. Applications in the tiling space will "zoom out" to accommodate the padding of the tiling area. Groups in the tiling tree may also get a 3px warm-gray border, on the inside of another 16px padding. Generally, whether or not the grouping indicator appears depends on the proximity of the group to the active window. We'd prefer to only show grouping indicators for groups that are immediately relevant.
New windows still spawn with the binary-tree model in mind; new windows create a "branch" with the previously-active window, taking half of the size on the long edge. In our new tiling, it will be easier to have groups with three or more equal children in a group.
As the user moves their active window, we will show the group that the active window is in, as well as what new groups can be created. The user can quickly create groups with other windows at the same level by moving the active window towards them with the movement shortcut and arrow keys.
At the moment, the heuristic is that groups your active window currently inhabits are indicated with our warm-gray border color, and groups that your active window could inhabit (as a direct descendant) are indicated with the same border at 60% opacity.
There is one notable exception: currently, when your active window is the only sibling to a group with the opposite orientation, we aren't displaying the border around that sibling group to make it clearer that your active window will insert between those items if moved in that direction:
We will want to add a configuration option to not show zoom and hints, which may connect to the low motion settings.
Prototype
We have a prototype in which you can simulate moving one window in this new tiling system:
https://www.figma.com/proto/Vl3y5ug2i6IQYQFI1zxv6o/Cosmic-Tiling-Prototyping?node-id=216%3A10661&starting-point-node-id=216%3A13321
Prototype Notes:
The text was updated successfully, but these errors were encountered: