Add screen connector trigger focus 57/226457/2
authorDaehyeon Jung <darrenh.jung@samsung.com>
Tue, 3 Mar 2020 03:41:25 +0000 (12:41 +0900)
committerDaehyeon Jung <darrenh.jung@samsung.com>
Thu, 5 Mar 2020 04:06:17 +0000 (13:06 +0900)
Change-Id: I1ad6a96d4387258f6be838d4279518565a1b7081
Signed-off-by: Daehyeon Jung <darrenh.jung@samsung.com>
include/aul_cmd.h
include/aul_screen_connector.h
src/aul_cmd.c
src/aul_screen_connector.c

index bf21132..aa2ced9 100755 (executable)
@@ -179,6 +179,7 @@ enum app_cmd {
        APP_PREPARE_APP_DEFINED_LOADER = 140,
 
        WIDGET_DISABLE = 141,
+       TRIGGER_APP_SCREEN_FOCUSED_FORCE = 142,
 
        APP_CMD_MAX
 };
index 8b5901d..ec21b87 100644 (file)
@@ -35,6 +35,7 @@ typedef enum {
        AUL_SCREEN_CONNECTOR_EVENT_TYPE_ADD,
        AUL_SCREEN_CONNECTOR_EVENT_TYPE_REMOVE,
        AUL_SCREEN_CONNECTOR_EVENT_TYPE_UPDATE,
+       AUL_SCREEN_CONNECTOR_EVENT_TYPE_FOCUS,
 } aul_screen_connector_event_type_e;
 
 typedef enum {
@@ -97,6 +98,11 @@ int aul_screen_connector_get_instance_id_by_surface_id(unsigned int surface_id,
 int aul_screen_connector_update_screen_viewer_status(aul_screen_status_e status,
                unsigned int provider_surf);
 
+/*
+ * This API is only for Appfw internally.
+ */
+int aul_screen_connector_trigger_focused_force();
+
 #ifdef __cplusplus
 }
 #endif
index cacf378..5058515 100755 (executable)
@@ -308,6 +308,8 @@ API const char *aul_cmd_convert_to_string(int cmd)
                return "APP_PREPARE_APP_DEFINED_LOADER";
        case WIDGET_DISABLE:
                return "WIDGET_DISABLE";
+       case TRIGGER_APP_SCREEN_FOCUSED_FORCE:
+               return "TRIGGER_APP_SCREEN_FOCUSED_FORCE";
        default:
                return "CUSTOM_COMMAND";
        }
index 1922427..95cd32c 100644 (file)
@@ -161,6 +161,8 @@ static int __app_screen_event_cb(const char *endpoint, aul_app_com_result_e res,
                event_type = AUL_SCREEN_CONNECTOR_EVENT_TYPE_REMOVE;
        } else if (strcmp(event, "update_screen") == 0) {
                event_type = AUL_SCREEN_CONNECTOR_EVENT_TYPE_UPDATE;
+       } else if (strcmp(event, "focus_screen") == 0) {
+               event_type = AUL_SCREEN_CONNECTOR_EVENT_TYPE_FOCUS;
        } else {
                _E("Unknown event type(%s)", event);
                return -1;
@@ -557,3 +559,13 @@ API int aul_screen_connector_update_screen_viewer_status(
 
        return ret;
 }
+
+API int aul_screen_connector_trigger_focused_force() {
+       int ret;
+
+       ret = aul_sock_send_raw(AUL_UTIL_PID, getuid(),
+               TRIGGER_APP_SCREEN_FOCUSED_FORCE, NULL, 0, AUL_SOCK_NOREPLY);
+
+       return ret;
+}
+