]> git.donarmstrong.com Git - deb_pkgs/autorandr.git/commitdiff
Possible fix for #72
authorPhillip Berndt <phillip.berndt@googlemail.com>
Sun, 16 Jul 2017 15:02:04 +0000 (17:02 +0200)
committerPhillip Berndt <phillip.berndt@googlemail.com>
Sun, 16 Jul 2017 15:02:04 +0000 (17:02 +0200)
README.md
autorandr.py

index 1dd4f9095b8c1802c76b6dec320367f785508737..7ad2e65dab4335294fc08d8144b169e448cd0e3d 100644 (file)
--- a/README.md
+++ b/README.md
@@ -137,6 +137,8 @@ The most useful one is `$AUTORANDR_CURRENT_PROFILE`.
 
 ## Changelog
 
+* *2017-07-16* Skip `--panning` unless it is required (See #72)
+
 **autorandr 1.1**
 
 * *2017-06-07* Call systemctl with `--no-block` from udev rule (See #61)
index 8d561fd85874d1b1d50499344744119715744f53..a37a6240542e1ca47e90eab113b61a826603673d 100755 (executable)
@@ -601,6 +601,9 @@ def apply_configuration(new_configuration, current_configuration, dry_run=False)
     #   at least.)
     # - Some implementations can not handle --transform at all, so avoid it unless
     #   necessary. (See https://github.com/phillipberndt/autorandr/issues/37)
+    # - Some implementations can not handle --panning without specifying --fb
+    #   explicitly, so avoid it unless necessary.
+    #   (See https://github.com/phillipberndt/autorandr/issues/72)
 
     auxiliary_changes_pre = []
     disable_outputs = []
@@ -615,15 +618,16 @@ def apply_configuration(new_configuration, current_configuration, dry_run=False)
 
             option_vector = new_configuration[output].option_vector
             if xrandr_version() >= Version("1.3.0"):
-                if "transform" in current_configuration[output].options:
-                    auxiliary_changes_pre.append(["--output", output, "--transform", "none"])
-                else:
-                    try:
-                        transform_index = option_vector.index("--transform")
-                        if option_vector[transform_index+1] == XrandrOutput.XRANDR_DEFAULTS["transform"]:
-                            option_vector = option_vector[:transform_index] + option_vector[transform_index+2:]
-                    except ValueError:
-                        pass
+                for option in ("transform", "panning"):
+                    if option in current_configuration[output].options:
+                        auxiliary_changes_pre.append(["--output", output, "--%s" % option, "none"])
+                    else:
+                        try:
+                            option_index = option_vector.index("--%s" % option)
+                            if option_vector[option_index+1] == XrandrOutput.XRANDR_DEFAULTS[option]:
+                                option_vector = option_vector[:option_index] + option_vector[option_index+2:]
+                        except ValueError:
+                            pass
 
             enable_outputs.append(option_vector)