The Cookie Machine - Click here to drag window

DUMMY TEXT - Real text set in assets/js/theCookieMachine.js

If you can read me, I'm broken!

Views: 45β€…    Votes:  2β€…
Tags: unity   python   xorg   compiz   window-manager  
Link: πŸ” See Original Question on Ask Ubuntu ⧉ πŸ”—

URL: https://askubuntu.com/q/1348326
Title: How to tell Compiz not to manage/manipulate a specifc Window ID
ID: /2021/06/26/How-to-tell-Compiz-not-to-manage_manipulate-a-specifc-Window-ID
Created: June 26, 2021    Edited:  June 27, 2021
Upload: April 8, 2024    Layout:  post
TOC: false    Navigation:  false    Copy to clipboard:  false


I have a window I move from one monitor to another in steps. The Compiz β€œPlace Window” plug-in intercepts the movements and initially stops it from moving to the next monitor. Then it jumps to the next monitor and freezes. Then it continues the last few steps.

To override the β€œplace window” plugin python issues some CLI commands. Note: $ and extra lines added for readability:

$ gsettings get org.compiz.core:/org/compiz/profiles/unity/plugins/core/ active-plugins

['core', 'composite', 'opengl', 'regex', 'mousepoll', 'animation',
'wall', 'vpswitch', 'session', 'snap', 'workarounds',
'compiztoolbox', 'imgpng', 'resize', 'move', 'place', 'expo', 'fade',
'ezoom', 'scale', 'switcher', 'unityshell']

If 'place' appears between the 'move' and 'expo' plug-ins, remove it using:

$ gsettings set org.compiz.core:/org/compiz/profiles/unity/plugins/core/ active-plugins

"['core', 'composite', 'opengl', 'regex', 'mousepoll', 'animation',
'wall', 'vpswitch', 'session', 'snap', 'workarounds',
'compiztoolbox', 'imgpng', 'resize', 'move', 'expo', 'fade',
'ezoom', 'scale', 'switcher', 'unityshell']"

Then move window between two monitors gradually in steps. When done issue gsettings command again:

$ gsettings set org.compiz.core:/org/compiz/profiles/unity/plugins/core/ active-plugins 

"['core', 'composite', 'opengl', 'regex', 'mousepoll', 'animation',
'wall', 'vpswitch', 'session', 'snap', 'workarounds',
'compiztoolbox', 'imgpng', 'resize', 'move', 'place', 'expo', 'fade',
'ezoom', 'scale', 'switcher', 'unityshell']"

In python-xlib is there a way of doing it by setting a Window state or property?

⇧ How do I get my extra monitors working again? Transparent background in a Tkinter window  β‡©