The RouteConfig() function is also called now as expected. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Laszlo Ersek <ler...@redhat.com> --- OvmfPkg/PlatformDxe/Platform.h | 3 +++ OvmfPkg/PlatformDxe/PlatformForms.vfr | 13 +++++++++++++ OvmfPkg/PlatformDxe/Platform.c | 22 ++++++++++++++++++++++ OvmfPkg/PlatformDxe/Platform.uni | Bin 2992 -> 3298 bytes 4 files changed, 38 insertions(+)
diff --git a/OvmfPkg/PlatformDxe/Platform.h b/OvmfPkg/PlatformDxe/Platform.h index 6ce67ff..432eb5b 100644 --- a/OvmfPkg/PlatformDxe/Platform.h +++ b/OvmfPkg/PlatformDxe/Platform.h @@ -28,6 +28,9 @@ #define LABEL_RES_NEXT 1 #define QUESTION_RES_NEXT 2 +#define QUESTION_SAVE_EXIT 3 +#define QUESTION_DISCARD_EXIT 4 + // // This structure describes the form state. Its fields relate strictly to the // visual widgets on the form. diff --git a/OvmfPkg/PlatformDxe/PlatformForms.vfr b/OvmfPkg/PlatformDxe/PlatformForms.vfr index 61935c3..a254572 100644 --- a/OvmfPkg/PlatformDxe/PlatformForms.vfr +++ b/OvmfPkg/PlatformDxe/PlatformForms.vfr @@ -56,6 +56,19 @@ formset // We'll dynamically generate a one-of-many selection at this label. // label LABEL_RES_NEXT; + + text + help = STRING_TOKEN(STR_SAVE_EXIT), + text = STRING_TOKEN(STR_SAVE_EXIT), + flags = INTERACTIVE, + key = QUESTION_SAVE_EXIT; + + text + help = STRING_TOKEN(STR_DISCARD_EXIT), + text = STRING_TOKEN(STR_DISCARD_EXIT), + flags = INTERACTIVE, + key = QUESTION_DISCARD_EXIT; + endform; endformset; diff --git a/OvmfPkg/PlatformDxe/Platform.c b/OvmfPkg/PlatformDxe/Platform.c index c3021e8..765c6de 100644 --- a/OvmfPkg/PlatformDxe/Platform.c +++ b/OvmfPkg/PlatformDxe/Platform.c @@ -185,6 +185,8 @@ RouteConfig ( OUT EFI_STRING *Progress ) { + DEBUG ((EFI_D_VERBOSE, "%a: Configuration=\"%s\"\n", __FUNCTION__, + Configuration)); return EFI_SUCCESS; } @@ -201,6 +203,26 @@ Callback ( OUT EFI_BROWSER_ACTION_REQUEST *ActionRequest ) { + DEBUG ((EFI_D_VERBOSE, "%a: Action=0x%Lx QuestionId=%d Type=%d\n", + __FUNCTION__, (UINT64) Action, QuestionId, Type)); + + if (Action != EFI_BROWSER_ACTION_CHANGED) { + return EFI_UNSUPPORTED; + } + + switch (QuestionId) { + case QUESTION_SAVE_EXIT: + *ActionRequest = EFI_BROWSER_ACTION_REQUEST_FORM_SUBMIT_EXIT; + break; + + case QUESTION_DISCARD_EXIT: + *ActionRequest = EFI_BROWSER_ACTION_REQUEST_FORM_DISCARD_EXIT; + break; + + default: + break; + } + return EFI_SUCCESS; } diff --git a/OvmfPkg/PlatformDxe/Platform.uni b/OvmfPkg/PlatformDxe/Platform.uni index 6ce844a664aa914069069f08380c9f7997fd9642..d8d5b0bb4de9c0632dc183369fa7d46f455e9143 100644 GIT binary patch delta 174 zcmdlW{z!7e8t%zI*dzpl85|kH7+e|RfjEM}lObgCLUzf?``DFqof+~Oa)B_Dp@cz! z!I>e0A(0`EA)O(Wp%};qu~UGwD?<fH#pI7{^5QN){lP$$jtoHzE=VR8vYA@B096$; UBm?yof%OqEk3ornmw^k60e0acvH$=8 delta 12 TcmaDPxj}rx8g3R|1}+8w9ykL< -- 1.8.3.1 ------------------------------------------------------------------------------ Subversion Kills Productivity. Get off Subversion & Make the Move to Perforce. With Perforce, you get hassle-free workflows. Merge that actually works. Faster operations. Version large binaries. Built-in WAN optimization and the freedom to use Git, Perforce or both. Make the move to Perforce. http://pubads.g.doubleclick.net/gampad/clk?id=122218951&iu=/4140/ostg.clktrk _______________________________________________ edk2-devel mailing list edk2-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/edk2-devel