Рейтинг:2

Как сообщить Compiz не управлять/манипулировать определенным идентификатором окна

флаг in

У меня есть окно, которое я перемещаю с одного монитора на другой пошагово. Компиз Плагин «Place Window» перехватывает движения и изначально останавливает его от перехода к следующему монитору. Затем он переходит к следующему монитору и зависает. Затем он продолжает последние несколько шагов.

Чтобы переопределить плагин «место окна», Python выдает некоторые команды CLI. Примечание: $ и дополнительные строки добавлены для удобства чтения:

$ gsettings получить org.compiz.core:/org/compiz/profiles/unity/plugins/core/active-plugins

['ядро', 'составной', 'opengl', 'regex', 'mousepoll', 'анимация',
«стена», «vpswitch», «сеанс», «привязка», «обходные пути»,
'compiztoolbox', 'imgpng', 'изменить размер', 'переместить', 'поместить', 'экспо', 'исчезнуть',
'ezoom', 'масштаб', 'переключатель', 'unityshell']

Если 'место' появляется между 'двигаться' и 'Экспо' плагины, удалите его с помощью:

$ gsettings установить org.compiz.core:/org/compiz/profiles/unity/plugins/core/active-plugins

"['ядро', 'составной', 'opengl', 'regex', 'mousepoll', 'анимация',
«стена», «vpswitch», «сеанс», «привязка», «обходные пути»,
'compiztoolbox', 'imgpng', 'изменить размер', 'переместить', 'экспо', 'исчезнуть',
'ezoom', 'масштаб', 'переключатель', 'unityshell']"

Затем постепенно перемещайте окно между двумя мониторами. Когда закончите выпуск настройки команда еще раз:

$ gsettings установить org.compiz.core:/org/compiz/profiles/unity/plugins/core/active-plugins 

"['ядро', 'составной', 'opengl', 'regex', 'mousepoll', 'анимация',
«стена», «vpswitch», «сеанс», «привязка», «обходные пути»,
'compiztoolbox', 'imgpng', 'изменить размер', 'переместить', 'поместить', 'экспо', 'исчезнуть',
'ezoom', 'масштаб', 'переключатель', 'unityshell']"

В Python-xlib есть ли способ сделать это, установив состояние или свойство окна?

флаг cn
Не знал бы о вашем вопросе, поскольку текущий процесс просто создал бы 2 сценария для 2 команд набора, а затем 2 средства запуска на рабочем столе для их запуска. Тогда это просто двойной щелчок, чтобы использовать. (а может 1 скрипт со сном между командами
N0rbert avatar
флаг zw
ccsm может иметь некоторые параметры для фильтрации идентификаторов окон.
WinEunuuchs2Unix avatar
флаг in
@N0rbert N0rbert Я установил `ccsm` пару дней назад. Вот как я обнаружил, что отключение плагина Windows «место» позволяет плавно перемещать окно на двух мониторах. Вы можете сделать это с помощью мыши, но не с помощью `xdotool`, `wmctrl`, `gtk` или `python-xlib`. Я вижу, что у них есть интерфейс `dbus`, и там может быть что-то полезное.
WinEunuuchs2Unix avatar
флаг in
@Doug Спасибо за предложение. Если мне нужно пойти по этому пути, я буду вызывать `gsetting` непосредственно из python до и после перемещения окна.

Ответить или комментировать

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.