private void InitNavigation()
 {
     _inputAdapter        = new InputAdapter(Input);
     CurrentPageContainer = new CurrentPageContainer(_inputAdapter, new RendererAdapter(Renderer), _scheduler);
     CurrentPageContainer.Resize(Graphics.Size);
     Navigation = new NavigationStack(CurrentPageContainer);
     CurrentPageContainer.PageActivated   += OnPageActivated;
     CurrentPageContainer.PageDeactivated += OnPageDeactivated;
 }
        protected override void OnUpdate(float timeStep)
        {
            base.OnUpdate(timeStep);
            if (_prevGraphicsSize != Graphics.Size)
            {
                _prevGraphicsSize = Graphics.Size;
                CurrentPageContainer.Resize(_prevGraphicsSize);
            }

            _scheduler.Update(timeStep);
            CurrentPageContainer.OnUpdate(timeStep);
        }
        protected override void Dispose(bool disposing)
        {
            if (disposing)
            {
                if (CurrentPageContainer != null)
                {
                    CurrentPageContainer.PageActivated   -= OnPageActivated;
                    CurrentPageContainer.PageDeactivated -= OnPageDeactivated;
                    CurrentPageContainer.Dispose();
                }
            }

            base.Dispose(disposing);
        }
 protected virtual void Resume()
 {
     _isPagePaused = false;
     CurrentPageContainer.Resume();
 }
 protected virtual void Pause()
 {
     _isPagePaused = true;
     CurrentPageContainer.Pause();
 }