Hello, I have a requirement to load a customizable idle screen for our application. Depending upon a setting that can be changed at run-time the idle screen will need to change. So, I have different Core::Groups defined for each of the idle screens the user is capable to selecting from. And the Idle screen is blank and on startup ofcourse I read the setting and BeginModal() and Add() the selected screen (Core::Group). But, when the selection for the idle dialog is changed, when the user returns to the Idle screen. I have the currently selected idle modal dialog remove() and EndModal() on a listener slot method that is activated from the UpdateViewState() of that idle screen. So far so good! But, when the root dialog is now reached, I have the UpdateViewState() of that dialog checking to see if the idle selection has changed and to create the new idle dialog (Core::Group) if it has. But, the UpdateViewState() is never called. It's called once upon application start with aState = focused but it doesn't get called anymore after all the modals are pop-ed off. I've tried overriding ObtainFocus(), HasViewState() but no luck there either. Do you have any recommendations for this scenario? What function can I override to know when there's no other dialog on top of the root dialog. Thank you!