Touchscreen targets: fix software hold not locking touchscreen
Flyspray: FS#10733 Author: Yann Muller git-svn-id: svn://svn.rockbox.org/rockbox/trunk@23384 a1c6a512-1295-4272-9138-f99709370657
This commit is contained in:
parent
e415395c5b
commit
7b1d12e067
1 changed files with 20 additions and 19 deletions
|
@ -202,25 +202,6 @@ static int get_action_worker(int context, int timeout,
|
|||
return ACTION_NONE; /* "safest" return value */
|
||||
}
|
||||
last_context = context;
|
||||
#ifdef HAVE_TOUCHSCREEN
|
||||
if (button & BUTTON_TOUCHSCREEN)
|
||||
{
|
||||
repeated = false;
|
||||
short_press = false;
|
||||
if (last_button & BUTTON_TOUCHSCREEN)
|
||||
{
|
||||
if ((button & BUTTON_REL) &&
|
||||
((last_button & BUTTON_REPEAT)==0))
|
||||
{
|
||||
short_press = true;
|
||||
}
|
||||
else if (button & BUTTON_REPEAT)
|
||||
repeated = true;
|
||||
}
|
||||
last_button = button;
|
||||
return ACTION_TOUCHSCREEN;
|
||||
}
|
||||
#endif
|
||||
#ifndef HAS_BUTTON_HOLD
|
||||
screen_has_lock = ((context & ALLOW_SOFTLOCK) == ALLOW_SOFTLOCK);
|
||||
if (screen_has_lock && keys_locked)
|
||||
|
@ -245,6 +226,26 @@ static int get_action_worker(int context, int timeout,
|
|||
context &= ~ALLOW_SOFTLOCK;
|
||||
#endif /* HAS_BUTTON_HOLD */
|
||||
|
||||
#ifdef HAVE_TOUCHSCREEN
|
||||
if (button & BUTTON_TOUCHSCREEN)
|
||||
{
|
||||
repeated = false;
|
||||
short_press = false;
|
||||
if (last_button & BUTTON_TOUCHSCREEN)
|
||||
{
|
||||
if ((button & BUTTON_REL) &&
|
||||
((last_button & BUTTON_REPEAT)==0))
|
||||
{
|
||||
short_press = true;
|
||||
}
|
||||
else if (button & BUTTON_REPEAT)
|
||||
repeated = true;
|
||||
}
|
||||
last_button = button;
|
||||
return ACTION_TOUCHSCREEN;
|
||||
}
|
||||
#endif
|
||||
|
||||
#if defined(HAVE_LCD_BITMAP) && !defined(BOOTLOADER)
|
||||
button = button_flip_horizontally(context, button);
|
||||
#endif
|
||||
|
|
Loading…
Reference in a new issue