summaryrefslogtreecommitdiff
path: root/apps/plugins/sokoban.c
diff options
context:
space:
mode:
authorSebastian Leonhardt <sebastian.leonhardt@web.de>2015-12-27 18:14:41 +0100
committerSebastian Leonhardt <sebastian.leonhardt@web.de>2015-12-27 18:14:41 +0100
commit5e91ec14011656d8952007aceb99189cd28786ba (patch)
tree6e0d8a4850f5f7ec85f01bf599e840c25659881f /apps/plugins/sokoban.c
parentad65f8cc71bfe9e98936d5f781263850a9d50cc0 (diff)
downloadrockbox-5e91ec14011656d8952007aceb99189cd28786ba.tar.gz
rockbox-5e91ec14011656d8952007aceb99189cd28786ba.zip
Samsung YH820/92x keymap bugfixes
This patch fixes some (mostly small) plugin issues with the "big" YH-keymap patch (a507b). Only one fix affects the main keymaps (virtual keyboard "DONE" now exits after long key /release/ instead of long button /press/). Change-Id: Id34f925ebfa97ae4974cd9405fbe1fee4f597833
Diffstat (limited to 'apps/plugins/sokoban.c')
-rw-r--r--apps/plugins/sokoban.c14
1 files changed, 10 insertions, 4 deletions
diff --git a/apps/plugins/sokoban.c b/apps/plugins/sokoban.c
index 76eb6288cd..f085e1bff2 100644
--- a/apps/plugins/sokoban.c
+++ b/apps/plugins/sokoban.c
@@ -495,7 +495,8 @@
495#define SOKOBAN_RIGHT BUTTON_RIGHT 495#define SOKOBAN_RIGHT BUTTON_RIGHT
496#define SOKOBAN_UP BUTTON_UP 496#define SOKOBAN_UP BUTTON_UP
497#define SOKOBAN_DOWN BUTTON_DOWN 497#define SOKOBAN_DOWN BUTTON_DOWN
498#define SOKOBAN_MENU BUTTON_PLAY 498#define SOKOBAN_MENU_PRE BUTTON_PLAY
499#define SOKOBAN_MENU (BUTTON_PLAY | BUTTON_REL)
499#define SOKOBAN_UNDO BUTTON_REW 500#define SOKOBAN_UNDO BUTTON_REW
500#define SOKOBAN_REDO BUTTON_FFWD 501#define SOKOBAN_REDO BUTTON_FFWD
501#define SOKOBAN_LEVEL_DOWN (BUTTON_PLAY | BUTTON_DOWN) 502#define SOKOBAN_LEVEL_DOWN (BUTTON_PLAY | BUTTON_DOWN)
@@ -1690,7 +1691,7 @@ static bool sokoban_loop(void)
1690{ 1691{
1691 bool moved; 1692 bool moved;
1692 int i = 0, button = 0; 1693 int i = 0, button = 0;
1693#if defined(SOKOBAN_UNDO_PRE) 1694#if defined(SOKOBAN_UNDO_PRE) || defined(SOKOBAN_MENU_PRE)
1694 int lastbutton = 0; 1695 int lastbutton = 0;
1695#endif 1696#endif
1696 int w, h; 1697 int w, h;
@@ -1703,10 +1704,15 @@ static bool sokoban_loop(void)
1703 1704
1704 switch(button) 1705 switch(button)
1705 { 1706 {
1707 case SOKOBAN_MENU:
1708#ifdef SOKOBAN_MENU_PRE
1709 if (lastbutton != SOKOBAN_MENU_PRE)
1710 break;
1711 /* fallthrough */
1712#endif
1706#ifdef SOKOBAN_RC_MENU 1713#ifdef SOKOBAN_RC_MENU
1707 case SOKOBAN_RC_MENU: 1714 case SOKOBAN_RC_MENU:
1708#endif 1715#endif
1709 case SOKOBAN_MENU:
1710 switch (sokoban_menu()) { 1716 switch (sokoban_menu()) {
1711 case 5: /* Quit */ 1717 case 5: /* Quit */
1712 case 6: /* Save & quit */ 1718 case 6: /* Save & quit */
@@ -1794,7 +1800,7 @@ static bool sokoban_loop(void)
1794 return PLUGIN_USB_CONNECTED; 1800 return PLUGIN_USB_CONNECTED;
1795 break; 1801 break;
1796 } 1802 }
1797#if defined(SOKOBAN_UNDO_PRE) 1803#if defined(SOKOBAN_UNDO_PRE) || defined(SOKOBAN_MENU_PRE)
1798 lastbutton = button; 1804 lastbutton = button;
1799#endif 1805#endif
1800 1806