From 43f8ad6010f934a0924ce6c75cf494926201a977 Mon Sep 17 00:00:00 2001 From: Kalmat Date: Wed, 17 Apr 2024 13:10:44 +0200 Subject: [PATCH] ALL: Added saveSetup() and restoreSetup(). Fixed / Improved watchdog (especially in Linux). Fixed / improved setPosition() method LINUX: Added ewmhlib as separate module. Fixed watchdog (freezing randomly invoking screen_resources and get_output_info), fixed workarea crash (some apps/environments do not set it), improved to work almost fine in Manjaro/KDE, avoid crashing in Wayland for "fake" :1 display (though module won't likely work) WIN32: Fixed dev.StateFlags returning weird values for multi-monitor. Fixed GetAwarenessFromDpiAwarenessContext not supported on Windows Server MACOS: Replaced display-manager-lib by other alternatives which seem to work in several macOS versions (brightness only) Added setScale() method (using a workaround). Added wakeup feature to turnOn() method --- src/pymonctl/_pymonctl_linux.py | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/src/pymonctl/_pymonctl_linux.py b/src/pymonctl/_pymonctl_linux.py index 2733d27..9b1bc65 100644 --- a/src/pymonctl/_pymonctl_linux.py +++ b/src/pymonctl/_pymonctl_linux.py @@ -839,10 +839,9 @@ def _getMonitorsData(handle: Optional[int] = None) -> ( monitors: List[Tuple[Xlib.display.Display, Struct, XWindow, GetScreenResourcesCurrent, MonitorInfo, str, int, GetOutputInfo, int, GetCrtcInfo]] = [] stopSearching = False - for rootData in getRoots(): - display: Xlib.display.Display = rootData[0] - screen: Struct = rootData[1] - root: XWindow = rootData[2] + roots: List[Tuple[Xlib.display.Display, Struct, XWindow]] = getRoots() + for rootData in roots: + display, screen, root = rootData try: mons = randr.get_monitors(root).monitors except: