diff --git a/src/FileBrowser.cpp b/src/FileBrowser.cpp index 9f78803..4284dd3 100644 --- a/src/FileBrowser.cpp +++ b/src/FileBrowser.cpp @@ -351,13 +351,18 @@ bool FileBrowser::BrowsableList::CheckBrowseNavigation() dirty |= views[index].CheckBrowseNavigation(index != 0); } - // check for keys a-z + // check for keys a-z and 0-9 + char searchChar = 0; if (inputMappings->BrowseLetter()) + searchChar = inputMappings->getKeyboardLetter(); + if (inputMappings->BrowseNumber()) + searchChar = inputMappings->getKeyboardNumber(); + if (searchChar) { char temp[8]; unsigned found=0; u32 i=0; - snprintf (temp, sizeof(temp), "%c", inputMappings->getKeyboardLetter()); + snprintf (temp, sizeof(temp), "%c", searchChar); // first look from next to last for (i=1+currentIndex; i <= numberOfEntriesMinus1 ; i++) diff --git a/src/InputMappings.h b/src/InputMappings.h index 6ed0453..4f873fe 100644 --- a/src/InputMappings.h +++ b/src/InputMappings.h @@ -186,9 +186,9 @@ public: inline bool BrowseEnd() { return KeyboardFlag(END_FLAG); } - inline unsigned getKeyboardNumber() { return keyboardNumber; } + inline char getKeyboardNumber() { return keyboardNumber; } inline char getKeyboardLetter() { return (char) keyboardLetter; } - inline char getKeyboardFunction() { return (char) keyboardFunction; } + inline unsigned getKeyboardFunction() { return (char) keyboardFunction; } // Used by the 2 cores so need to be volatile //volatile static unsigned directDiskSwapRequest;