diff --git a/extension.ts b/extension.ts index f4ac73f..f01b760 100644 --- a/extension.ts +++ b/extension.ts @@ -4,6 +4,7 @@ import { setMonitorTransform } from "./monitorDBusUtils.js" export default class AutoRotate extends Extension { _listenerId?: number enable() { + let lastFullscreened = false this._listenerId = global.display.connect( "in-fullscreen-changed", () => { @@ -13,7 +14,11 @@ export default class AutoRotate extends Extension { global.display.get_monitor_in_fullscreen(index) ) != -1 - setMonitorTransform(isFullscreen ? 1 : 0) + if (isFullscreen == lastFullscreened) return + lastFullscreened = isFullscreen + + console.debug(`Fullscreen state changed to: ${isFullscreen}`) + setTimeout(() => setMonitorTransform(isFullscreen ? 1 : 0), 50) } ) }