mzur / gnome-shell-wsmatrix

GNOME shell extension to arrange workspaces in a two-dimensional grid with workspace thumbnails
GNU General Public License v3.0
464 stars 58 forks source link

GNOME TWEAKS settings for workspaces reset after reboot/login-logout #210

Closed fredsco closed 2 years ago

fredsco commented 2 years ago

Whenever I reboot my machine (or logout and login) the workspace settings go back to default. In GNOME tweaks I set the workspaces to "Dynamic workspaces" after a reboot it goes back to "Static Workspaces" Is there anything I can do to make this setting fixed, even after reboot?

OS: Ubuntu 21.10

ebeem commented 2 years ago

wsmatrix will disable the dynamic workspaces on load, if you disable wsmatrix you will see that dynamic workspaces comes back. By this point, I can't recall why exactly we added this behavior, but I remember it's something to do with the incapability of wsmatrix to handle dynamic workspaces by design. You can probably add this behavior if you would like to bring it to wsmatrix. However, it's so tricky to implement as you will need to dynamically add a row of workspaces or a column of workspaces when one or more workspaces of the last row/column receives an application/window? This doesn't seem like a behavior anybody who uses wsmatrix wants as it will really defeat the usability in this case in a lot of scenarios.

I am not sure if someone who uses dynamic workspaces will find this feature helpful (I am personally not a user of this feature), but maybe to start, we need to design the experience. I am thinking right now 1- if a user add a window to the last workspace in a row or a column, a new row/column of workspaces will be appended. 2- every time a window is killed/moved, a check to last set of workspaces horizontally and vertically will be done and removed in case they were all empty.

Some problems that come to my mind here 1- wraparound won't work while moving windows to other workspaces (based on the behavior mentioned earlier) 2- there will always be a row and a column of workspaces that are empty (not used), which means more steps to find you workspaces which is probably not very productive.

mzur commented 2 years ago

So this breaks down to:

Please reopen if you have something to add.