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

[Feature Request] Add Pager widget and support for per-workspace tasks #260

Open
marcusbritanicus opened this issue May 29, 2024 · 4 comments

Comments

@marcusbritanicus
Copy link
Contributor

Wayfire IPC is maturing quite nicely. At present, IPC has excellent support for retrieving Workspace Sets and Workspaces. IPC also provides the information about views and wset in which the view exists. With a little effort, the main workspace of the view can also be calculated.

These capabilities are quite sufficient to

  1. Develop a pager widget for the panel. The UI can be a challenge, but not undoable.
  2. Add support for filtering the taskbar buttons based on output, wset, and workspace.
@ammen99
Copy link
Member

ammen99 commented May 29, 2024

Option 2) would be a bit hard because we can't easily map foreign-toplevel protocol handles and whatever IDs we get from IPC, but we can probably move entirely to ipc. It would be an interesting test to do at some point, and we could also provide more options in the right click menu (that is, if anyone cares)

@marcusbritanicus
Copy link
Contributor Author

I guess I was not very clear: I did mean to use IPC entirely, and drop foreign-toplevel. And yes, it would be great if more options were added, like move to workspace, sticky, and so on.

One thing that might be lacking would be "minimize-rectangles". If we could add that as well to IPC, then it would be a complete experience.

@mark-herbert42
Copy link

When I actuvate scale - scale easily show the contents of one workspace. So I guess wayfire itself do know where every view is located (and even was located - as ir shows minimized as well). So the only point is how to let panel know the same - first panel need to ask compositor at which workspace it is now, and second - it need to ask Scale plugin which windows to display in list.

From practical view as just a user of a system - I can say that display all windows mode very quikly turns panel window list into useless garbage. To be useful the list button should show some usefull info - but that's not so whern you have many workspaces with many windows each. Xorg-based panels (Xfce, Mate) had 2 features - show only windows from current workspace and merge window of the same app - fe many firefox windows were shoun as 1 button with a dropdown list. Those were part of libwnck that is Xorg only, so all those features lost wit wayland versions.

@marcusbritanicus
Copy link
Contributor Author

marcusbritanicus commented Jul 10, 2024

@mark-herbert42 Yes, Wayfire always knows the position of the windows. We do not need the scale plugin - you can use IPC (you'll need the ipc and ipc-rules plugins) to do this. If you are interested in implementing this in wf-shell, you can have a look at DesQ Panel.

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

3 participants