bu5hm4n pushed a commit to branch master.

http://git.enlightenment.org/core/enlightenment.git/commit/?id=8724313b8e4c9799c5d20b876d5aaa9e5341d519

commit 8724313b8e4c9799c5d20b876d5aaa9e5341d519
Author: Marcel Hollerbach <[email protected]>
Date:   Fri Oct 28 11:35:45 2016 +0200

    mixer: do not set back the value from emix once the drag is finished
    
    emix can still have wrong values from pa, and thus the value will jump
    back and later come back to the right pos:
    
    Here a video of what is happening:
    http://omicron.homeip.net/filedump/mixer_gadget_bug.ogv
    
    Thank you morluxus!
---
 src/modules/mixer/e_mod_main.c | 11 -----------
 src/modules/mixer/emixer.c     | 13 -------------
 2 files changed, 24 deletions(-)

diff --git a/src/modules/mixer/e_mod_main.c b/src/modules/mixer/e_mod_main.c
index 15aa4af..5786bed 100644
--- a/src/modules/mixer/e_mod_main.c
+++ b/src/modules/mixer/e_mod_main.c
@@ -492,16 +492,6 @@ _slider_changed_cb(void *data EINA_UNUSED, Evas_Object 
*obj,
 }
 
 static void
-_slider_drag_stop_cb(void *data EINA_UNUSED, Evas_Object *obj,
-                     void *event EINA_UNUSED)
-{
-   EINA_SAFETY_ON_NULL_RETURN(mixer_context->sink_default);
-   Emix_Sink *s = (Emix_Sink *)mixer_context->sink_default;
-   int val = s->volume.volumes[0];
-   elm_slider_value_set(obj, val);
-}
-
-static void
 _sink_selected_cb(void *data, Evas_Object *obj EINA_UNUSED, void *event_info 
EINA_UNUSED)
 {
    Emix_Sink *s = data;
@@ -565,7 +555,6 @@ _popup_new(Instance *inst)
    evas_object_show(slider);
    elm_slider_min_max_set(slider, 0.0, emix_max_volume_get());
    evas_object_smart_callback_add(slider, "changed", _slider_changed_cb, NULL);
-   evas_object_smart_callback_add(slider, "slider,drag,stop", 
_slider_drag_stop_cb, NULL);
    elm_slider_value_set(slider, volume);
    elm_box_pack_end(bx, slider);
    evas_object_show(slider);
diff --git a/src/modules/mixer/emixer.c b/src/modules/mixer/emixer.c
index 5cde881..1bcd96c 100644
--- a/src/modules/mixer/emixer.c
+++ b/src/modules/mixer/emixer.c
@@ -49,17 +49,6 @@ _cb_sink_volume_change(void *data,
 }
 
 static void
-_cb_sink_volume_drag_stop(void *data,
-                          Evas_Object *obj,
-                          void *event EINA_UNUSED)
-{
-   Evas_Object *bxv = data;
-   Emix_Sink *sink = evas_object_data_get(bxv, "sink");
-   int vol = sink->volume.volumes[0];
-   elm_slider_value_set(obj, vol);
-}
-
-static void
 _cb_sink_mute_change(void *data,
                      Evas_Object *obj,
                      void *event_info EINA_UNUSED)
@@ -134,8 +123,6 @@ _emix_sink_add(Emix_Sink *sink)
    elm_box_pack_end(bx, sl);
    evas_object_show(sl);
    evas_object_smart_callback_add(sl, "changed", _cb_sink_volume_change, bxv);
-   evas_object_smart_callback_add(sl, "slider,drag,stop",
-                                  _cb_sink_volume_drag_stop, bxv);
 
    ck = elm_check_add(win);
    evas_object_data_set(bxv, "mute", ck);

-- 


Reply via email to