redo how the statusbar updates are done. send the EVENT_GUI_ACTIONUPDATE event every time get_action() is called. The event wont be as realiable (timewise) as before, but seems to work better

This also fixes FS#9761.
Also set the lcd font back to the ui font from the debug screens which use sysfont


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19681 a1c6a512-1295-4272-9138-f99709370657
This commit is contained in:
Jonathan Gordon 2009-01-05 09:59:11 +00:00
parent e74cc6d9da
commit 8b9fdb540c
11 changed files with 28 additions and 38 deletions

View file

@ -25,6 +25,7 @@
#include "config.h"
#include "lang.h"
#include "appevents.h"
#include "button.h"
#include "action.h"
#include "kernel.h"
@ -104,10 +105,6 @@ static inline int get_next_context(const struct button_mapping *items, int i)
Timeout can be TIMEOUT_NOBLOCK to return immediatly
TIMEOUT_BLOCK to wait for a button press
Any number >0 to wait that many ticks for a press
This function will likely return SYS_FOURHERTZ which should be passed to the
default_event_handler(). If this doesnt happen parts of the GUI may not be
redrawn correctly
*/
static int get_action_worker(int context, int timeout,
const struct button_mapping* (*get_context_map)(int) )
@ -117,6 +114,9 @@ static int get_action_worker(int context, int timeout,
int i=0;
int ret = ACTION_UNKNOWN;
static int last_context = CONTEXT_STD;
send_event(GUI_EVENT_ACTIONUPDATE, NULL);
if (timeout == TIMEOUT_NOBLOCK)
button = button_get(false);