From b4143bb2763a155ef7e1d10200a02c563a396341 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=89milie=20Feral?= Date: Fri, 12 Oct 2018 10:31:28 +0200 Subject: [PATCH] [on_boarding] Add EPSILON_SOFTWARE_UPDATE_PROMPT flag to build UpdateController only when required --- apps/apps_container.cpp | 4 ++++ apps/apps_container.h | 4 ++++ apps/global_preferences.cpp | 4 ++++ apps/global_preferences.h | 4 ++++ apps/on_boarding/app.cpp | 6 +++++- apps/on_boarding/language_controller.cpp | 7 ++++++- apps/on_boarding/language_controller.h | 11 +++++++++-- 7 files changed, 36 insertions(+), 4 deletions(-) diff --git a/apps/apps_container.cpp b/apps/apps_container.cpp index c2c7763ca..489541dc2 100644 --- a/apps/apps_container.cpp +++ b/apps/apps_container.cpp @@ -17,7 +17,9 @@ AppsContainer::AppsContainer() : m_globalContext(), m_variableBoxController(&m_globalContext), m_examPopUpController(this), +#if EPSILON_SOFTWARE_UPDATE_PROMPT m_updateController(), +#endif m_batteryTimer(BatteryTimer(this)), m_suspendTimer(SuspendTimer(this)), m_backlightDimmingTimer(), @@ -225,9 +227,11 @@ bool AppsContainer::updateAlphaLock() { return m_window.updateAlphaLock(); } +#if EPSILON_SOFTWARE_UPDATE_PROMPT OnBoarding::UpdateController * AppsContainer::updatePopUpController() { return &m_updateController; } +#endif void AppsContainer::redrawWindow() { m_window.redraw(); diff --git a/apps/apps_container.h b/apps/apps_container.h index 7611dba15..c1f7373b6 100644 --- a/apps/apps_container.h +++ b/apps/apps_container.h @@ -48,7 +48,9 @@ public: void displayExamModePopUp(bool activate); void shutdownDueToLowBattery(); void setShiftAlphaStatus(Ion::Events::ShiftAlphaStatus newStatus); +#if EPSILON_SOFTWARE_UPDATE_PROMPT OnBoarding::UpdateController * updatePopUpController(); +#endif void redrawWindow(); // Exam pop-up controller delegate void examDeactivatingPopUpIsDismissed() override; @@ -71,7 +73,9 @@ private: MathToolbox m_mathToolbox; VariableBoxController m_variableBoxController; ExamPopUpController m_examPopUpController; +#if EPSILON_SOFTWARE_UPDATE_PROMPT OnBoarding::UpdateController m_updateController; +#endif BatteryTimer m_batteryTimer; SuspendTimer m_suspendTimer; BacklightDimmingTimer m_backlightDimmingTimer; diff --git a/apps/global_preferences.cpp b/apps/global_preferences.cpp index 33944ae2a..6e5340426 100644 --- a/apps/global_preferences.cpp +++ b/apps/global_preferences.cpp @@ -3,7 +3,9 @@ GlobalPreferences::GlobalPreferences() : m_language(I18n::Language::EN), m_examMode(ExamMode::Desactivate), +#if EPSILON_SOFTWARE_UPDATE_PROMPT m_showUpdatePopUp(true), +#endif m_brightnessLevel(Ion::Backlight::MaxBrightness) { } @@ -33,6 +35,7 @@ void GlobalPreferences::setExamMode(ExamMode examMode) { } } +#if EPSILON_SOFTWARE_UPDATE_PROMPT bool GlobalPreferences::showUpdatePopUp() const { return m_showUpdatePopUp; } @@ -42,6 +45,7 @@ void GlobalPreferences::setShowUpdatePopUp(bool showUpdatePopUp) { m_showUpdatePopUp = showUpdatePopUp; } } +#endif int GlobalPreferences::brightnessLevel() const { return m_brightnessLevel; diff --git a/apps/global_preferences.h b/apps/global_preferences.h index dd20554d0..134fb0540 100644 --- a/apps/global_preferences.h +++ b/apps/global_preferences.h @@ -15,15 +15,19 @@ public: void setLanguage(I18n::Language language); ExamMode examMode() const; void setExamMode(ExamMode examMode); +#if EPSILON_SOFTWARE_UPDATE_PROMPT bool showUpdatePopUp() const; void setShowUpdatePopUp(bool showUpdatePopUp); +#endif int brightnessLevel() const; void setBrightnessLevel(int brightnessLevel); constexpr static int NumberOfBrightnessStates = 5; private: I18n::Language m_language; ExamMode m_examMode; +#if EPSILON_SOFTWARE_UPDATE_PROMPT bool m_showUpdatePopUp; +#endif int m_brightnessLevel; }; diff --git a/apps/on_boarding/app.cpp b/apps/on_boarding/app.cpp index fa6fff20d..fc8760025 100644 --- a/apps/on_boarding/app.cpp +++ b/apps/on_boarding/app.cpp @@ -15,7 +15,11 @@ App::Descriptor * App::Snapshot::descriptor() { App::App(Container * container, Snapshot * snapshot) : ::App(container, snapshot, &m_languageController), - m_languageController(&m_modalViewController, &m_logoController, ((AppsContainer *)container)->updatePopUpController()), + m_languageController(&m_modalViewController, &m_logoController +#if EPSILON_SOFTWARE_UPDATE_PROMPT + , ((AppsContainer *)container)->updatePopUpController() +#endif + ), m_logoController() { } diff --git a/apps/on_boarding/language_controller.cpp b/apps/on_boarding/language_controller.cpp index 450f37cab..cac97e187 100644 --- a/apps/on_boarding/language_controller.cpp +++ b/apps/on_boarding/language_controller.cpp @@ -4,7 +4,12 @@ namespace OnBoarding { -LanguageController::LanguageController(Responder * parentResponder, LogoController * logoController, UpdateController * updateController) : +LanguageController::LanguageController(Responder * parentResponder, LogoController * logoController +#if EPSILON_SOFTWARE_UPDATE_PROMPT + , UpdateController * updateController) : +#else + ) : +#endif Shared::LanguageController(parentResponder, (Ion::Display::Height - I18n::NumberOfLanguages*Metric::ParameterCellHeight)/2), #if EPSILON_SOFTWARE_UPDATE_PROMPT m_updateController(updateController), diff --git a/apps/on_boarding/language_controller.h b/apps/on_boarding/language_controller.h index 561c6e8d4..ca35645cc 100644 --- a/apps/on_boarding/language_controller.h +++ b/apps/on_boarding/language_controller.h @@ -4,13 +4,20 @@ #include #include "../shared/language_controller.h" #include "logo_controller.h" -#include "update_controller.h" +#if EPSILON_SOFTWARE_UPDATE_PROMPT +#include "pop_up_controller.h" +#endif namespace OnBoarding { class LanguageController : public Shared::LanguageController { public: - LanguageController(Responder * parentResponder, LogoController * logoController, UpdateController * updateController); + LanguageController(Responder * parentResponder, LogoController * logoController +#if EPSILON_SOFTWARE_UPDATE_PROMPT + , UpdateController * updateController); +#else + ); +#endif void reinitOnBoarding(); bool handleEvent(Ion::Events::Event event) override; private: