USETUP: Do not ask to select language if just one language is available

Patch by Carlo Bramini. Thanks a lot!
CORE-10322 #resolve

svn path=/trunk/; revision=69600
This commit is contained in:
Eric Kohl 2015-10-18 13:52:51 +00:00
parent 3bb5106159
commit 5e93c3bb50
3 changed files with 23 additions and 4 deletions

View file

@ -653,4 +653,17 @@ RestoreGenericListState(
List->CurrentEntry = List->BackupEntry;
}
BOOL
GenericListHasSingleEntry(
PGENERIC_LIST List)
{
if (!IsListEmpty(&List->ListHead) && List->ListHead.Flink == List->ListHead.Blink)
return TRUE;
/* if both list head pointers (which normally point to the first and last list member, respectively)
point to the same entry then it means that there's just a single thing in there, otherwise... false! */
return FALSE;
}
/* EOF */

View file

@ -54,10 +54,6 @@ DrawGenericList(
SHORT Right,
SHORT Bottom);
VOID
DrawScrollBarGenericLis(
PGENERIC_LIST List);
VOID
ScrollDownGenericList(
PGENERIC_LIST List);
@ -121,4 +117,8 @@ GenericListKeyPress(
PGENERIC_LIST List,
CHAR AsciChar);
BOOL
GenericListHasSingleEntry(
PGENERIC_LIST List);
/* EOF */

View file

@ -633,6 +633,12 @@ LanguagePage(PINPUT_RECORD Ir)
/* Load the font */
SelectedLanguageId = DefaultLanguage;
SetConsoleCodePage();
UpdateKBLayout();
/* If there's just a single language in the list skip
* the language selection process altogether! */
if (GenericListHasSingleEntry(LanguageList))
return INTRO_PAGE;
DrawGenericList(LanguageList,
2,