1. полноэкранный режим
понял что надо создавать окно в обход WM тоесть с флагом OverrideRedirect, но тогда события от клавиатуры не приходят,
непомогает и XGrabKeyboard()
неясно можно ли и как если можно сменить разрешение без перезагрузки иксов (утилита настроек от nv както это делает)
2. запрет на изменение размеров окна/сворачивания/закрытия
вообще непонятно как, вручную при приходе соответсвующего сообщения возвращать изменения обратно както некрасиво и невсегда возможно
.
вопросы по использованию X11 (в xlib.pdf ответов не нашел)
Модератор: Модераторы разделов
вопросы по использованию X11
кто здесь?
- Uncle_Theodore
- Сообщения: 3339
- ОС: Slackware 12.2, ArchLinux 64
Re: вопросы по использованию X11
amaora писал(а): ↑13.08.2007 06:571. полноэкранный режим
понял что надо создавать окно в обход WM тоесть с флагом OverrideRedirect, но тогда события от клавиатуры не приходят,
непомогает и XGrabKeyboard()
неясно можно ли и как если можно сменить разрешение без перезагрузки иксов (утилита настроек от nv както это делает)
Посмотри, как это сделано тут
http://groups.google.com/group/comp.window...73ef31b88abaa05
Re: вопросы по использованию X11
это вобщем то не совсем fullscreen, это замена OverrideRedirect флага средствами WM если он это поддерживает, разрешение никуда не меняется.
ну хотябы проблем с вводом нет теперь.
правка: или у меня неправильно работает ..
нашел и по второму пункту правильный путь http://standards.freedesktop.org/wm-spec/wm-spec-1.4.html
но чтото непойму как задается _NET_WM_WINDOW_TYPE или _NET_WM_ALLOWED_ACTIONS, примеров нигде нет, по ссылке сверху ничего не писано.
пытаюс вот так,
и никакого результата не наблюдается
ну хотябы проблем с вводом нет теперь.
правка: или у меня неправильно работает ..
нашел и по второму пункту правильный путь http://standards.freedesktop.org/wm-spec/wm-spec-1.4.html
но чтото непойму как задается _NET_WM_WINDOW_TYPE или _NET_WM_ALLOWED_ACTIONS, примеров нигде нет, по ссылке сверху ничего не писано.
пытаюс вот так,
Код: Выделить всё
XEvent send_ev = {
.xclient.type = ClientMessage,
.xclient.serial = 0,
.xclient.send_event = true,
.xclient.window = handle->window,
.xclient.message_type = XInternAtom( display, "_NET_WM_ALLOWED_ACTIONS", false ),
.xclient.format = 32,
.xclient.data.l[0] = XInternAtom( display, "_NET_WM_ACTION_MOVE", false ),
.xclient.data.l[1] = XInternAtom( display, "_NET_WM_ACTION_CHANGE_DESKTOP", false ),
.xclient.data.l[2] = 0
};
XSendEvent( display, XRootWindow( display, handle->visualinfo->screen ), false,
SubstructureRedirectMask | SubstructureNotifyMask, &send_ev );
и никакого результата не наблюдается
кто здесь?
Re: вопросы по использованию X11
но чтото непойму как задается _NET_WM_WINDOW_TYPE или _NET_WM_ALLOWED_ACTIONS
http://tronche.com/gui/x/xlib/ICC/client-t...xtProperty.html
отсюда пляши
примеров нигде нет
примеров есть, но мало. Советую Qt почитать, http://www.google.com/codesearch тоже рулит неимоверно.
Re: вопросы по использованию X11
да спасибо, в Qt неожиданно быстро нашел нужный кусок кода, остается сменить разрешение.
кто здесь?