What do you expect from a Project Reunion Splash Screen API for Windows? #500
Replies: 18 comments 17 replies
-
Hi, For UWP apps, the property uap5:Optional="true" is basically useless. 99% of the time, the splashscreen will be shown nevertheless. Here is what I sent to the MVP WinDev DL last year: With my new project, the optional splash screen would have been great to have since they want their own animation when the app launches. Tonight, I put more effort to see what was the culprit. My steps:
It turns out that “DataContext={Binding Quote, Source={StaticResource Locator}}” was causing the splash screen to show. You can see the proof from the video. Side note for devs: when you deploy with F5, the splash screen will always show up. You need to launch the app outside the debugger to see it working. So, this is weird to me that a page showing up and initializing will trigger the splash screen to show for few milliseconds. You can compare how beautiful is the launch of the Netflix app on the iPad versus the Windows app (not very smooth). For now, I will give up usage of the optional splash screen. Please make it really optional and let the dev handle it. Seeing it for 50 ms is adding more noise than anything. Optional.splashscreen.mp4 |
Beta Was this translation helpful? Give feedback.
-
I have no need for a splash screen. |
Beta Was this translation helpful? Give feedback.
-
Progress bar and/or load status text. |
Beta Was this translation helpful? Give feedback.
-
I played a bit with adding this to WinUIEx, and it's totally doable to add a splashscreen to a WinUI app today. Might be a good place to play with some APIs. Just clone the repo and run the sample app to see a functioning splash screen |
Beta Was this translation helpful? Give feedback.
-
The SplashScreen should display as instantaneously as the app is launched to give the perception of performance, speed, and fluidity. Once the app is ready, it should be possible to transition from the splash screen into an extended splash screen to display other UI like Loading bars, text status, or even login experiences. If the SplashScreen content could be in a Page element or a UserControl - with basic support for window size breakpoints. There should also be support for Acrylic splashscreen backgrounds with Light and Dark theme support. |
Beta Was this translation helpful? Give feedback.
-
One question. Should a WinUI 3 Desktop app honor the Splash Screen defined in the application manifest? var splash = new SplashScreen();
splash.Completed += OnCompleted; For example, if I wrote this, the Image with the colors from the appx manifest showing up. |
Beta Was this translation helpful? Give feedback.
-
What about showing up the Splash Screen before the application packages (aka framework packages) are deployed and installed on the machine? |
Beta Was this translation helpful? Give feedback.
-
In my experience users really dislike the built-in UWP splash screen. Still, even if the UWP solution is “smoother” on the paper, users prefer the latter: they’re used to wait few instants for a window to pop out, and for them the “real” waiting starts right after: if the window is empty but they can already interact with it, for them it’s ready already. Then, if WinUI will still require a splash screen, I would love to see something iOS/Android like, where you can actually display the UI skeleton instead of the app logo: this would already provide more context. |
Beta Was this translation helpful? Give feedback.
-
Wanted to add some issue with the current UWP splash screen, which is present since the very first build of Windows 10 and confirmed by many people. Unfortunately the splash screen seems to span the underlying window everything is painted on top. This means that enlarging your application's window will show the surface underneath for the fraction of a second. This is somehow annoying and this kind of flicker can be observed for nearly every UWP app (depending on the complexity of the UI and how long XAML will need to draw over the newly available space). Regarding the optional splash screen... that does really not work in most of the cases. Sure, app needs to be fast enough, but it's pretty impossible to get rid of it even if the app starts < 1 s. Showing the splash screen for 100-200ms will not really add to user experience. |
Beta Was this translation helpful? Give feedback.
-
Hello, In my case that I have a UWP w/desktop ext app in the Store. I am just fine with the default UWP splash that shows my logo. For me, it is important because the user sees immediate feedback that the application is starting up. To have this default UWP splash in WinUI 3 Win32 is enough for me. Regards, |
Beta Was this translation helpful? Give feedback.
-
One consideration for a splash screen should be the ability to have a "boilerplate UI" maybe via a static image (scaling would be the dev's responsibility of course) or simple animation that mimics what the layout of the app will look like once fully loaded. Some app developers prefer this approach over having a logo splash screen which can feel sluggish. This is how iOS does it, I believe, and the Discord Electron app. |
Beta Was this translation helpful? Give feedback.
-
I'm going to be downvoted as hell for saying this, and I don't even use the technology, just lurking here, but I'm seeing @dotMorten and others showing Photoshop as an example, and I'm thinking: Whytf do you need to add a splash screen to your app?? Unless you're doing something as complex as Photoshop, if users have enough time too see the splash screen, either you're apps is really bad, or the platform you're using really sucks. On my windows 10 computer, Excel launches faster than the windows calculator. |
Beta Was this translation helpful? Give feedback.
-
Splash screens for UWP apps are shown by the OS instead of the app itself which makes it more responsive when launching as it's instantaneous. Same thing should be available to desktop apps as an optional feature instead of them creating their own splash screen after the app starts |
Beta Was this translation helpful? Give feedback.
-
The splash components:
There should be a robust default splash screen that lets the app creators control the splash components. Feedback on the current UWP splash screens: they last too long and are too bland. |
Beta Was this translation helpful? Give feedback.
-
A splash screen shown in the app Window instantly after user invoke is really necessary, especially in case when the user mis-invoked a wrong app( common if you use Surface) . The user should be aware of it as soon as possible and close the app, instead of waiting for a few second to find the wrong app was started or it can't be closed before it fully loads. Showing nothing also results in multiple attempts to start the app and cause multiple instances started. |
Beta Was this translation helpful? Give feedback.
-
Instant feedback after launch is super important when using Windows 11's centered taskbar layout. App instances appearing delayed can cause the taskbar icons to move around unexpectedly, which is awful for usability. |
Beta Was this translation helpful? Give feedback.
-
I think the way iOS handles this would be a good starting point. You define a custom Storyboard (could be a no code behind XAML page here) and that's your splash screen: https://developer.apple.com/documentation/xcode/specifying-your-apps-launch-screen I do think the default behavior should still be just the app icon, but allowing developers to easily define a custom "splash page" would be great. You can somewhat emulate that on UWP by using uap5:Optional and navigating to a custom splash page, then navigating to the actual landing page, but the system splash screen may still show up, plus you have to define custom logic, which isn't ideal. Also, as soon the splash screen/page goes away, the window shouldn't have any sort of weird color flashes, and it should be ready for interaction. To draw a simple comparison, launching the WinUI 3 Gallery isn't a very smooth experience compared to the WinUI 2 Gallery: |
Beta Was this translation helpful? Give feedback.
-
@samanthamsong |
Beta Was this translation helpful? Give feedback.
-
Building on plans for windowing APIs as part of Project Reunion (Discussion#72) we on the Windows developer platform team are investigating whether there are improvements we can make to facilitate splash screen creation and management for all Windows apps. We would love to learn more about how you implement splash screens, and how that experience can be improved.
Answers to these questions will help us understand your splash screen needs better, and may result in improvements to this specific developer experience. We would love to hear any other thoughts, feelings, suggestions, you might have about splash screens in this thread as well.
Overview of current splash screen implementation strategies
The following are the existing methods of creating a splash screen for windows applications:
Beta Was this translation helpful? Give feedback.
All reactions