On Mon, 15 Jan 2001, Vlad Harchev wrote:

> On Mon, 15 Jan 2001, Alexander V. Nikolaev wrote:
>
> > > >
> > > > Кто нибудь знает как в XF86 залочить курсор мышки и/или viewport?
> > > > Я слышал что есть какая-то функция...
> > >  А по-конкретней можно? Что значит залочить? Или надо имя функции из Xlib 
> > > -
> > > тогда это XGrabPointer AFAIK.
> > >
> > Есть задача, временно блокировать ViewPort в иксах - я пытаюсь блокировать
> > мышь и фокус ввода из window manager (путем написания плагина для sawfish)
> > На текущий момент я могу получать/задавать положение ViewPort относительно
> > виртуального экрана. Но блокировать его мне не удается. Если получится
> > блокировать мышь, то проблема большей частью будет решена, у пользователя
> > не будет возможности сдвинуть ViewPort.
> >
>
>  Нормальные программы не должны зависеть от размера виртуального десктопа и их
> количества и не должны мешать пользователю пользоваться ими. Так что то, что
> Вы хотитие реализвовать - противоречит этим принципам.
Хмм. У меня есть пара программ которые надо заставить работать в
fullscreen (притом у меня нет их исходников). Растягивать окно нельзя -
затраты на масштабирование видео в реальном времени будут слишком велики.
Идея в том чтобы переключать режим в 320x240 и позиционировать окно в
центр экрана (реального) - но виртуальный экран остается 1024x768 и мне
надо как-то запретить двигать этот самый рельный экран (320ч240)
относитьльно большего виртуального (и относительно окна). Функии
блокирующей это я не нашел. А самый простой спомоб заблокирвоать мышь.

>  По-любому, IMO Xlib тут не поможет так как вроде как не он занимается
> управлением виртульными десктопами - этим занимается WM. Вот с ним и надо
> париться (вплоть для наложения патчей на исхлодный код и введения
> поддержки "залочивания"  текущего ViewPort в нем). Но это все противоречит
> принципам и концепциям WM.
>

Сначало это было сделано как внешняя утилита, сейчас я заканчиваю
интеграию этого в sawfish (WM написаный на лиспе). Я экспортировал функции
XF86Vm* в этот лисп как плагин (точнее экспортируюю - пока работает не
все), и теперь могу управлять разрешением и позоцией viewport из wm.
Но проблема с блокирокой осталось.

Ответить