QGLWidget und Kwin
Verfasst: 13. Oktober 2010 17:03
Hallo,
ich programmiere eine Qt-Anwendung für Linux mit einem QGLWidget. Die Anwendung läuft problemlos, wenn das Compositing-System von KWin (Fenstermanager, ähnlich Compiz) deaktiviert ist. Ist das Compositing-System aktiviert, so ist das GL-Widget kurz sichtbar und wird dann vom dahinterliegenden(!) Fenster überdeckt. Kurz sichtbar heisst: Sobald die paintGL()-Methode aufgerufen wird (Maus move/click, etc.) sieht man den Inhalt kurz aufflackern und wird direkt danach wieder vom dahinterliegenden(!) Fenster überzeichnet. Den Render Context habe ich mit makeCurrent() aktiviert.
Es sieht aus, als wäre dies ein Problem des X11-Servers. Das Problem tritt erst seit einem Update auf ATI Catalyst 10.9 (zuvor 10.4) auf.
Hat jemand eine Idee, wie man mit aktiviertem Compositing-System das GL-Widget permanent sichtbar macht?
Bzw. gibt es hierfür eine Methode mit Flag, das KWin das Fenster nicht überzeichnen lässt?
ich programmiere eine Qt-Anwendung für Linux mit einem QGLWidget. Die Anwendung läuft problemlos, wenn das Compositing-System von KWin (Fenstermanager, ähnlich Compiz) deaktiviert ist. Ist das Compositing-System aktiviert, so ist das GL-Widget kurz sichtbar und wird dann vom dahinterliegenden(!) Fenster überdeckt. Kurz sichtbar heisst: Sobald die paintGL()-Methode aufgerufen wird (Maus move/click, etc.) sieht man den Inhalt kurz aufflackern und wird direkt danach wieder vom dahinterliegenden(!) Fenster überzeichnet. Den Render Context habe ich mit makeCurrent() aktiviert.
Es sieht aus, als wäre dies ein Problem des X11-Servers. Das Problem tritt erst seit einem Update auf ATI Catalyst 10.9 (zuvor 10.4) auf.
Hat jemand eine Idee, wie man mit aktiviertem Compositing-System das GL-Widget permanent sichtbar macht?
Bzw. gibt es hierfür eine Methode mit Flag, das KWin das Fenster nicht überzeichnen lässt?