lxqt-panel
lxqt-panel copied to clipboard
Remove setting of desktop names in workspace switcher?
Actually on every WM (x11) those names set are not persistent and quite useless therefore. Just remove the setting and add a tooltip about configuring names in WM/Compositor?
Expected Behavior
Names set would be persistent.
Current Behavior
Only working for current session. On kwin_wayland they are active but can't be changed which is even worse.
- LXQt Version: all
- Distribution & Version: all
We can make a section in panel.conf where we store the names persistently. At the start of any session (X11 or Wayland), we can update the desktop names. This should solve the problem of persistence.
On wayfire, we can make the change the settings in the wayfire config file. However, the problem is QSettings does not play well with ini format, and supports only a subset of the full specification. For example, a colon (:) is converted to %3A.
On kwin_wayland they are active but can't be changed which is even worse.
There is a hack to fix this. The virtual desktop protocol of plasma, allows us to create and delete virtual desktops. What we can do, is wait till the protocol is advertised, and then get the desktop names. If there is a desktop whose name does not match, remove it and recreate it with the name we want.
PS: This is what I think could be done by reading the protocol. I have never tried this, so I do not know how it works.
We can make a section in panel.conf where we store the names persistently. At the start of any session (X11 or Wayland), we can update the desktop names. This should solve the problem of persistence.
This could work, but I see clashes with window-rules, when the compositor/WM internally uses other names. Window rules will not use the workspace names set by LXQt.
Kwin is using hashes apparently now:
desktops=9236ad16-aa47-4bfa-b2f2-c66b231a2249
Window rules will not use the workspace names set by LXQt.
Window rules should not use desktop names at all. They will always use some internal ID. For example, in wayfire, workspaces are arranged as a grid. So we identify workspaces based on (row, column).
Kwin is using hashes apparently now:
This will be the norm, I believe, once ext-workspaces becomes more widely used.
PS: I went through the ext-workspaces protocol. I'm not a big fan of it. For wayfire, we will continue using IPC, which is far more powerful than the protocol 😛
I think it's easier to let just the WM or compositor write desktop(workspace) names, instead of trying to sync them. But I'm not against having a working feature ;)
I think it's easier to let just the WM or compositor write desktop(workspace) names
That's the correct approach because we support all kinds of WMs/compositors, whether in Wayland or in X11. The backend/WM can return an empty string, in which case, we use the translatable string "Desktop %1" in the front-end.
Should we remove it for 2.3? I think we won't make any implementation here before.
Let's have no rush and do it after 2.3. It isn't a big deal, IMO.
It's just a thing which doesn't work, we shouldn't have it.