elm_panel/efl_ui_panel: disable scrolling when obj is disabled

panels were still scrollable while disabled.
this patch fixes it.
devs/lauromoura/csharp_conventions
Jaeun Choi 4 years ago
parent dc1e1a652c
commit 998e9a8f68
  1. 30
      src/lib/elementary/efl_ui_panel.c
  2. 30
      src/lib/elementary/elm_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,

@ -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,

Loading…
Cancel
Save