Korrektur von Fehlern von X Window Clients und Servern

Die Anweisung

workarounds {[+|-]exposeAfterGraphicsExpose
|[+|-]exposeBeforeGraphicsExpose
|[+|-]exposeInsteadOfGraphicsExpose
|[+|-]forgetBitGravity
|[+|-]refreshBitGravity|none}...

dient zur Behebung von Fehlern einiger X Window Clients und Server, die bei bestimmten Konfigurationen von XposeXrecord auftreten, oder zur Erweiterung der Funktionalität. Diese Korrekturen sind zwar nicht immer konform zum X11-Protokoll, beeinflussen jedoch nicht das Verhalten korrekter Clients.

Die folgenden Abschnitte stellen die Probleme und die Lösungen exemplarisch dar.

Ignorieren von GraphicsExpose-Ereignissen

Einige wenige X Window Clients ignorieren fälschlicherweise GraphicsExpose-Ereignisse in der Annahme, daß ihre Fenster stets ganz sichtbar sind. Wird etwa der Inhalt eines scrollenden Fensters immer aktiv gezeichnet statt als Reaktion auf Expose- und GraphicsExpose-Ereignisse, werden neu sichtbare Bereiche des Fensters unter Umständen nicht korrekt aktualisiert.

Die Anweisungen

workarounds exposeAfterGraphicsExpose
workarounds exposeBeforeGraphicsExpose
workarounds exposeInsteadOfGraphicsExpose

veranlassen das xposexrecord-Programm, für jedes GraphicsExpose-Ereignis ein Expose-Ereignis an den Client zu senden, und zwar nach, vor beziehungsweise anstelle des GraphicsExpose-Ereignisses. Das Expose-Ereignis soll das Zeichnen des neuen Fensterinhalts bewirken.

Fehlerhafte Implementierung des Konzepts der Bit Gravity

Manche X Window Clients nutzen das Konzept der Bit Gravity aus, um die neu zu zeichnenden Flächen zu minimieren. Nicht alle X Window Server implementieren dieses Konzept korrekt.

Die Anweisung

workarounds forgetBitGravity

läßt die Bit Gravity stets ausgeschaltet, und die Anweisung

workarounds refreshBitGravity

veranlaßt das xposexrecord-Programm, nach jeder Änderung der Größe eines Fensters dessen Inhalt vollständig zu aktualisieren.

Teilweise Implementierung der Protokoll-Erweiterung GLX Version 1.3

Copyright © 2018 X-Software GmbH
info@x-software.com