Skip to content
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

Can we make this similar to KDE Activities? #2

Open
tusharhero opened this issue Apr 18, 2024 · 5 comments
Open

Can we make this similar to KDE Activities? #2

tusharhero opened this issue Apr 18, 2024 · 5 comments

Comments

@tusharhero
Copy link
Contributor

tusharhero commented Apr 18, 2024

I don't know if you have used KDE in the past but they had a concept similar to this since ages. I was looking for this script because I wanted to emulate that feature.

KDE Activities are supposed to be used like this:

  • An activity for gaming,
  • An activity for work
    And so on.

I will use activity to refer to workrooms and virtual desktop to refer to workspaces.

I think this script is almost there but there are a few issues that need to be resolved.

  • There is no way to hide the virtual desktops from other activities on sway bar. This means you will can't just ignore that game running in gaming activity.

  • There is no way to change the wallpapers(or other appearances) on a per activity basis.

@IceAsteroid
Copy link
Owner

IceAsteroid commented Apr 19, 2024

You're welcome to discuss :)

I'm looking into kde activity.

And, don't expect much from this script, it should remain small & simple & fast for just the workroom functionality.

But to be honest, swaywm is very limited in terms of extensions. It doesn't have a nice "workspace overviewer", I use sov, though its problems are a ton.

Check this: milgra/sov#56

I was considering to make a switch to hyprland for maximum extensibility, but later decided not to, since I've written tons of scripts relevant for sway, and have other important things to do.

Regarding to your questions,

There is no way to hide the virtual desktops from other activities on sway bar. This means you will can't just ignore that game running in gaming activity.

I'm looking on it to see if possible, but to be honest, I don't see the point for other "activities" and their "workspaces" to be hidden. Instead, it's the full point here in swayworkroom.

Because there's no overview panel that's previewable for its activities, nothing, only switching because "workrooms", with the help of sov to see which "workroom" contains what GUI programs that its workspaces have, before to switch to.

There is no way to change the wallpapers(or other appearances) on a per activity basis.

It can be done to be honest, but is gonna be ugly, not necessary for this simple script

You can freely fork this script to implement more features that you desire.

My suggestions on the wallpaper thing:

  1. Create an addtional script, that can switch between wallpapers and remember the current one for the current workroom apart from other workrooms, often to store the current wallpaper's name in a temporary file
  2. The script should recognize identifier of the workroom stored in the specified temporary file by swayworkroom.sh, so when workroom is switched, different walpaper is shown.
  3. Have the ability to freely switch wallpapers independent between each workroom

I have two small scripts that exactly do the wallpaper switching, and it's quite good, but it's not for workrooms per basis, stay tuned for me to upload them on github

You can bind those two scripts with keybindings that are near each other, one script is used to "revolve up", one is to "revolve down" wallpapers in a directory.

I'm planning to refactor those two scripts into one script to function differently by options instead.

@tusharhero
Copy link
Contributor Author

I'm looking on it to see if possible, but to be honest, I don't see the point for other "activities" and their "workspaces" to be hidden. Instead, it's the full point here in swayworkroom.

Actually there is a point to doing this. Imagine you were working on project 1 in workroom 1, and then you switch to workroom 2 to work on project 2. Why would you want to see the workspaces for workroom 1 when you are working on workroom 2? Isn't it distracting?

@IceAsteroid
Copy link
Owner

IceAsteroid commented Apr 21, 2024

@tusharhero

I know what you meant, and I have not problems on this, my workflow in sway probably is different than yours, and I don't play games or stuff like that, it's all for work in this particular machine I use.

I can imagine implementing that via shell scripting with the use of sway's scratchpad functionality, but it's gonna be the pain in my ass to do so. Tons of work, little gain :(

Therefore, I'm sorry, I'm not gonna do that


Also, I've uploaded swaybgRevolve.sh in repo link

Give it a try if you want to :)

@tusharhero
Copy link
Contributor Author

Oh well, I have swtiched back to KDE (for now). I will keep this issue open, maybe in the future someone might want to implement this.

@IceAsteroid
Copy link
Owner

@tusharhero

I feel sorry, I'm just too busy on my own business in real life.

Have nice days, I hope you well

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants