Adding Tray Application to starter 88/280788/1 accepted/tizen/unified/20220908.172940 submit/tizen/20220905.105535
authorshivamv <shivam.v2@samsung.com>
Mon, 5 Sep 2022 06:30:24 +0000 (12:00 +0530)
committershivamv <shivam.v2@samsung.com>
Mon, 5 Sep 2022 06:30:24 +0000 (12:00 +0530)
Change-Id: I7228e2b063b38dd8219f3dfa9b0f511c1b628648
Signed-off-by: shivamv <shivam.v2@samsung.com>
12 files changed:
include/common/home_mgr.h
include/common/hw_key.h [changed mode: 0644->0755]
include/mobile/home_mgr.h [changed mode: 0644->0755]
include/mobile/hw_key.h [changed mode: 0644->0755]
include/wearable/hw_key.h [changed mode: 0644->0755]
src/common/home_mgr.c
src/common/hw_key.c [changed mode: 0644->0755]
src/common/starter.c
src/mobile/home_mgr.c
src/mobile/hw_key.c
src/mobile/starter.c
src/wearable/hw_key.c

index 58bf176..6625801 100755 (executable)
@@ -22,6 +22,7 @@ extern int home_mgr_get_home_pid(void);
 extern int home_mgr_get_volume_pid(void);
 extern int home_mgr_get_indicator_pid(void);
 extern int home_mgr_get_quickpanel_pid(void);
+extern int home_mgr_get_tray_pid(void);
 extern int home_mgr_get_softkey_pid(void);
 extern void home_mgr_softkey_dead_signal_received();
 
@@ -34,5 +35,6 @@ void home_mgr_relaunch_homescreen(void);
 void home_mgr_relaunch_volume(void);
 void home_mgr_relaunch_indicator(void);
 void home_mgr_relaunch_quickpanel(void);
+void home_mgr_relaunch_tray(void);
 extern void home_mgr_open_home(const char *appid, const char *key, const char *val);
 // End of a file
\ No newline at end of file
old mode 100644 (file)
new mode 100755 (executable)
index 787a779..e9e7c32
@@ -58,6 +58,7 @@ typedef enum {
        KEY_REC,
        KEY_CANCEL,
        KEY_SOFTBD,
+       KEY_TRAY,
        KEY_QUICKPANEL,
        KEY_TASKSWITCH,
        KEY_HOMEPAGE,
old mode 100644 (file)
new mode 100755 (executable)
index 8b08df6..25f3b9e
@@ -22,6 +22,7 @@ extern int home_mgr_get_home_pid(void);
 extern int home_mgr_get_volume_pid(void);
 extern int home_mgr_get_indicator_pid(void);
 extern int home_mgr_get_quickpanel_pid(void);
+extern int home_mgr_get_tray_pid(void);
 
 extern void home_mgr_init(void *data);
 extern void home_mgr_fini(void);
@@ -30,5 +31,6 @@ void home_mgr_relaunch_homescreen(void);
 void home_mgr_relaunch_volume(void);
 void home_mgr_relaunch_indicator(void);
 void home_mgr_relaunch_quickpanel(void);
+void home_mgr_relaunch_tray(void);
 extern void home_mgr_open_home(const char *appid, const char *key, const char *val);
 // End of a file
old mode 100644 (file)
new mode 100755 (executable)
index 787a779..e9e7c32
@@ -58,6 +58,7 @@ typedef enum {
        KEY_REC,
        KEY_CANCEL,
        KEY_SOFTBD,
+       KEY_TRAY,
        KEY_QUICKPANEL,
        KEY_TASKSWITCH,
        KEY_HOMEPAGE,
old mode 100644 (file)
new mode 100755 (executable)
index d01aa7d..bfea0ff
@@ -38,6 +38,7 @@ typedef enum {
        KEY_REC,
        KEY_CANCEL,
        KEY_SOFTBD,
+       KEY_TRAY,
        KEY_QUICKPANEL,
        KEY_TASKSWITCH,
        KEY_HOMEPAGE,
index a0e1112..a30c6bb 100755 (executable)
@@ -45,6 +45,7 @@
 #define APPID_INDICATOR "org.tizen.indicator"
 #define APPID_QUICKPANEL "org.tizen.quickpanel"
 #define APPID_SOFTKEY "org.tizen.softkey-container"
+#define APPID_TRAY "org.tizen.TrayApplication"
 
 int errno;
 static struct {
@@ -53,6 +54,7 @@ static struct {
        pid_t indicator_pid;
        pid_t quickpanel_pid;
        pid_t softkey_pid;
+       pid_t tray_pid;
        int power_off;
 
        Ecore_Timer *dead_timer;
@@ -65,6 +67,7 @@ static struct {
        .indicator_pid = (pid_t)-1,
        .quickpanel_pid = (pid_t)-1,
        .softkey_pid = (pid_t)-1,
+       .tray_pid = (pid_t)-1,
        .power_off = 0,
 
        .dead_timer = NULL,
@@ -73,7 +76,7 @@ static struct {
        .popup = NULL,
 };
 
- static void home_mgr_softkey_change(void *user_data);
+static void home_mgr_softkey_change(void *user_data);
 
 int home_mgr_get_home_pid(void)
 {
@@ -102,6 +105,11 @@ int home_mgr_get_softkey_pid(void)
        return s_home_mgr.softkey_pid;
 }
 
+int home_mgr_get_tray_pid(void)
+{
+       return s_home_mgr.tray_pid;
+}
+
 void home_mgr_softkey_dead_signal_received()
 {
        s_home_mgr.softkey_pid = -1;
@@ -287,6 +295,11 @@ static void _after_launch_softkey(int pid)
        s_home_mgr.softkey_pid = pid;
 }
 
+static void _after_launch_tray(int pid)
+{
+       s_home_mgr.tray_pid = pid;
+}
+
 static void _launch_after_home(int pid)
 {
        if (pid != s_home_mgr.home_pid) {
@@ -433,6 +446,11 @@ void home_mgr_relaunch_quickpanel(void)
        process_mgr_must_launch(APPID_QUICKPANEL, NULL, NULL, NULL, _after_launch_quickpanel);
 }
 
+void home_mgr_relaunch_tray(void)
+{
+       process_mgr_must_launch(APPID_TRAY, NULL, NULL, NULL, _after_launch_tray);
+}
+
 void home_mgr_softkey_process_terminate(void)
 {
        process_mgr_terminate_app(s_home_mgr.softkey_pid,1);
@@ -517,6 +535,7 @@ static Eina_Bool _launch_apps_idler_cb(void *data)
 #endif
        process_mgr_must_launch(APPID_INDICATOR, NULL, NULL, NULL, _after_launch_indicator);
        process_mgr_must_launch(APPID_QUICKPANEL, NULL, NULL, NULL, _after_launch_quickpanel);
+       process_mgr_must_launch(APPID_TRAY, NULL, NULL, NULL, _after_launch_tray);
        return ECORE_CALLBACK_CANCEL;
 }
 
old mode 100644 (file)
new mode 100755 (executable)
index d677981..77de925
@@ -73,6 +73,7 @@ const char *key_name[KEY_NAME_MAX] = {
        "XF86AudioRecord",
        "Cancel",
        "XF86SoftKBD",
+       "XF86Tray",
        "XF86QuickPanel",
        "XF86TaskPane",
        "XF86HomePage",
index 174acf1..1d5ece8 100755 (executable)
@@ -196,6 +196,7 @@ static int _check_dead_signal(int pid, void *data)
        int volume_pid = 0;
        int indicator_pid = 0;
        int quickpanel_pid = 0;
+       int tray_pid = 0;
 #if LOCKSCREEN_ENABLE
        int lock_pid = 0;
 #endif
@@ -213,6 +214,7 @@ static int _check_dead_signal(int pid, void *data)
        volume_pid = home_mgr_get_volume_pid();
        indicator_pid = home_mgr_get_indicator_pid();
        quickpanel_pid = home_mgr_get_quickpanel_pid();
+       tray_pid = home_mgr_get_tray_pid();
 #if LOCKSCREEN_ENABLE
        lock_pid = lock_mgr_get_lock_pid();
 #endif
@@ -239,6 +241,9 @@ static int _check_dead_signal(int pid, void *data)
        } else if (pid == quickpanel_pid) {
                _D("quickpanel is dead");
                home_mgr_relaunch_quickpanel();
+       } else if (pid == tray_pid) {
+               _D("tray is dead");
+               home_mgr_relaunch_tray();
        } else if (pid == oobe_setup_pid) {
                _D("oobe setup is dead");
                oobe_mgr_oobe_setup_terminated();
index dc25ae6..48c9835 100755 (executable)
@@ -38,6 +38,7 @@
 #define SYSPOPUPID_VOLUME "org.tizen.volume"
 #define APPID_INDICATOR "org.tizen.indicator"
 #define APPID_QUICKPANEL "org.tizen.quickpanel"
+#define APPID_TRAY "org.tizen.TrayApplication"
 
 #define DEAD_TIMER_SEC 10.0
 #define DEAD_TIMER_COUNT_MAX 2
@@ -50,6 +51,7 @@ static struct {
        pid_t volume_pid;
        pid_t indicator_pid;
        pid_t quickpanel_pid;
+       pid_t tray_pid;
        int power_off;
 
        Ecore_Timer *dead_timer;
@@ -61,6 +63,7 @@ static struct {
        .volume_pid = (pid_t)-1,
        .indicator_pid = (pid_t)-1,
        .quickpanel_pid = (pid_t)-1,
+       .tray_pid = (pid_t)-1,
        .power_off = 0,
 
        .dead_timer = NULL,
@@ -98,6 +101,13 @@ int home_mgr_get_quickpanel_pid(void)
 
 
 
+int home_mgr_get_tray_pid(void)
+{
+       return s_home_mgr.tray_pid;
+}
+
+
+
 static void _after_launch_home(int pid)
 {
        if (pid != s_home_mgr.home_pid) {
@@ -276,6 +286,13 @@ static void _after_launch_quickpanel(int pid)
 
 
 
+static void _after_launch_tray(int pid)
+{
+       s_home_mgr.tray_pid = pid;
+}
+
+
+
 static void _launch_after_home(int pid)
 {
        if (pid != s_home_mgr.home_pid) {
@@ -423,6 +440,13 @@ void home_mgr_relaunch_quickpanel(void)
 
 
 
+void home_mgr_relaunch_tray(void)
+{
+       process_mgr_must_launch(APPID_TRAY, NULL, NULL, NULL, _after_launch_tray);
+}
+
+
+
 static int _power_off_cb(status_active_key_e key, void *data)
 {
        int val = status_active_get()->sysman_power_off_status;
@@ -445,6 +469,7 @@ static Eina_Bool _launch_apps_idler_cb(void *data)
        process_mgr_must_syspopup_launch(SYSPOPUPID_VOLUME, NULL, NULL, NULL, _after_launch_volume);
        process_mgr_must_launch(APPID_INDICATOR, NULL, NULL, NULL, _after_launch_indicator);
        process_mgr_must_launch(APPID_QUICKPANEL, NULL, NULL, NULL, _after_launch_quickpanel);
+       process_mgr_must_launch(APPID_TRAY, NULL, NULL, NULL, _after_launch_tray);
 
        return ECORE_CALLBACK_CANCEL;
 }
index db041c8..e9c9cd2 100755 (executable)
@@ -86,6 +86,7 @@ const char *key_name[KEY_NAME_MAX] = {
        "XF86AudioRecord",
        "Cancel",
        "XF86SoftKBD",
+       "XF86Tray",
        "XF86QuickPanel",
        "XF86TaskPane",
        "XF86HomePage",
index 842fa1c..413a6ef 100755 (executable)
@@ -131,6 +131,7 @@ static int _check_dead_signal(int pid, void *data)
        int volume_pid = 0;
        int indicator_pid = 0;
        int quickpanel_pid = 0;
+       int tray_pid = 0;
        int lock_pid = 0;
 
        _D("Process %d is termianted", pid);
@@ -147,6 +148,7 @@ static int _check_dead_signal(int pid, void *data)
        volume_pid = home_mgr_get_volume_pid();
        indicator_pid = home_mgr_get_indicator_pid();
        quickpanel_pid = home_mgr_get_quickpanel_pid();
+       tray_pid = home_mgr_get_tray_pid();
        lock_pid = lock_mgr_get_lock_pid();
 
        if (pid == home_pid) {
@@ -161,6 +163,9 @@ static int _check_dead_signal(int pid, void *data)
        } else if (pid == quickpanel_pid) {
                _D("quickpanel is dead");
                home_mgr_relaunch_quickpanel();
+       } else if (pid == tray_pid) {
+               _D("tray is dead");
+               home_mgr_relaunch_tray();
        } else if (pid == lock_pid) {
                _D("lockscreen is dead");
                lock_mgr_unlock();
index c5ce150..9b331b4 100755 (executable)
@@ -65,6 +65,7 @@ const char *key_name[KEY_NAME_MAX] = {
        "XF86AudioRecord",
        "Cancel",
        "XF86SoftKBD",
+       "XF86Tray",
        "XF86QuickPanel",
        "XF86TaskPane",
        "XF86HomePage",