klangman / CassiaWindowList

A WindowList/PanelLauncher applet for the Cinnamon desktop environment
https://cinnamon-spices.linuxmint.com/applets/view/372
GNU General Public License v3.0
13 stars 1 forks source link

Show all windows other workspaces, grayscale and icon spacing #3

Closed wpwpwpwpw closed 10 months ago

wpwpwpwpw commented 1 year ago

Hi!

I very much appreciate this spice! I use it daily. I would like to ask you if it would be possible to add an option to show all windows even if they are in another workspace, to get the icons to show in grayscale and to change the spacing between icons. This would complete all the features I believe a taskbar could have.

Thanks for your work!

klangman commented 1 year ago

I'll look into your suggestions and see how I can make it fit into the design (particularly the "showing windows from other workspace" idea). What would you expect to happen when you click on a window-list button for a window on another workspace? Bring the window to the current workspace or switch to that workspace?

You request for grayscale icons, is that just for windows from other workspaces (as a way to indicate the window is on a different workspace?) or a general option that applies to all window list buttons?

As for the icon spacing suggestion, I believe that spacing dependant on the Theme. I could over ride the theme but that's not a great idea in general, but I guess an option might be doable, I'll have to think about that. You could look into your theme's CSS for the "grouped-window-list-item-box" class for margins/padding.

I am glad you are finding the applet useful, and thanks for the suggestions!

wpwpwpwpw commented 1 year ago

Hi! Thanks a lot for your quick answer. In relation to the window-list button, I would expect it to take me to the last opened window's workspace. This is the behavior in the default Group Windows spice. And whenever I want a new window in the workspace I am at the moment, I just right click the icon and click New Window (example Firefox).

The greyscale idea was more for the sake of aesthetical integration, though it would be too a great idea that of the non opened applications to be grayscale. If feasible, maybe a tint or brightness/contrast option could be cool too.

As for the icon spacing, it just seamed like they are nearer than the ones I use for notifications, sound, network... that are available as default. Nonetheless, those I could get the icon to be smaller too.

Again, thanks a lot for your effort!

klangman commented 1 year ago

Hi! Thanks a lot for your quick answer. In relation to the window-list button, I would expect it to take me to the last opened window's workspace. This is the behavior in the default Group Windows spice. And whenever I want a new window in the workspace I am at the moment, I just right click the icon and click New Window (example Firefox).

Ah... If I am understanding you correctly then what you want is for the set of "pinned" buttons to appear on all workspaces??

To do that in CassiaWindowList you need to go to the configuration dialog "General" tab and change the "Pinning of window list buttons" option to "Common across workspaces". Is that the behaviour you were looking for??

wpwpwpwpw commented 1 year ago

Hi! I already have that option set, however that was not what I was looking for. Surely, when that option is on, the pinned window list buttons appear in all workspaces. However, what I was suggesting is that a) all the buttons, whether they are pinned or not, appear in all workspaces and b) even if one button's window is opened in another workspace, instead of opening a new window of said application when I click it (say firefox), on clicking the workspace changes to the one that contains the last opened window of such application (like the default grouped-window-list@cinnamon).

Again, thanks for your time!

klangman commented 1 year ago

Oh... I see it now.. There is an option "Show windows from all workspaces" in the grouped window list. But it's not the default for me.

wpwpwpwpw commented 1 year ago

It would make it possible to have a taskbar like in windows, though for all workspaces. Launcher and window grouping in same icon, clicking on it to access last opened window of that app.

Thanks!

klangman commented 1 year ago

Ya.. I think buttons for windows on all workspaces can be done without too much work. As for the grayscale, there is no API I found yet to do that, so unless I find an existing API it would have to be an "in app" icon transformation. That makes it a bit more difficult.

klangman commented 1 year ago

@wpwpwpwpw Question... Should the order of the windows on the window-list be workspace specific or should a change (drag&drop) of the window order on one workspace effect all workspaces? The grouped-window-list allows for different window orders for each workspace. What's your opinion on that. I guess I am leaning towards doing the same thing that the grouped-window-list does.

wpwpwpwpw commented 1 year ago

I believe that kind of things are a matter of preference. But as for my personal preference, I prefer the order to be the most recently opened app to the right, the oldest to the left, left for the pinned apps which should be kept in their place. I thank you a lot for your attention and your time!

klangman commented 1 year ago

The following commit implements the option to allow windows from all workspaces to appear on all workspace window-lists.

https://github.com/klangman/CassiaWindowList/commit/e3ea1f8e5edb2975de80cabffcf834616cf35d60

I will test the changes out for a a few more days before pushing the changes to the cinnamon spices repository, but if you want to try it now you can clone this repo.

wpwpwpwpw commented 1 year ago

Amazing! Will try it out!

wpwpwpwpw commented 1 year ago

It's perfect! The restore and cycle windows is great! Thank you a lot!

klangman commented 11 months ago

Here is a prototype of a grayscale window-list. Still might find some issues that make it unfeasible but its looking promising.

Grayscale_WindowList

klangman commented 11 months ago

With the following commit I have added an experimental option to allow for grayscale and vivid icons (and anything in between).

https://github.com/klangman/CassiaWindowList/commit/903122acd6281bce4911de4c7adef9172b6be220

If you can try it out and let me know if it works for you that would be helpful. Thanks!

wpwpwpwpw commented 11 months ago

Amazing! That dropdown to allow one to select which ones are grayscaled is great! If I may, I would suggest to, instead of a select only one option, to add check buttons or similar to grayscale whichever type of apps one may want, and to add the option "don't grayscale the running application". Thanks again!

klangman commented 10 months ago

@wpwpwpwpw Since I have had a 2nd request for configurable icon spacing, I decided to add the option. Let me know if it does what you have hoped for. Thanks.

Commit: https://github.com/klangman/CassiaWindowList/commit/6bdb1a3714eb7a6d2e89c158843f89beca965222

klangman commented 10 months ago

I believe all the requested features are now implemented now (and will be pushed to cinnamon-spaces soon), so I will close this issue now.