diff --git a/src/examples/elementary/slider_cxx_example.cc b/src/examples/elementary/slider_cxx_example.cc index 38e4b91700..37121240e1 100644 --- a/src/examples/elementary/slider_cxx_example.cc +++ b/src/examples/elementary/slider_cxx_example.cc @@ -70,11 +70,11 @@ efl_main(void *data EINA_UNUSED, const Efl_Event *ev EINA_UNUSED) { std::cout << "Changed to " << obj.range_value_get() << std::endl; } , std::placeholders::_1); - auto delay = std::bind ( [] (efl::ui::Slider obj) - { std::cout << "Delay changed to " << obj.range_value_get() << std::endl; } + auto steady = std::bind ( [] (efl::ui::Slider obj) + { std::cout << "Steady to " << obj.range_value_get() << std::endl; } , std::placeholders::_1); sl7.changed_event_cb_add(changed); - sl7.delay_changed_event_cb_add(delay); + sl7.steady_event_cb_add(steady); } EFL_MAIN() diff --git a/src/lib/elementary/efl_ui_slider.c b/src/lib/elementary/efl_ui_slider.c index 3e5ff63cbf..4977adec5a 100644 --- a/src/lib/elementary/efl_ui_slider.c +++ b/src/lib/elementary/efl_ui_slider.c @@ -34,7 +34,7 @@ _delay_change(void *data) EFL_UI_SLIDER_DATA_GET(data, sd); sd->delay = NULL; - efl_event_callback_call(data, EFL_UI_SLIDER_EVENT_DELAY_CHANGED, NULL); + efl_event_callback_call(data, EFL_UI_SLIDER_EVENT_STEADY, NULL); if (_elm_config->atspi_mode) efl_access_value_changed_signal_emit(data); diff --git a/src/lib/elementary/efl_ui_slider.eo b/src/lib/elementary/efl_ui_slider.eo index 4b703a3bf7..e8d04b3ddb 100644 --- a/src/lib/elementary/efl_ui_slider.eo +++ b/src/lib/elementary/efl_ui_slider.eo @@ -20,9 +20,15 @@ class @beta Efl.Ui.Slider extends Efl.Ui.Layout_Base implements Efl.Ui.Range_Int Efl.Access.Widget.Action.elm_actions { get; } } events { - changed: void; [[Called when slider changed]] - delay,changed: void; [[Called when delay changed]] - slider,drag,start: void; [[Called when slider drag started]] - slider,drag,stop: void; [[Called when slider drag stopped]] + changed: void; [[Called when the slider position has changed.]] + steady: void; [[Called when the slider position has changed and has remained unchanged for 0.2s. + This allows filtering out unwanted "noise" from the slider signal if you are only + interested in the final position of the slider. + Use this signal instead of @[Efl.Ui.Slider.changed] if you are going to perform a costly operation + on its handler.]] + slider,drag,start: void; [[Called when a slider drag operation has started. This means a $press event + has been received on the slider thumb but not the $unpress.]] + slider,drag,stop: void; [[Called when a slider drag operation has finished. This means an $unpress event + has been received on the slider thumb.]] } } diff --git a/src/lib/elementary/efl_ui_slider_interval.c b/src/lib/elementary/efl_ui_slider_interval.c index 8256c7de22..0f0f9a5b8d 100644 --- a/src/lib/elementary/efl_ui_slider_interval.c +++ b/src/lib/elementary/efl_ui_slider_interval.c @@ -22,7 +22,7 @@ _delay_change(void *data) EFL_UI_SLIDER_INTERVAL_DATA_GET(data, pd); pd->delay = NULL; - efl_event_callback_call(data, EFL_UI_SLIDER_EVENT_DELAY_CHANGED, NULL); + efl_event_callback_call(data, EFL_UI_SLIDER_EVENT_STEADY, NULL); if (_elm_config->atspi_mode) efl_access_value_changed_signal_emit(data); diff --git a/src/lib/elementary/elm_slider.c b/src/lib/elementary/elm_slider.c index fe148057c4..927c6f8860 100644 --- a/src/lib/elementary/elm_slider.c +++ b/src/lib/elementary/elm_slider.c @@ -62,7 +62,7 @@ _delay_change(void *data) ELM_SLIDER_DATA_GET(data, sd); sd->delay = NULL; - efl_event_callback_legacy_call(data, EFL_UI_SLIDER_EVENT_DELAY_CHANGED, NULL); + efl_event_callback_legacy_call(data, EFL_UI_SLIDER_EVENT_STEADY, NULL); if (_elm_config->atspi_mode) efl_access_value_changed_signal_emit(data);