ssokolow / quicktile

Adds window-tiling hotkeys to any X11 desktop. (An analogue to WinSplit Revolution for people who don't want to use Compiz Grid)
https://ssokolow.com/quicktile/
GNU General Public License v2.0
869 stars 78 forks source link

doesn't work on x2go server side #29

Closed jeff-dagenais closed 10 years ago

jeff-dagenais commented 10 years ago

When run on x2go (NX based) quicktile doesn't find the active window.

running ubuntu 12.04 x2goagent: 3.5.0.21 x2goserver: 4.0.1.6 x2goserver-extensions: 4.0.1.6

The real X server is Xquartz, as specified in #28

$ git co f7978209bab75a705a436e6c556a69843741e5a8
HEAD is now at f797820... Audit and fix up the API documentation.
$ ((f797820...))$ ./quicktile.py --debug bottom
[no output]
$ ((f797820...))$ git checkout 73973763b3503bb726c5531db8529248168040f1
Previous HEAD position was f797820... Audit and fix up the API documentation.
HEAD is now at 7397376... Never forget to test your docs for typos before committing
$ ((7397376...))$ ./quicktile.py --debug bottom
DEBUG: window: None
jfdagenais@jfddesk:~/devel/tools/quicktile$ ((7397376...))$ 

So neither pre-wnck or post-wnck work, but the wnck spits out DEBUG: window: None

This is a real corner case and I am just reporting a issue to document the effort and maybe benefit someone else in the future.

Thank! ;)

ssokolow commented 10 years ago

Given that I know no other way to retrieve the active window, I suspect this may be an unavoidable bug in x2go. The best way to check would be to try some of these other utilities which perform similar tasks to see if any of them succeed. (If so, then I can investigate what they're doing that I'm not):

Also, let me know if any of them do something desirable that QuickTile doesn't yet do. I've been too busy working on clearing out TODOs to try the potential competitors I became aware of along the way.

jeff-dagenais commented 10 years ago

Thanks for that, I don't have time immediately to test all these, but I did try wmctrl since it was readily available in both apt and macport. Here's what I get...

On the x2go terminals I run (like xterm exe running in linux, but displayed locally on XQuartz through the NX connection):

$ wmctrl -l
Cannot get client list properties. 
(_NET_CLIENT_LIST or _WIN_CLIENT_LIST)

But if run locally on the mac, with direct connection to Xquartz, the windows are listed, but not all of them oddly. So it's definitely not a problem with quicktile and the issue can be closed as such.

Further, if I run it like this:

$ ssh -X mylinuxbox wmctrl -l

Now I get the correct list of windows managed by quartz-wm. Very odd. Both wmctrl are 1.07.

So it looks like there are two issues here. For x2go, I would theorize that there may be missing bits of communication between the nx agent and the nx proxy about window manager related either trough design, or because of missing options in my setup. I'll need to investigate further.

As for the discrepancy between the reported lists when executed on mac and on linux through straight ssh X11 fwding, I have no clue.

Thanks for helping out Stephan.