lock overlay to visible while a menu is open

This commit is contained in:
zmike 2016-10-05 18:19:42 -04:00
parent f3e02cd992
commit 00af2f5fbe
1 changed files with 12 additions and 0 deletions

View File

@ -38,6 +38,7 @@ static Evas_Object *bg[2] = {NULL};
static Evas_Object *layout = NULL;
static Evas_Object *layout_filesystem = NULL;
static Eina_Bool ctxpopup_locked_overlay = EINA_FALSE;
static Eina_Bool overlay_locked_state = EINA_FALSE;
static Eina_Bool lyrics_visible = EINA_FALSE;
static Eina_Bool empd_connected = EINA_FALSE;
@ -431,6 +432,12 @@ ctxpopup_dismiss(void *data EINA_UNUSED, Evas_Object *obj, void *event_info EINA
{
if (ctxpopup == obj)
ctxpopup = NULL;
if (ctxpopup_locked_overlay)
{
ctxpopup_locked_overlay = EINA_FALSE;
if (overlay_locked_state)
elm_object_signal_emit(layout, "empc,overlay,toggle", "empc");
}
evas_object_del(obj);
}
@ -450,6 +457,11 @@ ctxpopup_add(Evas_Object *obj, const char *style)
evas_object_event_callback_add(ctx, EVAS_CALLBACK_MOUSE_MOVE, ctxpopup_mouse, NULL);
elm_object_style_set(ctx, style);
evas_object_smart_callback_add(ctx, "dismissed", ctxpopup_dismiss, NULL);
if (!overlay_locked_state)
{
elm_object_signal_emit(layout, "empc,overlay,toggle", "empc");
ctxpopup_locked_overlay = EINA_TRUE;
}
return ctx;
}