win: Set window alpha when changing theme
authorJean-Philippe Andre <jp.andre@samsung.com>
Mon, 18 Jul 2016 09:09:32 +0000 (18:09 +0900)
committerJean-Philippe Andre <jp.andre@samsung.com>
Mon, 18 Jul 2016 09:11:37 +0000 (18:11 +0900)
This sets the window alpha back to 0 when switching from a theme
with alpha to one without. Thanks @bu5hm4n for asking about this.

src/lib/elementary/efl_ui_win.c

index 9ebe84e..b50ff41 100644 (file)
@@ -5635,9 +5635,9 @@ _elm_win_theme_internal(Eo *obj, Efl_Ui_Win_Data *sd)
 
    if (!ret) int_ret = ELM_THEME_APPLY_FAILED;
 
+   s = edje_object_data_get(sd->edje, "alpha");
    if (!sd->theme_alpha)
      {
-        s = edje_object_data_get(sd->edje, "alpha");
         if (s)
           {
              if (!strcmp(s, "1") ||
@@ -5648,6 +5648,14 @@ _elm_win_theme_internal(Eo *obj, Efl_Ui_Win_Data *sd)
                }
           }
      }
+   else
+     {
+        if (!s || ((strcmp(s, "1") != 0) && (strcmp(s, "false") != 0)))
+          {
+             sd->theme_alpha = 0;
+             _elm_win_apply_alpha(obj, sd);
+          }
+     }
 
    return int_ret;
 }