From 4d0289bb9f76dd798f0ed8fd8fce28e81cbbdabf Mon Sep 17 00:00:00 2001 From: Jaeun Choi Date: Fri, 18 Jan 2019 16:26:44 +0900 Subject: [PATCH] elm_panel: fix a bug in elm_scrollable_mode_set() function when panel becomes scrollable, the function blocked scrolling assuming that the panel is hidden. this caused an issue case when panel becomes scrollable while it is open. this patch fixes the issue. --- src/lib/elementary/elm_panel.c | 25 ++++++++++++++----------- 1 file changed, 14 insertions(+), 11 deletions(-) diff --git a/src/lib/elementary/elm_panel.c b/src/lib/elementary/elm_panel.c index 1265e127ee..675227e654 100644 --- a/src/lib/elementary/elm_panel.c +++ b/src/lib/elementary/elm_panel.c @@ -1384,18 +1384,21 @@ _elm_panel_scrollable_set(Eo *obj, Elm_Panel_Data *sd, Eina_Bool scrollable) elm_layout_content_set(sd->scr_ly, "elm.swallow.content", sd->bx); if (sd->content) elm_widget_sub_object_add(sd->scr_ly, sd->content); - switch (sd->orient) + if (sd->hidden) { - case ELM_PANEL_ORIENT_TOP: - case ELM_PANEL_ORIENT_BOTTOM: - elm_interface_scrollable_movement_block_set - (obj, EFL_UI_SCROLL_BLOCK_VERTICAL); - break; - case ELM_PANEL_ORIENT_LEFT: - case ELM_PANEL_ORIENT_RIGHT: - elm_interface_scrollable_movement_block_set - (obj, EFL_UI_SCROLL_BLOCK_HORIZONTAL); - break; + switch (sd->orient) + { + case ELM_PANEL_ORIENT_TOP: + case ELM_PANEL_ORIENT_BOTTOM: + elm_interface_scrollable_movement_block_set + (obj, EFL_UI_SCROLL_BLOCK_VERTICAL); + break; + case ELM_PANEL_ORIENT_LEFT: + case ELM_PANEL_ORIENT_RIGHT: + elm_interface_scrollable_movement_block_set + (obj, EFL_UI_SCROLL_BLOCK_HORIZONTAL); + break; + } } elm_interface_scrollable_single_direction_set