emixer - add icon for playback device

Summary:
add playback icons

emixer - add playback icons

Reviewers: devilhorns, raster

Subscribers: raster, bu5hm4n, cedric, zmike

Tags: #enlightenment-git

Differential Revision: https://phab.enlightenment.org/D11640
This commit is contained in:
Simon Tischer 2020-04-06 14:27:44 +01:00 committed by Carsten Haitzler (Rasterman)
parent 48f9529fbd
commit 039f96df91
3 changed files with 13 additions and 5 deletions

View File

@ -569,7 +569,7 @@ _emix_sink_input_volume_fill(Emix_Sink_Input *input, Evas_Object *bxv, Evas_Obje
static void
_emix_sink_input_add(Emix_Sink_Input *input)
{
Evas_Object *bxv, *bx, *lb, *hv, *sep;
Evas_Object *bxv, *bx, *lb, *hv, *sep, *ic;
const Eina_List *l;
Emix_Sink *sink;
Eina_Bool locked = EINA_TRUE;
@ -584,10 +584,18 @@ _emix_sink_input_add(Emix_Sink_Input *input)
bx = elm_box_add(win);
elm_box_horizontal_set(bx, EINA_TRUE);
evas_object_size_hint_weight_set(bx, EVAS_HINT_EXPAND, 0.0);
evas_object_size_hint_align_set(bx, EVAS_HINT_FILL, 0.5);
evas_object_size_hint_align_set(bx, EVAS_HINT_FILL, 0.0);
elm_box_pack_end(bxv, bx);
evas_object_show(bx);
ic = elm_icon_add(win);
elm_icon_standard_set(ic, input->icon);
evas_object_size_hint_weight_set(ic, 0.0, EVAS_HINT_EXPAND);
evas_object_size_hint_align_set(ic, 0.0, EVAS_HINT_FILL);
evas_object_size_hint_aspect_set(ic, EVAS_ASPECT_CONTROL_VERTICAL, 1, 1);
elm_box_pack_end(bx, ic);
evas_object_show(ic);
lb = elm_label_add(win);
elm_object_text_set(lb, input->name);
evas_object_size_hint_weight_set(lb, EVAS_HINT_EXPAND, 0.0);

View File

@ -40,7 +40,6 @@ typedef struct _Sink
typedef struct _Sink_Input
{
Emix_Sink_Input base;
const char *icon;
int idx;
} Sink_Input;
@ -129,7 +128,7 @@ _sink_input_del(Sink_Input *input)
eina_stringshare_del(input->base.volume.channel_names[i]);
free(input->base.volume.channel_names);
eina_stringshare_del(input->base.name);
eina_stringshare_del(input->icon);
eina_stringshare_del(input->base.icon);
free(input);
}
@ -411,7 +410,7 @@ _sink_input_cb(pa_context *c EINA_UNUSED, const pa_sink_input_info *info,
if (s->idx == (int)info->sink)
input->base.sink = (Emix_Sink *)s;
}
input->icon = eina_stringshare_add(_icon_from_properties(info->proplist));
input->base.icon = eina_stringshare_add(_icon_from_properties(info->proplist));
ctx->inputs = eina_list_append(ctx->inputs, input);
if ((t = pa_proplist_gets(info->proplist, PA_PROP_APPLICATION_PROCESS_ID)))

View File

@ -71,6 +71,7 @@ typedef struct _Emix_Sink_Input {
Eina_Bool mute;
Emix_Sink *sink;
pid_t pid;
const char *icon;
} Emix_Sink_Input;
typedef struct _Emix_Source {