diff --git a/MdeModulePkg/Library/BootMaintenanceManagerUiLib/BootMaintenance.c b/MdeModulePkg/Library/BootMaintenanceManagerUiLib/BootMaintenance.c index aff83c0637..f33045d423 100644 --- a/MdeModulePkg/Library/BootMaintenanceManagerUiLib/BootMaintenance.c +++ b/MdeModulePkg/Library/BootMaintenanceManagerUiLib/BootMaintenance.c @@ -1253,6 +1253,11 @@ BootMaintCallback ( CurrentFakeNVMap->DriverOptionChanged = TRUE; } + if (QuestionId == BOOT_OPTION_ORDER_QUESTION_ID) { + // Save BootOrder on list update + *ActionRequest = EFI_BROWSER_ACTION_REQUEST_FORM_APPLY; + } + if ((QuestionId >= BOOT_OPTION_DEL_QUESTION_ID) && (QuestionId < BOOT_OPTION_DEL_QUESTION_ID + MAX_MENU_NUMBER)) { if (Value->b){ // diff --git a/MdeModulePkg/Library/BootMaintenanceManagerUiLib/UpdatePage.c b/MdeModulePkg/Library/BootMaintenanceManagerUiLib/UpdatePage.c index dbff77c6d2..52b5746426 100644 --- a/MdeModulePkg/Library/BootMaintenanceManagerUiLib/UpdatePage.c +++ b/MdeModulePkg/Library/BootMaintenanceManagerUiLib/UpdatePage.c @@ -642,7 +642,7 @@ UpdateOrderPage ( VarOffset, // Offset in Buffer Storage STRING_TOKEN (STR_CHANGE_ORDER), // Question prompt text STRING_TOKEN (STR_CHANGE_ORDER), // Question help text - 0, // Question flag + EFI_IFR_FLAG_CALLBACK, // Question flag 0, // Ordered list flag, e.g. EFI_IFR_UNIQUE_SET EFI_IFR_TYPE_NUM_SIZE_32, // Data type of Question value 100, // Maximum container