@@ -250,6 +250,7 @@ private static bool UseRemoteTarget
250250
251251 private static DevicePortalConnections portalConnections = null ;
252252 private static CancellationTokenSource appxCancellationTokenSource = null ;
253+ private static float appxProgressBarTimer = 0.0f ;
253254 private static DeviceInfo localConnection ;
254255
255256 #endregion Fields
@@ -304,6 +305,8 @@ private void OnGUI()
304305
305306 private void RenderWSABuildView ( )
306307 {
308+ RenderBuildDirectory ( ) ;
309+
307310 using ( new EditorGUILayout . HorizontalScope ( ) )
308311 {
309312 using ( new EditorGUI . DisabledGroupScope ( ! ShouldBuildSLNBeEnabled ) )
@@ -359,8 +362,6 @@ private void RenderStandaloneBuildView()
359362
360363 private void RenderUnityBuildView ( )
361364 {
362- RenderBuildDirectory ( ) ;
363-
364365 EditorUserBuildSettings . wsaSubtarget = ( WSASubtarget ) EditorGUILayout . Popup ( "Target Device" , ( int ) EditorUserBuildSettings . wsaSubtarget , TARGET_DEVICE_OPTIONS , GUILayout . Width ( HALF_WIDTH ) ) ;
365366
366367#if ! UNITY_2019_1_OR_NEWER
@@ -413,6 +414,20 @@ private void RenderUnityBuildView()
413414 }
414415#endif // !UNITY_2019_1_OR_NEWER
415416
417+ using ( new EditorGUILayout . VerticalScope ( EditorStyles . helpBox ) )
418+ {
419+ EditorGUILayout . LabelField ( "Scenes in Build" , EditorStyles . boldLabel ) ;
420+
421+ using ( new EditorGUI . DisabledGroupScope ( true ) )
422+ {
423+ var scenes = EditorBuildSettings . scenes ;
424+ for ( int i = 0 ; i < scenes . Length ; i ++ )
425+ {
426+ EditorGUILayout . ToggleLeft ( $ "{ i } { scenes [ i ] . path } ", scenes [ i ] . enabled ) ;
427+ }
428+ }
429+ }
430+
416431 using ( new EditorGUILayout . HorizontalScope ( ) )
417432 {
418433 using ( new EditorGUI . DisabledGroupScope ( ! ShouldOpenSLNBeEnabled ) )
@@ -503,6 +518,12 @@ private void RenderAppxBuildView()
503518 int currentPlatformToolsetIndex = Array . IndexOf ( PLATFORM_TOOLSET_VALUES , UwpBuildDeployPreferences . PlatformToolset ) ;
504519 int newPlatformToolsetIndex = EditorGUILayout . Popup ( "Plaform Toolset" , currentPlatformToolsetIndex , PLATFORM_TOOLSET_NAMES , GUILayout . Width ( HALF_WIDTH ) ) ;
505520
521+ // Force rebuild
522+ bool forceRebuildAppx = EditorGUILayout . ToggleLeft ( "Force Rebuild" , UwpBuildDeployPreferences . ForceRebuild ) ;
523+
524+ // Multicore Appx Build
525+ bool multicoreAppxBuildEnabled = EditorGUILayout . ToggleLeft ( "Multicore Build" , UwpBuildDeployPreferences . MulticoreAppxBuildEnabled ) ;
526+
506527 EditorGUILayout . LabelField ( "Manifest Options" , EditorStyles . boldLabel ) ;
507528
508529 // The 'Gaze Input' capability support was added for HL2 in the Windows SDK 18362, but
@@ -521,6 +542,8 @@ private void RenderAppxBuildView()
521542 EditorUserBuildSettings . wsaArchitecture = ARCHITECTURE_OPTIONS [ buildPlatformIndex ] ;
522543 UwpBuildDeployPreferences . GazeInputCapabilityEnabled = gazeInputCapabilityEnabled ;
523544 UwpBuildDeployPreferences . ResearchModeCapabilityEnabled = researchModeEnabled ;
545+ UwpBuildDeployPreferences . ForceRebuild = forceRebuildAppx ;
546+ UwpBuildDeployPreferences . MulticoreAppxBuildEnabled = multicoreAppxBuildEnabled ;
524547 }
525548 }
526549
@@ -555,6 +578,18 @@ private void RenderAppxBuildView()
555578
556579 EditorGUILayout . Space ( ) ;
557580
581+ if ( appxCancellationTokenSource != null )
582+ {
583+ using ( var progressBarRect = new EditorGUILayout . VerticalScope ( ) )
584+ {
585+ appxProgressBarTimer = Mathf . Clamp01 ( Time . realtimeSinceStartup % 1.0f ) ;
586+
587+ EditorGUI . ProgressBar ( progressBarRect . rect , appxProgressBarTimer , "Building AppX..." ) ;
588+ GUILayout . Space ( 16 ) ;
589+ Repaint ( ) ;
590+ }
591+ }
592+
558593 using ( new EditorGUILayout . HorizontalScope ( ) )
559594 {
560595 GUILayout . FlexibleSpace ( ) ;
@@ -570,26 +605,6 @@ private void RenderAppxBuildView()
570605 EditorApplication . delayCall += ( ) => Process . Start ( "explorer.exe" , $ "/f /open,{ appxBuildPath } ") ;
571606 }
572607 }
573- }
574-
575- using ( new EditorGUILayout . HorizontalScope ( ) )
576- {
577- GUILayout . FlexibleSpace ( ) ;
578-
579- using ( var c = new EditorGUI . ChangeCheckScope ( ) )
580- {
581- // Force rebuild
582- bool forceRebuildAppx = EditorGUILayout . ToggleLeft ( "Force Rebuild" , UwpBuildDeployPreferences . ForceRebuild ) ;
583-
584- // Multicore Appx Build
585- bool multicoreAppxBuildEnabled = EditorGUILayout . ToggleLeft ( "Multicore Build" , UwpBuildDeployPreferences . MulticoreAppxBuildEnabled ) ;
586-
587- if ( c . changed )
588- {
589- UwpBuildDeployPreferences . ForceRebuild = forceRebuildAppx ;
590- UwpBuildDeployPreferences . MulticoreAppxBuildEnabled = multicoreAppxBuildEnabled ;
591- }
592- }
593608
594609 if ( appxCancellationTokenSource == null )
595610 {
@@ -809,7 +824,7 @@ private void RenderBuildsList()
809824
810825 if ( Builds . Count == 0 )
811826 {
812- GUILayout . Label ( "*** No builds found in build directory" , EditorStyles . boldLabel ) ;
827+ EditorGUILayout . HelpBox ( "***No builds found in build directory" , MessageType . Info ) ;
813828 }
814829 else
815830 {
0 commit comments