From a39be4b3073ef32a3e33bdbf88f0c1474c7b1931 Mon Sep 17 00:00:00 2001 From: Tomer Shalev Date: Mon, 5 Oct 2009 17:53:45 +0000 Subject: Fix red: Invert buttons in RTL mode - Revert renaming of button_set_flip() - Moved rtl flipping logic to apps/actions.c as a static function - Joined rtl_button_flip_needed() and button_flip_horizontally() git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22962 a1c6a512-1295-4272-9138-f99709370657 --- firmware/drivers/button.c | 38 ++++---------------------------------- 1 file changed, 4 insertions(+), 34 deletions(-) (limited to 'firmware/drivers') diff --git a/firmware/drivers/button.c b/firmware/drivers/button.c index 7f37087783..71cd4726cc 100644 --- a/firmware/drivers/button.c +++ b/firmware/drivers/button.c @@ -437,7 +437,7 @@ void button_close(void) /* * helper function to swap LEFT/RIGHT, UP/DOWN (if present), and F1/F3 (Recorder) */ -static int button_flip_vertically(int button) +static int button_flip(int button) { int newbutton; @@ -507,49 +507,19 @@ static int button_flip_vertically(int button) * set the flip attribute * better only call this when the queue is empty */ -void button_set_flip_vertically(bool flip) +void button_set_flip(bool flip) { if (flip != flipped) /* not the current setting */ { /* avoid race condition with the button_tick() */ int oldlevel = disable_irq_save(); - lastbtn = button_flip_vertically(lastbtn); + lastbtn = button_flip(lastbtn); flipped = flip; restore_irq(oldlevel); } } #endif /* HAVE_LCD_FLIP */ -#if defined(HAVE_LCD_BITMAP) && !defined(BOOTLOADER) -/* - * helper function to swap LEFT/RIGHT sides (for RTL mode) - */ -int button_flip_horizontally(int button) -{ - int newbutton; - - newbutton = button & - ~(BUTTON_LEFT | BUTTON_RIGHT -#if defined(BUTTON_SCROLL_BACK) && defined(BUTTON_SCROLL_FWD) - | BUTTON_SCROLL_BACK | BUTTON_SCROLL_FWD -#endif - ); - - if (button & BUTTON_LEFT) - newbutton |= BUTTON_RIGHT; - if (button & BUTTON_RIGHT) - newbutton |= BUTTON_LEFT; -#if defined(BUTTON_SCROLL_BACK) && defined(BUTTON_SCROLL_FWD) - if (button & BUTTON_SCROLL_BACK) - newbutton |= BUTTON_SCROLL_FWD; - if (button & BUTTON_SCROLL_FWD) - newbutton |= BUTTON_SCROLL_BACK; -#endif - - return newbutton; -} -#endif - #ifdef HAVE_BACKLIGHT void set_backlight_filter_keypress(bool value) { @@ -580,7 +550,7 @@ static int button_read(void) #ifdef HAVE_LCD_FLIP if (btn && flipped) - btn = button_flip_vertically(btn); /* swap upside down */ + btn = button_flip(btn); /* swap upside down */ #endif /* HAVE_LCD_FLIP */ #ifdef HAVE_TOUCHSCREEN -- cgit v1.2.3