zmike pushed a commit to branch efl-1.22. http://git.enlightenment.org/core/efl.git/commit/?id=f5db624f1af706583c6820574acc289781e15c79
commit f5db624f1af706583c6820574acc289781e15c79 Author: Jaeun Choi <jaeun12.c...@samsung.com> Date: Mon Apr 8 18:35:57 2019 +0900 elm_panel/efl_ui_panel: disable scrolling when obj is disabled panels were still scrollable while disabled. this patch fixes it. --- src/lib/elementary/efl_ui_panel.c | 30 ++++++++++++++++++++++++++++++ src/lib/elementary/elm_panel.c | 30 ++++++++++++++++++++++++++++++ 2 files changed, 60 insertions(+) diff --git a/src/lib/elementary/efl_ui_panel.c b/src/lib/elementary/efl_ui_panel.c index efab3631f7..9e8e4c5027 100644 --- a/src/lib/elementary/efl_ui_panel.c +++ b/src/lib/elementary/efl_ui_panel.c @@ -1165,6 +1165,21 @@ _efl_ui_panel_efl_ui_widget_disabled_set(Eo *obj, Efl_Ui_Panel_Data *sd, Eina_Bo { if (disabled && sd->callback_added) { + switch (sd->orient) + { + case ELM_PANEL_ORIENT_BOTTOM: + case ELM_PANEL_ORIENT_TOP: + elm_interface_scrollable_movement_block_set + (obj, EFL_UI_SCROLL_BLOCK_VERTICAL); + break; + + case ELM_PANEL_ORIENT_RIGHT: + case ELM_PANEL_ORIENT_LEFT: + elm_interface_scrollable_movement_block_set + (obj, EFL_UI_SCROLL_BLOCK_HORIZONTAL); + break; + } + evas_object_event_callback_del(obj, EVAS_CALLBACK_MOUSE_DOWN, _on_mouse_down); evas_object_event_callback_del(obj, EVAS_CALLBACK_MOUSE_MOVE, @@ -1178,6 +1193,21 @@ _efl_ui_panel_efl_ui_widget_disabled_set(Eo *obj, Efl_Ui_Panel_Data *sd, Eina_Bo } else if (!disabled && !sd->callback_added) { + switch (sd->orient) + { + case ELM_PANEL_ORIENT_BOTTOM: + case ELM_PANEL_ORIENT_TOP: + elm_interface_scrollable_movement_block_set + (obj, EFL_UI_SCROLL_BLOCK_HORIZONTAL); + break; + + case ELM_PANEL_ORIENT_RIGHT: + case ELM_PANEL_ORIENT_LEFT: + elm_interface_scrollable_movement_block_set + (obj, EFL_UI_SCROLL_BLOCK_VERTICAL); + break; + } + evas_object_event_callback_add(obj, EVAS_CALLBACK_MOUSE_DOWN, _on_mouse_down, sd); evas_object_event_callback_add(obj, EVAS_CALLBACK_MOUSE_MOVE, diff --git a/src/lib/elementary/elm_panel.c b/src/lib/elementary/elm_panel.c index b6e47280ea..a0b4ccd47e 100644 --- a/src/lib/elementary/elm_panel.c +++ b/src/lib/elementary/elm_panel.c @@ -1251,6 +1251,21 @@ _elm_panel_efl_ui_widget_disabled_set(Eo *obj, Elm_Panel_Data *sd, Eina_Bool dis { if (efl_ui_widget_disabled_get(obj) && sd->callback_added) { + switch (sd->orient) + { + case ELM_PANEL_ORIENT_BOTTOM: + case ELM_PANEL_ORIENT_TOP: + elm_interface_scrollable_movement_block_set + (obj, EFL_UI_SCROLL_BLOCK_VERTICAL); + break; + + case ELM_PANEL_ORIENT_RIGHT: + case ELM_PANEL_ORIENT_LEFT: + elm_interface_scrollable_movement_block_set + (obj, EFL_UI_SCROLL_BLOCK_HORIZONTAL); + break; + } + evas_object_event_callback_del(obj, EVAS_CALLBACK_MOUSE_DOWN, _on_mouse_down); evas_object_event_callback_del(obj, EVAS_CALLBACK_MOUSE_MOVE, @@ -1264,6 +1279,21 @@ _elm_panel_efl_ui_widget_disabled_set(Eo *obj, Elm_Panel_Data *sd, Eina_Bool dis } else if (!efl_ui_widget_disabled_get(obj) && !sd->callback_added) { + switch (sd->orient) + { + case ELM_PANEL_ORIENT_BOTTOM: + case ELM_PANEL_ORIENT_TOP: + elm_interface_scrollable_movement_block_set + (obj, EFL_UI_SCROLL_BLOCK_HORIZONTAL); + break; + + case ELM_PANEL_ORIENT_RIGHT: + case ELM_PANEL_ORIENT_LEFT: + elm_interface_scrollable_movement_block_set + (obj, EFL_UI_SCROLL_BLOCK_VERTICAL); + break; + } + evas_object_event_callback_add(obj, EVAS_CALLBACK_MOUSE_DOWN, _on_mouse_down, sd); evas_object_event_callback_add(obj, EVAS_CALLBACK_MOUSE_MOVE, --