elm_panel: reset layout theme when scrollable mode is changed
authorJaeun Choi <jaeun12.choi@samsung.com>
Mon, 21 Jan 2019 05:51:10 +0000 (14:51 +0900)
committerJunsuChoi <jsuya.choi@samsung.com>
Thu, 24 Jan 2019 05:20:18 +0000 (14:20 +0900)
after a panel becomes scrollable, it has two layout objects internally
and only one of them is active. when elm_panel_orient_set() function
is called, only the active layout's theme is changed according to
the orientation. so if scrollable mode is changed after that, it shows
the old theme. this patch fixes it.

src/lib/elementary/elm_panel.c

index 8cebc2a..ea25639 100644 (file)
@@ -1480,6 +1480,7 @@ _elm_panel_scrollable_set(Eo *obj, Elm_Panel_Data *sd, Eina_Bool scrollable)
              if (!elm_layout_content_set(sd->scr_ly, "elm.event_area", sd->scr_event))
                elm_layout_content_set(sd->scr_ly, "event_area", sd->scr_event);
           }
+        else _scrollable_layout_theme_set(obj, sd);
 
         elm_interface_scrollable_content_set(obj, sd->scr_ly);
         // TIZEN_ONLY(20171109): show and hide necessary object when scrollable is set
@@ -1556,6 +1557,8 @@ _elm_panel_scrollable_set(Eo *obj, Elm_Panel_Data *sd, Eina_Bool scrollable)
         evas_object_show(sd->panel_edje);
         //
 
+        _orient_set_do(obj);
+
         evas_object_hide(sd->scr_ly);
         elm_layout_content_unset(sd->scr_ly, "elm.swallow.content");
         // TIZEN_ONLY(20171109): show and hide necessary object when scrollable is set