From 4214074bccc42daa26ffb5836702ae0cc431b53d Mon Sep 17 00:00:00 2001 From: xiehongyan Date: Mon, 29 Jan 2024 17:55:50 +0800 Subject: [PATCH] =?UTF-8?q?=E5=9B=9E=E6=94=BE=E7=95=8C=E9=9D=A2=E9=95=BF?= =?UTF-8?q?=E6=8C=89=E7=BF=BB=E9=A1=B5=E7=85=A7=E7=89=87?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../UIFlowPlay/UIFlowPlayEventCallback.c | 58 ++++++++++++++++++- 1 file changed, 56 insertions(+), 2 deletions(-) diff --git a/code/application/source/cardv/SrcCode/UIWnd/LVGL_SPORTCAM/UIFlowLVGL/UIFlowPlay/UIFlowPlayEventCallback.c b/code/application/source/cardv/SrcCode/UIWnd/LVGL_SPORTCAM/UIFlowLVGL/UIFlowPlay/UIFlowPlayEventCallback.c index 2f54277b3..4d9a438a4 100755 --- a/code/application/source/cardv/SrcCode/UIWnd/LVGL_SPORTCAM/UIFlowLVGL/UIFlowPlay/UIFlowPlayEventCallback.c +++ b/code/application/source/cardv/SrcCode/UIWnd/LVGL_SPORTCAM/UIFlowLVGL/UIFlowPlay/UIFlowPlayEventCallback.c @@ -2540,6 +2540,40 @@ static void UIFlowPlay_Key(lv_obj_t* obj, uint32_t key) } +static void UIFlowPlay_Key_Long_Press(lv_obj_t* obj, uint32_t key) +{ + switch(key) + { + + case LV_USER_KEY_LEFT: + { + UINT32 uiFileSeq; + PB_GetParam(PBPRMID_CURR_FILESEQ, &uiFileSeq); + //FlowPB_SetMovPlayTime(0); + if (0 != uiFileSeq) + { + stop_play(); + UIFlowPlay_OnKeyUp(obj); + } + break; + } + case LV_USER_KEY_RIGHT: + { + UINT32 uiFileSeq; + PB_GetParam(PBPRMID_CURR_FILESEQ, &uiFileSeq); + //FlowPB_SetMovPlayTime(0); + if (0 != uiFileSeq) + { + stop_play(); + UIFlowPlay_OnKeyDown(obj); + } + break; + } + + + } +} + static void UIFlowPlay_NVTMSG(lv_obj_t* obj, const LV_USER_EVENT_NVTMSG_DATA* msg) { switch(msg->event) @@ -2643,11 +2677,11 @@ static void UIFlowPlay_NVTMSG(lv_obj_t* obj, const LV_USER_EVENT_NVTMSG_DATA* ms } } - +static unsigned long KeyPressingTimeMs = 0; static void UIFlowPlayBtnEventCallback(lv_obj_t* obj, lv_event_t event) { DBG_IND("%s:%d\r\n", __func__, event); - + printf("%s:%d\n", __FUNCTION__, __LINE__); switch(event) { case LV_EVENT_CLICKED: @@ -2676,11 +2710,31 @@ static void UIFlowPlayBtnEventCallback(lv_obj_t* obj, lv_event_t event) * ***********************************************************************************/ if(*key != LV_KEY_ENTER) + { lv_indev_wait_release(lv_indev_get_act()); + } + KeyPressingTimeMs = 0; break; } + case LV_USER_EVENT_KEY_LONG_PRESS: + { + if (SELECTION_SHOW_FALSE == gSeletionShow) + { + uint32_t* key = (uint32_t*)lv_event_get_data(); + KeyPressingTimeMs += 500; + if(KeyPressingTimeMs >= 1 * 1000) + { + printf("[LV_USER_EVENT_KEY_LONG_PRESS] time : %d\n", KeyPressingTimeMs); + UIFlowPlay_Key_Long_Press(obj, *key); + KeyPressingTimeMs = 0; + } + } + + break; + } } + } void UIFlowPlayEventCallback(lv_obj_t* obj, lv_event_t event)