[mutter] window-props: _NET_WM_WINDOW_OPACITY range is 0xffffffff to 0



commit 0c0973bbd88330603361a4422fe32d20f80ee0c5
Author: Nirbheek Chauhan <nirbheek chauhan gmail com>
Date:   Wed Apr 9 11:27:52 2014 +0530

    window-props: _NET_WM_WINDOW_OPACITY range is 0xffffffff to 0
    
    After reading the atom, scale the value from 0xffffffff to 0xff. Not doing so
    causes Clutter to truncate the opacity value, and only read the last two digits.
    Hence, 0x7fffffff (50%) becomes 0xff (100%).
    
    https://bugzilla.gnome.org/show_bug.cgi?id=727874

 src/core/window-props.c |    6 +++---
 1 files changed, 3 insertions(+), 3 deletions(-)
---
diff --git a/src/core/window-props.c b/src/core/window-props.c
index 81dce84..94b12ae 100644
--- a/src/core/window-props.c
+++ b/src/core/window-props.c
@@ -1714,12 +1714,12 @@ reload_window_opacity (MetaWindow    *window,
                        gboolean       initial)
 
 {
-  int requested_value = 0xFF;
+  guint8 opacity = 0xFF;
 
   if (value->type != META_PROP_VALUE_INVALID)
-    requested_value = (int) value->v.cardinal;
+    opacity = (guint8)((gfloat)value->v.cardinal * 255.0 / ((gfloat)0xffffffff));
 
-  meta_window_set_opacity (window, requested_value);
+  meta_window_set_opacity (window, opacity);
 }
 
 #define RELOAD_STRING(var_name, propname) \


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]