diff options
author | Magnus Holmgren <magnushol@gmail.com> | 2010-11-14 13:13:06 +0000 |
---|---|---|
committer | Magnus Holmgren <magnushol@gmail.com> | 2010-11-14 13:13:06 +0000 |
commit | 4480e3a82cc12bddde528331f0838f4f232a148c (patch) | |
tree | 6e2b7d65ee2be4655f534715fb278bcf42c87bce | |
parent | 91beb7a46d45005f284b7662563664ef5c193e2f (diff) | |
download | rockbox-4480e3a82cc12bddde528331f0838f4f232a148c.tar.gz rockbox-4480e3a82cc12bddde528331f0838f4f232a148c.zip |
Hopefully fix FS#11696: scrollwheel doesn't respond in some cases.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28584 a1c6a512-1295-4272-9138-f99709370657
-rw-r--r-- | apps/action.c | 7 | ||||
-rw-r--r-- | firmware/drivers/button.c | 6 |
2 files changed, 9 insertions, 4 deletions
diff --git a/apps/action.c b/apps/action.c index d61930a08c..003f11faa8 100644 --- a/apps/action.c +++ b/apps/action.c | |||
@@ -205,7 +205,12 @@ static int get_action_worker(int context, int timeout, | |||
205 | pcmbuf_beep(4000, KEYCLICK_DURATION, 2500*global_settings.keyclick); | 205 | pcmbuf_beep(4000, KEYCLICK_DURATION, 2500*global_settings.keyclick); |
206 | #endif | 206 | #endif |
207 | 207 | ||
208 | if ((context != last_context) && ((last_button & BUTTON_REL) == 0)) | 208 | if ((context != last_context) && ((last_button & BUTTON_REL) == 0) |
209 | #ifdef HAVE_SCROLLWHEEL | ||
210 | /* Scrollwheel doesn't generate release events */ | ||
211 | && !(last_button & (BUTTON_SCROLL_BACK | BUTTON_SCROLL_FWD)) | ||
212 | #endif | ||
213 | ) | ||
209 | { | 214 | { |
210 | if (button & BUTTON_REL) | 215 | if (button & BUTTON_REL) |
211 | { | 216 | { |
diff --git a/firmware/drivers/button.c b/firmware/drivers/button.c index 12a1ad0cf8..403b521db0 100644 --- a/firmware/drivers/button.c +++ b/firmware/drivers/button.c | |||
@@ -115,13 +115,13 @@ static bool button_try_post(int button, int data) | |||
115 | /* one can swipe over the scren very quickly, | 115 | /* one can swipe over the scren very quickly, |
116 | * for this to work we want to forget about old presses and | 116 | * for this to work we want to forget about old presses and |
117 | * only respect the very latest ones */ | 117 | * only respect the very latest ones */ |
118 | const int force_post = true; | 118 | const bool force_post = true; |
119 | #else | 119 | #else |
120 | /* Only post events if the queue is empty, | 120 | /* Only post events if the queue is empty, |
121 | * to avoid afterscroll effects. | 121 | * to avoid afterscroll effects. |
122 | * i.e. don't post new buttons if previous ones haven't been | 122 | * i.e. don't post new buttons if previous ones haven't been |
123 | * processed yet */ | 123 | * processed yet - but always post releases */ |
124 | const int force_post = false; | 124 | const bool force_post = button & BUTTON_REL; |
125 | #endif | 125 | #endif |
126 | 126 | ||
127 | bool ret = queue_empty(&button_queue); | 127 | bool ret = queue_empty(&button_queue); |