{
E_SERVICE_QUICKPANEL_TYPE_UNKNOWN = 0x0, /* TZSH_QUICKPANEL_SERVICE_TYPE_UNKNOWN */
E_SERVICE_QUICKPANEL_TYPE_SYSTEM_DEFAULT = 0x1, /* TZSH_QUICKPANEL_SERVICE_TYPE_SYSTEM_DEFAULT */
- E_SERVICE_QUICKPANEL_TYPE_CONTEXT_MENU = 0x2 /* TZSH_QUICKPANEL_SERVICE_TYPE_CONTEXT_MENU */
+ E_SERVICE_QUICKPANEL_TYPE_CONTEXT_MENU = 0x2, /* TZSH_QUICKPANEL_SERVICE_TYPE_CONTEXT_MENU */
+ E_SERVICE_QUICKPANEL_TYPE_APPS_MENU = 0x3, /* TZSH_QUICKPANEL_SERVICE_TYPE_APPS_MENU */
} E_Service_Quickpanel_Type;
typedef enum
E_QUICKPANEL_TYPE_UNKNOWN = 0,
E_QUICKPANEL_TYPE_SYSTEM_DEFAULT = 1,
E_QUICKPANEL_TYPE_CONTEXT_MENU = 2,
+ E_QUICKPANEL_TYPE_APPS_MENU = 3,
} E_Quickpanel_Type;
typedef enum
TZSH_SRV_ROLE_VOLUME,
TZSH_SRV_ROLE_QUICKPANEL_SYSTEM_DEFAULT,
TZSH_SRV_ROLE_QUICKPANEL_CONTEXT_MENU,
+ TZSH_SRV_ROLE_QUICKPANEL_APPS_MENU,
TZSH_SRV_ROLE_LOCKSCREEN,
TZSH_SRV_ROLE_INDICATOR,
TZSH_SRV_ROLE_TVSERVICE,
else if (!e_util_strcmp(name, "volume" )) role = TZSH_SRV_ROLE_VOLUME;
else if (!e_util_strcmp(name, "quickpanel_system_default")) role = TZSH_SRV_ROLE_QUICKPANEL_SYSTEM_DEFAULT;
else if (!e_util_strcmp(name, "quickpanel_context_menu" )) role = TZSH_SRV_ROLE_QUICKPANEL_CONTEXT_MENU;
+ else if (!e_util_strcmp(name, "quickpanel_apps_menu" )) role = TZSH_SRV_ROLE_QUICKPANEL_APPS_MENU;
else if (!e_util_strcmp(name, "lockscreen" )) role = TZSH_SRV_ROLE_LOCKSCREEN;
else if (!e_util_strcmp(name, "indicator" )) role = TZSH_SRV_ROLE_INDICATOR;
else if (!e_util_strcmp(name, "tvsrv" )) role = TZSH_SRV_ROLE_TVSERVICE;
EINA_SAFETY_ON_NULL_RETURN(tzsh_reg);
if ((tzsh_srv->role == TZSH_SRV_ROLE_QUICKPANEL_SYSTEM_DEFAULT) ||
- (tzsh_srv->role == TZSH_SRV_ROLE_QUICKPANEL_CONTEXT_MENU))
+ (tzsh_srv->role == TZSH_SRV_ROLE_QUICKPANEL_CONTEXT_MENU) ||
+ (tzsh_srv->role == TZSH_SRV_ROLE_QUICKPANEL_APPS_MENU))
{
EINA_SAFETY_ON_NULL_RETURN(tzsh_srv->tzsh);
EINA_SAFETY_ON_NULL_RETURN(tzsh_srv->tzsh->ec);
e_service_quickpanel_client_add(tzsh->ec, E_SERVICE_QUICKPANEL_TYPE_SYSTEM_DEFAULT);
else if (role == TZSH_SRV_ROLE_QUICKPANEL_CONTEXT_MENU)
e_service_quickpanel_client_add(tzsh->ec, E_SERVICE_QUICKPANEL_TYPE_CONTEXT_MENU);
+ else if (role == TZSH_SRV_ROLE_QUICKPANEL_APPS_MENU)
+ e_service_quickpanel_client_add(tzsh->ec, E_SERVICE_QUICKPANEL_TYPE_APPS_MENU);
else if (role == TZSH_SRV_ROLE_VOLUME)
e_service_volume_client_set(tzsh->ec);
else if (role == TZSH_SRV_ROLE_LOCKSCREEN)
qp->effect.type = E_SERVICE_QUICKPANEL_EFFECT_TYPE_MOVE;
e_client_window_role_set(ec, "quickpanel_context_menu");
}
+ else if (type == E_SERVICE_QUICKPANEL_TYPE_APPS_MENU)
+ {
+ /* don't support swipe type of effect for the qp apps menu in public
+ * you have to make your own qp module and provide backend functions
+ * if you want to change type of effect of qp apps menu
+ */
+ qp->effect.type = E_SERVICE_QUICKPANEL_EFFECT_TYPE_MOVE;
+ e_client_window_role_set(ec, "quickpanel_apps_menu");
+ }
e_comp_screen_rotation_ignore_output_transform_send(qp->ec, EINA_TRUE);