Как получить окно Gdk из xid?

Я потерялся в версии 3 .. в python2 + gdk2 это:

#!/usr/bin/env python2
import gtk

gtk.gdk.window_process_all_updates()
window_xid = 54525964
gdk_window = gtk.gdk.window_foreign_new(window_xid)

, что довольно просто. Но тогда ужас:

#!/usr/bin/env python3
from gi.repository import xlib
from gi.repository import Gdk
from gi.repository import GdkX11

Gdk.Window.process_all_updates()
xlib_window = "???????"
gdk_display = GdkX11.X11Display.get_default()
gdk_window = GdkX11.X11Window.foreign_new_for_display(gdk_display, xlib_window)

xlib меня убивает .. Я ничего не могу с этим поделать. Кто-нибудь работал с этим раньше ??

Документация, которую я уже проверял несколько раз: Gdk3 , Xlib

Получение окна из его xid было самым быстрым способом получить снимок экрана в python2 Думаю, я попробую другой способ в python3 .. есть идеи? может быть peek_children из корневого окна ?? но тогда как я узнаю, что мне нужно именно это окно?

8
задан demula 27 July 2011 в 20:17
поделиться