forked from enlightenment/enlightenment
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!
This commit is contained in:
parent
b2d67bd68a
commit
8724313b8e
|
@ -491,16 +491,6 @@ _slider_changed_cb(void *data EINA_UNUSED, Evas_Object *obj,
|
|||
free(v.volumes);
|
||||
}
|
||||
|
||||
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)
|
||||
{
|
||||
|
@ -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);
|
||||
|
|
|
@ -48,17 +48,6 @@ _cb_sink_volume_change(void *data,
|
|||
elm_slider_value_set(obj, vol);
|
||||
}
|
||||
|
||||
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,
|
||||
|
@ -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);
|
||||
|
|
Loading…
Reference in New Issue