{
return true;
}
+
+#ifdef __MMI_CHIP_TEMPERATURE_MONITOR_SUPPORT__
+ if(true == mmi_is_ACT_ID_CHIP_TEMP_HIGH())
+ {
+ return true;
+ }
+#endif
if(true == mmi_is_ACT_ID_SHUTDOWN())
{
#endif
-void mmi_ui_msg_update_chip_high_temperature(uint32_t flag)
+#ifdef __MMI_CHIP_TEMPERATURE_MONITOR_SUPPORT__
+
+#ifdef __DEBUG_CHIP_TEMPERATURE_MONITOR_SUPPORT__
+static uint8_t s_CHIP_TEMP_HIGH_THRESHOLD = 50;
+static uint8_t s_CHIP_TEMP_LOW_THRESHOLD = 45;
+static lv_obj_t * s_high_label = NULL;
+static lv_obj_t * s_low_label = NULL;
+
+static void __prepare_destory(lv_obj_t * activity_obj)
+{
+ lv_watch_png_cache_all_free();
+}
+
+static void __low_decrease_btn_action(lv_obj_t * btn, lv_event_t event)
+{
+ if(LV_EVENT_CLICKED!= event)
+ return;
+
+ s_CHIP_TEMP_LOW_THRESHOLD--;
+
+ char low_value[8] = {0};
+ sprintf(low_value, "%d", s_CHIP_TEMP_LOW_THRESHOLD);
+ lv_label_set_text(s_low_label, low_value);
+}
+
+static void __low_increase_btn_action(lv_obj_t * btn, lv_event_t event)
+{
+ if(LV_EVENT_CLICKED!= event)
+ return;
+
+ if((s_CHIP_TEMP_HIGH_THRESHOLD - 1) > s_CHIP_TEMP_LOW_THRESHOLD)
+ s_CHIP_TEMP_LOW_THRESHOLD++;
+
+ char low_value[8] = {0};
+ sprintf(low_value, "%d", s_CHIP_TEMP_LOW_THRESHOLD);
+ lv_label_set_text(s_low_label, low_value);
+}
+
+static void __high_decrease_btn_action(lv_obj_t * btn, lv_event_t event)
+{
+ if(LV_EVENT_CLICKED!= event)
+ return;
+
+ if((s_CHIP_TEMP_LOW_THRESHOLD + 1) < s_CHIP_TEMP_HIGH_THRESHOLD)
+ s_CHIP_TEMP_HIGH_THRESHOLD--;
+
+ char high_value[8] = {0};
+ sprintf(high_value, "%d", s_CHIP_TEMP_HIGH_THRESHOLD);
+ lv_label_set_text(s_high_label, high_value);
+}
+
+static void __high_increase_btn_action(lv_obj_t * btn, lv_event_t event)
+{
+ if(LV_EVENT_CLICKED!= event)
+ return;
+
+ s_CHIP_TEMP_HIGH_THRESHOLD++;
+
+ char high_value[8] = {0};
+ sprintf(high_value, "%d", s_CHIP_TEMP_HIGH_THRESHOLD);
+ lv_label_set_text(s_high_label, high_value);
+}
+
+static lv_obj_t * __create(lv_obj_t * activity_obj)
+{
+ if(NULL == activity_obj)
+ {
+ lv_watch_activity_ext_t activity_ext;
+ memset(&activity_ext, 0, sizeof(lv_watch_activity_ext_t));
+ activity_ext.actId = ACT_ID_ANYOBJ;
+ activity_ext.create = __create;
+ activity_ext.prepare_destory = __prepare_destory;
+ activity_obj = lv_watch_creat_activity_obj(&activity_ext);
+ LV_ASSERT_MEM(activity_obj);
+ if(NULL == activity_obj) {
+ return NULL;
+ }
+ }
+
+ lv_obj_t * obj = lv_watch_obj_create(activity_obj);
+ LV_ASSERT_MEM(obj);
+ if(NULL == obj) {
+ return NULL;
+ }
+
+ lv_obj_t * content = lv_cont_create(obj, NULL);
+ lv_obj_set_size(content, lv_obj_get_width(obj), lv_obj_get_height(obj));
+ lv_obj_add_style(content, LV_CONT_PART_MAIN, &lv_watch_style_transp);
+ lv_obj_align(content, NULL, LV_ALIGN_CENTER, 0, 0);
+
+ // low
+ lv_obj_t * low_label = lv_label_create(content, NULL);
+ lv_obj_add_style(low_label, LV_LABEL_PART_MAIN, &lv_watch_font26_gray);
+ char low_value[8] = {0};
+ sprintf(low_value, "%d", s_CHIP_TEMP_LOW_THRESHOLD);
+ lv_label_set_text(low_label, low_value);
+ lv_label_set_align(low_label, LV_LABEL_ALIGN_CENTER);
+ lv_obj_align(low_label, NULL, LV_ALIGN_IN_TOP_MID, 0, 40);
+ s_low_label = low_label;
+
+ lv_obj_t * low_btn_decrease = lv_imgbtn_create(content, NULL);
+ lv_imgbtn_set_src(low_btn_decrease, LV_BTN_STATE_RELEASED, ICON_DECREASE);
+ lv_imgbtn_set_src(low_btn_decrease, LV_BTN_STATE_PRESSED, ICON_DECREASE);
+ lv_obj_align(low_btn_decrease, NULL, LV_ALIGN_IN_TOP_LEFT, 20, 30);
+ lv_obj_set_event_cb(low_btn_decrease, __low_decrease_btn_action);
+
+ lv_obj_t * low_btn_increase = lv_imgbtn_create(content, NULL);
+ lv_imgbtn_set_src(low_btn_increase, LV_BTN_STATE_RELEASED, ICON_INCREASE);
+ lv_imgbtn_set_src(low_btn_increase, LV_BTN_STATE_PRESSED, ICON_INCREASE);
+ lv_obj_align(low_btn_increase, NULL, LV_ALIGN_IN_TOP_RIGHT, -20, 30);
+ lv_obj_set_event_cb(low_btn_increase, __low_increase_btn_action);
+
+ // high
+ lv_obj_t * high_label = lv_label_create(content, NULL);
+ lv_obj_add_style(high_label, LV_LABEL_PART_MAIN, &lv_watch_font26_gray);
+ char high_value[8] = {0};
+ sprintf(high_value, "%d", s_CHIP_TEMP_HIGH_THRESHOLD);
+ lv_label_set_text(high_label, high_value);
+ lv_label_set_align(high_label, LV_LABEL_ALIGN_CENTER);
+ lv_obj_align(high_label, NULL, LV_ALIGN_IN_BOTTOM_MID, 0, -40);
+ s_high_label = high_label;
+
+ lv_obj_t * high_btn_decrease = lv_imgbtn_create(content, NULL);
+ lv_imgbtn_set_src(high_btn_decrease, LV_BTN_STATE_RELEASED, ICON_DECREASE);
+ lv_imgbtn_set_src(high_btn_decrease, LV_BTN_STATE_PRESSED, ICON_DECREASE);
+ lv_obj_align(high_btn_decrease, NULL, LV_ALIGN_IN_BOTTOM_LEFT, 20, -30);
+ lv_obj_set_event_cb(high_btn_decrease, __high_decrease_btn_action);
+
+ lv_obj_t * high_btn_increase = lv_imgbtn_create(content, NULL);
+ lv_imgbtn_set_src(high_btn_increase, LV_BTN_STATE_RELEASED, ICON_INCREASE);
+ lv_imgbtn_set_src(high_btn_increase, LV_BTN_STATE_PRESSED, ICON_INCREASE);
+ lv_obj_align(high_btn_increase, NULL, LV_ALIGN_IN_BOTTOM_RIGHT, -20, -30);
+ lv_obj_set_event_cb(high_btn_increase, __high_increase_btn_action);
+
+ return obj;
+}
+
+void __create_event_cb(lv_obj_t * btn, lv_event_t event)
+{
+ if(LV_EVENT_CLICKED == event)
+ {
+ lv_watch_png_cache_all_free();
+
+ lv_obj_t * obj = __create(NULL);
+ LV_ASSERT_MEM(obj);
+ if(obj == NULL) return;
+ }
+}
+#endif
+
+#if 0
+static lv_task_t * s_chip_high_temp_clean_task = NULL;
+static bool s_is_ACT_ID_CHIP_TEMP_HIGH = false;
+
+bool mmi_is_ACT_ID_CHIP_TEMP_HIGH(void)
+{
+ return s_is_ACT_ID_CHIP_TEMP_HIGH;
+}
+
+static void mmi_set_ACT_ID_CHIP_TEMP_HIGH(bool value)
+{
+ s_is_ACT_ID_CHIP_TEMP_HIGH = value;
+}
+
+void mmi_chip_high_temp_btn_event_cb(lv_obj_t * obj, lv_event_t e)
+{
+ if(LV_EVENT_CLICKED != e)
+ return;
+
+ mmi_watch_power_off();
+}
+
+static void mmi_chip_high_temp_screen_prepare_destory(lv_obj_t * activity_obj)
+{
+ SUNDRY_DEBUG_PRINTF("[@CHENG_DEBUG][%s][%d]: \n", __FUNCTION__, __LINE__);
+
+ lv_watch_png_cache_all_free();
+
+ mmi_set_ACT_ID_CHIP_TEMP_HIGH(false);
+}
+
+static void mmi_chip_high_temp_task_clean(void)
+{
+ if(NULL != s_chip_high_temp_clean_task)
+ {
+ lv_task_del(s_chip_high_temp_clean_task);
+ s_chip_high_temp_clean_task = NULL;
+ }
+}
+
+static void mmi_chip_high_temp_clean_task_cb(lv_task_t * task)
+{
+ lv_obj_t * activity_obj = lv_watch_get_activity_obj(ACT_ID_CHIP_TEMP_HIGH);
+ if(NULL == activity_obj)
+ {
+ SUNDRY_DEBUG_PRINTF("[@CHENG_DEBUG][%s][%d]: \n", __FUNCTION__, __LINE__);
+
+ mmi_chip_high_temp_task_clean();
+ }
+ else
+ {
+ int chip_temp = asl_chip_temperature_get();
+ SUNDRY_DEBUG_PRINTF("[@CHENG_DEBUG][%s][%d]: chip_temp=%d\n", __FUNCTION__, __LINE__, chip_temp);
+
+ #ifdef __DEBUG_CHIP_TEMPERATURE_MONITOR_SUPPORT__
+ char info_buf[64] = {0};
+ sprintf(info_buf, "chip_temp=%d", chip_temp);
+ mmi_debug_info_write_to_file(info_buf);
+ #endif
+
+ if(MMI_CHIP_TEMP_LOW_THRESHOLD >= chip_temp)
+ {
+ mmi_chip_high_temp_screen_prepare_destory(NULL);
+ lv_obj_del(activity_obj);
+ mmi_chip_high_temp_task_clean();
+ }
+ }
+}
+
+static void mmi_watch_chip_temperature_clean(void)
+{
+ mmi_chip_high_temp_task_clean();
+ s_chip_high_temp_clean_task = lv_task_create(mmi_chip_high_temp_clean_task_cb, 1000 * 5, LV_TASK_PRIO_HIGH, NULL);
+}
+
+static lv_obj_t * mmi_chip_high_temp_screen_create(lv_obj_t * activity_obj)
+{
+ SUNDRY_DEBUG_PRINTF("[@CHENG_DEBUG][%s][%d]: \n", __FUNCTION__, __LINE__);
+
+ if(NULL == activity_obj)
+ {
+ lv_watch_activity_ext_t activity_ext;
+ memset(&activity_ext, 0, sizeof(lv_watch_activity_ext_t));
+ activity_ext.actId = ACT_ID_CHIP_TEMP_HIGH;
+ activity_ext.create = mmi_chip_high_temp_screen_create;
+ activity_ext.prepare_destory = mmi_chip_high_temp_screen_prepare_destory;
+ activity_obj = lv_watch_creat_activity_obj(&activity_ext);
+ LV_ASSERT_MEM(activity_obj);
+ if(activity_obj == NULL)
+ {
+ return(NULL);
+ }
+ }
+
+ lv_obj_t * obj = lv_watch_obj_create(activity_obj);
+ LV_ASSERT_MEM(obj);
+ if(obj == NULL)
+ return NULL;
+
+ mmi_set_ACT_ID_CHIP_TEMP_HIGH(true);
+ mmi_watch_chip_temperature_clean();
+
+ lv_watch_obj_set_anim_mode(obj, LV_WATCH_ANIM_NO);
+
+ lv_obj_t * cont = lv_cont_create(obj, NULL);
+ lv_obj_set_size(cont, LV_HOR_RES, LV_VER_RES);
+ //lv_obj_set_style_local_bg_color(cont, LV_CONT_PART_MAIN, LV_STATE_DEFAULT, LV_COLOR_BLACK);
+ //lv_obj_set_style_local_radius(cont, LV_CONT_PART_MAIN, LV_STATE_DEFAULT, 30);
+ lv_obj_set_style_local_bg_color(cont, LV_CONT_PART_MAIN, LV_STATE_DEFAULT, LV_COLOR_RED);
+ //lv_obj_set_style_local_radius(prompt_cont, LV_CONT_PART_MAIN, LV_STATE_DEFAULT, 15);
+ lv_obj_align(cont, NULL, LV_ALIGN_CENTER, 0, 0);
+ lv_obj_set_click(cont, false);
+
+ // image
+ lv_obj_t * img = lv_img_create(cont, NULL);
+ lv_img_set_src(img, ICON_WARNNING_PROMPT);
+#ifdef USE_LV_WATCH_UI_CIRCLE
+ #ifdef USE_LV_WATCH_UI_240_240
+ lv_obj_align(img, NULL, LV_ALIGN_IN_TOP_MID, 0, 15);
+ #else
+ lv_obj_align(img, NULL, LV_ALIGN_IN_TOP_MID, 0, 15);
+ #endif
+#else
+ #if USE_LV_WATCH_UI_240_280
+ lv_obj_align(img, NULL, LV_ALIGN_IN_TOP_MID, 0, 20);
+ #else
+ lv_obj_align(img, NULL, LV_ALIGN_IN_TOP_MID, 0, 20);
+ #endif
+#endif
+
+ // text
+ lv_obj_t * label_prompt = lv_label_create(cont, NULL);
+ lv_obj_add_style(label_prompt, LV_OBJ_PART_MAIN, &lv_watch_font26);
+ lv_label_set_text_id(label_prompt, WATCH_TEXT_ID_CHIP_HIGH_TEMPERATURE);
+ lv_label_set_align(label_prompt, LV_LABEL_ALIGN_CENTER);
+ lv_obj_align(label_prompt, NULL, LV_ALIGN_CENTER, 0, 0);
+
+ // button
+ lv_obj_t * btn = lv_btn_create(cont, NULL);
+ lv_obj_set_size(btn, 100, 56);
+ lv_obj_set_style_local_bg_color(btn, LV_BTN_PART_MAIN, LV_STATE_DEFAULT, LV_COLOR_MAKE(0x47, 0xA6, 0xFF));
+ lv_obj_set_style_local_radius(btn, LV_BTN_PART_MAIN, LV_STATE_DEFAULT, 30);
+ lv_obj_set_style_local_bg_color(btn, LV_BTN_PART_MAIN, LV_STATE_PRESSED, LV_COLOR_MAKE(0x47, 0xA6, 0xFF));
+ lv_obj_set_style_local_radius(btn, LV_BTN_PART_MAIN, LV_STATE_PRESSED, 30);
+#ifdef USE_LV_WATCH_UI_CIRCLE
+ #ifdef USE_LV_WATCH_UI_240_240
+ lv_obj_align(btn, NULL, LV_ALIGN_IN_BOTTOM_MID, 0, -15);
+ #else
+ lv_obj_align(btn, NULL, LV_ALIGN_IN_BOTTOM_MID, 0, -15);
+ #endif
+#else
+ #if USE_LV_WATCH_UI_240_280
+ lv_obj_align(btn, NULL, LV_ALIGN_IN_BOTTOM_MID, 0, -20);
+ #else
+ lv_obj_align(btn, NULL, LV_ALIGN_IN_BOTTOM_MID, 0, -20);
+ #endif
+#endif
+ lv_obj_set_event_cb(btn, mmi_chip_high_temp_btn_event_cb);
+
+ lv_obj_t * label_btn = lv_label_create(btn, NULL);
+ lv_obj_add_style(label_btn, LV_LABEL_PART_MAIN, &lv_watch_font26);
+ lv_label_set_text_id(label_btn, WATCH_TEXT_ID_SHUTDOWN);
+ lv_label_set_align(label_btn, LV_LABEL_ALIGN_CENTER);
+ lv_obj_align(label_btn, NULL, LV_ALIGN_CENTER, 0, 0);
+
+ return obj;
+}
+
+static void mmi_chip_temp_high_task_cb(lv_task_t * task)
{
- if(0 == flag) // in call
+ SUNDRY_DEBUG_PRINTF("[@CHENG_DEBUG][%s][%d]: \n", __FUNCTION__, __LINE__);
+
+ if(MMI_MODEM_CALL_STATE_NULL != phone_get_call_state())
{
- mmi_call_chip_high_temperature_prompt();
+ ring_off_action(NULL, LV_EVENT_CLICKED);
}
#ifdef __MMI_ZHSX_SUPPORT_VIDEO_CALL__
- else if(1 == flag) // in video call
+ else if(true == voip_connect_check_req())
{
- mmi_vc_chip_high_temperature_prompt();
+ mmi_vc_ring_off_action(NULL, LV_EVENT_CLICKED);
}
#endif
+
+ lv_watch_go_home();
+ Hal_Vibrator_Play_Onetime(NULL, 800);
+
+ mmi_chip_high_temp_screen_create(NULL);
}
+void mmi_watch_chip_temperature_check(void)
+{
+ int chip_temp = asl_chip_temperature_get();
+ SUNDRY_DEBUG_PRINTF("[@CHENG_DEBUG][%s][%d]: chip_temp=%d\n", __FUNCTION__, __LINE__, chip_temp);
+
+#ifdef __DEBUG_CHIP_TEMPERATURE_MONITOR_SUPPORT__
+ char info_buf[64] = {0};
+ sprintf(info_buf, "chip_temp=%d", chip_temp);
+ mmi_debug_info_write_to_file(info_buf);
+#endif
+
+ if(120 < chip_temp)
+ {
+ SUNDRY_DEBUG_PRINTF("[@CHENG_DEBUG][%s][%d]: chip temp unreasonable\n", __FUNCTION__, __LINE__);
+ }
+ else if(MMI_CHIP_TEMP_HIGH_THRESHOLD <= chip_temp)
+ {
+ if(false == mmi_is_ACT_ID_CHIP_TEMP_HIGH())
+ {
+ SUNDRY_DEBUG_PRINTF("[@CHENG_DEBUG][%s][%d]: \n", __FUNCTION__, __LINE__);
+
+ mmi_watch_wake_up();
+ lv_task_t * task_ptr = lv_task_create(mmi_chip_temp_high_task_cb, 50, LV_TASK_PRIO_HIGH, NULL);
+ lv_task_once(task_ptr);
+ }
+ }
+ else if(MMI_CHIP_TEMP_LOW_THRESHOLD >= chip_temp)
+ {
+ if(true == mmi_is_ACT_ID_CHIP_TEMP_HIGH())
+ {
+ SUNDRY_DEBUG_PRINTF("[@CHENG_DEBUG][%s][%d]: \n", __FUNCTION__, __LINE__);
+
+ mmi_set_ACT_ID_CHIP_TEMP_HIGH(false);
+ }
+ }
+}
+
+#else
+
+bool mmi_is_ACT_ID_CHIP_TEMP_HIGH(void)
+{
+ return false;
+}
+
+static void mmi_chip_high_temp_screen_prepare_destory(lv_obj_t * activity_obj)
+{
+ SUNDRY_DEBUG_PRINTF("[@CHENG_DEBUG][%s][%d]: \n", __FUNCTION__, __LINE__);
+
+ lv_watch_png_cache_all_free();
+}
+
+void mmi_chip_high_temp_btn_event_cb(lv_obj_t * obj, lv_event_t e)
+{
+ if(LV_EVENT_CLICKED != e)
+ return;
+
+ mmi_chip_high_temp_screen_prepare_destory(NULL);
+ lv_obj_t * activity_obj = lv_watch_get_activity_obj(ACT_ID_CHIP_TEMP_HIGH);
+ if(NULL != activity_obj)
+ {
+ lv_obj_del(activity_obj);
+ }
+}
+
+static lv_obj_t * mmi_chip_high_temp_screen_create(lv_obj_t * activity_obj)
+{
+ SUNDRY_DEBUG_PRINTF("[@CHENG_DEBUG][%s][%d]: \n", __FUNCTION__, __LINE__);
+
+ if(NULL == activity_obj)
+ {
+ lv_watch_activity_ext_t activity_ext;
+ memset(&activity_ext, 0, sizeof(lv_watch_activity_ext_t));
+ activity_ext.actId = ACT_ID_CHIP_TEMP_HIGH;
+ activity_ext.create = mmi_chip_high_temp_screen_create;
+ activity_ext.prepare_destory = mmi_chip_high_temp_screen_prepare_destory;
+ activity_obj = lv_watch_creat_activity_obj(&activity_ext);
+ LV_ASSERT_MEM(activity_obj);
+ if(activity_obj == NULL)
+ {
+ return(NULL);
+ }
+ }
+
+ lv_obj_t * obj = lv_watch_obj_create(activity_obj);
+ LV_ASSERT_MEM(obj);
+ if(obj == NULL)
+ return NULL;
+
+ //lv_watch_obj_set_anim_mode(obj, LV_WATCH_ANIM_NO);
+
+ lv_obj_t * cont = lv_cont_create(obj, NULL);
+ lv_obj_set_size(cont, LV_HOR_RES, LV_VER_RES);
+ //lv_obj_set_style_local_bg_color(cont, LV_CONT_PART_MAIN, LV_STATE_DEFAULT, LV_COLOR_BLACK);
+ //lv_obj_set_style_local_radius(cont, LV_CONT_PART_MAIN, LV_STATE_DEFAULT, 30);
+ lv_obj_set_style_local_bg_color(cont, LV_CONT_PART_MAIN, LV_STATE_DEFAULT, LV_COLOR_RED);
+ //lv_obj_set_style_local_radius(prompt_cont, LV_CONT_PART_MAIN, LV_STATE_DEFAULT, 15);
+ lv_obj_align(cont, NULL, LV_ALIGN_CENTER, 0, 0);
+ lv_obj_set_click(cont, false);
+
+ // image
+ lv_obj_t * img = lv_img_create(cont, NULL);
+ lv_img_set_src(img, ICON_WARNNING_PROMPT);
+#ifdef USE_LV_WATCH_UI_CIRCLE
+ #ifdef USE_LV_WATCH_UI_240_240
+ lv_obj_align(img, NULL, LV_ALIGN_IN_TOP_MID, 0, 15);
+ #else
+ lv_obj_align(img, NULL, LV_ALIGN_IN_TOP_MID, 0, 15);
+ #endif
+#else
+ #if USE_LV_WATCH_UI_240_280
+ lv_obj_align(img, NULL, LV_ALIGN_IN_TOP_MID, 0, 20);
+ #else
+ lv_obj_align(img, NULL, LV_ALIGN_IN_TOP_MID, 0, 20);
+ #endif
+#endif
+
+ // text
+ lv_obj_t * label_prompt = lv_label_create(cont, NULL);
+ lv_obj_add_style(label_prompt, LV_OBJ_PART_MAIN, &lv_watch_font26);
+ lv_label_set_text_id(label_prompt, WATCH_TEXT_ID_CHIP_HIGH_TEMPERATURE);
+ lv_label_set_align(label_prompt, LV_LABEL_ALIGN_CENTER);
+ lv_obj_align(label_prompt, NULL, LV_ALIGN_CENTER, 0, 0);
+
+ // button
+ lv_obj_t * btn = lv_btn_create(cont, NULL);
+ lv_obj_set_size(btn, 100, 56);
+ lv_obj_set_style_local_bg_color(btn, LV_BTN_PART_MAIN, LV_STATE_DEFAULT, LV_COLOR_MAKE(0x47, 0xA6, 0xFF));
+ lv_obj_set_style_local_radius(btn, LV_BTN_PART_MAIN, LV_STATE_DEFAULT, 30);
+ lv_obj_set_style_local_bg_color(btn, LV_BTN_PART_MAIN, LV_STATE_PRESSED, LV_COLOR_MAKE(0x47, 0xA6, 0xFF));
+ lv_obj_set_style_local_radius(btn, LV_BTN_PART_MAIN, LV_STATE_PRESSED, 30);
+#ifdef USE_LV_WATCH_UI_CIRCLE
+ #ifdef USE_LV_WATCH_UI_240_240
+ lv_obj_align(btn, NULL, LV_ALIGN_IN_BOTTOM_MID, 0, -15);
+ #else
+ lv_obj_align(btn, NULL, LV_ALIGN_IN_BOTTOM_MID, 0, -15);
+ #endif
+#else
+ #if USE_LV_WATCH_UI_240_280
+ lv_obj_align(btn, NULL, LV_ALIGN_IN_BOTTOM_MID, 0, -20);
+ #else
+ lv_obj_align(btn, NULL, LV_ALIGN_IN_BOTTOM_MID, 0, -20);
+ #endif
+#endif
+ lv_obj_set_event_cb(btn, mmi_chip_high_temp_btn_event_cb);
+
+ lv_obj_t * label_btn = lv_label_create(btn, NULL);
+ lv_obj_add_style(label_btn, LV_LABEL_PART_MAIN, &lv_watch_font26);
+ lv_label_set_text_id(label_btn, WATCH_TEXT_ID_OK);
+ lv_label_set_align(label_btn, LV_LABEL_ALIGN_CENTER);
+ lv_obj_align(label_btn, NULL, LV_ALIGN_CENTER, 0, 0);
+
+ return obj;
+}
+
+static void mmi_call_chip_temp_high_task_cb(lv_task_t * task)
+{
+ SUNDRY_DEBUG_PRINTF("[@CHENG_DEBUG][%s][%d]: \n", __FUNCTION__, __LINE__);
+
+ if(MMI_MODEM_CALL_STATE_NULL != phone_get_call_state())
+ {
+ ring_off_action(NULL, LV_EVENT_CLICKED);
+ }
+
+ lv_watch_go_home();
+ Hal_Vibrator_Play_Onetime(NULL, 800);
+
+ mmi_chip_high_temp_screen_create(NULL);
+}
+
+#ifdef __MMI_ZHSX_SUPPORT_VIDEO_CALL__
+static void mmi_vc_chip_temp_high_task_cb(lv_task_t * task)
+{
+ SUNDRY_DEBUG_PRINTF("[@CHENG_DEBUG][%s][%d]: \n", __FUNCTION__, __LINE__);
+
+ if(true == voip_connect_check_req())
+ {
+ mmi_vc_ring_off_action(NULL, LV_EVENT_CLICKED);
+ }
+
+ lv_watch_go_home();
+ Hal_Vibrator_Play_Onetime(NULL, 800);
+
+ mmi_chip_high_temp_screen_create(NULL);
+}
+#endif
+
void mmi_watch_chip_temperature_check(void)
{
if(MMI_MODEM_CALL_STATE_NULL != phone_get_call_state())
int chip_temp = asl_chip_temperature_get();
SUNDRY_DEBUG_PRINTF("[@CHENG_DEBUG][%s][%d]: chip_temp=%d\n", __FUNCTION__, __LINE__, chip_temp);
- if(MMI_CHIP_TEMPERATURE_THRESHOLD <= chip_temp)
+ if(MMI_CHIP_TEMP_HIGH_THRESHOLD <= chip_temp)
{
- mmi_ui_msg_action_chip_high_temperature(0);
+ mmi_watch_wake_up();
+ lv_task_t * task_ptr = lv_task_create(mmi_call_chip_temp_high_task_cb, 50, LV_TASK_PRIO_HIGH, NULL);
+ lv_task_once(task_ptr);
}
}
#ifdef __MMI_ZHSX_SUPPORT_VIDEO_CALL__
int chip_temp = asl_chip_temperature_get();
SUNDRY_DEBUG_PRINTF("[@CHENG_DEBUG][%s][%d]: chip_temp=%d\n", __FUNCTION__, __LINE__, chip_temp);
- if(MMI_CHIP_TEMPERATURE_THRESHOLD <= chip_temp)
+ if(MMI_CHIP_TEMP_HIGH_THRESHOLD <= chip_temp)
{
- mmi_ui_msg_action_chip_high_temperature(1);
+ mmi_watch_wake_up();
+ lv_task_t * task_ptr = lv_task_create(mmi_vc_chip_temp_high_task_cb, 50, LV_TASK_PRIO_HIGH, NULL);
+ lv_task_once(task_ptr);
}
}
#endif
}
+#endif
+
+#endif