BurntSushi / wingo

A fully-featured window manager written in Go.
Do What The F*ck You Want To Public License
1k stars 90 forks source link

Default workspaces creation do not work under GDM #46

Closed netvl closed 11 years ago

netvl commented 11 years ago

I'm not sure if this really is wingo's issue, but maybe there is a workaround. When wingo is started from under GDM (I had to create a file in /usr/share/xsessions directory for it), workspaces option in options.wini is ignored, and default set of workspaces is created (for me it is 'Рабочее Место 1' up to 'Рабочее Место 4'). Since these names are localized it seems that GDM interferes in some way with default workspace creation; but this wasn't a problem in i3, which has dynamic workspaces too. When I run wingo directly (e.g. using Xephyr), default workspaces are created correctly.

BurntSushi commented 11 years ago

Ah yes, I've heard of this problem happening. Honestly, I'm not too sure what to do here.

The problem is that GDM sets the workspaces on the root window, and Wingo honors them. I'm pretty sure that Wingo should be doing that, particularly since when restarting Wingo, it needs to do this exact thing in order to preserve your existing workspaces (whether it's replacing itself or another window manager).

One thing you could do to work-around this is to remove any workspaces set by GDM before Wingo starts. So you could run these two commands right before a command to start Wingo:

xprop -root -remove _NET_NUMBER_OF_DESKTOPS
xprop -root -remove _NET_DESKTOP_NAMES
wingo ...

(Note that I have not backgrounded those commands with an &. That is intentional. You want those commands to complete before Wingo starts.)

Then Wingo will create whatever workspaces you've specified in your configuration. (Hopefully.)

netvl commented 11 years ago

Yeah, that seems to work. Thank you very much for explanation!