История изменений
Исправление Zubok, (текущая версия) :
Ну, да. Что-то вроде этого.
В GTK примерно так и сделано - каждый раз на !send_event вызывается XTranslateCoordinates. (см. https://github.com/GNOME/gtk/blob/master/gdk/x11/gdkdisplay-x11.c#L810)
Еще можно сделать более умную процедуру сжатия сообщений ConfigureNotify, чтобы XTranslateCoordinates попусту не дергать каждый раз, так как это roundtrip чистой воды - запрос каждый раз уходит на сервер и ожидается ответ. Подобный механизм в qt сделан (см. http://code.metager.de/source/xref/lib/qt/src/gui/kernel/qapplication_x11.cpp...).
Еще на расширение XSync глянь.
Исходная версия Zubok, :
Ну, да. Что-то вроде этого.
В GTK примерно так и сделано - каждый раз на !send_event вызывается XTranslateCoordinates. (см. https://github.com/GNOME/gtk/blob/master/gdk/x11/gdkdisplay-x11.c#L810)
Еще можно сделать более умную процедуру сжатия сообщений ConfigureNotify, чтобы XTranslateCoordinates попусту не дергать каждый раз, так как это roundtrip чистой воды - запрос каждый раз уходит на сервер и ожидается ответ. Подобный механизм в qt сделан (см. http://code.metager.de/source/xref/lib/qt/src/gui/kernel/qapplication_x11.cpp...).