@@ -697,7 +697,7 @@ pub fn winit_runner(mut app: App) {
697
697
}
698
698
} ;
699
699
700
- if should_update {
700
+ if finished_and_setup_done && should_update {
701
701
// reset these on each update
702
702
runner_state. wait_elapsed = false ;
703
703
runner_state. device_event_received = false ;
@@ -738,46 +738,47 @@ pub fn winit_runner(mut app: App) {
738
738
* control_flow = ControlFlow :: Exit ;
739
739
}
740
740
}
741
+ }
741
742
742
- // create any new windows
743
- #[ cfg( not( target_arch = "wasm32" ) ) ]
744
- let (
745
- commands,
746
- mut windows,
747
- event_writer,
748
- winit_windows,
749
- adapters,
750
- handlers,
751
- accessibility_requested,
752
- ) = create_window_system_state. get_mut ( & mut app. world ) ;
753
-
743
+ // create any new windows
744
+ // (even if app did not update, some may have been created by plugin setup)
745
+ #[ cfg( not( target_arch = "wasm32" ) ) ]
746
+ let (
747
+ commands,
748
+ mut windows,
749
+ event_writer,
750
+ winit_windows,
751
+ adapters,
752
+ handlers,
753
+ accessibility_requested,
754
+ ) = create_window_system_state. get_mut ( & mut app. world ) ;
755
+
756
+ #[ cfg( target_arch = "wasm32" ) ]
757
+ let (
758
+ commands,
759
+ mut windows,
760
+ event_writer,
761
+ winit_windows,
762
+ adapters,
763
+ handlers,
764
+ accessibility_requested,
765
+ event_channel,
766
+ ) = create_window_system_state. get_mut ( & mut app. world ) ;
767
+
768
+ create_windows (
769
+ event_loop,
770
+ commands,
771
+ windows. iter_mut ( ) ,
772
+ event_writer,
773
+ winit_windows,
774
+ adapters,
775
+ handlers,
776
+ accessibility_requested,
754
777
#[ cfg( target_arch = "wasm32" ) ]
755
- let (
756
- commands,
757
- mut windows,
758
- event_writer,
759
- winit_windows,
760
- adapters,
761
- handlers,
762
- accessibility_requested,
763
- event_channel,
764
- ) = create_window_system_state. get_mut ( & mut app. world ) ;
765
-
766
- create_windows (
767
- event_loop,
768
- commands,
769
- windows. iter_mut ( ) ,
770
- event_writer,
771
- winit_windows,
772
- adapters,
773
- handlers,
774
- accessibility_requested,
775
- #[ cfg( target_arch = "wasm32" ) ]
776
- event_channel,
777
- ) ;
778
+ event_channel,
779
+ ) ;
778
780
779
- create_window_system_state. apply ( & mut app. world ) ;
780
- }
781
+ create_window_system_state. apply ( & mut app. world ) ;
781
782
}
782
783
}
783
784
_ => ( ) ,
0 commit comments