From fa9ec8e40eb75597b58cb49d751c98c133e92f60 Mon Sep 17 00:00:00 2001 From: RedGl0w Date: Sun, 10 Nov 2019 11:53:44 +0100 Subject: [PATCH 01/12] Added submenu in settings for changing the symbol of multiplication --- apps/settings/Makefile | 1 + apps/settings/base.de.i18n | 5 + apps/settings/base.en.i18n | 5 + apps/settings/base.es.i18n | 5 + apps/settings/base.fr.i18n | 5 + apps/settings/base.pt.i18n | 5 + apps/settings/main_controller.cpp | 5 +- apps/settings/main_controller.h | 2 + apps/settings/main_controller_prompt_beta.cpp | 6 +- apps/settings/main_controller_prompt_none.cpp | 6 +- .../main_controller_prompt_update.cpp | 6 +- apps/settings/sub_menu/symbol_controller.cpp | 132 ++++++++++++++++++ apps/settings/sub_menu/symbol_controller.h | 23 +++ escher/src/layout_field.cpp | 2 + ion/include/ion/unicode/code_point.h | 1 + poincare/include/poincare/layout_cursor.h | 1 + poincare/include/poincare/preferences.h | 15 ++ poincare/src/layout_cursor.cpp | 16 +++ poincare/src/multiplication.cpp | 29 +++- poincare/src/preferences.cpp | 4 +- 20 files changed, 261 insertions(+), 13 deletions(-) create mode 100644 apps/settings/sub_menu/symbol_controller.cpp create mode 100644 apps/settings/sub_menu/symbol_controller.h diff --git a/apps/settings/Makefile b/apps/settings/Makefile index c60b78c21..d081908ed 100644 --- a/apps/settings/Makefile +++ b/apps/settings/Makefile @@ -14,6 +14,7 @@ app_settings_src = $(addprefix apps/settings/,\ sub_menu/message_table_cell_with_editable_text_with_separator.cpp \ sub_menu/preferences_controller.cpp \ sub_menu/contributors_controller.cpp \ + sub_menu/symbol_controller.cpp \ ) app_src += $(app_settings_src) diff --git a/apps/settings/base.de.i18n b/apps/settings/base.de.i18n index 41ab3c058..b0e85bcbf 100644 --- a/apps/settings/base.de.i18n +++ b/apps/settings/base.de.i18n @@ -40,3 +40,8 @@ AccessibilityGamma = "Gammakorrektur" AccessibilityGammaRed = "Rotes Gamma" AccessibilityGammaGreen = "Grünes Gamma" AccessibilityGammaBlue = "Blaues Gamma" +SymbolMultiplication = "Multiplikationszeichen" +SymbolMultiplicationCross = "Kreuz" +SymbolMultiplicationMiddleDot = "Mittelpunkt" +SymbolMultiplicationStar = "Stern" +SymbolMultiplicationAutoSymbol = "Immer vereinfachen" diff --git a/apps/settings/base.en.i18n b/apps/settings/base.en.i18n index 89a6dff1f..0eefa16fd 100644 --- a/apps/settings/base.en.i18n +++ b/apps/settings/base.en.i18n @@ -40,3 +40,8 @@ AccessibilityGamma = "Gamma correction" AccessibilityGammaRed = "Red gamma" AccessibilityGammaGreen = "Green gamma" AccessibilityGammaBlue = "Blue gamma" +SymbolMultiplication = "Symbol of multiplication" +SymbolMultiplicationCross = "Cross" +SymbolMultiplicationMiddleDot = "Middle dot" +SymbolMultiplicationStar = "Star" +SymbolMultiplicationAutoSymbol = "Always simplify" diff --git a/apps/settings/base.es.i18n b/apps/settings/base.es.i18n index 26a06c9b6..a6db13c88 100644 --- a/apps/settings/base.es.i18n +++ b/apps/settings/base.es.i18n @@ -40,3 +40,8 @@ AccessibilityGamma = "Corrección gamma" AccessibilityGammaRed = "Gamma roja" AccessibilityGammaGreen = "Gamma verde" AccessibilityGammaBlue = "Gamma azul" +SymbolMultiplication = "signo de multiplicación" +SymbolMultiplicationCross = "contrariar" +SymbolMultiplicationMiddleDot = "punto medio" +SymbolMultiplicationStar = "estrella" +SymbolMultiplicationAutoSymbol = "siempre simplifique" diff --git a/apps/settings/base.fr.i18n b/apps/settings/base.fr.i18n index 16c31f6c9..3d76ddfdc 100644 --- a/apps/settings/base.fr.i18n +++ b/apps/settings/base.fr.i18n @@ -40,3 +40,8 @@ AccessibilityGamma = "Correction gamma" AccessibilityGammaRed = "Gamma rouge" AccessibilityGammaGreen = "Gamma vert" AccessibilityGammaBlue = "Gamma bleu" +SymbolMultiplication = "Signe de multiplication" +SymbolMultiplicationCross = "Croix" +SymbolMultiplicationMiddleDot = "Point" +SymbolMultiplicationStar = "Etoile" +SymbolMultiplicationAutoSymbol = "Toujours simplifier" diff --git a/apps/settings/base.pt.i18n b/apps/settings/base.pt.i18n index d7a02c368..80ca4257a 100644 --- a/apps/settings/base.pt.i18n +++ b/apps/settings/base.pt.i18n @@ -40,3 +40,8 @@ AccessibilityGamma = "Correção gama" AccessibilityGammaRed = "Gama vermelha" AccessibilityGammaGreen = "Gama verde" AccessibilityGammaBlue = "Gama azul" +SymbolMultiplication = "Sinal de multiplicação" +SymbolMultiplicationCross = "crómio" +SymbolMultiplicationMiddleDot = "ponto médio" +SymbolMultiplicationStar = "estrela" +SymbolMultiplicationAutoSymbol = "Sempre simplificar" diff --git a/apps/settings/main_controller.cpp b/apps/settings/main_controller.cpp index 22bd8ba47..5a7f48c22 100644 --- a/apps/settings/main_controller.cpp +++ b/apps/settings/main_controller.cpp @@ -18,7 +18,8 @@ MainController::MainController(Responder * parentResponder, InputEventHandlerDel m_accessibilityController(this), m_examModeController(this), m_aboutController(this), - m_contributorsController(this) + m_contributorsController(this), + m_symbolController(this) { for (int i = 0; i < k_numberOfSimpleChevronCells; i++) { m_cells[i].setMessageFont(KDFont::LargeFont); @@ -80,6 +81,8 @@ bool MainController::handleEvent(Ion::Events::Event event) { subController = &m_accessibilityController; } else if (rowIndex == 10 + hasPrompt()) { subController = &m_contributorsController; + } else if (rowIndex == 11 + hasPrompt()){ + subController = &m_symbolController; } else { subController = &m_preferencesController; } diff --git a/apps/settings/main_controller.h b/apps/settings/main_controller.h index c5a75f9e9..bacdcfeb4 100644 --- a/apps/settings/main_controller.h +++ b/apps/settings/main_controller.h @@ -10,6 +10,7 @@ #include "sub_menu/language_controller.h" #include "sub_menu/preferences_controller.h" #include "sub_menu/contributors_controller.h" +#include "sub_menu/symbol_controller.h" namespace Settings { @@ -45,6 +46,7 @@ private: ExamModeController m_examModeController; AboutController m_aboutController; ContributorsController m_contributorsController; + SymbolController m_symbolController; }; } diff --git a/apps/settings/main_controller_prompt_beta.cpp b/apps/settings/main_controller_prompt_beta.cpp index df4c9f4aa..423a36cdd 100644 --- a/apps/settings/main_controller_prompt_beta.cpp +++ b/apps/settings/main_controller_prompt_beta.cpp @@ -16,6 +16,7 @@ constexpr SettingsMessageTree s_modelAboutChildren[4] = {SettingsMessageTree(I18 constexpr SettingsMessageTree s_ledColorChildren[4] = {SettingsMessageTree(I18n::Message::ColorWhite), SettingsMessageTree(I18n::Message::ColorGreen), SettingsMessageTree(I18n::Message::ColorBlue), SettingsMessageTree(I18n::Message::ColorYellow)}; constexpr SettingsMessageTree s_accessibilityChildren[6] = {SettingsMessageTree(I18n::Message::AccessibilityInvertColors), SettingsMessageTree(I18n::Message::AccessibilityMagnify),SettingsMessageTree(I18n::Message::AccessibilityGamma),SettingsMessageTree(I18n::Message::AccessibilityGammaRed),SettingsMessageTree(I18n::Message::AccessibilityGammaGreen),SettingsMessageTree(I18n::Message::AccessibilityGammaBlue)}; constexpr SettingsMessageTree s_contributorsChildren[5] = {SettingsMessageTree(I18n::Message::QuentinGuidee), SettingsMessageTree(I18n::Message::DannySimmons), SettingsMessageTree(I18n::Message::JoachimLeFournis), SettingsMessageTree(I18n::Message::JeanBaptisteBoric), SettingsMessageTree(I18n::Message::MaximeFriess)}; +constexpr SettingsMessageTree s_symbolChildren[4] = {SettingsMessageTree(I18n::Message::SymbolMultiplicationCross),SettingsMessageTree(I18n::Message::SymbolMultiplicationMiddleDot),SettingsMessageTree(I18n::Message::SymbolMultiplicationStar),SettingsMessageTree(I18n::Message::SymbolMultiplicationAutoSymbol)}; constexpr SettingsMessageTree s_modelMenu[] = {SettingsMessageTree(I18n::Message::AngleUnit, s_modelAngleChildren, 3), @@ -33,9 +34,10 @@ constexpr SettingsMessageTree s_modelMenu[] = #endif SettingsMessageTree(I18n::Message::LEDColor, s_ledColorChildren, 4), SettingsMessageTree(I18n::Message::Accessibility, s_accessibilityChildren, 6), - SettingsMessageTree(I18n::Message::Contributors, s_contributorsChildren, 5)}; + SettingsMessageTree(I18n::Message::Contributors, s_contributorsChildren, 5), + SettingsMessageTree(I18n::Message::SymbolMultiplication, s_symbolChildren, 4)}; -constexpr SettingsMessageTree s_model = SettingsMessageTree(I18n::Message::SettingsApp, s_modelMenu, 12); +constexpr SettingsMessageTree s_model = SettingsMessageTree(I18n::Message::SettingsApp, s_modelMenu, 13); I18n::Message MainController::promptMessage() const { return I18n::Message::BetaPopUp; diff --git a/apps/settings/main_controller_prompt_none.cpp b/apps/settings/main_controller_prompt_none.cpp index 5c4874c3f..358e07f94 100644 --- a/apps/settings/main_controller_prompt_none.cpp +++ b/apps/settings/main_controller_prompt_none.cpp @@ -17,6 +17,7 @@ constexpr SettingsMessageTree s_modelAboutChildren[4] = {SettingsMessageTree(I18 constexpr SettingsMessageTree s_ledColorChildren[4] = {SettingsMessageTree(I18n::Message::ColorWhite), SettingsMessageTree(I18n::Message::ColorGreen), SettingsMessageTree(I18n::Message::ColorBlue), SettingsMessageTree(I18n::Message::ColorYellow)}; constexpr SettingsMessageTree s_accessibilityChildren[6] = {SettingsMessageTree(I18n::Message::AccessibilityInvertColors), SettingsMessageTree(I18n::Message::AccessibilityMagnify),SettingsMessageTree(I18n::Message::AccessibilityGamma),SettingsMessageTree(I18n::Message::AccessibilityGammaRed),SettingsMessageTree(I18n::Message::AccessibilityGammaGreen),SettingsMessageTree(I18n::Message::AccessibilityGammaBlue)}; constexpr SettingsMessageTree s_contributorsChildren[5] = {SettingsMessageTree(I18n::Message::QuentinGuidee), SettingsMessageTree(I18n::Message::DannySimmons), SettingsMessageTree(I18n::Message::JoachimLeFournis), SettingsMessageTree(I18n::Message::JeanBaptisteBoric), SettingsMessageTree(I18n::Message::MaximeFriess)}; +constexpr SettingsMessageTree s_symbolChildren[4] = {SettingsMessageTree(I18n::Message::SymbolMultiplicationCross),SettingsMessageTree(I18n::Message::SymbolMultiplicationMiddleDot),SettingsMessageTree(I18n::Message::SymbolMultiplicationStar),SettingsMessageTree(I18n::Message::SymbolMultiplicationAutoSymbol)}; constexpr SettingsMessageTree s_modelMenu[] = {SettingsMessageTree(I18n::Message::AngleUnit, s_modelAngleChildren, 3), @@ -33,9 +34,10 @@ constexpr SettingsMessageTree s_modelMenu[] = #endif SettingsMessageTree(I18n::Message::LEDColor, s_ledColorChildren, 4), SettingsMessageTree(I18n::Message::Accessibility, s_accessibilityChildren, 6), - SettingsMessageTree(I18n::Message::Contributors, s_contributorsChildren, 5)}; + SettingsMessageTree(I18n::Message::Contributors, s_contributorsChildren, 5), + SettingsMessageTree(I18n::Message::SymbolMultiplication, s_symbolChildren, 4)}; -constexpr SettingsMessageTree s_model = SettingsMessageTree(I18n::Message::SettingsApp, s_modelMenu, 11); +constexpr SettingsMessageTree s_model = SettingsMessageTree(I18n::Message::SettingsApp, s_modelMenu, 12); I18n::Message MainController::promptMessage() const { return I18n::Message::Default; diff --git a/apps/settings/main_controller_prompt_update.cpp b/apps/settings/main_controller_prompt_update.cpp index 466762df2..90461f939 100644 --- a/apps/settings/main_controller_prompt_update.cpp +++ b/apps/settings/main_controller_prompt_update.cpp @@ -16,6 +16,7 @@ constexpr SettingsMessageTree s_modelAboutChildren[4] = {SettingsMessageTree(I18 constexpr SettingsMessageTree s_ledColorChildren[4] = {SettingsMessageTree(I18n::Message::ColorWhite), SettingsMessageTree(I18n::Message::ColorGreen), SettingsMessageTree(I18n::Message::ColorBlue), SettingsMessageTree(I18n::Message::ColorYellow)}; constexpr SettingsMessageTree s_accessibilityChildren[6] = {SettingsMessageTree(I18n::Message::AccessibilityInvertColors), SettingsMessageTree(I18n::Message::AccessibilityMagnify),SettingsMessageTree(I18n::Message::AccessibilityGamma),SettingsMessageTree(I18n::Message::AccessibilityGammaRed),SettingsMessageTree(I18n::Message::AccessibilityGammaGreen),SettingsMessageTree(I18n::Message::AccessibilityGammaBlue)}; constexpr SettingsMessageTree s_contributorsChildren[5] = {SettingsMessageTree(I18n::Message::QuentinGuidee), SettingsMessageTree(I18n::Message::DannySimmons), SettingsMessageTree(I18n::Message::JoachimLeFournis), SettingsMessageTree(I18n::Message::JeanBaptisteBoric), SettingsMessageTree(I18n::Message::MaximeFriess)}; +constexpr SettingsMessageTree s_symbolChildren[4] = {SettingsMessageTree(I18n::Message::SymbolMultiplicationCross),SettingsMessageTree(I18n::Message::SymbolMultiplicationMiddleDot),SettingsMessageTree(I18n::Message::SymbolMultiplicationStar),SettingsMessageTree(I18n::Message::SymbolMultiplicationAutoSymbol)}; constexpr SettingsMessageTree s_modelMenu[] = {SettingsMessageTree(I18n::Message::AngleUnit, s_modelAngleChildren, 3), @@ -33,9 +34,10 @@ constexpr SettingsMessageTree s_modelMenu[] = #endif SettingsMessageTree(I18n::Message::LEDColor, s_ledColorChildren, 4), SettingsMessageTree(I18n::Message::Accessibility, s_accessibilityChildren, 6), - SettingsMessageTree(I18n::Message::Contributors, s_contributorsChildren, 5)}; + SettingsMessageTree(I18n::Message::Contributors, s_contributorsChildren, 5), + SettingsMessageTree(I18n::Message::SymbolMultiplication, s_symbolChildren, 4)}; -constexpr SettingsMessageTree s_model = SettingsMessageTree(I18n::Message::SettingsApp, s_modelMenu, 12); +constexpr SettingsMessageTree s_model = SettingsMessageTree(I18n::Message::SettingsApp, s_modelMenu, 13); I18n::Message MainController::promptMessage() const { return I18n::Message::UpdatePopUp; diff --git a/apps/settings/sub_menu/symbol_controller.cpp b/apps/settings/sub_menu/symbol_controller.cpp new file mode 100644 index 000000000..44cb77193 --- /dev/null +++ b/apps/settings/sub_menu/symbol_controller.cpp @@ -0,0 +1,132 @@ +#include "symbol_controller.h" +#include +#include + +using namespace Shared; +using namespace Poincare; + +namespace Settings { + +SymbolController::SymbolController(Responder * parentResponder) : + GenericSubController(parentResponder) +{ + for (int i = 0; i < k_totalNumberOfSwitchCells; i++) { + m_switchCells[i].setMessageFont(KDFont::LargeFont); + } +} + +bool SymbolController::handleEvent(Ion::Events::Event event) { + Preferences * preferences = Preferences::sharedPreferences(); + Poincare::Preferences::SymbolMultiplication symbolofMultiplication = preferences->symbolofMultiplication(); + bool autoSymbol = (int)preferences->autoSymbol(); + if (event == Ion::Events::OK || event == Ion::Events::EXE){ + switch(selectedRow()){ + case 0: + { + symbolofMultiplication = Poincare::Preferences::SymbolMultiplication::Cross; + break; + } + case 1: + { + symbolofMultiplication = Poincare::Preferences::SymbolMultiplication::MiddleDot; + break; + } + case 2: + { + symbolofMultiplication = Poincare::Preferences::SymbolMultiplication::Star; + break; + } + case 3: + { + autoSymbol = !autoSymbol; + break; + } + default: + { + GenericSubController::handleEvent(event); + } + } + preferences->setSymbolMultiplication(symbolofMultiplication); + autoSymbol ? preferences->SetAutoSymbol(Poincare::Preferences::AutoSymbol::True) : preferences->SetAutoSymbol(Poincare::Preferences::AutoSymbol::False); + m_selectableTableView.reloadData(); + } else { + return GenericSubController::handleEvent(event); + } +} + +HighlightCell * SymbolController::reusableCell(int index, int type) { + assert(type == 1 || type == 2); + if (type == 2) { + assert(index >= 0 && index < k_totalNumberOfSwitchCells); + return &m_switchCells[index]; + } + return nullptr; +} + +int SymbolController::reusableCellCount(int type) { + assert(type == 1 || type == 2); + if (type == 2) { + return k_totalNumberOfSwitchCells; + } + return 0; +} + +void SymbolController::willDisplayCellForIndex(HighlightCell * cell, int index) { + GenericSubController::willDisplayCellForIndex(cell, index); + + MessageTableCellWithSwitch * mySwitchCell = (MessageTableCellWithSwitch *)cell; + + Preferences * preferences = Preferences::sharedPreferences(); + Poincare::Preferences::SymbolMultiplication symbolofMultiplication = preferences->symbolofMultiplication(); + bool autoSymbol = (int)preferences->autoSymbol(); + + if (index == 0) { + SwitchView * mySwitch = (SwitchView *)mySwitchCell->accessoryView(); + if(symbolofMultiplication == Poincare::Preferences::SymbolMultiplication::Cross){ + mySwitch->setState(true); + } else { + mySwitch->setState(false); + } + //mySwitch->setState(KDIonContext::sharedContext()->invertEnabled); + } + else if (index == 1) { + SwitchView * mySwitch = (SwitchView *)mySwitchCell->accessoryView(); + if(symbolofMultiplication == Poincare::Preferences::SymbolMultiplication::MiddleDot){ + mySwitch->setState(true); + } else { + mySwitch->setState(false); + } + //mySwitch->setState(KDIonContext::sharedContext()->zoomEnabled); + } + else if (index == 2) { + SwitchView * mySwitch = (SwitchView *)mySwitchCell->accessoryView(); + if(symbolofMultiplication == Poincare::Preferences::SymbolMultiplication::Star){ + mySwitch->setState(true); + } else { + mySwitch->setState(false); + } + //mySwitch->setState(KDIonContext::sharedContext()->gammaEnabled); + } + else if (index == 3){ + SwitchView * mySwitch = (SwitchView *)mySwitchCell->accessoryView(); + if(autoSymbol == true){ + mySwitch->setState(true); + } else { + mySwitch->setState(false); + } + } +} + +int SymbolController::typeAtLocation(int i, int j) { + switch (j) { + case 0: + case 1: + case 2: + case 3: + return 2; + default: + return 1; + } +} + +} \ No newline at end of file diff --git a/apps/settings/sub_menu/symbol_controller.h b/apps/settings/sub_menu/symbol_controller.h new file mode 100644 index 000000000..2c01e1da2 --- /dev/null +++ b/apps/settings/sub_menu/symbol_controller.h @@ -0,0 +1,23 @@ +#ifndef SETTINGS_SYMBOLCONTROLLER_CONTROLLER_H +#define SETTINGS_SYMBOLCONTROLLER_CONTROLLER_H + +#include "generic_sub_controller.h" + +namespace Settings { + +class SymbolController : public GenericSubController { +public: + SymbolController(Responder * parentResponder); + bool handleEvent(Ion::Events::Event event) override; + HighlightCell * reusableCell(int index, int type) override; + int reusableCellCount(int type) override; + void willDisplayCellForIndex(HighlightCell * cell, int index) override; + int typeAtLocation(int i, int j) override; +private: + constexpr static int k_totalNumberOfSwitchCells = 4; + MessageTableCellWithSwitch m_switchCells[k_totalNumberOfSwitchCells]; +}; + +} + +#endif \ No newline at end of file diff --git a/escher/src/layout_field.cpp b/escher/src/layout_field.cpp index 705631002..9d04cef04 100644 --- a/escher/src/layout_field.cpp +++ b/escher/src/layout_field.cpp @@ -139,6 +139,8 @@ bool LayoutField::handleEventWithText(const char * text, bool indentation, bool m_contentView.cursor()->addEmptyTenPowerLayout(); } else if ((strcmp(text, "[") == 0) || (strcmp(text, "]") == 0)) { m_contentView.cursor()->addEmptyMatrixLayout(); + } else if((strcmp(text, Ion::Events::Multiplication.text())) == 0){ + m_contentView.cursor()->addMultiplicationPointLayout(); } else { Expression resultExpression = Expression::Parse(text); if (resultExpression.isUninitialized()) { diff --git a/ion/include/ion/unicode/code_point.h b/ion/include/ion/unicode/code_point.h index 52708cfed..7eb70da7f 100644 --- a/ion/include/ion/unicode/code_point.h +++ b/ion/include/ion/unicode/code_point.h @@ -31,6 +31,7 @@ static constexpr CodePoint UCodePointRightSystemParenthesis = 0x13; // Used fo static constexpr CodePoint UCodePointMiddleDot = 0xb7; // · static constexpr CodePoint UCodePointMultiplicationSign = 0xd7; // × +static constexpr CodePoint UCodePointStar = 0x2a; // * static constexpr CodePoint UCodePointGreekSmallLetterTheta = 0x3b8; // θ static constexpr CodePoint UCodePointGreekSmallLetterPi = 0x3c0; // π static constexpr CodePoint UCodePointLatinLetterSmallCapitalE = 0x1d07; // ᴇ diff --git a/poincare/include/poincare/layout_cursor.h b/poincare/include/poincare/layout_cursor.h index 764023e04..e3078da24 100644 --- a/poincare/include/poincare/layout_cursor.h +++ b/poincare/include/poincare/layout_cursor.h @@ -110,6 +110,7 @@ public: void addEmptyTenPowerLayout(); void addFractionLayoutAndCollapseSiblings(); void addXNTCodePointLayout(); + void addMultiplicationPointLayout(); void insertText(const char * text); void addLayoutAndMoveCursor(Layout l); bool showEmptyLayoutIfNeeded() { return privateShowHideEmptyLayoutIfNeeded(true); } diff --git a/poincare/include/poincare/preferences.h b/poincare/include/poincare/preferences.h index cc31b4b5f..1ffb7b38e 100644 --- a/poincare/include/poincare/preferences.h +++ b/poincare/include/poincare/preferences.h @@ -42,6 +42,15 @@ public: Blue = 2, Yellow = 3 }; + enum class SymbolMultiplication { + Cross = 0, + MiddleDot = 1, + Star = 2 + }; + enum class AutoSymbol{ + False = 0, + True = 1 + }; Preferences(); static Preferences * sharedPreferences(); AngleUnit angleUnit() const { return m_angleUnit; } @@ -56,6 +65,10 @@ public: void setNumberOfSignificantDigits(uint8_t numberOfSignificantDigits) { m_numberOfSignificantDigits = numberOfSignificantDigits; } LEDColor colorOfLED() const { return m_colorOfLED; } void setColorOfLED(LEDColor color) { m_colorOfLED = color; } + SymbolMultiplication symbolofMultiplication() const {return m_symbolMultiplication;} + void setSymbolMultiplication(SymbolMultiplication symbolofMultiplication) {m_symbolMultiplication = symbolofMultiplication;} + AutoSymbol autoSymbol() const {return m_autoSymbol;} + void SetAutoSymbol(AutoSymbol autoSymbol) {m_autoSymbol = autoSymbol;} private: AngleUnit m_angleUnit; PrintFloatMode m_displayMode; @@ -63,6 +76,8 @@ private: ComplexFormat m_complexFormat; uint8_t m_numberOfSignificantDigits; LEDColor m_colorOfLED; + SymbolMultiplication m_symbolMultiplication; + AutoSymbol m_autoSymbol; }; } diff --git a/poincare/src/layout_cursor.cpp b/poincare/src/layout_cursor.cpp index 7ed3747bf..00b59d68d 100644 --- a/poincare/src/layout_cursor.cpp +++ b/poincare/src/layout_cursor.cpp @@ -11,6 +11,7 @@ #include #include #include +#include namespace Poincare { @@ -139,6 +140,21 @@ void LayoutCursor::addXNTCodePointLayout() { m_layout.addSibling(this, CodePointLayout::Builder(m_layout.XNTCodePoint()), true); } +void LayoutCursor::addMultiplicationPointLayout(){ + Preferences * preferences = Preferences::sharedPreferences(); + switch((int)preferences->symbolofMultiplication()){ + case 1: + addLayoutAndMoveCursor(HorizontalLayout::Builder(CodePointLayout::Builder(UCodePointMiddleDot))); + break; + case 2: + addLayoutAndMoveCursor(HorizontalLayout::Builder(CodePointLayout::Builder(UCodePointStar))); + break; + default: + addLayoutAndMoveCursor(HorizontalLayout::Builder(CodePointLayout::Builder(UCodePointMultiplicationSign))); + break; + } +} + void LayoutCursor::insertText(const char * text) { Layout newChild; Layout pointedChild; diff --git a/poincare/src/multiplication.cpp b/poincare/src/multiplication.cpp index 0e3aa4c1d..52c2dc613 100644 --- a/poincare/src/multiplication.cpp +++ b/poincare/src/multiplication.cpp @@ -16,6 +16,7 @@ #include #include #include +#include namespace Poincare { @@ -159,20 +160,38 @@ static int operatorSymbolBetween(ExpressionNode::LayoutShape left, ExpressionNod } CodePoint MultiplicationNode::operatorSymbol() const { + Preferences * preferences = Preferences::sharedPreferences(); /* ø --> 0 * · --> 1 - * × --> 2 */ + * × --> 2 + * * --> 3 */ int sign = -1; - for (int i = 0; i < numberOfChildren() - 1; i++) { - /* The operator symbol must be the same for all operands of the multiplication. - * If one operator has to be '×', they will all be '×'. Idem for '·'. */ - sign = maxInt(sign, operatorSymbolBetween(childAtIndex(i)->rightLayoutShape(), childAtIndex(i+1)->leftLayoutShape())); + if(preferences->autoSymbol() == Poincare::Preferences::AutoSymbol::True){ + for (int i = 0; i < numberOfChildren() - 1; i++) { + /* The operator symbol must be the same for all operands of the multiplication. + * If one operator has to be '×', they will all be '×'. Idem for '·'. */ + sign = maxInt(sign, operatorSymbolBetween(childAtIndex(i)->rightLayoutShape(), childAtIndex(i+1)->leftLayoutShape())); + } + } else { + switch(preferences->symbolofMultiplication()){ + case Poincare::Preferences::SymbolMultiplication::MiddleDot : + sign = 1; // · --> · (1) + break; + case Poincare::Preferences::SymbolMultiplication::Star : + sign = 3; // * --> * (3) + break; + default: + sign = 2; // × --> × (2) + break; + } } switch (sign) { case 0: return UCodePointNull; case 1: return UCodePointMiddleDot; + case 3: + return UCodePointStar; default: return UCodePointMultiplicationSign; } diff --git a/poincare/src/preferences.cpp b/poincare/src/preferences.cpp index d349e84c8..cbef2fbdf 100644 --- a/poincare/src/preferences.cpp +++ b/poincare/src/preferences.cpp @@ -13,7 +13,9 @@ Preferences::Preferences() : m_editionMode(EditionMode::Edition2D), m_complexFormat(Preferences::ComplexFormat::Real), m_numberOfSignificantDigits(PrintFloat::k_numberOfPrintedSignificantDigits), - m_colorOfLED(Preferences::LEDColor::White) + m_colorOfLED(Preferences::LEDColor::White), + m_symbolMultiplication(Preferences::SymbolMultiplication::Cross), + m_autoSymbol(Preferences::AutoSymbol::True) {} Preferences * Preferences::sharedPreferences() { From d4ac3e9fc9b95ee0cc0d29fea783db5fe2e79da3 Mon Sep 17 00:00:00 2001 From: BuildTools Date: Sun, 10 Nov 2019 10:43:30 -0500 Subject: [PATCH 02/12] Fix main_controller --- apps/settings/main_controller.cpp | 12 +----------- apps/settings/main_controller.h | 8 -------- apps/settings/main_controller_prompt_beta.cpp | 16 ++-------------- apps/settings/main_controller_prompt_none.cpp | 14 +------------- apps/settings/main_controller_prompt_update.cpp | 16 ++-------------- 5 files changed, 6 insertions(+), 60 deletions(-) diff --git a/apps/settings/main_controller.cpp b/apps/settings/main_controller.cpp index 58c0e6b9f..18c0c909d 100644 --- a/apps/settings/main_controller.cpp +++ b/apps/settings/main_controller.cpp @@ -17,13 +17,8 @@ MainController::MainController(Responder * parentResponder, InputEventHandlerDel m_languageController(this, 13), m_accessibilityController(this), m_examModeController(this), -<<<<<<< HEAD m_aboutController(this), - m_contributorsController(this), m_symbolController(this) -======= - m_aboutController(this) ->>>>>>> 875276e017e7c07d03458029a1b7a8f16747ac11 { for (int i = 0; i < k_numberOfSimpleChevronCells; i++) { m_cells[i].setMessageFont(KDFont::LargeFont); @@ -82,13 +77,8 @@ bool MainController::handleEvent(Ion::Events::Event event) { subController = &m_aboutController; } else if (model()->children(selectedRow())->label() == I18n::Message::Accessibility) { subController = &m_accessibilityController; -<<<<<<< HEAD - } else if (rowIndex == 10 + hasPrompt()) { - subController = &m_contributorsController; - } else if (rowIndex == 11 + hasPrompt()){ + } else if (model()->children(selectedRow())->label() == I18n::Message::SymbolMultiplication){ subController = &m_symbolController; -======= ->>>>>>> 875276e017e7c07d03458029a1b7a8f16747ac11 } else { subController = &m_preferencesController; } diff --git a/apps/settings/main_controller.h b/apps/settings/main_controller.h index a83a1916f..f92057f99 100644 --- a/apps/settings/main_controller.h +++ b/apps/settings/main_controller.h @@ -9,11 +9,7 @@ #include "sub_menu/exam_mode_controller.h" #include "sub_menu/language_controller.h" #include "sub_menu/preferences_controller.h" -<<<<<<< HEAD -#include "sub_menu/contributors_controller.h" #include "sub_menu/symbol_controller.h" -======= ->>>>>>> 875276e017e7c07d03458029a1b7a8f16747ac11 namespace Settings { @@ -48,11 +44,7 @@ private: AccessibilityController m_accessibilityController; ExamModeController m_examModeController; AboutController m_aboutController; -<<<<<<< HEAD - ContributorsController m_contributorsController; SymbolController m_symbolController; -======= ->>>>>>> 875276e017e7c07d03458029a1b7a8f16747ac11 }; } diff --git a/apps/settings/main_controller_prompt_beta.cpp b/apps/settings/main_controller_prompt_beta.cpp index 6b52275ad..89344556c 100644 --- a/apps/settings/main_controller_prompt_beta.cpp +++ b/apps/settings/main_controller_prompt_beta.cpp @@ -19,11 +19,7 @@ constexpr SettingsMessageTree s_modelAboutChildren[6] = {SettingsMessageTree(I18 constexpr SettingsMessageTree s_modelAboutChildren[5] = {SettingsMessageTree(I18n::Message::SoftwareVersion), SettingsMessageTree(I18n::Message::CustomSoftwareVersion), SettingsMessageTree(I18n::Message::SerialNumber), SettingsMessageTree(I18n::Message::FccId), SettingsMessageTree(I18n::Message::Contributors, s_contributorsChildren, 5)}; #endif constexpr SettingsMessageTree s_accessibilityChildren[6] = {SettingsMessageTree(I18n::Message::AccessibilityInvertColors), SettingsMessageTree(I18n::Message::AccessibilityMagnify),SettingsMessageTree(I18n::Message::AccessibilityGamma),SettingsMessageTree(I18n::Message::AccessibilityGammaRed),SettingsMessageTree(I18n::Message::AccessibilityGammaGreen),SettingsMessageTree(I18n::Message::AccessibilityGammaBlue)}; -<<<<<<< HEAD -constexpr SettingsMessageTree s_contributorsChildren[5] = {SettingsMessageTree(I18n::Message::QuentinGuidee), SettingsMessageTree(I18n::Message::DannySimmons), SettingsMessageTree(I18n::Message::JoachimLeFournis), SettingsMessageTree(I18n::Message::JeanBaptisteBoric), SettingsMessageTree(I18n::Message::MaximeFriess)}; constexpr SettingsMessageTree s_symbolChildren[4] = {SettingsMessageTree(I18n::Message::SymbolMultiplicationCross),SettingsMessageTree(I18n::Message::SymbolMultiplicationMiddleDot),SettingsMessageTree(I18n::Message::SymbolMultiplicationStar),SettingsMessageTree(I18n::Message::SymbolMultiplicationAutoSymbol)}; -======= ->>>>>>> 875276e017e7c07d03458029a1b7a8f16747ac11 constexpr SettingsMessageTree s_modelMenu[] = {SettingsMessageTree(I18n::Message::AngleUnit, s_modelAngleChildren, 3), @@ -32,25 +28,17 @@ constexpr SettingsMessageTree s_modelMenu[] = SettingsMessageTree(I18n::Message::ComplexFormat, s_modelComplexFormatChildren, 3), SettingsMessageTree(I18n::Message::Brightness), SettingsMessageTree(I18n::Message::Language), - SettingsMessageTree(I18n::Message::ExamMode, s_modelExamChildren, 1), + SettingsMessageTree(I18n::Message::ExamMode, s_modelExamChildren, 2), SettingsMessageTree(I18n::Message::BetaPopUp), #ifdef USERNAME SettingsMessageTree(I18n::Message::About, s_modelAboutChildren, 6), #else SettingsMessageTree(I18n::Message::About, s_modelAboutChildren, 5), #endif -<<<<<<< HEAD - SettingsMessageTree(I18n::Message::LEDColor, s_ledColorChildren, 4), SettingsMessageTree(I18n::Message::Accessibility, s_accessibilityChildren, 6), - SettingsMessageTree(I18n::Message::Contributors, s_contributorsChildren, 5), SettingsMessageTree(I18n::Message::SymbolMultiplication, s_symbolChildren, 4)}; -constexpr SettingsMessageTree s_model = SettingsMessageTree(I18n::Message::SettingsApp, s_modelMenu, 13); -======= - SettingsMessageTree(I18n::Message::Accessibility, s_accessibilityChildren, 6)}; - -constexpr SettingsMessageTree s_model = SettingsMessageTree(I18n::Message::SettingsApp, s_modelMenu, 10); ->>>>>>> 875276e017e7c07d03458029a1b7a8f16747ac11 +constexpr SettingsMessageTree s_model = SettingsMessageTree(I18n::Message::SettingsApp, s_modelMenu, 11); I18n::Message MainController::promptMessage() const { return I18n::Message::BetaPopUp; diff --git a/apps/settings/main_controller_prompt_none.cpp b/apps/settings/main_controller_prompt_none.cpp index 5b6dd51bb..bc0de44cb 100644 --- a/apps/settings/main_controller_prompt_none.cpp +++ b/apps/settings/main_controller_prompt_none.cpp @@ -20,11 +20,7 @@ constexpr SettingsMessageTree s_modelAboutChildren[6] = {SettingsMessageTree(I18 constexpr SettingsMessageTree s_modelAboutChildren[5] = {SettingsMessageTree(I18n::Message::SoftwareVersion), SettingsMessageTree(I18n::Message::CustomSoftwareVersion), SettingsMessageTree(I18n::Message::SerialNumber), SettingsMessageTree(I18n::Message::FccId), SettingsMessageTree(I18n::Message::Contributors, s_contributorsChildren, 5)}; #endif constexpr SettingsMessageTree s_accessibilityChildren[6] = {SettingsMessageTree(I18n::Message::AccessibilityInvertColors), SettingsMessageTree(I18n::Message::AccessibilityMagnify),SettingsMessageTree(I18n::Message::AccessibilityGamma),SettingsMessageTree(I18n::Message::AccessibilityGammaRed),SettingsMessageTree(I18n::Message::AccessibilityGammaGreen),SettingsMessageTree(I18n::Message::AccessibilityGammaBlue)}; -<<<<<<< HEAD -constexpr SettingsMessageTree s_contributorsChildren[5] = {SettingsMessageTree(I18n::Message::QuentinGuidee), SettingsMessageTree(I18n::Message::DannySimmons), SettingsMessageTree(I18n::Message::JoachimLeFournis), SettingsMessageTree(I18n::Message::JeanBaptisteBoric), SettingsMessageTree(I18n::Message::MaximeFriess)}; constexpr SettingsMessageTree s_symbolChildren[4] = {SettingsMessageTree(I18n::Message::SymbolMultiplicationCross),SettingsMessageTree(I18n::Message::SymbolMultiplicationMiddleDot),SettingsMessageTree(I18n::Message::SymbolMultiplicationStar),SettingsMessageTree(I18n::Message::SymbolMultiplicationAutoSymbol)}; -======= ->>>>>>> 875276e017e7c07d03458029a1b7a8f16747ac11 constexpr SettingsMessageTree s_modelMenu[] = {SettingsMessageTree(I18n::Message::AngleUnit, s_modelAngleChildren, 3), @@ -39,18 +35,10 @@ constexpr SettingsMessageTree s_modelMenu[] = #else SettingsMessageTree(I18n::Message::About, s_modelAboutChildren, 5), #endif -<<<<<<< HEAD - SettingsMessageTree(I18n::Message::LEDColor, s_ledColorChildren, 4), SettingsMessageTree(I18n::Message::Accessibility, s_accessibilityChildren, 6), - SettingsMessageTree(I18n::Message::Contributors, s_contributorsChildren, 5), SettingsMessageTree(I18n::Message::SymbolMultiplication, s_symbolChildren, 4)}; -constexpr SettingsMessageTree s_model = SettingsMessageTree(I18n::Message::SettingsApp, s_modelMenu, 12); -======= - SettingsMessageTree(I18n::Message::Accessibility, s_accessibilityChildren, 6)}; - -constexpr SettingsMessageTree s_model = SettingsMessageTree(I18n::Message::SettingsApp, s_modelMenu, 9); ->>>>>>> 875276e017e7c07d03458029a1b7a8f16747ac11 +constexpr SettingsMessageTree s_model = SettingsMessageTree(I18n::Message::SettingsApp, s_modelMenu, 10); I18n::Message MainController::promptMessage() const { return I18n::Message::Default; diff --git a/apps/settings/main_controller_prompt_update.cpp b/apps/settings/main_controller_prompt_update.cpp index 019f98f33..181179e91 100644 --- a/apps/settings/main_controller_prompt_update.cpp +++ b/apps/settings/main_controller_prompt_update.cpp @@ -19,11 +19,7 @@ constexpr SettingsMessageTree s_modelAboutChildren[6] = {SettingsMessageTree(I18 constexpr SettingsMessageTree s_modelAboutChildren[5] = {SettingsMessageTree(I18n::Message::SoftwareVersion), SettingsMessageTree(I18n::Message::CustomSoftwareVersion), SettingsMessageTree(I18n::Message::SerialNumber), SettingsMessageTree(I18n::Message::FccId), SettingsMessageTree(I18n::Message::Contributors, s_contributorsChildren, 5)}; #endif constexpr SettingsMessageTree s_accessibilityChildren[6] = {SettingsMessageTree(I18n::Message::AccessibilityInvertColors), SettingsMessageTree(I18n::Message::AccessibilityMagnify),SettingsMessageTree(I18n::Message::AccessibilityGamma),SettingsMessageTree(I18n::Message::AccessibilityGammaRed),SettingsMessageTree(I18n::Message::AccessibilityGammaGreen),SettingsMessageTree(I18n::Message::AccessibilityGammaBlue)}; -<<<<<<< HEAD -constexpr SettingsMessageTree s_contributorsChildren[5] = {SettingsMessageTree(I18n::Message::QuentinGuidee), SettingsMessageTree(I18n::Message::DannySimmons), SettingsMessageTree(I18n::Message::JoachimLeFournis), SettingsMessageTree(I18n::Message::JeanBaptisteBoric), SettingsMessageTree(I18n::Message::MaximeFriess)}; constexpr SettingsMessageTree s_symbolChildren[4] = {SettingsMessageTree(I18n::Message::SymbolMultiplicationCross),SettingsMessageTree(I18n::Message::SymbolMultiplicationMiddleDot),SettingsMessageTree(I18n::Message::SymbolMultiplicationStar),SettingsMessageTree(I18n::Message::SymbolMultiplicationAutoSymbol)}; -======= ->>>>>>> 875276e017e7c07d03458029a1b7a8f16747ac11 constexpr SettingsMessageTree s_modelMenu[] = {SettingsMessageTree(I18n::Message::AngleUnit, s_modelAngleChildren, 3), @@ -32,25 +28,17 @@ constexpr SettingsMessageTree s_modelMenu[] = SettingsMessageTree(I18n::Message::ComplexFormat, s_modelComplexFormatChildren, 3), SettingsMessageTree(I18n::Message::Brightness), SettingsMessageTree(I18n::Message::Language), - SettingsMessageTree(I18n::Message::ExamMode, s_modelExamChildren, 1), + SettingsMessageTree(I18n::Message::ExamMode, s_modelExamChildren, 2), SettingsMessageTree(I18n::Message::UpdatePopUp), #ifdef USERNAME SettingsMessageTree(I18n::Message::About, s_modelAboutChildren, 6), #else SettingsMessageTree(I18n::Message::About, s_modelAboutChildren, 5), #endif -<<<<<<< HEAD - SettingsMessageTree(I18n::Message::LEDColor, s_ledColorChildren, 4), SettingsMessageTree(I18n::Message::Accessibility, s_accessibilityChildren, 6), - SettingsMessageTree(I18n::Message::Contributors, s_contributorsChildren, 5), SettingsMessageTree(I18n::Message::SymbolMultiplication, s_symbolChildren, 4)}; -constexpr SettingsMessageTree s_model = SettingsMessageTree(I18n::Message::SettingsApp, s_modelMenu, 13); -======= - SettingsMessageTree(I18n::Message::Accessibility, s_accessibilityChildren, 6)}; - -constexpr SettingsMessageTree s_model = SettingsMessageTree(I18n::Message::SettingsApp, s_modelMenu, 10); ->>>>>>> 875276e017e7c07d03458029a1b7a8f16747ac11 +constexpr SettingsMessageTree s_model = SettingsMessageTree(I18n::Message::SettingsApp, s_modelMenu, 11); I18n::Message MainController::promptMessage() const { return I18n::Message::UpdatePopUp; From cc591fd0d6cdee63f04397965d53b535e00c65d4 Mon Sep 17 00:00:00 2001 From: redgl0w <43498612+RedGl0w@users.noreply.github.com> Date: Sun, 17 Nov 2019 08:05:24 +0100 Subject: [PATCH 03/12] Update symbol_controller.cpp --- apps/settings/sub_menu/symbol_controller.cpp | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/apps/settings/sub_menu/symbol_controller.cpp b/apps/settings/sub_menu/symbol_controller.cpp index 44cb77193..e73033b5f 100644 --- a/apps/settings/sub_menu/symbol_controller.cpp +++ b/apps/settings/sub_menu/symbol_controller.cpp @@ -49,6 +49,7 @@ bool SymbolController::handleEvent(Ion::Events::Event event) { preferences->setSymbolMultiplication(symbolofMultiplication); autoSymbol ? preferences->SetAutoSymbol(Poincare::Preferences::AutoSymbol::True) : preferences->SetAutoSymbol(Poincare::Preferences::AutoSymbol::False); m_selectableTableView.reloadData(); + return true; } else { return GenericSubController::handleEvent(event); } @@ -87,7 +88,6 @@ void SymbolController::willDisplayCellForIndex(HighlightCell * cell, int index) } else { mySwitch->setState(false); } - //mySwitch->setState(KDIonContext::sharedContext()->invertEnabled); } else if (index == 1) { SwitchView * mySwitch = (SwitchView *)mySwitchCell->accessoryView(); @@ -96,7 +96,6 @@ void SymbolController::willDisplayCellForIndex(HighlightCell * cell, int index) } else { mySwitch->setState(false); } - //mySwitch->setState(KDIonContext::sharedContext()->zoomEnabled); } else if (index == 2) { SwitchView * mySwitch = (SwitchView *)mySwitchCell->accessoryView(); @@ -105,7 +104,6 @@ void SymbolController::willDisplayCellForIndex(HighlightCell * cell, int index) } else { mySwitch->setState(false); } - //mySwitch->setState(KDIonContext::sharedContext()->gammaEnabled); } else if (index == 3){ SwitchView * mySwitch = (SwitchView *)mySwitchCell->accessoryView(); @@ -129,4 +127,4 @@ int SymbolController::typeAtLocation(int i, int j) { } } -} \ No newline at end of file +} From 6c7db30b8ae509c7c935c6526b743ed8a8c4658e Mon Sep 17 00:00:00 2001 From: redgl0w <43498612+RedGl0w@users.noreply.github.com> Date: Sun, 17 Nov 2019 08:16:36 +0100 Subject: [PATCH 04/12] Update apps/settings/base.fr.i18n Co-Authored-By: Quentin --- apps/settings/base.fr.i18n | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/settings/base.fr.i18n b/apps/settings/base.fr.i18n index 3d76ddfdc..1cc625100 100644 --- a/apps/settings/base.fr.i18n +++ b/apps/settings/base.fr.i18n @@ -44,4 +44,4 @@ SymbolMultiplication = "Signe de multiplication" SymbolMultiplicationCross = "Croix" SymbolMultiplicationMiddleDot = "Point" SymbolMultiplicationStar = "Etoile" -SymbolMultiplicationAutoSymbol = "Toujours simplifier" +SymbolMultiplicationAutoSymbol = "Automatique" From 1e8b69e81e9e2c69d91fcbc0b6e76a3e17a15ac7 Mon Sep 17 00:00:00 2001 From: redgl0w <43498612+RedGl0w@users.noreply.github.com> Date: Sun, 17 Nov 2019 08:16:44 +0100 Subject: [PATCH 05/12] Update apps/settings/base.en.i18n Co-Authored-By: Quentin --- apps/settings/base.en.i18n | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/settings/base.en.i18n b/apps/settings/base.en.i18n index 0eefa16fd..5bfc75c50 100644 --- a/apps/settings/base.en.i18n +++ b/apps/settings/base.en.i18n @@ -40,7 +40,7 @@ AccessibilityGamma = "Gamma correction" AccessibilityGammaRed = "Red gamma" AccessibilityGammaGreen = "Green gamma" AccessibilityGammaBlue = "Blue gamma" -SymbolMultiplication = "Symbol of multiplication" +SymbolMultiplication = "Multiplication sign" SymbolMultiplicationCross = "Cross" SymbolMultiplicationMiddleDot = "Middle dot" SymbolMultiplicationStar = "Star" From ff296b44cf870fecbc2376ff34e00f3216fbaaee Mon Sep 17 00:00:00 2001 From: redgl0w <43498612+RedGl0w@users.noreply.github.com> Date: Sun, 17 Nov 2019 08:18:31 +0100 Subject: [PATCH 06/12] Update apps/settings/sub_menu/symbol_controller.cpp Co-Authored-By: Quentin --- apps/settings/sub_menu/symbol_controller.cpp | 1 + 1 file changed, 1 insertion(+) diff --git a/apps/settings/sub_menu/symbol_controller.cpp b/apps/settings/sub_menu/symbol_controller.cpp index e73033b5f..2b9ef4d1a 100644 --- a/apps/settings/sub_menu/symbol_controller.cpp +++ b/apps/settings/sub_menu/symbol_controller.cpp @@ -50,6 +50,7 @@ bool SymbolController::handleEvent(Ion::Events::Event event) { autoSymbol ? preferences->SetAutoSymbol(Poincare::Preferences::AutoSymbol::True) : preferences->SetAutoSymbol(Poincare::Preferences::AutoSymbol::False); m_selectableTableView.reloadData(); return true; + return true; } else { return GenericSubController::handleEvent(event); } From 88f861a68bb7edd523e6ab3913c32c219561699d Mon Sep 17 00:00:00 2001 From: redgl0w <43498612+RedGl0w@users.noreply.github.com> Date: Sun, 17 Nov 2019 08:20:12 +0100 Subject: [PATCH 07/12] Update symbol_controller.cpp --- apps/settings/sub_menu/symbol_controller.cpp | 1 - 1 file changed, 1 deletion(-) diff --git a/apps/settings/sub_menu/symbol_controller.cpp b/apps/settings/sub_menu/symbol_controller.cpp index 2b9ef4d1a..e73033b5f 100644 --- a/apps/settings/sub_menu/symbol_controller.cpp +++ b/apps/settings/sub_menu/symbol_controller.cpp @@ -50,7 +50,6 @@ bool SymbolController::handleEvent(Ion::Events::Event event) { autoSymbol ? preferences->SetAutoSymbol(Poincare::Preferences::AutoSymbol::True) : preferences->SetAutoSymbol(Poincare::Preferences::AutoSymbol::False); m_selectableTableView.reloadData(); return true; - return true; } else { return GenericSubController::handleEvent(event); } From 3a5e235d17f70b7ea501de13826c8eb8fdc1df4b Mon Sep 17 00:00:00 2001 From: redgl0w <43498612+RedGl0w@users.noreply.github.com> Date: Sun, 17 Nov 2019 13:13:28 +0100 Subject: [PATCH 08/12] Update base.en.i18n --- apps/settings/base.en.i18n | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/settings/base.en.i18n b/apps/settings/base.en.i18n index 5bfc75c50..dd0a7fe2b 100644 --- a/apps/settings/base.en.i18n +++ b/apps/settings/base.en.i18n @@ -44,4 +44,4 @@ SymbolMultiplication = "Multiplication sign" SymbolMultiplicationCross = "Cross" SymbolMultiplicationMiddleDot = "Middle dot" SymbolMultiplicationStar = "Star" -SymbolMultiplicationAutoSymbol = "Always simplify" +SymbolMultiplicationAutoSymbol = "Automatic" From 343afc91107abb33993a6b7ffaf54b954615c6b1 Mon Sep 17 00:00:00 2001 From: redgl0w <43498612+RedGl0w@users.noreply.github.com> Date: Sun, 17 Nov 2019 13:14:23 +0100 Subject: [PATCH 09/12] Update base.pt.i18n --- apps/settings/base.pt.i18n | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/settings/base.pt.i18n b/apps/settings/base.pt.i18n index 80ca4257a..54c14fbeb 100644 --- a/apps/settings/base.pt.i18n +++ b/apps/settings/base.pt.i18n @@ -44,4 +44,4 @@ SymbolMultiplication = "Sinal de multiplicação" SymbolMultiplicationCross = "crómio" SymbolMultiplicationMiddleDot = "ponto médio" SymbolMultiplicationStar = "estrela" -SymbolMultiplicationAutoSymbol = "Sempre simplificar" +SymbolMultiplicationAutoSymbol = "automático" From 611bc0231a26aa8cb6215e8f8304e177ba31739a Mon Sep 17 00:00:00 2001 From: redgl0w <43498612+RedGl0w@users.noreply.github.com> Date: Sun, 17 Nov 2019 13:16:06 +0100 Subject: [PATCH 10/12] Update base.es.i18n --- apps/settings/base.es.i18n | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/settings/base.es.i18n b/apps/settings/base.es.i18n index a6db13c88..d245ae9e3 100644 --- a/apps/settings/base.es.i18n +++ b/apps/settings/base.es.i18n @@ -44,4 +44,4 @@ SymbolMultiplication = "signo de multiplicación" SymbolMultiplicationCross = "contrariar" SymbolMultiplicationMiddleDot = "punto medio" SymbolMultiplicationStar = "estrella" -SymbolMultiplicationAutoSymbol = "siempre simplifique" +SymbolMultiplicationAutoSymbol = "automático" From 22ebb05e763abc71cf57cd7693751c9a71e6ab76 Mon Sep 17 00:00:00 2001 From: redgl0w <43498612+RedGl0w@users.noreply.github.com> Date: Sun, 17 Nov 2019 13:16:28 +0100 Subject: [PATCH 11/12] Update base.de.i18n --- apps/settings/base.de.i18n | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/settings/base.de.i18n b/apps/settings/base.de.i18n index b0e85bcbf..b6ceac5e6 100644 --- a/apps/settings/base.de.i18n +++ b/apps/settings/base.de.i18n @@ -44,4 +44,4 @@ SymbolMultiplication = "Multiplikationszeichen" SymbolMultiplicationCross = "Kreuz" SymbolMultiplicationMiddleDot = "Mittelpunkt" SymbolMultiplicationStar = "Stern" -SymbolMultiplicationAutoSymbol = "Immer vereinfachen" +SymbolMultiplicationAutoSymbol = "automatisch" From 99a1b6636c3330903d1217679f59a44e82d37684 Mon Sep 17 00:00:00 2001 From: redgl0w <43498612+RedGl0w@users.noreply.github.com> Date: Sun, 17 Nov 2019 13:17:42 +0100 Subject: [PATCH 12/12] Update symbol_controller.cpp --- apps/settings/sub_menu/symbol_controller.cpp | 3 +++ 1 file changed, 3 insertions(+) diff --git a/apps/settings/sub_menu/symbol_controller.cpp b/apps/settings/sub_menu/symbol_controller.cpp index e73033b5f..a9daa9a7c 100644 --- a/apps/settings/sub_menu/symbol_controller.cpp +++ b/apps/settings/sub_menu/symbol_controller.cpp @@ -24,16 +24,19 @@ bool SymbolController::handleEvent(Ion::Events::Event event) { case 0: { symbolofMultiplication = Poincare::Preferences::SymbolMultiplication::Cross; + autoSymbol = false; break; } case 1: { symbolofMultiplication = Poincare::Preferences::SymbolMultiplication::MiddleDot; + autoSymbol = false; break; } case 2: { symbolofMultiplication = Poincare::Preferences::SymbolMultiplication::Star; + autoSymbol = false; break; } case 3: