aboutsummaryrefslogtreecommitdiffstats
path: root/src/lib/elementary/efl_ui_win.c
diff options
context:
space:
mode:
authorJaehyun Cho <jae_hyun.cho@samsung.com>2018-12-05 10:35:30 +0900
committerJaehyun Cho <jae_hyun.cho@samsung.com>2018-12-05 10:35:30 +0900
commitdf216a4f1d9793f001fc48c56c3bbbc49aed97b4 (patch)
treed7fc1c18497ff0c8ba75f20fc961911cb1ab9594 /src/lib/elementary/efl_ui_win.c
parenteolian_cxx: Add documentation field to property_def (diff)
downloadefl-df216a4f1d9793f001fc48c56c3bbbc49aed97b4.tar.gz
efl_ui_win: enable bg color set although alpha is set
Summary: This patch sets background transparent if window supports alpha. If alpha window does not emit signal to show background rectangle, then the background color set by _efl_ui_win_part_color_set cannot be applied because the background rectangle remains hidden. This patch fixes the side effect of https://phab.enlightenment.org/D6569. Test Plan: Run Efl.Ui.Win (Bg part) in elementary_test. Reviewers: zmike, devilhorns, woohyun Subscribers: cedric, #reviewers, #committers Tags: #efl Differential Revision: https://phab.enlightenment.org/D7302
Diffstat (limited to 'src/lib/elementary/efl_ui_win.c')
-rw-r--r--src/lib/elementary/efl_ui_win.c9
1 files changed, 8 insertions, 1 deletions
diff --git a/src/lib/elementary/efl_ui_win.c b/src/lib/elementary/efl_ui_win.c
index 535316119e..1e12b46702 100644
--- a/src/lib/elementary/efl_ui_win.c
+++ b/src/lib/elementary/efl_ui_win.c
@@ -4659,11 +4659,18 @@ _elm_win_frame_style_update(Efl_Ui_Win_Data *sd, Eina_Bool force_emit, Eina_Bool
else
#endif
focus = ecore_evas_focus_get(sd->ee);
- bg_solid = sd->csd.need_bg_solid && (!alpha);
bg_standard = sd->csd.need_bg_standard;
unresizable = sd->csd.need_unresizable;
menu = sd->csd.need_menu;
indicator = sd->csd.need_indicator;
+ bg_solid = sd->csd.need_bg_solid;
+ /* Set background transparent if window supports alpha.
+ * If alpha window does not emit signal to show background rectangle, then
+ * the background color set by _efl_ui_win_part_color_set cannot be applied
+ * because the background rectangle remains hidden.
+ */
+ if (alpha && bg_solid && !(sd->csd.cur_bg_solid))
+ edje_object_color_class_set(sd->frame_obj, "elm/win/background", 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0);
/* FIXME FIXME FIXME FIXME FIXME FIXME FIXME FIXME FIXME FIXME FIXME FIXME
* At the moment, E Wayland uses SSD for its internal windows. Which means