Fixed bug of password screen.
This commit is contained in:
		
							parent
							
								
									7f2b5dfcc0
								
							
						
					
					
						commit
						d8c26975bd
					
				| 
						 | 
				
			
			@ -1,6 +1,7 @@
 | 
			
		|||
#include "PrjInc.h"
 | 
			
		||||
#include "UIFlowLVGL/UIFlowLVGL.h"
 | 
			
		||||
#include "UIFlowLVGL/UIFlowWrnMsg/UIFlowWrnMsgAPI.h"
 | 
			
		||||
#include "UIFlowLVGL_SPORTCAM.h"
 | 
			
		||||
#include "sf_mcu.h"
 | 
			
		||||
#include "sf_common.h"
 | 
			
		||||
#include <stdio.h>
 | 
			
		||||
| 
						 | 
				
			
			@ -32,6 +33,8 @@ static const char* PasswordMap[7] =
 | 
			
		|||
};
 | 
			
		||||
#define LONG_PRESS_INTERVAL 500
 | 
			
		||||
static unsigned long KeyRightPressingTimeMs = 0;
 | 
			
		||||
static unsigned long KeyUpPressingTimeMs = 0;
 | 
			
		||||
static unsigned long KeyDownPressingTimeMs = 0;
 | 
			
		||||
 | 
			
		||||
static lv_group_t* gp = NULL;
 | 
			
		||||
static void set_indev_keypad_group(lv_obj_t* obj)
 | 
			
		||||
| 
						 | 
				
			
			@ -228,6 +231,11 @@ static void UIFlowPassword_Key(lv_obj_t* obj, uint32_t key)
 | 
			
		|||
	switch(key)
 | 
			
		||||
	{
 | 
			
		||||
	case LV_USER_KEY_NEXT:
 | 
			
		||||
	if (KeyDownPressingTimeMs >= LONG_PRESS_INTERVAL)
 | 
			
		||||
	{
 | 
			
		||||
		KeyDownPressingTimeMs = 0;
 | 
			
		||||
		break;
 | 
			
		||||
	}
 | 
			
		||||
    printf("\033[33m[UIFlowPassword_Key]s\033[0m\n");
 | 
			
		||||
    if(PasswordIndex >= 0 && PasswordIndex <= 5)
 | 
			
		||||
    {
 | 
			
		||||
| 
						 | 
				
			
			@ -236,6 +244,11 @@ static void UIFlowPassword_Key(lv_obj_t* obj, uint32_t key)
 | 
			
		|||
    update_Password_msg(obj);
 | 
			
		||||
    break;
 | 
			
		||||
	case LV_USER_KEY_PREV:
 | 
			
		||||
	if (KeyUpPressingTimeMs >= LONG_PRESS_INTERVAL)
 | 
			
		||||
	{
 | 
			
		||||
		KeyUpPressingTimeMs = 0;
 | 
			
		||||
		break;
 | 
			
		||||
	}
 | 
			
		||||
    printf("\033[33m[UIFlowPassword_Key]w\033[0m\n");
 | 
			
		||||
    if(PasswordIndex >= 0 && PasswordIndex <= 5)
 | 
			
		||||
    {
 | 
			
		||||
| 
						 | 
				
			
			@ -313,6 +326,32 @@ void UIFlowPassword_KeyLongPress(lv_obj_t* obj, uint32_t key)
 | 
			
		|||
		printf("Super password is wrong.\n");
 | 
			
		||||
		break;
 | 
			
		||||
	}
 | 
			
		||||
	case LV_USER_KEY_NEXT:
 | 
			
		||||
	{
 | 
			
		||||
		KeyDownPressingTimeMs += LONG_PRESS_INTERVAL;
 | 
			
		||||
		if (KeyDownPressingTimeMs % 1000 == 0)
 | 
			
		||||
		{
 | 
			
		||||
			if(PasswordIndex >= 0 && PasswordIndex <= 5)
 | 
			
		||||
			{
 | 
			
		||||
			PwdStr[PasswordIndex] = (PwdStr[PasswordIndex] - '0' + 10 - 1) % 10 + '0';
 | 
			
		||||
			}
 | 
			
		||||
			update_Password_msg(obj);
 | 
			
		||||
		}
 | 
			
		||||
		break;
 | 
			
		||||
	}
 | 
			
		||||
	case LV_USER_KEY_PREV:
 | 
			
		||||
	{
 | 
			
		||||
		KeyUpPressingTimeMs += LONG_PRESS_INTERVAL;
 | 
			
		||||
		if (KeyUpPressingTimeMs % 1000 == 0)
 | 
			
		||||
		{
 | 
			
		||||
			if(PasswordIndex >= 0 && PasswordIndex <= 5)
 | 
			
		||||
			{
 | 
			
		||||
			PwdStr[PasswordIndex] = (PwdStr[PasswordIndex] - '0' + 1) % 10 + '0';
 | 
			
		||||
			}
 | 
			
		||||
			update_Password_msg(obj);
 | 
			
		||||
		}
 | 
			
		||||
		break;
 | 
			
		||||
	}
 | 
			
		||||
	default:
 | 
			
		||||
		break;
 | 
			
		||||
	}
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
		Reference in New Issue
	
	Block a user