[pygtk] Wnck: Switching to and reporting current workspace (desktop) number.
Pietro Battiston
toobaz at email.it
Sun Mar 7 03:28:23 WST 2010
Il giorno sab, 06/03/2010 alle 20.16 +0100, Osmo Maatta ha scritto:
> Hello,
> This question is about the Wnck library. I still hope someone here can
> shed light on this issue.
>
> The following code snippet loops though all active
> workspaces/desktops.
> It then tries to report the actual desktop/workspace number, but the
> "current workspace num" does not change.
>
> The code is here: http://www.futuredesktop.com/tmp/desktop_test.py
>
> Look at the last three lines.
> ws = screen.get_active_workspace()
> ws_num = ws.get_number()
> print "i=", i, " current workspace num=", ws_num
>
> I reports something like this:
> i= 0 current workspace num= 1
> i= 1 current workspace num= 0
> i= 2 current workspace num= 0
> i= 3 current workspace num= 0
> i= 4 current workspace num= 0
>
> The "current workspace num" is totally wrong.
> Why does Wnck behave like this?
>
> BTW: I run this code on 64bit Ubuntu 9.10 with GNOME + Metacity Window
> Manager (not Compiz WM).
> $ metacity --replace
>
> References: http://library.gnome.org/devel/libwnck/stable/
> http://library.gnome.org/devel/libwnck/stable/WnckScreen.html#wnck-screen-get-active-workspace
>
> I may start to use the "wmctrl" command directly.
> It rocks but I would rather not be dependent on external tools,
> subprocess'ing that from my Python modules.
http://lists.gulp.linux.it/pipermail/gulp/2009-September/035843.html
That's in Italian, but I guess the code logic is quite understandable...
and works (you can verify by adding a print).
If I recall correctly, I too at the time had problems that had to do
with the gtk main loop not running.
cheers
Pietro
More information about the pygtk
mailing list