diff options
| -rw-r--r-- | apps/wps.c | 14 | ||||
| -rw-r--r-- | apps/wps.h | 6 |
2 files changed, 16 insertions, 4 deletions
@@ -750,10 +750,20 @@ long wps_show(void) /* stop and exit wps */ #ifdef WPS_EXIT case WPS_EXIT: -#ifdef WPS_RC_EXIT +# ifdef WPS_EXIT_PRE + if (lastbutton != WPS_EXIT_PRE) + break; +# endif + exit = true; + +# ifdef WPS_RC_EXIT case WPS_RC_EXIT: -#endif +# ifdef WPS_RC_EXIT_PRE + if (lastbutton != WPS_RC_EXIT_PRE) + break; +# endif exit = true; +# endif break; #endif @@ -38,7 +38,8 @@ #define WPS_MENU_PRE BUTTON_MODE #define WPS_BROWSE (BUTTON_SELECT | BUTTON_REL) #define WPS_BROWSE_PRE BUTTON_SELECT -#define WPS_EXIT BUTTON_OFF +#define WPS_EXIT (BUTTON_OFF | BUTTON_REL) +#define WPS_EXIT_PRE BUTTON_OFF #define WPS_ID3 (BUTTON_MODE | BUTTON_ON) #define WPS_CONTEXT (BUTTON_SELECT | BUTTON_REPEAT) #define WPS_QUICK (BUTTON_MODE | BUTTON_REPEAT) @@ -54,7 +55,8 @@ #define WPS_RC_PAUSE BUTTON_RC_ON #define WPS_RC_INCVOL BUTTON_RC_VOL_UP #define WPS_RC_DECVOL BUTTON_RC_VOL_DOWN -#define WPS_RC_EXIT BUTTON_RC_STOP +#define WPS_RC_EXIT (BUTTON_RC_STOP | BUTTON_REL) +#define WPS_RC_EXIT_PRE BUTTON_RC_STOP #define WPS_RC_MENU (BUTTON_RC_MODE | BUTTON_REL) #define WPS_RC_MENU_PRE BUTTON_RC_MODE #define WPS_RC_BROWSE (BUTTON_RC_MENU | BUTTON_REL) |