gengxin
author@CHENG <2393524978@qq.com>
Fri, 21 Jun 2024 12:21:45 +0000 (20:21 +0800)
committer@CHENG <2393524978@qq.com>
Fri, 21 Jun 2024 12:21:45 +0000 (20:21 +0800)
19 files changed:
2.sdk/sdk/gui/lv_watch/framework/message/mmi_msg_zhsx.c
2.sdk/sdk/gui/lv_watch/lv_apps/alarm/alarm.c
2.sdk/sdk/gui/lv_watch/lv_apps/factory_mode/factory_mode_main.c
2.sdk/sdk/gui/lv_watch/lv_apps/factory_mode/factory_mode_reset.c
2.sdk/sdk/gui/lv_watch/lv_apps/health_measure/health_measure.c
2.sdk/sdk/gui/lv_watch/lv_apps/lowbattery/lowbattery.c
2.sdk/sdk/gui/lv_watch/lv_apps/mmi_remind/mmi_remind.c
2.sdk/sdk/gui/lv_watch/lv_apps/mmi_video_call/mmi_video_call.h
2.sdk/sdk/gui/lv_watch/lv_apps/mmi_video_call/mmi_video_call_fzd.c
2.sdk/sdk/gui/lv_watch/lv_apps/mmi_video_call/mmi_video_call_tongxin.c
2.sdk/sdk/gui/lv_watch/lv_apps/mmi_video_call/mmi_video_call_wulian.c
2.sdk/sdk/gui/lv_watch/lv_apps/mmi_wechat/wechat.c
2.sdk/sdk/gui/lv_watch/lv_apps/mmi_wechat/wechat_circle.c
2.sdk/sdk/gui/lv_watch/lv_apps/restart_and_reset/restart_and_reset.c
2.sdk/sdk/gui/lv_watch/lv_apps/shutdown/shutdown.c
2.sdk/sdk/gui/lv_watch/lv_apps/sos/sos.c
2.sdk/sdk/gui/lv_watch/lv_watch.c
2.sdk/sdk/gui/lv_watch/mmi_protocol/mmi_protocol_fzd.c
2.sdk/sdk/gui/lv_watch/mmi_sundry/mmi_sundry.c

index a515b91..da3bfaa 100644 (file)
@@ -110,18 +110,14 @@ void mmi_ui_msg_action_charging_prompt(uint32_t chg_status)
                return;
        }
 
-       if(NULL != lv_watch_get_activity_obj(ACT_ID_WATCH_SEARCHING))
-               return;
-
 #ifdef __MMI_ZHSX_SUPPORT_HEALTH_SENSOR__
        if(true == mmi_health_measure_state_is_ui_measure())
                return;
 #endif
 
-       if(NULL != lv_watch_get_activity_obj(ACT_ID_FACTORY_MODE_MAIN))
-               return;
-       
-       if(NULL != lv_watch_get_activity_obj(ACT_ID_FACTORY_MODE_TEST))
+       if((true == mmi_is_ACT_ID_FACTORY_MODE_MAIN())
+               || (true == mmi_is_ACT_ID_WATCH_SEARCHING())
+               )
                return;
        
        mmi_msg_charging_prompt_t * msg_info = (mmi_msg_charging_prompt_t *)Hal_Mem_Alloc(sizeof(mmi_msg_charging_prompt_t));
@@ -157,10 +153,7 @@ void mmi_ui_msg_action_do_not_disturb(uint8_t flag)
        if(0 == Hal_Pm_Get_State())
                return;
 
-       if(NULL != lv_watch_get_activity_obj(ACT_ID_FACTORY_MODE_MAIN))
-               return;
-       
-       if(NULL != lv_watch_get_activity_obj(ACT_ID_FACTORY_MODE_TEST))
+       if(true == mmi_is_ACT_ID_FACTORY_MODE_MAIN())
                return;
        
        mmi_msg_do_not_disturb_t * msg_info = (mmi_msg_do_not_disturb_t *)Hal_Mem_Alloc(sizeof(mmi_msg_do_not_disturb_t));
index e755b90..f111fe2 100644 (file)
@@ -39,6 +39,14 @@ static void shutdown_prepare_destory(lv_obj_t * activity_obj);
 /**********************
  *   GLOBAL FUNCTIONS
 ***********************/
+#ifdef __MMI_ZHSX_SUPPORT__
+static bool s_is_ACT_ID_ALARM = false;
+
+bool mmi_is_ACT_ID_ALARM(void)
+{
+       return s_is_ACT_ID_ALARM;
+}
+#endif
 
 #ifdef __MMI_ZHSX_SUPPORT__
 void mmi_alarm_ring_click_stop(lv_obj_t * obj, lv_event_t e)
@@ -134,6 +142,10 @@ lv_obj_t * alarm_create(lv_obj_t * activity_obj)
         activity_obj = lv_watch_creat_activity_obj(&activity_ext);
     }
 
+#ifdef __MMI_ZHSX_SUPPORT__
+       s_is_ACT_ID_ALARM = true;
+#endif
+
     /* watch obj */
     lv_obj_t * obj = lv_watch_obj_create(activity_obj);
     lv_watch_obj_set_anim_mode(obj, LV_WATCH_ANIM_HOR_RIGHT_HIDE);
@@ -360,6 +372,10 @@ static void alarm_prepare_destory(lv_obj_t * activity_obj)
     /* inform voice msg of the end */
     voice_msg_alarm_end();
 #endif
+
+#ifdef __MMI_ZHSX_SUPPORT__
+       s_is_ACT_ID_ALARM = false;
+#endif
 }
 
 static lv_alarm_obj_ext_t * alarm_get_ext(void)
index 4196ead..1dd0fcb 100644 (file)
@@ -131,6 +131,16 @@ static bool s_is_in_factory_mode = false;
 /**********************
  *   GLOBAL FUNCTIONS
 ***********************/
+
+#ifdef __MMI_ZHSX_SUPPORT__
+static bool s_is_ACT_ID_FACTORY_MODE_MAIN = false;
+
+bool mmi_is_ACT_ID_FACTORY_MODE_MAIN(void)
+{
+       return s_is_ACT_ID_FACTORY_MODE_MAIN;
+}
+#endif
+
 lv_obj_t * factorymode_main_create(lv_obj_t * activity_obj)
 {
     lv_obj_t * obj;
@@ -147,6 +157,10 @@ lv_obj_t * factorymode_main_create(lv_obj_t * activity_obj)
         }
     }
 
+#ifdef __MMI_ZHSX_SUPPORT__
+       s_is_ACT_ID_FACTORY_MODE_MAIN = true;
+#endif
+
     obj = lv_watch_obj_create(activity_obj);
     LV_ASSERT_MEM(obj);
     if(NULL == obj) {
@@ -394,6 +408,9 @@ static void factorymode_main_prepare_destory(lv_obj_t * activity_obj)
 #ifdef __MMI_ZHSX_SUPPORT__
        s_is_in_factory_mode = false;
 #endif
+#ifdef __MMI_ZHSX_SUPPORT__
+       s_is_ACT_ID_FACTORY_MODE_MAIN = false;
+#endif
 
 #ifdef __MMI_CUSTOM_HENGAI_TCMS__
        mmi_hengai_tcms_action();
index 128edfe..78dafb6 100644 (file)
@@ -279,6 +279,16 @@ static void factoryreset_no_btn_event_cb(lv_obj_t * btn, lv_event_t e)
 
 
 #ifdef __MMI_ZHSX_SUPPORT__
+
+#ifdef __MMI_ZHSX_SUPPORT__
+static bool s_is_ACT_ID_WATCH_FACTORY_RESET = false;
+
+bool mmi_is_ACT_ID_WATCH_FACTORY_RESET(void)
+{
+       return s_is_ACT_ID_WATCH_FACTORY_RESET;
+}
+#endif
+
 void mmi_watch_reset_prepare_destory(lv_obj_t * activity_obj)
 {
 
@@ -307,6 +317,10 @@ void mmi_watch_reset(lv_obj_t * activity_obj)
                        return ;
     }
 
+#ifdef __MMI_ZHSX_SUPPORT__
+       s_is_ACT_ID_WATCH_FACTORY_RESET = true;
+#endif
+
     lv_obj_t * watch_obj = lv_watch_obj_create(activity_obj);
     if(NULL == watch_obj)
         return ;
index 5cea4dc..94823f8 100644 (file)
@@ -797,8 +797,7 @@ void mmi_health_measure_process_finish(void)
 static void mmi_health_measure_process_timer_handle(uint32_t para)
 {
        if(false == mmi_health_measure_wear_state_get()
-               || (NULL != lv_watch_get_activity_obj(ACT_ID_FACTORY_MODE_MAIN))
-               || (NULL != lv_watch_get_activity_obj(ACT_ID_FACTORY_MODE_TEST))
+               || (true == mmi_is_ACT_ID_FACTORY_MODE_MAIN())
                )
        {
                HEALTH_MEASURE_DEBUG_PRINTF("[@CHENG_DEBUG][%s][%d]: should not run to here\n", __FUNCTION__, __LINE__);
@@ -929,10 +928,7 @@ bool mmi_health_measure_timed_measure_start(MMI_HEALTH_MEASURE_TYPE_E measure_ty
        if(false == mmi_health_measure_wear_state_get())
                return false;
        
-       if(NULL != lv_watch_get_activity_obj(ACT_ID_FACTORY_MODE_MAIN))
-               return false;
-       
-       if(NULL != lv_watch_get_activity_obj(ACT_ID_FACTORY_MODE_TEST))
+       if(true == mmi_is_ACT_ID_FACTORY_MODE_MAIN())
                return false;
 
 #ifdef __MMI_CUSTOM_HENGAI_HEALTH__
@@ -971,10 +967,7 @@ void mmi_health_measure_app_measure_start(MMI_HEALTH_MEASURE_TYPE_E measure_type
        if(false == mmi_health_measure_wear_state_get())
                return;
        
-       if(NULL != lv_watch_get_activity_obj(ACT_ID_FACTORY_MODE_MAIN))
-               return;
-       
-       if(NULL != lv_watch_get_activity_obj(ACT_ID_FACTORY_MODE_TEST))
+       if(true == mmi_is_ACT_ID_FACTORY_MODE_MAIN())
                return;
        
        if(MMI_HEALTH_MEASURE_STATE_UI == s_health_measure_run_data.measure_state)
index 5dda400..b5ef166 100644 (file)
@@ -98,7 +98,7 @@ void mmi_ui_msg_update_low_battery_screen(uint32_t flag)
        }
 }
 
-void mmi_low_battery_check_mission(void)
+static void mmi_low_battery_check_task_cb(lv_task_t * task)
 {
     if(HAL_CHG_CONNECTED == Hal_Charger_Get_Status())
        {
@@ -107,7 +107,7 @@ void mmi_low_battery_check_mission(void)
         if(NULL != lv_watch_get_activity_obj(ACT_ID_LOWBATTERY))
                {
             printf("[@CHENG_DEBUG]: power charging start and exit low battery mode\n");
-                       mmi_ui_msg_action_low_battery(MMI_LOW_BATTERY_SCREEN_DESTROY);
+                       mmi_ui_msg_update_low_battery_screen(MMI_LOW_BATTERY_SCREEN_DESTROY);
         }
     }
        else
@@ -125,19 +125,19 @@ void mmi_low_battery_check_mission(void)
                 )
             {
                 printf("enter low battery mode\n");
-                               mmi_ui_msg_action_low_battery(MMI_LOW_BATTERY_SCREEN_CREATE);
+                               mmi_ui_msg_update_low_battery_screen(MMI_LOW_BATTERY_SCREEN_CREATE);
             }
                        else
                        {
                 // update time
                 if(NULL == lv_watch_get_activity_obj(ACT_ID_PHONE))
                                {
-                                       mmi_ui_msg_action_low_battery(MMI_LOW_BATTERY_SCREEN_UPDATE);
+                                       mmi_ui_msg_update_low_battery_screen(MMI_LOW_BATTERY_SCREEN_UPDATE);
                 }
                 if(Hal_Battery_Get_Status() == AUTO_POWER_OFF_LEVEL)
                                {
                     printf("power off in low battery mode\n");
-                                       mmi_ui_msg_action_low_battery(MMI_LOW_BATTERY_POWER_OFF);
+                                       mmi_ui_msg_update_low_battery_screen(MMI_LOW_BATTERY_POWER_OFF);
                 }
             }
         } 
@@ -148,11 +148,18 @@ void mmi_low_battery_check_mission(void)
             if(NULL != lv_watch_get_activity_obj(ACT_ID_LOWBATTERY))
                        {
                 printf("[@CHENG_DEBUG][%s][%d]: exit low battery mode\n", __FUNCTION__, __LINE__);
-                               mmi_ui_msg_action_low_battery(MMI_LOW_BATTERY_SCREEN_DESTROY);
+                               mmi_ui_msg_update_low_battery_screen(MMI_LOW_BATTERY_SCREEN_DESTROY);
             }
         }
     }
 }
+
+void mmi_low_battery_check_mission(void)
+{
+       lv_task_t * task_p = lv_task_create(mmi_low_battery_check_task_cb, 100, LV_TASK_PRIO_MID, NULL);
+       lv_task_once(task_p);
+}
+
 #else
 void lowbattery_task(lv_task_t * task)
 {
index adc5798..d5951d5 100644 (file)
@@ -40,6 +40,14 @@ static mmi_remind_screen_info_t s_remind_info[] =
        { MMI_REMIND_TYPE_MAX, 0, NULL, NULL},
 };
 
+#ifdef __MMI_ZHSX_SUPPORT__
+static bool s_is_ACT_ID_REMIND = false;
+
+bool mmi_is_ACT_ID_REMIND(void)
+{
+       return s_is_ACT_ID_REMIND;
+}
+#endif
 
 #ifdef __MMI_REMIND_WAKE_UP_SUPPORT__
 static nv_watch_remind_item_t s_remind_wake_up_data = {0};
@@ -586,11 +594,15 @@ void mmi_remind_sedentary_screen_active(void)
 
 bool mmi_remind_screen_is_active(void)
 {
+#if 0
        lv_obj_t * activity_obj = lv_watch_get_activity_obj(ACT_ID_REMIND);
        if(NULL != activity_obj) 
                return true;
 
        return false;
+#else
+       return mmi_is_ACT_ID_REMIND();
+#endif
 }
 
 static lv_remind_obj_ext_t * mmi_remind_screen_ext_get(void)
@@ -630,6 +642,10 @@ static void mmi_remind_screen_prepare_destory(lv_obj_t * activity_obj)
     }
 
     watch_set_suspend_enable(true, ACT_ID_REMIND, 0);
+
+#ifdef __MMI_ZHSX_SUPPORT__
+       s_is_ACT_ID_REMIND = false;
+#endif
 }
 
 void mmi_remind_screen_clean(void)
@@ -674,6 +690,10 @@ static lv_obj_t * mmi_remind_screen_create(lv_obj_t * activity_obj)
                        return NULL;
        }
 
+#ifdef __MMI_ZHSX_SUPPORT__
+       s_is_ACT_ID_REMIND = true;
+#endif
+
        /* watch obj */
        lv_obj_t * obj = lv_watch_obj_create(activity_obj);
        lv_watch_obj_set_anim_mode(obj, LV_WATCH_ANIM_NO);
index d1c054d..ba069a7 100644 (file)
@@ -218,8 +218,6 @@ bool mmi_vc_is_in_call(void);
 
 void mmi_video_call_create_event_cb(lv_obj_t *btn, lv_event_t e);
 
-
-bool mmi_vc_connect_check_req(void);
 bool mmi_vc_watch_suspend_check(void);
 void mmi_vc_activity_destroy_req(void);
 uint8_t mmi_vc_get_call_volume(void);
index 4804a6a..a24d257 100644 (file)
@@ -2026,16 +2026,6 @@ bool mmi_vc_watch_suspend_check(void)
     return true;
 }
 
-bool mmi_vc_connect_check_req(void)
-{
-    if(mmi_vc_call_get_activity_obj()) 
-       {
-        return true;
-    }
-
-       return false;
-}
-
 void mmi_vc_activity_destroy_req(void)
 {
        VIDEO_CALL_DEBUG_PRINTF("[@CHENG_DEBUG][%s][%d]: \n", __FUNCTION__, __LINE__);
index 19ef344..4a3d94d 100644 (file)
@@ -2052,16 +2052,6 @@ bool mmi_vc_watch_suspend_check(void)
     return true;
 }
 
-bool mmi_vc_connect_check_req(void)
-{
-    if(mmi_vc_call_get_activity_obj()) 
-       {
-        return true;
-    }
-
-       return false;
-}
-
 void mmi_vc_activity_destroy_req(void)
 {
        VIDEO_CALL_DEBUG_PRINTF("[@CHENG_DEBUG][%s][%d]: \n", __FUNCTION__, __LINE__);
index 66cf800..3eb8e29 100644 (file)
@@ -2001,16 +2001,6 @@ bool mmi_vc_watch_suspend_check(void)
     return true;
 }
 
-bool mmi_vc_connect_check_req(void)
-{
-    if(mmi_vc_call_get_activity_obj()) 
-       {
-        return true;
-    }
-
-       return false;
-}
-
 void mmi_vc_activity_destroy_req(void)
 {
        VIDEO_CALL_DEBUG_PRINTF("[@CHENG_DEBUG][%s][%d]: \n", __FUNCTION__, __LINE__);
index 7d3ecdf..0fd99ad 100644 (file)
@@ -13,6 +13,10 @@ static nv_watch_wechat_msg_item_info_t s_wechat_msg_item_info = {0};
 static uint8_t s_wechat_play_anim_count = 0;
 static char s_wechat_selected_item_index = -1;
 static bool s_item_receive_playing = false;
+#ifdef __MMI_ZHSX_SUPPORT__
+static bool s_is_ACT_ID_WECHAT_RECORDING = false;
+static bool s_is_ACT_ID_WECHAT_SENDING = false;
+#endif
 
 
 void wechat_msg_info_nv_write(void)
@@ -224,6 +228,9 @@ void wechat_prepare_destory(lv_obj_t * activity_obj)
        s_item_receive_playing = false;
 
        WECHAT_DEBUG_PRINTF("[@CHENG_DEBUG][%s][%d]: \n", __FUNCTION__, __LINE__);
+
+       s_is_ACT_ID_WECHAT_RECORDING = false;
+       s_is_ACT_ID_WECHAT_SENDING = false;
 }
 
 static void wechat_chat_list_set_slide_enable(lv_watch_obj_ext_t * ext, bool enable)
@@ -257,6 +264,7 @@ bool wechat_msg_voice_is_playing(void)
 
 bool wechat_msg_voice_is_recording(void)
 {
+#if 0
        bool result = false;
        
        if(lv_watch_get_activity_obj(ACT_ID_WECHAT_RECORDING)) 
@@ -265,10 +273,14 @@ bool wechat_msg_voice_is_recording(void)
        }
 
        return result;
+#else
+       return s_is_ACT_ID_WECHAT_RECORDING;
+#endif
 }
 
 bool wechat_msg_item_is_sending(void)
 {
+#if 0
        bool result = false;
        
        if(lv_watch_get_activity_obj(ACT_ID_WECHAT_SENDING)) 
@@ -277,6 +289,9 @@ bool wechat_msg_item_is_sending(void)
        }
 
        return result;
+#else
+       return s_is_ACT_ID_WECHAT_SENDING;
+#endif
 }
 
 bool wechat_screen_is_prohibit_interrupted(void)
@@ -752,6 +767,8 @@ void wechat_msg_sending_screen_prepare_destory(lv_obj_t * activity_obj)
                        sending_ext->result_timer_id = NULL;
                }
        }
+
+       s_is_ACT_ID_WECHAT_SENDING = false;
 }
 
 lv_obj_t * wechat_msg_sending_screen_create(lv_obj_t * activity_obj)
@@ -770,6 +787,9 @@ lv_obj_t * wechat_msg_sending_screen_create(lv_obj_t * activity_obj)
                        return NULL;
     }
 
+       s_is_ACT_ID_WECHAT_RECORDING = false;
+       s_is_ACT_ID_WECHAT_SENDING = true;
+
     lv_obj_t * obj = lv_watch_obj_create(activity_obj);
        if(NULL == obj)
                return NULL;
@@ -1011,6 +1031,8 @@ void wechat_msg_recording_screen_prepare_destory(lv_obj_t * activity_obj)
     lv_watch_png_cache_all_free();
 
        wechat_msg_recording_stop(true);
+
+       s_is_ACT_ID_WECHAT_RECORDING = false;
 }
 
 lv_obj_t * wechat_msg_recording_screen_create(lv_obj_t * activity_obj)
@@ -1029,6 +1051,8 @@ lv_obj_t * wechat_msg_recording_screen_create(lv_obj_t * activity_obj)
                        return NULL;
     }
 
+       s_is_ACT_ID_WECHAT_RECORDING = true;
+
     lv_obj_t * obj = lv_watch_obj_create(activity_obj);
     LV_ASSERT_MEM(obj);
        
index 8a9a68c..f80a595 100644 (file)
@@ -13,6 +13,10 @@ static nv_watch_wechat_msg_item_info_t s_wechat_msg_item_info = {0};
 static uint8_t s_wechat_play_anim_count = 0;
 static char s_wechat_selected_item_index = -1;
 static bool s_item_receive_playing = false;
+#ifdef __MMI_ZHSX_SUPPORT__
+static bool s_is_ACT_ID_WECHAT_RECORDING = false;
+static bool s_is_ACT_ID_WECHAT_SENDING = false;
+#endif
 
 
 void wechat_msg_info_nv_write(void)
@@ -224,6 +228,9 @@ void wechat_prepare_destory(lv_obj_t * activity_obj)
        s_item_receive_playing = false;
 
        WECHAT_DEBUG_PRINTF("[@CHENG_DEBUG][%s][%d]: \n", __FUNCTION__, __LINE__);
+
+       s_is_ACT_ID_WECHAT_RECORDING = false;
+       s_is_ACT_ID_WECHAT_SENDING = false;
 }
 
 static void wechat_chat_list_set_slide_enable(lv_watch_obj_ext_t * ext, bool enable)
@@ -257,6 +264,7 @@ bool wechat_msg_voice_is_playing(void)
 
 bool wechat_msg_voice_is_recording(void)
 {
+#if 0
        bool result = false;
        
        if(lv_watch_get_activity_obj(ACT_ID_WECHAT_RECORDING)) 
@@ -265,10 +273,14 @@ bool wechat_msg_voice_is_recording(void)
        }
 
        return result;
+#else
+       return s_is_ACT_ID_WECHAT_RECORDING;
+#endif
 }
 
 bool wechat_msg_item_is_sending(void)
 {
+#if 0
        bool result = false;
        
        if(lv_watch_get_activity_obj(ACT_ID_WECHAT_SENDING)) 
@@ -277,6 +289,9 @@ bool wechat_msg_item_is_sending(void)
        }
 
        return result;
+#else
+       return s_is_ACT_ID_WECHAT_SENDING;
+#endif
 }
 
 bool wechat_screen_is_prohibit_interrupted(void)
@@ -810,6 +825,8 @@ void wechat_msg_sending_screen_prepare_destory(lv_obj_t * activity_obj)
                        sending_ext->result_timer_id = NULL;
                }
        }
+
+       s_is_ACT_ID_WECHAT_SENDING = false;
 }
 
 lv_obj_t * wechat_msg_sending_screen_create(lv_obj_t * activity_obj)
@@ -828,6 +845,9 @@ lv_obj_t * wechat_msg_sending_screen_create(lv_obj_t * activity_obj)
                        return NULL;
     }
 
+       s_is_ACT_ID_WECHAT_RECORDING = false;
+       s_is_ACT_ID_WECHAT_SENDING = true;
+
     lv_obj_t * obj = lv_watch_obj_create(activity_obj);
        if(NULL == obj)
                return NULL;
@@ -1057,6 +1077,8 @@ void wechat_msg_recording_screen_prepare_destory(lv_obj_t * activity_obj)
     lv_watch_png_cache_all_free();
 
        wechat_msg_recording_stop(true);
+
+       s_is_ACT_ID_WECHAT_RECORDING = false;
 }
 
 lv_obj_t * wechat_msg_recording_screen_create(lv_obj_t * activity_obj)
@@ -1075,6 +1097,8 @@ lv_obj_t * wechat_msg_recording_screen_create(lv_obj_t * activity_obj)
                        return NULL;
     }
 
+       s_is_ACT_ID_WECHAT_RECORDING = true;
+
     lv_obj_t * obj = lv_watch_obj_create(activity_obj);
     LV_ASSERT_MEM(obj);
        
index f5a61e1..4e92a85 100644 (file)
@@ -36,6 +36,16 @@ static lv_task_t * restart_task_p;
 /**********************
  *   GLOBAL FUNCTIONS
 ***********************/
+
+#ifdef __MMI_ZHSX_SUPPORT__
+static bool s_is_ACT_ID_RESTART = false;
+
+bool mmi_is_ACT_ID_RESTART(void)
+{
+       return s_is_ACT_ID_RESTART;
+}
+#endif
+
 lv_obj_t * restart_and_reset_create(lv_obj_t * activity_obj)
 {
     lv_obj_t * obj;
@@ -167,6 +177,10 @@ lv_obj_t * restart_create(lv_obj_t * activity_obj)
             return NULL;
     }
 
+#ifdef __MMI_ZHSX_SUPPORT__
+       s_is_ACT_ID_RESTART = true;
+#endif
+
     obj = lv_watch_obj_create(activity_obj);
     if(NULL == obj)
         return NULL;
@@ -318,6 +332,10 @@ void restart_and_reset_prepare_destory(lv_obj_t * activity_obj)
 void restart_prepare_destory(lv_obj_t * activity_obj)
 {
     lv_watch_png_cache_all_free();
+
+#ifdef __MMI_ZHSX_SUPPORT__
+       s_is_ACT_ID_RESTART = false;
+#endif
 }
 
 #if USE_POWER_OFF_GIF
index 30a2a3f..a6d0be3 100644 (file)
@@ -41,6 +41,16 @@ static uint8_t   shutdown_performance_flg = WATCH_SHUTDOWN_UNPERFORMED;
 /**********************
  *   GLOBAL FUNCTIONS
 ***********************/
+
+#ifdef __MMI_ZHSX_SUPPORT__
+static bool s_is_ACT_ID_SHUTDOWN = false;
+
+bool mmi_is_ACT_ID_SHUTDOWN(void)
+{
+       return s_is_ACT_ID_SHUTDOWN;
+}
+#endif
+
 lv_obj_t * shutdown_create(lv_obj_t * activity_obj, bool confirm)
 {
     if(activity_obj == NULL) {
@@ -54,6 +64,10 @@ lv_obj_t * shutdown_create(lv_obj_t * activity_obj, bool confirm)
         if(activity_obj == NULL) return NULL;
     }
 
+#ifdef __MMI_ZHSX_SUPPORT__
+       s_is_ACT_ID_SHUTDOWN = true;
+#endif
+
     lv_obj_t * obj = lv_watch_obj_create(activity_obj);
     LV_ASSERT_MEM(obj);
     if(obj == NULL) return NULL;
@@ -130,6 +144,10 @@ void shutdown_create_btn_action(lv_obj_t * btn, lv_event_t event)
 static void shutdown_prepare_destory(lv_obj_t * activity_obj)
 {
     lv_watch_png_cache_all_free();
+
+#ifdef __MMI_ZHSX_SUPPORT__
+       s_is_ACT_ID_SHUTDOWN = false;
+#endif
 }
 
 static void shutdown_cancel_btn_action(lv_obj_t * btn, lv_event_t event)
index 2d08f12..69af076 100644 (file)
 
 #if USE_LV_WATCH_SOS != 0
 
+#ifdef __MMI_ZHSX_SUPPORT__
+static bool s_is_ACT_ID_SOS = false;
+
+bool mmi_is_ACT_ID_SOS(void)
+{
+       return s_is_ACT_ID_SOS;
+}
+#endif
+
 #ifdef __MMI_ZHSX_SUPPORT__
 
 #define MMI_SOS_LOOP_MAX       (3)
@@ -126,6 +135,10 @@ void sos_destory(void)
         lv_task_del(ext->gif_task_p);
         lv_obj_del(lv_watch_get_activity_obj(ACT_ID_SOS));
     }
+
+#ifdef __MMI_ZHSX_SUPPORT__
+       s_is_ACT_ID_SOS = false;
+#endif
 }
 
 static void sos_do_dailing_next(void)
@@ -257,6 +270,10 @@ lv_obj_t * sos_create(lv_obj_t * activity_obj)
     if(activity_obj == NULL) 
                return NULL;
 
+#ifdef __MMI_ZHSX_SUPPORT__
+       s_is_ACT_ID_SOS = true;
+#endif
+
     set_sos_status(SOS_GIF_ON);
     lv_sos_ext_t * ext = lv_obj_allocate_ext_attr(activity_obj, sizeof(lv_sos_ext_t));
     if(ext == NULL) 
index 68e807b..3912254 100644 (file)
@@ -316,6 +316,15 @@ void option_key(struct _lv_obj_t * obj, lv_event_t event)
 }
 #endif
 
+#ifdef __MMI_ZHSX_SUPPORT__
+static bool s_is_ACT_ID_POWON_LOGO = false;
+
+bool mmi_is_ACT_ID_POWON_LOGO(void)
+{
+       return s_is_ACT_ID_POWON_LOGO;
+}
+#endif
+
 void watch_poweron_logo(void)
 {
     lv_obj_t * activity_obj = NULL;
@@ -328,6 +337,10 @@ void watch_poweron_logo(void)
     lv_obj_set_style_local_border_side(activity_obj, LV_OBJ_PART_MAIN, LV_STATE_DEFAULT, LV_BORDER_SIDE_NONE);
     LV_ASSERT_MEM(activity_obj);
 
+#ifdef __MMI_ZHSX_SUPPORT__
+       s_is_ACT_ID_POWON_LOGO = true;
+#endif
+
     lv_obj_t * poweron_logo = lv_img_create(activity_obj, NULL);
     lv_img_set_src(poweron_logo, ICON_POWERON_LOGO);
     lv_obj_align(poweron_logo, NULL, LV_ALIGN_IN_TOP_LEFT, 0, 0);
@@ -372,6 +385,10 @@ static void watch_poweron_logo_del(void)
         lv_obj_del(activity_obj);
         lv_img_cache_invalidate_src(ICON_POWERON_LOGO);
     }
+
+#ifdef __MMI_ZHSX_SUPPORT__
+       s_is_ACT_ID_POWON_LOGO = false;
+#endif
 }
 
 void watch_low_power_ind_cb(void * para)
@@ -976,7 +993,7 @@ bool watch_voip_suspend_check(void)
 bool voip_connect_check_req(void)
 {
 #ifdef __MMI_ZHSX_SUPPORT_VIDEO_CALL__
-       return (mmi_vc_connect_check_req());
+       return (mmi_vc_is_in_call());
 #endif
 
        return false;
index ee6eb68..0d22206 100644 (file)
@@ -819,7 +819,6 @@ bool mmi_protocol_fzd_parse_SERVER_FIND_WATCH(unsigned char * next_buff, unsigne
        result = true;
        mmi_protocol_fzd_send_without_data(action);
 
-       //mmi_watch_server_search_screen_create(NULL);  
        mmi_watch_searching_aciton();
 
        return result;
index 81be1d5..7d70b38 100644 (file)
@@ -11,56 +11,55 @@ bool mmi_active_screen_is_prohibit_interrupted(void)
        {
                return true;
        }
-       
-    lv_obj_t * obj = lv_watch_get_activity_obj(ACT_ID_PHONE);
-    if(NULL != obj)
-       {
-               return true;
-       }
 
-    if(NULL != lv_watch_get_activity_obj(ACT_ID_ANYOBJ))
+    //if(NULL != lv_watch_get_activity_obj(ACT_ID_ANYOBJ))
+       //{
+       //      return true;
+       //}
+       
+       if(true == voip_connect_check_req())
        {
-               return true;
+               return;
        }
        
-    if(NULL != lv_watch_get_activity_obj(ACT_ID_SHUTDOWN))
+    if(true == mmi_is_ACT_ID_SHUTDOWN())
        {
                return true;
        }
 
-       if(NULL != lv_watch_get_activity_obj(ACT_ID_RESTART))
+       if(true == mmi_is_ACT_ID_RESTART())
        {
                return true;
        }
 
-       if(NULL != lv_watch_get_activity_obj(ACT_ID_POWON_LOGO))
+       if(true == mmi_is_ACT_ID_POWON_LOGO())
        {
                return true;
        }
 
-       if(NULL != lv_watch_get_activity_obj(ACT_ID_WATCH_FACTORY_RESET))
+       if(true == mmi_is_ACT_ID_WATCH_FACTORY_RESET())
        {
                return true;
        }
 
-       if(NULL != lv_watch_get_activity_obj(ACT_ID_ALARM))
+       if(true == mmi_is_ACT_ID_ALARM())
        {
                return true;
        }
 
 #if USE_LV_WATCH_SOS != 0
-       if(NULL != lv_watch_get_activity_obj(ACT_ID_SOS))
+       if(true == mmi_is_ACT_ID_SOS())
        {
                return true;
        }
 #endif
        
-#if USE_LV_WATCH_UPGRADE != 0
-    if(NULL != lv_watch_get_activity_obj(ACT_ID_UPGRADE))
-       {
-               return true;
-       }
-#endif
+//#if USE_LV_WATCH_UPGRADE != 0
+//    if(NULL != lv_watch_get_activity_obj(ACT_ID_UPGRADE))
+//     {
+//             return true;
+//     }
+//#endif
 
        return false;
 }
@@ -163,6 +162,15 @@ void mmi_watch_reboot_aciton(void)
 }
 
 
+#ifdef __MMI_ZHSX_SUPPORT__
+static bool s_is_ACT_ID_WATCH_SEARCHING = false;
+
+bool mmi_is_ACT_ID_WATCH_SEARCHING(void)
+{
+       return s_is_ACT_ID_WATCH_SEARCHING;
+}
+#endif
+
 static TIMER_ID s_watch_search_timer_id = NULL;
 
 void mmi_watch_search_timer_stop(void)
@@ -221,6 +229,10 @@ void mmi_watch_search_screen_destroy(void)
 
        watch_set_suspend_enable(true, ACT_ID_WATCH_SEARCHING, 0);
     //watch_wakeup_time_reset();
+
+#ifdef __MMI_ZHSX_SUPPORT__
+       s_is_ACT_ID_WATCH_SEARCHING = false;
+#endif
 }
 
 void mmi_watch_search_screen_event_cb(lv_obj_t * obj, lv_event_t e)
@@ -248,6 +260,10 @@ lv_obj_t * mmi_watch_server_search_screen_create(lv_obj_t * activity_obj)
             return NULL;
     }
 
+#ifdef __MMI_ZHSX_SUPPORT__
+       s_is_ACT_ID_WATCH_SEARCHING = true;
+#endif
+
     lv_obj_t * obj = lv_watch_obj_create(activity_obj);
     LV_ASSERT_MEM(obj);
        
@@ -318,7 +334,7 @@ void mmi_watch_searching_aciton(void)
        }
 #endif
 
-       if(NULL != lv_watch_get_activity_obj(ACT_ID_WATCH_SEARCHING))
+       if(true == mmi_is_ACT_ID_WATCH_SEARCHING())
        {
                return ;
        }
@@ -723,7 +739,8 @@ static void mmi_watch_no_sim_power_off_callback(uint32_t para)
        mmi_watch_no_sim_power_off_timer_stop();
        
        if((false == watch_modem_sim_present_check_req())
-               && (NULL == lv_watch_get_activity_obj(ACT_ID_FACTORY_MODE_MAIN))
+               && (false == mmi_is_ACT_ID_FACTORY_MODE_MAIN())
+               && (MMI_MODEM_CALL_STATE_NULL == phone_get_call_state())
                )
        {
                // power off prompt
@@ -759,8 +776,8 @@ void mmi_watch_no_sim_power_off_check_mission(void)
        if(true == watch_modem_sim_present_check_req())
                return;
 
-       if((NULL != lv_watch_get_activity_obj(ACT_ID_FACTORY_MODE_MAIN))
-               || (NULL != phone_get_activity_obj())
+       if((true == mmi_is_ACT_ID_FACTORY_MODE_MAIN())
+               || (MMI_MODEM_CALL_STATE_NULL != phone_get_call_state())
                )
                return;