[PATCH weston v2 2/2] desktop-shell: disable opacity binding when modifier is none

Ian Ray ian.ray at ge.com
Mon Sep 18 12:22:01 UTC 2017


This patch disables the opacity binding when the modifier is configured
to `none' in weston.ini, and thus supports use cases where one does not
want to have this binding.

Signed-off-by: Ian Ray <ian.ray at ge.com>
---
 desktop-shell/shell.c | 9 ++++++---
 1 file changed, 6 insertions(+), 3 deletions(-)

diff --git a/desktop-shell/shell.c b/desktop-shell/shell.c
index 3872686..1f99efe 100644
--- a/desktop-shell/shell.c
+++ b/desktop-shell/shell.c
@@ -4860,9 +4860,6 @@ shell_add_bindings(struct weston_compositor *ec, struct desktop_shell *shell)
 	weston_compositor_add_touch_binding(ec, 0,
 					    touch_to_activate_binding,
 					    shell);
-	weston_compositor_add_axis_binding(ec, WL_POINTER_AXIS_VERTICAL_SCROLL,
-				           MODIFIER_SUPER | MODIFIER_ALT,
-				           surface_opacity_binding, NULL);
 	weston_compositor_add_key_binding(ec, KEY_BRIGHTNESSDOWN, 0,
 				          backlight_binding, ec);
 	weston_compositor_add_key_binding(ec, KEY_BRIGHTNESSUP, 0,
@@ -4877,6 +4874,12 @@ shell_add_bindings(struct weston_compositor *ec, struct desktop_shell *shell)
 	if (!mod)
 		return;
 
+	/* This binding is not configurable, but is only enabled if there is a
+	 * valid binding modifier. */
+	weston_compositor_add_axis_binding(ec, WL_POINTER_AXIS_VERTICAL_SCROLL,
+				           MODIFIER_SUPER | MODIFIER_ALT,
+				           surface_opacity_binding, NULL);
+
 	weston_compositor_add_axis_binding(ec, WL_POINTER_AXIS_VERTICAL_SCROLL,
 					   mod, zoom_axis_binding,
 					   NULL);
-- 
2.7.4



More information about the wayland-devel mailing list