summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSolomon Peachy <pizza@shaftnet.org>2020-10-08 18:27:03 -0400
committerSolomon Peachy <pizza@shaftnet.org>2020-10-08 20:30:08 -0400
commit7a1bf015417250205c342d5d6e9f7cfa73265439 (patch)
tree640d702bb66d190fb60a6e6df6b54d8806ae4835
parentdc81f96fd1bf3ddfe4c9e750ff14a0238f85d776 (diff)
downloadrockbox-7a1bf015417250205c342d5d6e9f7cfa73265439.tar.gz
rockbox-7a1bf015417250205c342d5d6e9f7cfa73265439.zip
Undo the hacks that allowed targets without LEFT/RIGHT (UP/DN) to build.
Replaced them with warnings until they are fixed *PROPERLY* Change-Id: I4425200e60f8b5224262a54f105b974cec471d22
-rw-r--r--apps/action.c5
-rw-r--r--apps/plugins/pictureflow/pictureflow.c4
-rw-r--r--apps/plugins/rockboy/rockboy.c4
-rw-r--r--firmware/drivers/button.c16
-rw-r--r--firmware/target/arm/rk27xx/ihifi2/button-target.h4
-rw-r--r--firmware/target/arm/s5l8700/meizu-m3/button-target.h4
-rw-r--r--firmware/target/mips/ingenic_jz47xx/onda_vx767/button-target.h7
-rw-r--r--firmware/target/mips/ingenic_jz47xx/xduoo_x3/button-target.h5
8 files changed, 31 insertions, 18 deletions
diff --git a/apps/action.c b/apps/action.c
index 0c55227aac..d2fef6f513 100644
--- a/apps/action.c
+++ b/apps/action.c
@@ -434,6 +434,7 @@ static inline void button_flip_horizontally(int context, int *button)
434 return; 434 return;
435 } 435 }
436 436
437#if defined(BUTTON_LEFT) && defined(BUTTON_RIGHT)
437 newbutton &= ~(BUTTON_LEFT | BUTTON_RIGHT); 438 newbutton &= ~(BUTTON_LEFT | BUTTON_RIGHT);
438 if (has_flag(*button, BUTTON_LEFT)) 439 if (has_flag(*button, BUTTON_LEFT))
439 { 440 {
@@ -444,6 +445,10 @@ static inline void button_flip_horizontally(int context, int *button)
444 { 445 {
445 newbutton |= BUTTON_LEFT; 446 newbutton |= BUTTON_LEFT;
446 } 447 }
448#else
449#warning "BUTTON_LEFT / BUTTON_RIGHT not defined!"
450#endif
451
447#ifndef SIMULATOR 452#ifndef SIMULATOR
448#ifdef HAVE_SCROLLWHEEL 453#ifdef HAVE_SCROLLWHEEL
449 newbutton &= ~(BUTTON_SCROLL_BACK | BUTTON_SCROLL_FWD); 454 newbutton &= ~(BUTTON_SCROLL_BACK | BUTTON_SCROLL_FWD);
diff --git a/apps/plugins/pictureflow/pictureflow.c b/apps/plugins/pictureflow/pictureflow.c
index 91062f8f11..843df5746e 100644
--- a/apps/plugins/pictureflow/pictureflow.c
+++ b/apps/plugins/pictureflow/pictureflow.c
@@ -80,7 +80,7 @@ const struct button_mapping pf_context_album_scroll[] =
80 {PF_PREV_REPEAT, BUTTON_RC_REW|BUTTON_REPEAT,BUTTON_NONE}, 80 {PF_PREV_REPEAT, BUTTON_RC_REW|BUTTON_REPEAT,BUTTON_NONE},
81 {PF_NEXT, BUTTON_RC_FF, BUTTON_NONE}, 81 {PF_NEXT, BUTTON_RC_FF, BUTTON_NONE},
82 {PF_NEXT_REPEAT, BUTTON_RC_FF|BUTTON_REPEAT, BUTTON_NONE}, 82 {PF_NEXT_REPEAT, BUTTON_RC_FF|BUTTON_REPEAT, BUTTON_NONE},
83#else 83#elif defined(BUTTON_LEFT) && defined(BUTTON_RIGHT)
84 {PF_PREV, BUTTON_LEFT, BUTTON_NONE}, 84 {PF_PREV, BUTTON_LEFT, BUTTON_NONE},
85 {PF_PREV_REPEAT, BUTTON_LEFT|BUTTON_REPEAT, BUTTON_NONE}, 85 {PF_PREV_REPEAT, BUTTON_LEFT|BUTTON_REPEAT, BUTTON_NONE},
86 {PF_NEXT, BUTTON_RIGHT, BUTTON_NONE}, 86 {PF_NEXT, BUTTON_RIGHT, BUTTON_NONE},
@@ -89,6 +89,8 @@ const struct button_mapping pf_context_album_scroll[] =
89 {ACTION_NONE, BUTTON_RIGHT|BUTTON_REL, BUTTON_RIGHT}, 89 {ACTION_NONE, BUTTON_RIGHT|BUTTON_REL, BUTTON_RIGHT},
90 {ACTION_NONE, BUTTON_LEFT|BUTTON_REPEAT, BUTTON_LEFT}, 90 {ACTION_NONE, BUTTON_LEFT|BUTTON_REPEAT, BUTTON_LEFT},
91 {ACTION_NONE, BUTTON_RIGHT|BUTTON_REPEAT, BUTTON_RIGHT}, 91 {ACTION_NONE, BUTTON_RIGHT|BUTTON_REPEAT, BUTTON_RIGHT},
92#else
93#warning "LEFT/RIGHT not defined!"
92#endif 94#endif
93 LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_PLUGIN|1) 95 LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_PLUGIN|1)
94}; 96};
diff --git a/apps/plugins/rockboy/rockboy.c b/apps/plugins/rockboy/rockboy.c
index 202cdf6570..29269f18fb 100644
--- a/apps/plugins/rockboy/rockboy.c
+++ b/apps/plugins/rockboy/rockboy.c
@@ -85,9 +85,11 @@ static void setoptions (void)
85#ifdef HAVE_TOUCHSCREEN 85#ifdef HAVE_TOUCHSCREEN
86 options.LEFT = BUTTON_MIDLEFT; 86 options.LEFT = BUTTON_MIDLEFT;
87 options.RIGHT = BUTTON_MIDRIGHT; 87 options.RIGHT = BUTTON_MIDRIGHT;
88#else 88#elif defined(BUTTON_LEFT) && defined(BUTTON_RIGHT)
89 options.LEFT = BUTTON_LEFT; 89 options.LEFT = BUTTON_LEFT;
90 options.RIGHT = BUTTON_RIGHT; 90 options.RIGHT = BUTTON_RIGHT;
91#else
92#warning "LEFT/RIGHT not defined!"
91#endif 93#endif
92 94
93#if CONFIG_KEYPAD == IRIVER_H100_PAD 95#if CONFIG_KEYPAD == IRIVER_H100_PAD
diff --git a/firmware/drivers/button.c b/firmware/drivers/button.c
index 58a9ab0b94..939f94884d 100644
--- a/firmware/drivers/button.c
+++ b/firmware/drivers/button.c
@@ -558,15 +558,20 @@ void button_close(void)
558 558
559#ifdef HAVE_LCD_FLIP 559#ifdef HAVE_LCD_FLIP
560/* 560/*
561 * helper function to swap LEFT/RIGHT, UP/DOWN (if present), and F1/F3 (Recorder) 561 * helper function to swap LEFT/RIGHT, UP/DOWN (if present)
562 */ 562 */
563static int button_flip(int button) 563static int button_flip(int button)
564{ 564{
565 int newbutton = button; 565 int newbutton = button;
566 566
567#if (CONFIG_PLATFORM & PLATFORM_NATIVE) 567#if (CONFIG_PLATFORM & PLATFORM_NATIVE)
568 newbutton &= 568 newbutton &= ~(
569 ~(BUTTON_LEFT | BUTTON_RIGHT 569#if defined(BUTTON_LEFT) && defined(BUTTON_RIGHT)
570 BUTTON_LEFT | BUTTON_RIGHT
571#else
572#warning "LEFT/RIGHT not defined!"
573 0
574#endif
570#if defined(BUTTON_UP) && defined(BUTTON_DOWN) 575#if defined(BUTTON_UP) && defined(BUTTON_DOWN)
571 | BUTTON_UP | BUTTON_DOWN 576 | BUTTON_UP | BUTTON_DOWN
572#endif 577#endif
@@ -583,10 +588,15 @@ static int button_flip(int button)
583#endif 588#endif
584 ); 589 );
585 590
591#if defined(BUTTON_LEFT) && defined(BUTTON_RIGHT)
586 if (button & BUTTON_LEFT) 592 if (button & BUTTON_LEFT)
587 newbutton |= BUTTON_RIGHT; 593 newbutton |= BUTTON_RIGHT;
588 if (button & BUTTON_RIGHT) 594 if (button & BUTTON_RIGHT)
589 newbutton |= BUTTON_LEFT; 595 newbutton |= BUTTON_LEFT;
596#else
597#warning "LEFT/RIGHT not defined!"
598#endif
599
590#if defined(BUTTON_UP) && defined(BUTTON_DOWN) 600#if defined(BUTTON_UP) && defined(BUTTON_DOWN)
591 if (button & BUTTON_UP) 601 if (button & BUTTON_UP)
592 newbutton |= BUTTON_DOWN; 602 newbutton |= BUTTON_DOWN;
diff --git a/firmware/target/arm/rk27xx/ihifi2/button-target.h b/firmware/target/arm/rk27xx/ihifi2/button-target.h
index 211e20e1d6..d317e30972 100644
--- a/firmware/target/arm/rk27xx/ihifi2/button-target.h
+++ b/firmware/target/arm/rk27xx/ihifi2/button-target.h
@@ -32,8 +32,8 @@
32#define BUTTON_VOL_UP 0x00000020 32#define BUTTON_VOL_UP 0x00000020
33#define BUTTON_VOL_DOWN 0x00000040 33#define BUTTON_VOL_DOWN 0x00000040
34 34
35#define BUTTON_LEFT 0 35#define BUTTON_LEFT BUTTON_PREV
36#define BUTTON_RIGHT 0 36#define BUTTON_RIGHT BUTTON_NEXT
37 37
38#define BUTTON_MAIN (BUTTON_POWER | BUTTON_HOME | BUTTON_PREV | BUTTON_NEXT | \ 38#define BUTTON_MAIN (BUTTON_POWER | BUTTON_HOME | BUTTON_PREV | BUTTON_NEXT | \
39 BUTTON_PLAY | BUTTON_VOL_UP | BUTTON_VOL_DOWN) 39 BUTTON_PLAY | BUTTON_VOL_UP | BUTTON_VOL_DOWN)
diff --git a/firmware/target/arm/s5l8700/meizu-m3/button-target.h b/firmware/target/arm/s5l8700/meizu-m3/button-target.h
index 93f102c410..c438628cc9 100644
--- a/firmware/target/arm/s5l8700/meizu-m3/button-target.h
+++ b/firmware/target/arm/s5l8700/meizu-m3/button-target.h
@@ -28,10 +28,6 @@
28#define BUTTON_MENU 0x00000002 28#define BUTTON_MENU 0x00000002
29#define BUTTON_PLAY 0x00000004 29#define BUTTON_PLAY 0x00000004
30 30
31/* there are no LEFT/RIGHT buttons, but other parts of the code expect them */
32#define BUTTON_LEFT 0
33#define BUTTON_RIGHT 0
34
35#define BUTTON_MAIN (BUTTON_PREVNEXT|BUTTON_MENU|BUTTON_PLAY) 31#define BUTTON_MAIN (BUTTON_PREVNEXT|BUTTON_MENU|BUTTON_PLAY)
36 32
37#define POWEROFF_BUTTON BUTTON_PLAY 33#define POWEROFF_BUTTON BUTTON_PLAY
diff --git a/firmware/target/mips/ingenic_jz47xx/onda_vx767/button-target.h b/firmware/target/mips/ingenic_jz47xx/onda_vx767/button-target.h
index 04b46f85c7..cea469c541 100644
--- a/firmware/target/mips/ingenic_jz47xx/onda_vx767/button-target.h
+++ b/firmware/target/mips/ingenic_jz47xx/onda_vx767/button-target.h
@@ -32,11 +32,8 @@
32#define BUTTON_REWIND 0x00000020 32#define BUTTON_REWIND 0x00000020
33#define BUTTON_FAST_FWD 0x00000040 33#define BUTTON_FAST_FWD 0x00000040
34 34
35/* Compatibility hacks for flipping. Needs a somewhat better fix. */ 35#define BUTTON_LEFT BUTTON_REWIND
36#define BUTTON_LEFT 0 36#define BUTTON_RIGHT BUTTON_FAST_FWD
37#define BUTTON_RIGHT 0
38#define BUTTON_UP 0
39#define BUTTON_DOWN 0
40 37
41#define BUTTON_MAIN (BUTTON_SELECT | BUTTON_VOL_UP | BUTTON_VOL_DOWN | BUTTON_MENU \ 38#define BUTTON_MAIN (BUTTON_SELECT | BUTTON_VOL_UP | BUTTON_VOL_DOWN | BUTTON_MENU \
42 BUTTON_MENU | BUTTON_BACK | BUTTON_REWIND | BUTTON_FAST_FWD) 39 BUTTON_MENU | BUTTON_BACK | BUTTON_REWIND | BUTTON_FAST_FWD)
diff --git a/firmware/target/mips/ingenic_jz47xx/xduoo_x3/button-target.h b/firmware/target/mips/ingenic_jz47xx/xduoo_x3/button-target.h
index 9e2800d57b..a471c419e6 100644
--- a/firmware/target/mips/ingenic_jz47xx/xduoo_x3/button-target.h
+++ b/firmware/target/mips/ingenic_jz47xx/xduoo_x3/button-target.h
@@ -33,12 +33,13 @@
33#define BUTTON_VOL_UP 0x00000040 33#define BUTTON_VOL_UP 0x00000040
34#define BUTTON_VOL_DOWN 0x00000080 34#define BUTTON_VOL_DOWN 0x00000080
35#define BUTTON_PWRALT 0x00000100 /* BUTTON_POWER combo with other buttons */ 35#define BUTTON_PWRALT 0x00000100 /* BUTTON_POWER combo with other buttons */
36#define BUTTON_LEFT 0
37#define BUTTON_RIGHT 0
38 36
39#define BUTTON_MAIN (BUTTON_POWER | BUTTON_HOME | BUTTON_OPTION | BUTTON_PREV | \ 37#define BUTTON_MAIN (BUTTON_POWER | BUTTON_HOME | BUTTON_OPTION | BUTTON_PREV | \
40 BUTTON_NEXT | BUTTON_PLAY | BUTTON_VOL_UP | BUTTON_VOL_DOWN) 38 BUTTON_NEXT | BUTTON_PLAY | BUTTON_VOL_UP | BUTTON_VOL_DOWN)
41 39
40#define BUTTON_LEFT BUTTON_PREV
41#define BUTTON_RIGHT BUTTON_NEXT
42
42/* Software power-off */ 43/* Software power-off */
43#define POWEROFF_BUTTON BUTTON_POWER 44#define POWEROFF_BUTTON BUTTON_POWER
44#define POWEROFF_COUNT 10 45#define POWEROFF_COUNT 10