summaryrefslogtreecommitdiff
path: root/MdeModulePkg/Universal/SetupBrowserDxe
diff options
context:
space:
mode:
Diffstat (limited to 'MdeModulePkg/Universal/SetupBrowserDxe')
-rw-r--r--MdeModulePkg/Universal/SetupBrowserDxe/Ui.c6
-rw-r--r--MdeModulePkg/Universal/SetupBrowserDxe/Ui.h2
2 files changed, 7 insertions, 1 deletions
diff --git a/MdeModulePkg/Universal/SetupBrowserDxe/Ui.c b/MdeModulePkg/Universal/SetupBrowserDxe/Ui.c
index 4f814990bb..5c8d676186 100644
--- a/MdeModulePkg/Universal/SetupBrowserDxe/Ui.c
+++ b/MdeModulePkg/Universal/SetupBrowserDxe/Ui.c
@@ -1946,6 +1946,7 @@ UiDisplayMenu (
// Highlight not specified, fetch it from cached menu
//
Selection->QuestionId = CurrentMenu->QuestionId;
+ Selection->Sequence = CurrentMenu->Sequence;
}
//
@@ -2317,7 +2318,9 @@ UiDisplayMenu (
NewPos = gMenuOption.ForwardLink;
SavedMenuOption = MENU_OPTION_FROM_LINK (NewPos);
- while (SavedMenuOption->ThisTag->QuestionId != Selection->QuestionId && NewPos->ForwardLink != &gMenuOption) {
+ while ((SavedMenuOption->ThisTag->QuestionId != Selection->QuestionId ||
+ SavedMenuOption->Sequence != Selection->Sequence) &&
+ NewPos->ForwardLink != &gMenuOption) {
NewPos = NewPos->ForwardLink;
SavedMenuOption = MENU_OPTION_FROM_LINK (NewPos);
}
@@ -2453,6 +2456,7 @@ UiDisplayMenu (
// Record highlight for current menu
//
CurrentMenu->QuestionId = Statement->QuestionId;
+ CurrentMenu->Sequence = MenuOption->Sequence;
//
// Set reverse attribute
diff --git a/MdeModulePkg/Universal/SetupBrowserDxe/Ui.h b/MdeModulePkg/Universal/SetupBrowserDxe/Ui.h
index 181b9a43dc..0acec825cf 100644
--- a/MdeModulePkg/Universal/SetupBrowserDxe/Ui.h
+++ b/MdeModulePkg/Universal/SetupBrowserDxe/Ui.h
@@ -87,6 +87,7 @@ typedef struct {
EFI_GUID FormSetGuid;
UINT16 FormId;
UINT16 QuestionId;
+ UINTN Sequence; // used for time/date only.
UINTN TopRow;
UINTN BottomRow;
@@ -163,6 +164,7 @@ struct _UI_MENU_LIST {
EFI_GUID FormSetGuid;
UINT16 FormId;
UINT16 QuestionId;
+ UINTN Sequence; // used for time/date only.
UI_MENU_LIST *Parent;
LIST_ENTRY ChildListHead;