@@ -515,15 +515,24 @@ await Wait.For(async () =>
515515
516516 [ Test ]
517517 [ Description ( "Issue 3434" ) ]
518- [ Arguments ( WindowState . Minimized , WindowState . Maximized ) ]
519- [ Arguments ( WindowState . Minimized , WindowState . Normal ) ]
520- [ Arguments ( WindowState . Maximized , WindowState . Normal ) ]
521- public async Task DialogHost_WhenWindowStateChanges_FocusedElementStaysFocused ( WindowState firstWindowState , WindowState secondWindowState )
518+ [ Arguments ( WindowState . Minimized , WindowState . Maximized , null ) ]
519+ [ Arguments ( WindowState . Minimized , WindowState . Normal , null ) ]
520+ [ Arguments ( WindowState . Maximized , WindowState . Normal , null ) ]
521+ [ Arguments ( WindowState . Minimized , WindowState . Maximized , "MaterialDesignEmbeddedDialogHost" ) ]
522+ [ Arguments ( WindowState . Minimized , WindowState . Normal , "MaterialDesignEmbeddedDialogHost" ) ]
523+ [ Arguments ( WindowState . Maximized , WindowState . Normal , "MaterialDesignEmbeddedDialogHost" ) ]
524+ public async Task DialogHost_WhenWindowStateChanges_FocusedElementStaysFocused ( WindowState firstWindowState ,
525+ WindowState secondWindowState ,
526+ string ? styleName )
522527 {
523528 await using var recorder = new TestRecorder ( App ) ;
524529
525530 var dialogHost = ( await LoadUserControl < WithMultipleTextBoxes > ( ) ) . As < DialogHost > ( ) ;
526- await Task . Delay ( 400 , TestContext . Current ! . CancellationToken ) ;
531+ if ( styleName is not null )
532+ {
533+ await dialogHost . RemoteExecute ( SetDialogHostStyle , styleName ) ;
534+ }
535+ await Task . Delay ( 400 , TestContext . Current ! . CancellationToken ) ;
527536
528537 // Select the second TextBox
529538 var tbTwo = await dialogHost . GetElement < TextBox > ( "TextBoxTwo" ) ;
@@ -547,5 +556,11 @@ static object SetStateOfParentWindow(DialogHost dialogHost, WindowState state)
547556 window . WindowState = state ;
548557 return null ! ;
549558 }
550- }
559+ static object SetDialogHostStyle ( DialogHost dialogHost , string styleName )
560+ {
561+ Style style = ( Style ) dialogHost . FindResource ( styleName ) ;
562+ dialogHost . Style = style ;
563+ return null ! ;
564+ }
565+ }
551566}
0 commit comments