public PageContentViewModel(INavigationService navigationService, ISessionManager sessionManager, IPlaybackManager playbackManager, ILogger logger, ITheaterApplicationHost appHost, IApiClient apiClient, IPresentationManager presentationManager, IServerEvents serverEvents) { NavigationService = navigationService; SessionManager = sessionManager; PlaybackManager = playbackManager; Logger = logger; AppHost = appHost; ApiClient = apiClient; PresentationManager = presentationManager; ServerEvents = serverEvents; MasterCommands = new MasterCommandsViewModel(navigationService, sessionManager, presentationManager, apiClient, logger, appHost, serverEvents); NavigationService.Navigated += NavigationServiceNavigated; SessionManager.UserLoggedIn += SessionManagerUserLoggedIn; SessionManager.UserLoggedOut += SessionManagerUserLoggedOut; PlaybackManager.PlaybackStarted += PlaybackManager_PlaybackStarted; PlaybackManager.PlaybackCompleted += PlaybackManager_PlaybackCompleted; _dispatcher = Dispatcher.CurrentDispatcher; _clockTimer = new Timer(ClockTimerCallback, null, 0, 10000); IsLoggedIn = SessionManager.CurrentUser != null; var page = NavigationService.CurrentPage; IsOnHomePage = page is IHomePage; IsOnFullscreenVideo = page is IFullscreenVideoPage; }