Есть два разных расширения X, которые управляют внутренним поворотом окон. Самым простым является RANDR, и его исходный код находится в каталоге randr верхнего уровня исходного кода X-сервера.
Расширение MODES, которое обеспечивает поддержку многоголовых устройств и предоставляет выходы и CRTC, которые вы видите в списке результатов вызова xrandr, является вторым расширением, которое работает с вращающимися окнами. MODES можно найти в подкаталоге hw/xfree86/modes исходного кода X-сервера.
Если X-драйвер использует RANDR напрямую, он должен предоставлять ряд функций, позволяющих RANDR вращать и отображать окна. Если вы используете MODES, то он устанавливает себя как слой между RANDR и вашим драйвером, и вы должны предоставить MODES более ограниченный набор функций, и он выполняет большую часть работы.
Тем не менее, мне еще предстоит заставить MODES поворачивать окно в драйвере X, который я пишу, вероятно, потому, что и RANDR, и MODES практически не документированы, и далеко не ясно, каковы их модели обработки изображений.
person
swestrup
schedule
24.06.2011