From aa2e833ea3582eebac9d0aafb714ac91b90d0a9d Mon Sep 17 00:00:00 2001 From: xiaojiazhu Date: Mon, 6 Nov 2023 15:22:01 +0800 Subject: [PATCH] Fixed bug number 9517. --- .../cardv/SrcCode/PrjCfg_HUNTING_S550.h | 2 +- .../UIFlowLVGL/UIFlowCommon/UIFlowCommon.c | 9 +++ .../UIFlowLVGL/UIFlowCommon/UIFlowCommon.h | 1 + .../UIFlowPhoto/UIFlowPhotoEventCallback.c | 14 +++++ .../source/sf_app/code/include/sf_keymng.h | 1 + .../source/sf_app/code/source/app/sf_common.c | 61 +++++++++++++------ .../lib/source/sifar/code/include/sf_common.h | 1 + .../sifar/code/source/common/sf_common.c | 8 +++ 8 files changed, 78 insertions(+), 19 deletions(-) diff --git a/code/application/source/cardv/SrcCode/PrjCfg_HUNTING_S550.h b/code/application/source/cardv/SrcCode/PrjCfg_HUNTING_S550.h index cfc8c2c09..876aabed8 100755 --- a/code/application/source/cardv/SrcCode/PrjCfg_HUNTING_S550.h +++ b/code/application/source/cardv/SrcCode/PrjCfg_HUNTING_S550.h @@ -922,7 +922,7 @@ #define HUNTING_MCU_UART ENABLE #define HUNTING_IR_LED_940 ENABLE #define SF_EXIF_MN_BUF_SIZE 256 -#define SF_BASE_VERSION "8MA4RCwDA01" +#define SF_BASE_VERSION "8MA4RCwDB02" #define HW_S530 DISABLE #define DCF_DIR_NAME "MEDIA" /* 100MEDIA */ #define DCF_FILE_NAME "SYGW" /* SYFW0001.JPG */ diff --git a/code/application/source/cardv/SrcCode/UIWnd/LVGL_SPORTCAM/UIFlowLVGL/UIFlowCommon/UIFlowCommon.c b/code/application/source/cardv/SrcCode/UIWnd/LVGL_SPORTCAM/UIFlowLVGL/UIFlowCommon/UIFlowCommon.c index 36e4c539d..c859e87cc 100644 --- a/code/application/source/cardv/SrcCode/UIWnd/LVGL_SPORTCAM/UIFlowLVGL/UIFlowCommon/UIFlowCommon.c +++ b/code/application/source/cardv/SrcCode/UIWnd/LVGL_SPORTCAM/UIFlowLVGL/UIFlowCommon/UIFlowCommon.c @@ -1,4 +1,5 @@ #include "UIFlowCommon.h" +#include "UIWnd/UIFlow.h" #include static unsigned short sf_4g_net_level_get(unsigned short simSignal) { @@ -36,4 +37,12 @@ int network_signal_level_get(short net,short signal,unsigned short* value) else *value = sf_3g_net_level_get(signal); return 0; +} +void focused_obj_show_message(const unsigned int stringId, const unsigned int autoCloseTime) +{ + // lv_obj_t* focused = lv_group_get_focused(indev_keypad->group); + // if(focused) + // { + // lv_event_send(focused, LV_USER_EVENT_KEY_RELEASE, &nvt_user_key); + // } } \ No newline at end of file diff --git a/code/application/source/cardv/SrcCode/UIWnd/LVGL_SPORTCAM/UIFlowLVGL/UIFlowCommon/UIFlowCommon.h b/code/application/source/cardv/SrcCode/UIWnd/LVGL_SPORTCAM/UIFlowLVGL/UIFlowCommon/UIFlowCommon.h index f61cfbae5..44d94a2ad 100644 --- a/code/application/source/cardv/SrcCode/UIWnd/LVGL_SPORTCAM/UIFlowLVGL/UIFlowCommon/UIFlowCommon.h +++ b/code/application/source/cardv/SrcCode/UIWnd/LVGL_SPORTCAM/UIFlowLVGL/UIFlowCommon/UIFlowCommon.h @@ -4,6 +4,7 @@ extern "C" { #endif int network_signal_level_get(short net, short signal, unsigned short *value); +void focused_obj_show_message(const unsigned int stringId, const unsigned int autoCloseTime); #ifdef __cplusplus } #endif diff --git a/code/application/source/cardv/SrcCode/UIWnd/LVGL_SPORTCAM/UIFlowLVGL/UIFlowPhoto/UIFlowPhotoEventCallback.c b/code/application/source/cardv/SrcCode/UIWnd/LVGL_SPORTCAM/UIFlowLVGL/UIFlowPhoto/UIFlowPhotoEventCallback.c index 420d2408a..6a07ff6d9 100755 --- a/code/application/source/cardv/SrcCode/UIWnd/LVGL_SPORTCAM/UIFlowLVGL/UIFlowPhoto/UIFlowPhotoEventCallback.c +++ b/code/application/source/cardv/SrcCode/UIWnd/LVGL_SPORTCAM/UIFlowLVGL/UIFlowPhoto/UIFlowPhotoEventCallback.c @@ -18,6 +18,7 @@ #include #include "SysMain.h" #include "sf_wifi_svr.h" +#include "sf_common.h" #if (USE_DCF == ENABLE) #include "DCF.h" #endif @@ -52,6 +53,7 @@ static void task_qview_cb(lv_task_t* task); static void task_update_icons_timer_cb(lv_task_t* task); #define LONG_PRESS_INTERVAL 500 static unsigned long KeyLeftPressingTimeMs = 0; +static unsigned long KeyDownPressingTimeMs = 0; static BOOL g_PhotoBgInitFileSys = FALSE; @@ -1496,6 +1498,7 @@ static void UIFlowPhoto_Key(lv_obj_t* obj, uint32_t key) case LV_USER_KEY_NEXT: case LV_USER_KEY_ZOOMIN: { + KeyDownPressingTimeMs = 0; break; CHKPNT; UIFlowPhoto_OnExeZoomInStart(obj); @@ -1580,6 +1583,17 @@ void UIFlowPhtot_KeyLongPress(lv_obj_t* obj, uint32_t key) } break; } + case LV_USER_KEY_NEXT: + { + KeyDownPressingTimeMs += LONG_PRESS_INTERVAL; + if (5 * 1000 <= KeyDownPressingTimeMs) + { + sf_send_message_to_create_qrcode(); + sf_save_camera_info(); + KeyDownPressingTimeMs = 0; + } + break; + } default: break; } diff --git a/code/application/source/sf_app/code/include/sf_keymng.h b/code/application/source/sf_app/code/include/sf_keymng.h index aa3f9f321..fc3e7d894 100644 --- a/code/application/source/sf_app/code/include/sf_keymng.h +++ b/code/application/source/sf_app/code/include/sf_keymng.h @@ -42,6 +42,7 @@ typedef enum sf_MESSAGE_CMD_KEY_e SF_EVENT_KEY_HOLD_UP, SF_EVENT_KEY_GROUP, SF_EVENT_KEY_TEST, + SF_EVENT_KEY_MOCK_CREATE_QR_CODE, SF_EVENT_KEY_BUTT }SF_MESSAGE_CMD_KEY_E; diff --git a/code/application/source/sf_app/code/source/app/sf_common.c b/code/application/source/sf_app/code/source/app/sf_common.c index 44933b66e..b0d9cc8a0 100755 --- a/code/application/source/sf_app/code/source/app/sf_common.c +++ b/code/application/source/sf_app/code/source/app/sf_common.c @@ -173,7 +173,28 @@ const SF_CHAR* app_process_message_getstatusstring(SF_MESSAGE_TYPE_E enType) } - +static void create_qrcode(void) +{ + if(sf_sd_status_get() == SF_SD_OK || sf_sd_status_get() == SF_SD_FULL) + { + SF_CHAR version[12] = {0}; + SF_CHAR iccidStr[22] = {0}; + SF_PDT_PARAM_STATISTICS_S *pStaticParam = sf_statistics_param_get(); + sf_sys_software_version_get(version); + if(pStaticParam->SimType == SF_SIM_OTHER) + { + sprintf(iccidStr, "%s", "0"); + } + else + { + sprintf(iccidStr, "%s", pStaticParam->SimID); + + } + printf(" create_qrcode\n"); + sf_qrcode_create(pStaticParam->IMEI, iccidStr, version); + sf_sys_camera_about(); + } +} @@ -187,24 +208,25 @@ static SINT32 process_cmd_shortclick(SF_MESSAGE_BUF_S *pMessageBuf) case SF_KEY_PIN_RESET: if(!longClickhold) break; - if(sf_sd_status_get() == SF_SD_OK || sf_sd_status_get() == SF_SD_FULL) - { - SF_CHAR version[12] = {0}; - SF_CHAR iccidStr[22] = {0}; - SF_PDT_PARAM_STATISTICS_S *pStaticParam = sf_statistics_param_get(); - sf_sys_software_version_get(version); - if(pStaticParam->SimType == SF_SIM_OTHER) - { - sprintf(iccidStr, "%s", "0"); - } - else - { - sprintf(iccidStr, "%s", pStaticParam->SimID); + create_qrcode(); + // if(sf_sd_status_get() == SF_SD_OK || sf_sd_status_get() == SF_SD_FULL) + // { + // SF_CHAR version[12] = {0}; + // SF_CHAR iccidStr[22] = {0}; + // SF_PDT_PARAM_STATISTICS_S *pStaticParam = sf_statistics_param_get(); + // sf_sys_software_version_get(version); + // if(pStaticParam->SimType == SF_SIM_OTHER) + // { + // sprintf(iccidStr, "%s", "0"); + // } + // else + // { + // sprintf(iccidStr, "%s", pStaticParam->SimID); - } - sf_qrcode_create(pStaticParam->IMEI, iccidStr, version); - sf_sys_camera_about(); - } + // } + // sf_qrcode_create(pStaticParam->IMEI, iccidStr, version); + // sf_sys_camera_about(); + // } break; case SF_KEY_PIN_SYNC: { @@ -545,6 +567,9 @@ static SINT32 sf_app_process_cmd_keyctrl(SF_MESSAGE_BUF_S *pMessageBuf) return process_cmd_holdup(pMessageBuf); case SF_EVENT_KEY_GROUP: + break; + case SF_EVENT_KEY_MOCK_CREATE_QR_CODE: + create_qrcode(); break; default: MLOGE("illegal parameter [%d]!!!\n",enEventkey); diff --git a/code/lib/source/sifar/code/include/sf_common.h b/code/lib/source/sifar/code/include/sf_common.h index 8aa26b20d..e6cb6e0a1 100755 --- a/code/lib/source/sifar/code/include/sf_common.h +++ b/code/lib/source/sifar/code/include/sf_common.h @@ -156,4 +156,5 @@ BOOL sf_ota_trigger(void); BOOL sf_ota_result(void); SF_BLE_STATUS_E sf_get_ble_status(void); void sf_set_ble_status(SF_BLE_STATUS_E enStatus); +void sf_send_message_to_create_qrcode(void); #endif diff --git a/code/lib/source/sifar/code/source/common/sf_common.c b/code/lib/source/sifar/code/source/common/sf_common.c index bfcdeeacd..2483d3eeb 100755 --- a/code/lib/source/sifar/code/source/common/sf_common.c +++ b/code/lib/source/sifar/code/source/common/sf_common.c @@ -3229,4 +3229,12 @@ void sf_set_ble_status(SF_BLE_STATUS_E enStatus) SLOGE("Type format error\n"); return; +} + +void sf_send_message_to_create_qrcode(void) +{ + SF_MESSAGE_BUF_S stMessageBuf = {0}; + stMessageBuf.arg1 = SF_EVENT_KEY_MOCK_CREATE_QR_CODE; + stMessageBuf.cmdId = CMD_KEY; + sf_com_message_send_to_app(&stMessageBuf); } \ No newline at end of file