e_client_volume: Update the e_client frame object on sink del event

Reviewers: raster, devilhorns

Subscribers: cedric, zmike

Tags: #enlightenment-git

Differential Revision: https://phab.enlightenment.org/D8928
This commit is contained in:
Michael Bouchaud (yoz) 2020-05-14 11:13:14 +01:00 committed by Carsten Haitzler (Rasterman)
parent 7071faca6c
commit f4c1ba959e
1 changed files with 3 additions and 2 deletions

View File

@ -14,6 +14,7 @@ static void _e_client_volume_object_volume_changed(void *data, Evas_Object *obj,
static void _e_client_volume_object_volume_drag_stop(void *data, Evas_Object *obj, void *event_info); static void _e_client_volume_object_volume_drag_stop(void *data, Evas_Object *obj, void *event_info);
static Eina_Bool _e_client_volume_object_changed(void *data, int type, void *event); static Eina_Bool _e_client_volume_object_changed(void *data, int type, void *event);
static void _e_client_volume_object_del_cb(void *data, Evas *evas, Evas_Object *obj, void *event_info); static void _e_client_volume_object_del_cb(void *data, Evas *evas, Evas_Object *obj, void *event_info);
static void _e_client_volume_update(E_Client *ec);
static void static void
_e_client_volume_event_simple_free(void *d EINA_UNUSED, E_Event_Client *ev) _e_client_volume_event_simple_free(void *d EINA_UNUSED, E_Event_Client *ev)
@ -179,7 +180,7 @@ e_client_volume_sink_del(E_Client_Volume_Sink *sink)
EINA_LIST_FREE(sink->clients, ec) EINA_LIST_FREE(sink->clients, ec)
{ {
ec->sinks = eina_list_remove(ec->sinks, sink); ec->sinks = eina_list_remove(ec->sinks, sink);
e_comp_object_frame_volume_update(ec->frame); _e_client_volume_update(ec);
_e_client_volume_sink_event_simple(ec, sink, _e_client_volume_sink_event_simple(ec, sink,
E_EVENT_CLIENT_VOLUME_SINK_DEL); E_EVENT_CLIENT_VOLUME_SINK_DEL);
e_object_unref(E_OBJECT(ec)); e_object_unref(E_OBJECT(ec));
@ -285,9 +286,9 @@ _e_client_volume_update(E_Client *ec)
ec->mute = EINA_FALSE; ec->mute = EINA_FALSE;
ec->volume_control_enabled = EINA_FALSE; ec->volume_control_enabled = EINA_FALSE;
} }
e_comp_object_frame_volume_update(ec->frame);
if (ec->volume_control_enabled) if (ec->volume_control_enabled)
{ {
e_comp_object_frame_volume_update(ec->frame);
e_client_volume_display_set(ec, ec->volume, ec->mute); e_client_volume_display_set(ec, ec->volume, ec->mute);
} }
} }