desktop-shell: disable opacity binding when modifier is none
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@ge.com>
Reviewed-by: Pekka Paalanen <pekka.paalanen@collabora.co.uk>
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 @@
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 @@
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);