Marking a frame as sticky

Hi all!
Is there a way to set the "sticky" bit for a frame/window? (=visible
on all virtual desktops)

(wxPython 2.8.9.1 under Ubuntu Jaunty)

No, that is handled by the window manager, not the application.

···

On 12/17/09 6:02 AM, Joril wrote:

Hi all!
Is there a way to set the "sticky" bit for a frame/window? (=visible
on all virtual desktops)

(wxPython 2.8.9.1 under Ubuntu Jaunty)

--
Robin Dunn
Software Craftsman

I see, but AFAIK the application could _ask_ the WM to handle a window
as sticky, and surely e.g. GKrellm does it (it has a "set sticky
state" option).. Moreover, I see that PyGTK has a stick() method
(PyGObject
gtkwindow--stick), so maybe wxPython could do it too..
I'll check for an alternative way, thanks for your time :slight_smile:

···

On 17 Dic, 19:14, Robin Dunn <ro...@alldunn.com> wrote:

> Is there a way to set the "sticky" bit for a frame/window? (=visible
> on all virtual desktops)

No, that is handled by the window manager, not the application.

For the record I came up with the following:

import gtk

def set_sticky(frame):
    gdkwin = gtk.gdk.window_lookup(frame.GetHandle())
    win = gdkwin.get_user_data() #
http://library.gnome.org/devel/gdk/unstable/gdk-Windows.html#gdk-window-get-user-data
    while not isinstance(win, gtk.Window):
        win = win.get_parent()
    win.stick()

Maybe there's a quicker way, but it works nicely (at least on Xubuntu
9.04)

···

On 18 Dic, 09:06, Joril <jor...@gmail.com> wrote:

> > Is there a way to set the "sticky" bit for a frame/window? (=visible
> > on all virtual desktops)

Joril wrote:

···

On 18 Dic, 09:06, Joril <jor...@gmail.com> wrote:
  

Is there a way to set the "sticky" bit for a frame/window? (=visible
on all virtual desktops)
        
For the record I came up with the following:

import gtk

def set_sticky(frame):
    gdkwin = gtk.gdk.window_lookup(frame.GetHandle())
    win = gdkwin.get_user_data() #
http://library.gnome.org/devel/gdk/unstable/gdk-Windows.html#gdk-window-get-user-data
    while not isinstance(win, gtk.Window):
        win = win.get_parent()
    win.stick()

Maybe there's a quicker way, but it works nicely (at least on Xubuntu
9.04)

Is your application linux only? You may wish to surround the code in some try/except statement in case the user doesn't have pygtk installed
Regards,

--
Steven Sproat, BSc
http://www.basicrpg.com/

Well yes it's Linux only.. Anyway thanks for the hint :slight_smile:

···

On 18 Dic, 14:48, Steven Sproat <spro...@gmail.com> wrote:

Is your application linux only? You may wish to surround the code in
some try/except statement in case the user doesn't have pygtk installed