-
Notifications
You must be signed in to change notification settings - Fork 34
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
Pinned workspaces #108
Comments
Hello there! I was curious: seeing as static workspaces was pushed back to Epoch 2 (from my understanding), Is there a way to automate the creation and placement of a set number of pinned workspaces, essentially providing fixed workspaces behaviour early? (It's the main feature I'm missing from COSMIC and one of two (the other being Night Light) not planned for the first release). Thanks. Edit: I should clarify that I'm aware this feature is not yet implemented so my question was more about whether such an aspect of it is planned. |
I'm not sure what you mean by the automated placement of a set number of pinned workspaces. |
Personally, the issue I have is not necessarily that COSMIC "removes" the workspace but rather that it
I always think about workspaces being tied to a hotkey I have to press but (2) causes workspaces to always shift around (see also pop-os/cosmic-comp#586). The problem with (1) is that I often have the same application on the same workspace (and thus hotkey) but when I e.g. want to put an app on number 5, I have to create 2, 3 and 4 first. |
@maria-komarova I'm sorry, what I meant was if there will be an exposed way to create scripts that would create a set number of fixed workspaces automatically. An exposed command line tool or config file that we could modify via scripts. |
Seems like this is implemented as a request at cosmic protocol: https://github.com/pop-os/cosmic-workspaces-epoch/pull/128/files Not very familiar with wayland, but I'm assuming it should be possible to write a wayland/cosmic client/script that can do the pinning automatically |
@tarruda Yeah, I was considering this because I thought it might have been necessary but it seems like it won't be needed for my usecase. I didn't delete my question because I thought a response might be useful to other people with similar questions |
For me, a simple solution would be to add two options in the dynamic workspace settings:
Some arguments for these features:
|
@Etienne-TR Considering existing window managers either have dynamic or static workpaces (or an option to toggle between the 2, such as gnome 3), I wonder how many users would prefer fixed + dynamic expansion. |
For users, it appears to be only dynamic, as it is now. It's simple and refers to something familiar. (For developers, there's no need to implement a specific static behavior, but only to adjust the dynamic behavior with parameters.) For those used to static, the two proposed options to adjust dynamic behavior address different use cases in an explicit way. I think this could be easily adopted by users from other desktop environments. |
Pinned workspaces is a new feature meant as an alternative to the fixed (or static) workspaces. The functionality in essence is very similar. The main difference is that workspaces are pinned in the window and workspaces overview instead of one using "Add workspace" button after switching to fixed workspaces in Settings. Having pinned workspace should allow us to avoid having a separate mode in the implementation.
Mockup - Workspace 1 is pinned, Workspace 3 is hovered.

If the window (Text Editor) on workspace 2 is closed on the mockup below, then one navigates away, workspace 2 is deleted because it is unpinned and therefore works as a dynamic workspace.

Figma prototype:
Figma mockups.
The text was updated successfully, but these errors were encountered: