conformal / spectrwm

A small dynamic tiling window manager for X11.
ISC License
1.33k stars 97 forks source link

I'm having problems with Launch applications in a workplace of choice #183

Closed ghost closed 5 months ago

ghost commented 6 years ago

do certain programs only start on [1] how to fix it? my config

Launch applications in a workspace of choice autorun = ws[1]:feh --bg-scale /home/anastiel/Pictures/Wallpaper/Untitleda.jpg autorun = ws[1]:termite -e irssi autorun = ws[1]:termite -e ncmpcpp autorun = ws[1]:termite -e rtorrent autorun = ws[1]:compton autorun = ws[2]:qutebrowser

in my case I want to put the qutebrowser to [2] but it always starts in [1]

Set workspace name at start name = ws[1]:Shell
name = ws[2]:Files name = ws[3]:Browse

orbea commented 6 years ago

This is an old issue, it would be nice to see it fixed.

LordReg commented 6 years ago

I pushed a branch that adds XCB support to libswmhack that should fix this issue. If you want to try it before it makes its way into master, please let me know how it goes.

orbea commented 6 years ago

I tested your branch with this simple config.

autorun = ws[1]:urxvtc
autorun = ws[1]:deadbeef
autorun = ws[2]:spacefm
autorun = ws[2]:ripperx

However only urxvtc and spacefm opened in workspace 1.

LordReg commented 6 years ago

Thanks for that feedback. I located the issue and pushed a fix.

orbea commented 6 years ago

Thanks for working on this, but it still does not quite work. I repeated the test with the updated branch and found it opened urxvtc, spacefm and deadbeef in workspace 1. I'm not sure what happened to ripperx.

orbea commented 6 years ago

Actually ripperx failed because its spelled ripperX...

orbea commented 6 years ago

I tried it two more times. The first I repeated the earlier test and urxvtc, deadbeef and spacefm opened in workspace 1 while ripperX correctly opened in workspace 2.

So I made a more complicated test.

autorun = ws[1]:urxvtc
autorun = ws[1]:deadbeef
autorun = ws[2]:spacefm
autorun = ws[2]:ripperX
autorun = ws[3]:firefox
autorun = ws[4]:emacs
autorun = ws[4]:urxvtc
autorun = ws[5]:gimp

This time all of the programs opened in workspace 1 except for ripperX and gimp. However gimp managed to lose two of its windows in the process...

LordReg commented 6 years ago

Did you shutdown spectrwm and start fresh after installing the new commit? Your example works for me.

As for gimp, the windows should all still be there. Try cycling focus or use search_win. For some reason the toolbars get sized to 1x1 at the edge of the screen. That is a separate issue. I always just run gimp in single-window mode (Windows->Single Window Mode) since that works more reliably.

orbea commented 6 years ago

Yes, I completely closed spectrwm, dropped down to tty and then logged out so that I would have a fresh user session before using startx to start spectrwm again with the new build.

c0decave commented 4 years ago

Hi, i'am having the same issue(scrotwm best wm ever ;)). What is working out of the box is xterm. But several other tools like:

are not starting at the defined workspace. I also tried to add LD_PRELOAD to a starting script...long story short, i am probably not clever enough to make it work. Is there any update? It would be awesome to have this running :)

Thank you!

marcopeereboom commented 4 years ago

@LordReg

LordReg commented 5 months ago

Resolved by 97b9c2c1b1869c20e3a8ef2aedc1b41d0a92f6a4 in 3.6. XCB programs including qutebrowser, Firefox, and VirtualBox are now supported by libswmhack. Chromium, however, is not supported since it generates its own X11 requests and verifies sequence numbers on the replies.

A workaround is available similar to the xterm example in the man page:

quirk[Chromium:chromium:ws2] += WS[2]
autorun = ws[2]:chromium --window-name="ws2" --new-window