@@ -163,7 +163,7 @@ public void Constructor_Initializes_DefaultValues ()
163163 Assert . Empty ( dialog . Buttons ) ;
164164 Assert . Null ( dialog . Result ) ;
165165 Assert . True ( dialog . Canceled ) ; // Canceled is true when Result is null
166- Assert . Equal ( ViewArrangement . Overlapped , dialog . Arrangement ) ;
166+ Assert . Equal ( ViewArrangement . Movable | ViewArrangement . Resizable | ViewArrangement . Overlapped , dialog . Arrangement ) ;
167167
168168 dialog . Dispose ( ) ;
169169 }
@@ -195,7 +195,7 @@ public void Arrangement_Default ()
195195 {
196196 Dialog dialog = new ( ) ;
197197
198- Assert . Equal ( ViewArrangement . Overlapped , dialog . Arrangement ) ;
198+ Assert . Equal ( ViewArrangement . Movable | ViewArrangement . Resizable | ViewArrangement . Overlapped , dialog . Arrangement ) ;
199199
200200 dialog . Dispose ( ) ;
201201 }
@@ -415,12 +415,12 @@ public void ShadowStyle_Can_Be_Changed ()
415415
416416 // Copilot
417417 [ Fact ]
418- public void SchemeName_IsBase_WhenNotRunning ( )
418+ public void SchemeName_IsDialog_WhenNotRunning ( )
419419 {
420- // When a Dialog is not running, it should use the Base scheme (not Dialog)
420+ // A Dialog uses the Dialog scheme by default, set in the constructor
421421 Dialog dialog = new ( ) ;
422422
423- Assert . Equal ( SchemeManager . SchemesToSchemeName ( Schemes . Base ) , dialog . SchemeName ) ;
423+ Assert . Equal ( SchemeManager . SchemesToSchemeName ( Schemes . Dialog ) , dialog . SchemeName ) ;
424424
425425 dialog . Dispose ( ) ;
426426 }
@@ -452,6 +452,43 @@ void AppOnIteration (object? sender, EventArgs<IApplication?> e)
452452 }
453453 }
454454
455+ // Copilot
456+ [ Fact ]
457+ public void Custom_SchemeName_And_Arrangement_Are_Not_Overwritten_By_Run ( )
458+ {
459+ using IApplication app = Application . Create ( ) ;
460+ app . Init ( DriverRegistry . Names . ANSI ) ;
461+
462+ using Dialog dialog = new ( ) ;
463+ string customSchemeName = SchemeManager . SchemesToSchemeName ( Schemes . Base ) ! ;
464+ const ViewArrangement customArrangement = ViewArrangement . Overlapped ;
465+
466+ dialog . SchemeName = customSchemeName ;
467+ dialog . Arrangement = customArrangement ;
468+
469+ string ? schemeNameWhileRunning = null ;
470+ ViewArrangement arrangementWhileRunning = default ;
471+
472+ app . Iteration += AppOnIteration ;
473+ app . Run ( dialog ) ;
474+ app . Iteration -= AppOnIteration ;
475+
476+ Assert . Equal ( customSchemeName , schemeNameWhileRunning ) ;
477+ Assert . Equal ( customArrangement , arrangementWhileRunning ) ;
478+ Assert . Equal ( customSchemeName , dialog . SchemeName ) ;
479+ Assert . Equal ( customArrangement , dialog . Arrangement ) ;
480+
481+ return ;
482+
483+ void AppOnIteration ( object ? sender , EventArgs < IApplication ? > e )
484+ {
485+ schemeNameWhileRunning = dialog . SchemeName ;
486+ arrangementWhileRunning = dialog . Arrangement ;
487+ app . Iteration -= AppOnIteration ;
488+ app . RequestStop ( ) ;
489+ }
490+ }
491+
455492 [ Fact ]
456493 public void Text_Property ( )
457494 {
0 commit comments