elm_slider: create timer for hiding later
authorMarcel Hollerbach <mail@marcel-hollerbach.de>
Tue, 14 Apr 2020 15:29:28 +0000 (11:29 -0400)
committerJongmin Lee <jm105.lee@samsung.com>
Wed, 15 Apr 2020 22:54:45 +0000 (07:54 +0900)
Summary:
_popup_show deletes the hide timer, hence we need to create the timer
later on, or this will not automatically hide the indicator.

Reviewers: stefan_schmidt, zmike, Jaehyun_Cho

Reviewed By: zmike

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D11679

src/lib/elementary/elm_slider.c

index 3a8a03a..b0ff44b 100644 (file)
@@ -686,9 +686,6 @@ _elm_slider_efl_ui_widget_widget_input_event_handler(Eo *obj, Elm_Slider_Data *s
         else
           _drag_down(obj, NULL, NULL, NULL);
         efl_input_processed_set(ev, EINA_TRUE);
-        ELM_SAFE_FREE(sd->wheel_indicator_timer, ecore_timer_del);
-        sd->wheel_indicator_timer =
-           ecore_timer_add(0.5, _wheel_indicator_timer_cb, obj);
      }
    else return EINA_FALSE;
 
@@ -696,6 +693,13 @@ _elm_slider_efl_ui_widget_widget_input_event_handler(Eo *obj, Elm_Slider_Data *s
    _val_fetch(obj, EINA_TRUE);
    evas_object_smart_changed(obj);
 
+   if (eo_event->desc == EFL_EVENT_POINTER_WHEEL)
+     {
+        ELM_SAFE_FREE(sd->wheel_indicator_timer, ecore_timer_del);
+        sd->wheel_indicator_timer =
+           ecore_timer_add(0.5, _wheel_indicator_timer_cb, obj);
+     }
+
    return EINA_TRUE;
 }