fix filesystem fetching if player is stopped

This commit is contained in:
Mike Blumenkrantz 2014-12-14 21:48:25 -05:00
parent 5be8af98b8
commit b3d489b40c
1 changed files with 13 additions and 16 deletions

View File

@ -857,14 +857,7 @@ songid_update(int songid)
{
if (bgchooser)
elm_object_signal_emit(layout, "empc,bg_chooser,stop", "empc");
if (first) //may be "true" first, or currently playing item was just deleted
{
if (elm_gengrid_items_count(eina_list_data_get(filesystems)))
elm_object_signal_emit(layout, "empc,bg,next", "empc");
else
empd_empdd_list_info_call(empd_proxy, filesystem_base, eina_list_data_get(filesystems), "/");
}
else
if (!first)
{
if ((ret >= 0) || (itp && (!elm_genlist_item_next_get(itp))))
elm_object_signal_emit(layout, "empc,bg,next", "empc");
@ -1607,12 +1600,15 @@ onconnected(Eina_Bool diff, const char *host, unsigned int port)
empd_empdd_status_call(empd_proxy);
if (!diff) return;
elm_genlist_clear(queue_list);
while (filesystems->next)
if (filesystems)
{
evas_object_del(eina_list_data_get(filesystems->next));
filesystems = eina_list_remove_list(filesystems, filesystems->next);
while (filesystems->next)
{
evas_object_del(eina_list_data_get(filesystems->next));
filesystems = eina_list_remove_list(filesystems, filesystems->next);
}
elm_gengrid_clear(eina_list_data_get(filesystems));
}
elm_gengrid_clear(eina_list_data_get(filesystems));
eina_stringshare_replace(&empd_host, host);
empd_port = port;
}
@ -1823,8 +1819,11 @@ empc_status(void *d EINA_UNUSED, int t EINA_UNUSED, Empd_Empdd_Status_Data *ev)
}
}
empd_queue_length = ev->queue_length;
if ((!ev->queue_length) && (ev->songid == -1)) //first run: no playlist, no songs
empd_empdd_list_info_call(empd_proxy, filesystem_base, eina_list_data_get(filesystems), "/");
if (!filesystems)
{
elm_object_part_content_set(layout_filesystem, EMPC_SWALLOW_FILESYSTEM, filesystem_new("/"));
empd_empdd_list_info_call(empd_proxy, filesystem_base, eina_list_data_get(filesystems), "/");
}
return ECORE_CALLBACK_RENEW;
}
@ -3657,8 +3656,6 @@ main(int argc, char *argv[])
FILL(o);
elm_object_part_content_set(ly, "empc.swallow.back", o);
elm_object_part_content_set(ly, EMPC_SWALLOW_FILESYSTEM, filesystem_new("/"));
hbox = elm_box_add(win);
WEIGHT(hbox, EVAS_HINT_EXPAND, 0);
FILL(hbox);