Set tkinter top-level window to "always on visible workspace"

Chris Angelico rosuav at gmail.com
Mon Mar 28 15:10:39 EDT 2022


On Tue, 29 Mar 2022 at 06:08, Christian Gollwitzer <auriocus at gmx.de> wrote:
>
> Am 28.03.22 um 20:03 schrieb Chris Angelico:
> > Would you accept a solution that involves a subprocess call?
> >
> > wmctrl -ir {id} -b add,sticky
> >
> > Now, the only problem is... figuring out your window ID. Worst case,
> > parse wmctrl -lG to get that info, but it might be possible to get the
> > window ID from Tkinter itself.
>
> Sure: Call "winfo_id()" on the toplevel. You might want to reformat in
> it in hex format, which is the usual way to pass these IDs around. Tk
> actually returns it in hex format, but Tkinter reformats it as an integer.
>

Ah sweet, there you go then. (As you can see, I don't use Tkinter
much.) I have no idea how wmctrl does its work, but if calling on
another process is viable, that's at least a fully automated way to
stickify the window.

ChrisA


More information about the Python-list mailing list