wsdfhjxc / virtual-desktop-bar

A pager panel widget for KDE Plasma
GNU General Public License v3.0
322 stars 29 forks source link

Make it compatible with i3wm #26

Closed KGusev closed 4 years ago

KGusev commented 4 years ago

It is not possible to navigate to any not created virtual desktop if virtual desktop with larger index number was created. For example, i cant navigate to 2nd virtual desktop If 1st and 3rd virtual desktops were created

KGusev commented 4 years ago

i fixed it by commenting out KWindowSystem::setCurrentDesktop(desktopNumber); but it broke switching

wsdfhjxc commented 4 years ago

If I got it right, it seems that i3wm has its own unique concept of predefined workspaces, and it actually creates them only if a window is sent to such a predefined workspace. So, despite having 3 predefined workspaces in i3wm, if only 1st and 3rd are occupied, in the context of i3wm it's 3 desktops (with the 2nd being a placeholder), but to the low level windowing system, it's actually only 2 desktops.

I'm sorry, but it's the i3wm that is incompatible with the traditional concept of virtual desktops supported by KWindowSystem, which is a fundamental part of the KDE Plasma desktop environment. And the applet is designed specifically for KDE Plasma and KWin. I hope you understand that.

Unless my reasoning is incorrect, I don't think I can support i3wm's workspace model. You could probably still use most of its features, but you'd have to ditch the concept of placeholder workspaces, which are known only to i3wm, but are non-existent to the actual underlying windowing subsystem. Some people do this, as I've seen such setups utlilzing i3wm with the default Plasma's Pager applet.