-
-
Notifications
You must be signed in to change notification settings - Fork 6.3k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[alternative] add logic to wait for the startup window to finish before showing information dialogs during startup #7150
Conversation
looks good +1 from my side, thanks :) |
+1 |
@Montellese we missed the case if the startup window is a PVR window. In that case we delegate the window activation to the PVR manager. See https://github.com/xbmc/xbmc/blob/master/xbmc/pvr/PVRManager.cpp#L518 For J*** we need to reconsider it because IMO we should not block the window activation. A better solution could be showing the progress dialog until the PVR manager is ready and the user can cancel the progress dialog and is returned to the previous window e.g. Home. |
@xhaggi: I saw that PVR windows are handled special but I didn't know why and I didn't know that it was asynchronous. Could you take a look at the necessary changes since I can't really test it. I'm assuming that the message should be sent from that |
yes
sure. if you want to test it by your-self you need to install the pvr.demo addon and set the startup window to a PVR related window. |
…face is ready for usage
…e migrated userdata once the user interface is really ready for usage
75dfedc
to
0a6f85c
Compare
@xhaggi: Added handling of PVR startup window and tested it with |
looks good, thanks |
failure unrelated |
OK to merge for beta? |
i certainly won't object fixes :) |
add logic to wait for the startup window to finish before showing information dialogs during startup
Could someone confirm if this post from the forum is expected behaviour? I'm not familiar with the Without this PR, there is no dialog shown, just a beep at startup, and the following WARNING output to kodi.log.
With the PR, in addition to the above, we also now get the "Failed to load language" dialog. Maybe the error isn't actually this PR, which is now correctly showing dialogs when required at startup, but rather the way this |
Well first of all the logic in Secondly having I've taken a quick look and determined the issue and it's specific to |
This is an alternative (and IMO cleaner) approach to #6666.
This is an attempt at solving the problem that when we try to show a modal dialog during startup to provide the user with some information, the dialog isn't really shown to the user most of the time because by the time the dialog becomes visible, Confluence's Startup.xml kicks in and executes a ReplaceWindow() call to go to the home window. That ReplaceWindow() call changes the active window and basically hides the modal dialog in the background.
The difference to #6666 is that this doesn't add an ugly busy loop on the window manager to know when the user interface is really ready for these dialogs but instead uses a new GUI message
GUI_MSG_UI_READY
. That message is sent out in one of these cases:CGUIWindowStartup
/Startup.xml
CGUIWindowStartup
/Startup.xml
CGUIWindowStartup
/Startup.xml
and has been closed