From 9f6d52d9d5f00da6c8bd257c5b3a03af0ed41394 Mon Sep 17 00:00:00 2001 From: Laury Date: Wed, 4 May 2022 15:49:11 +0200 Subject: [PATCH] [usb] Removing residues from the USB protection --- apps/global_preferences.h | 4 - apps/settings/Makefile | 1 - apps/settings/main_controller.cpp | 3 - apps/settings/main_controller.h | 2 - .../sub_menu/preferences_controller.cpp | 5 -- .../sub_menu/usb_protection_controller.cpp | 84 ------------------- .../sub_menu/usb_protection_controller.h | 30 ------- apps/usb/base.de.i18n | 5 -- apps/usb/base.en.i18n | 5 -- apps/usb/base.es.i18n | 5 -- apps/usb/base.fr.i18n | 5 -- apps/usb/base.hu.i18n | 5 -- apps/usb/base.it.i18n | 5 -- apps/usb/base.nl.i18n | 5 -- apps/usb/base.pt.i18n | 5 -- apps/usb/usb_connected_controller.cpp | 34 ++------ apps/usb/usb_connected_controller.h | 7 +- 17 files changed, 8 insertions(+), 202 deletions(-) delete mode 100644 apps/settings/sub_menu/usb_protection_controller.cpp delete mode 100644 apps/settings/sub_menu/usb_protection_controller.h diff --git a/apps/global_preferences.h b/apps/global_preferences.h index 6b73e1b77..ab48e2c14 100644 --- a/apps/global_preferences.h +++ b/apps/global_preferences.h @@ -32,8 +32,6 @@ public: void setShowPopUp(bool showPopUp) { m_showPopUp = showPopUp; } bool dfuUnlocked() const { return m_dfuUnlocked; } void setDfuUnlocked(bool unlocked) { m_dfuUnlocked = unlocked; } - int dfuLevel() const { return m_dfuLevel; } - void setDfuLevel(int level) { m_dfuLevel = level; } bool autocomplete() const { return m_autoComplete; } void setAutocomplete(bool autocomple) { m_autoComplete = autocomple; } bool syntaxhighlighting() const { return m_syntaxhighlighting; } @@ -65,7 +63,6 @@ private: m_tempExamMode(ExamMode::Standard), m_showPopUp(true), m_dfuUnlocked(false), - m_dfuLevel(0), m_autoComplete(true), m_syntaxhighlighting(true), m_cursorSaving(true), @@ -84,7 +81,6 @@ private: mutable ExamMode m_tempExamMode; bool m_showPopUp; bool m_dfuUnlocked; - uint8_t m_dfuLevel; bool m_autoComplete; bool m_syntaxhighlighting; bool m_cursorSaving; diff --git a/apps/settings/Makefile b/apps/settings/Makefile index ddc7a4181..5380cec81 100644 --- a/apps/settings/Makefile +++ b/apps/settings/Makefile @@ -25,7 +25,6 @@ app_settings_src = $(addprefix apps/settings/,\ sub_menu/contributors_controller.cpp \ sub_menu/math_options_controller.cpp \ sub_menu/selectable_view_with_messages.cpp \ - sub_menu/usb_protection_controller.cpp \ sub_menu/external_controller.cpp \ sub_menu/brightness_controller.cpp\ ) diff --git a/apps/settings/main_controller.cpp b/apps/settings/main_controller.cpp index 2e61b63aa..d7a15e3a1 100644 --- a/apps/settings/main_controller.cpp +++ b/apps/settings/main_controller.cpp @@ -45,7 +45,6 @@ MainController::MainController(Responder * parentResponder, InputEventHandlerDel m_examModeController(this), m_aboutController(this), m_preferencesController(this), - m_usbInfoController(this), m_externalController(this) { for (int i = 0; i < k_numberOfSimpleChevronCells; i++) { @@ -101,8 +100,6 @@ bool MainController::handleEvent(Ion::Events::Event event) { subController = &m_dateTimeController; } else if (title == I18n::Message::MathOptions) { subController = &m_mathOptionsController; - } else if (title == I18n::Message::UsbSetting) { - subController = &m_usbInfoController; } else if (title == I18n::Message::CodeApp) { subController = &m_codeOptionsController; } else if (title == I18n::Message::ExternalApps) { diff --git a/apps/settings/main_controller.h b/apps/settings/main_controller.h index 618758643..3e1c5ba82 100644 --- a/apps/settings/main_controller.h +++ b/apps/settings/main_controller.h @@ -12,7 +12,6 @@ #include "sub_menu/localization_controller.h" #include "sub_menu/math_options_controller.h" #include "sub_menu/preferences_controller.h" -#include "sub_menu/usb_protection_controller.h" #include "sub_menu/external_controller.h" #include "sub_menu/brightness_controller.h" @@ -83,7 +82,6 @@ private: ExamModeController m_examModeController; AboutController m_aboutController; PreferencesController m_preferencesController; - UsbInfoController m_usbInfoController; ExternalController m_externalController; }; diff --git a/apps/settings/sub_menu/preferences_controller.cpp b/apps/settings/sub_menu/preferences_controller.cpp index bba0ae46b..06650e842 100644 --- a/apps/settings/sub_menu/preferences_controller.cpp +++ b/apps/settings/sub_menu/preferences_controller.cpp @@ -222,8 +222,6 @@ void PreferencesController::setPreferenceWithValueIndex(I18n::Message message, i preferences->setSymbolOfFunction((Preferences::SymbolFunction)valueIndex); } else if (message == I18n::Message::FontSizes) { GlobalPreferences::sharedGlobalPreferences()->setFont(valueIndex == 0 ? KDFont::LargeFont : KDFont::SmallFont); - } else if (message == I18n::Message::USBProtectionLevel) { - GlobalPreferences::sharedGlobalPreferences()->setDfuLevel(valueIndex); } } @@ -250,9 +248,6 @@ int PreferencesController::valueIndexForPreference(I18n::Message message) const if (message == I18n::Message::FontSizes) { return GlobalPreferences::sharedGlobalPreferences()->font() == KDFont::LargeFont ? 0 : 1; } - if (message == I18n::Message::USBProtectionLevel) { - return GlobalPreferences::sharedGlobalPreferences()->dfuLevel(); - } return 0; } diff --git a/apps/settings/sub_menu/usb_protection_controller.cpp b/apps/settings/sub_menu/usb_protection_controller.cpp deleted file mode 100644 index 08dc94f23..000000000 --- a/apps/settings/sub_menu/usb_protection_controller.cpp +++ /dev/null @@ -1,84 +0,0 @@ -#include "usb_protection_controller.h" - -#include -#include -#include -#include -#include -#include "../../apps_container.h" -#include "../../global_preferences.h" - -using namespace Poincare; -using namespace Shared; - -namespace Settings { - -UsbInfoController::UsbInfoController(Responder *parentResponder): - GenericSubController(parentResponder), - m_usbProtectionLevelController(this), - m_contentView(&m_selectableTableView) -{ - m_switchCell.setMessageFont(KDFont::LargeFont); - m_dfuLevelCell.setMessageFont(KDFont::LargeFont); -} - -bool UsbInfoController::handleEvent(Ion::Events::Event event) { - if ((Ion::Events::OK == event || Ion::Events::EXE == event || Ion::Events::Right == event) && selectedRow() == 0) { - bool dfuWasUnlocked = GlobalPreferences::sharedGlobalPreferences()->dfuUnlocked(); - GlobalPreferences::sharedGlobalPreferences()->setDfuUnlocked(!dfuWasUnlocked); - m_selectableTableView.reloadCellAtLocation(0, 0); - return true; - } - - if ((Ion::Events::OK == event || Ion::Events::EXE == event || Ion::Events::Right == event) && selectedRow() == 1) { - GenericSubController *subController = &m_usbProtectionLevelController; - subController->setMessageTreeModel(m_messageTreeModel->childAtIndex(1)); - StackViewController *stack = stackController(); - m_lastSelect = selectedRow(); - stack->push(subController); - return true; - } - - return GenericSubController::handleEvent(event); -} - -HighlightCell *UsbInfoController::reusableCell(int index, int type) { - if (index == 0) { - return &m_switchCell; - } - assert(index == 1); - return &m_dfuLevelCell; -} - -int UsbInfoController::reusableCellCount(int type) { - assert(type == 0); - return 2; -} - -void UsbInfoController::willDisplayCellForIndex(HighlightCell *cell, int index) { - GenericSubController::willDisplayCellForIndex(cell, index); - - if (index == 0) { - MessageTableCellWithSwitch *myCell = (MessageTableCellWithSwitch *)cell; - SwitchView *mySwitch = (SwitchView *)myCell->accessoryView(); - mySwitch->setState(!GlobalPreferences::sharedGlobalPreferences()->dfuUnlocked()); - } else if (index == 1) { - MessageTableCellWithChevronAndMessage *m_cell = (MessageTableCellWithChevronAndMessage *)cell; - int currentLevel = GlobalPreferences::sharedGlobalPreferences()->dfuLevel(); - if (currentLevel == 0) { - m_cell->setSubtitle(I18n::Message::USBDefaultLevelDesc); - } else if (currentLevel == 1) {; - m_cell->setSubtitle(I18n::Message::USBLowLevelDesc); - } else { - assert(currentLevel == 2); - m_cell->setSubtitle(I18n::Message::USBParanoidLevelDesc); - } - } -} - -void UsbInfoController::didEnterResponderChain(Responder *previousFirstResponder) { - m_contentView.reload(); - I18n::Message infoMessages[] = {I18n::Message::USBExplanation1, I18n::Message::USBExplanation2, I18n::Message::USBExplanation3}; - m_contentView.setMessages(infoMessages, k_numberOfExplanationMessages); -} -} diff --git a/apps/settings/sub_menu/usb_protection_controller.h b/apps/settings/sub_menu/usb_protection_controller.h deleted file mode 100644 index ec7b097fd..000000000 --- a/apps/settings/sub_menu/usb_protection_controller.h +++ /dev/null @@ -1,30 +0,0 @@ -#ifndef SETTINGS_usb_protection_controller_H -#define SETTINGS_usb_protection_controller_H - -#include "generic_sub_controller.h" -#include "preferences_controller.h" -#include "selectable_view_with_messages.h" - -namespace Settings { - -class UsbInfoController : public GenericSubController { -public: - UsbInfoController(Responder* parentResponder); - View* view() override { return &m_contentView; } - bool handleEvent(Ion::Events::Event event) override; - TELEMETRY_ID("UsbInfo"); - void didEnterResponderChain(Responder* previousFirstResponder) override; - HighlightCell* reusableCell(int index, int type) override; - int reusableCellCount(int type) override; - void willDisplayCellForIndex(HighlightCell* cell, int index) override; -private: - static constexpr int k_numberOfExplanationMessages = 3; - PreferencesController m_usbProtectionLevelController; - SelectableViewWithMessages m_contentView; - MessageTableCellWithSwitch m_switchCell; - MessageTableCellWithChevronAndMessage m_dfuLevelCell; -}; - -} - -#endif diff --git a/apps/usb/base.de.i18n b/apps/usb/base.de.i18n index 50aaa3a47..794b4d36b 100644 --- a/apps/usb/base.de.i18n +++ b/apps/usb/base.de.i18n @@ -5,8 +5,3 @@ ConnectedMessage3 = "getomega.dev/ide." ConnectedMessage4 = "Drücken Sie die Zurück-Taste am" ConnectedMessage5 = "Taschenrechner oder Kabel abziehen," ConnectedMessage6 = "um die Verbindung zu trennen." -DfuStatus = "Status des Rechners:" -DfuStatusUnprotected = "UNGESCHÜTZT" -USBProtectionLevel0 = "Standardschutz" -USBProtectionLevel1 = "Omega Schutz" -USBProtectionLevel2 = "Systemschutz" diff --git a/apps/usb/base.en.i18n b/apps/usb/base.en.i18n index c18e22d02..0eb615fa2 100644 --- a/apps/usb/base.en.i18n +++ b/apps/usb/base.en.i18n @@ -5,8 +5,3 @@ ConnectedMessage3 = "getomega.dev/ide" ConnectedMessage4 = "Press the BACK key of your" ConnectedMessage5 = "calculator or unplug it to" ConnectedMessage6 = "disconnect it." -DfuStatus = "Calculator status:" -DfuStatusUnprotected = "UNPROTECTED" -USBProtectionLevel0 = "Default Protection" -USBProtectionLevel1 = "Omega Protection" -USBProtectionLevel2 = "System Protection" diff --git a/apps/usb/base.es.i18n b/apps/usb/base.es.i18n index da1f59b91..89c2aa6d6 100644 --- a/apps/usb/base.es.i18n +++ b/apps/usb/base.es.i18n @@ -5,8 +5,3 @@ ConnectedMessage3 = "getomega.dev/ide" ConnectedMessage4 = "Pulse el botón RETURN de la" ConnectedMessage5 = "calculadora o desenchúfela para" ConnectedMessage6 = "desconectarla." -DfuStatus = "Estado de la calculadora:" -DfuStatusUnprotected = "DESABRIGADO" -USBProtectionLevel0 = "Protección predeterminada" -USBProtectionLevel1 = "Protección Omega" -USBProtectionLevel2 = "Protección del sistema" diff --git a/apps/usb/base.fr.i18n b/apps/usb/base.fr.i18n index 4a0564844..33762ca54 100644 --- a/apps/usb/base.fr.i18n +++ b/apps/usb/base.fr.i18n @@ -5,8 +5,3 @@ ConnectedMessage3 = "getomega.dev/ide" ConnectedMessage4 = "Appuyez sur la touche RETOUR" ConnectedMessage5 = "de la calculatrice ou débranchez-la" ConnectedMessage6 = "pour la déconnecter." -DfuStatus = "Etat de la calculatrice:" -DfuStatusUnprotected = "NON PROTÉGÉE" -USBProtectionLevel0 = "Default Protection" -USBProtectionLevel1 = "Omega Protection" -USBProtectionLevel2 = "System Protection" diff --git a/apps/usb/base.hu.i18n b/apps/usb/base.hu.i18n index 14deb4dd5..605aed35e 100644 --- a/apps/usb/base.hu.i18n +++ b/apps/usb/base.hu.i18n @@ -5,8 +5,3 @@ ConnectedMessage3 = "fel getomega.dev/ide ra." ConnectedMessage4 = "Nyomjon majd a VISSZA gombra" ConnectedMessage5 = "vagy huzza ki a kábelt azért" ConnectedMessage6 = "hogy a másolás véget érjen." -DfuStatus = "Számológép állapota:" -DfuStatusUnprotected = "VÉDTELEN" -USBProtectionLevel0 = "Alapértelmezett védelem" -USBProtectionLevel1 = "Omega védelem" -USBProtectionLevel2 = "Rendszervédelem" diff --git a/apps/usb/base.it.i18n b/apps/usb/base.it.i18n index 3e6bff481..fdc2be0bd 100644 --- a/apps/usb/base.it.i18n +++ b/apps/usb/base.it.i18n @@ -5,8 +5,3 @@ ConnectedMessage3 = "getomega.dev/ide" ConnectedMessage4 = "Premere sul tasto INDIETRO della" ConnectedMessage5 = "calcolatrice o scollegatela per" ConnectedMessage6 = "disconnetterla." -DfuStatus = "Stato della calcolatrice:" -DfuStatusUnprotected = "INDIFESO" -USBProtectionLevel0 = "Protezione predefinita" -USBProtectionLevel1 = "Protezione Omega" -USBProtectionLevel2 = "Protezione del sistema" diff --git a/apps/usb/base.nl.i18n b/apps/usb/base.nl.i18n index e77a91708..db29c1127 100644 --- a/apps/usb/base.nl.i18n +++ b/apps/usb/base.nl.i18n @@ -5,8 +5,3 @@ ConnectedMessage3 = "getomega.dev/ide" ConnectedMessage4 = "Druk op de TERUG toets van je" ConnectedMessage5 = "rekenmachine of verwijder de" ConnectedMessage6 = " kabel om hem los te koppelen." -DfuStatus = "Rekenmachine status:" -DfuStatusUnprotected = "NIET BESCHERMD" -USBProtectionLevel0 = "Standaardbeveiliging" -USBProtectionLevel1 = "Omega Bescherming" -USBProtectionLevel2 = "Systeembeveiliging" diff --git a/apps/usb/base.pt.i18n b/apps/usb/base.pt.i18n index 5abe517f0..408b24db7 100644 --- a/apps/usb/base.pt.i18n +++ b/apps/usb/base.pt.i18n @@ -5,8 +5,3 @@ ConnectedMessage3 = "getomega.dev/ide" ConnectedMessage4 = "Pressione o botão RETURN na" ConnectedMessage5 = "calculadora ou desligue-a para a" ConnectedMessage6 = "desconectar." -DfuStatus = "Status da calculadora:" -DfuStatusUnprotected = "DESPROTEGIDO" -USBProtectionLevel0 = "Proteção padrão" -USBProtectionLevel1 = "Proteção Ômega" -USBProtectionLevel2 = "Proteção do sistema" diff --git a/apps/usb/usb_connected_controller.cpp b/apps/usb/usb_connected_controller.cpp index 3592d498e..09f2978d2 100644 --- a/apps/usb/usb_connected_controller.cpp +++ b/apps/usb/usb_connected_controller.cpp @@ -12,8 +12,8 @@ static constexpr I18n::Message sUSBConnectedMessages[] = { I18n::Message::BlankMessage, I18n::Message::ConnectedMessage4, I18n::Message::ConnectedMessage5, - I18n::Message::ConnectedMessage6, - I18n::Message::DfuStatus}; + I18n::Message::ConnectedMessage6 +}; static constexpr KDColor sUSBConnectedFGColors[] = { Palette::PrimaryText, @@ -34,37 +34,13 @@ USBConnectedController::USBConnectedController() : } USBConnectedController::ContentView::ContentView() { - // We set the styles of the messages - for (uint8_t i = 0; i < k_numberOfMessages; i++) { + for (uint8_t i = 0; i < k_numberOfUSBMessages; i++) { m_messageTextViews[i].setFont(i == 0 ? KDFont::LargeFont : KDFont::SmallFont); m_messageTextViews[i].setAlignment(0.5f, 0.5f); m_messageTextViews[i].setTextColor(sUSBConnectedFGColors[i]); m_messageTextViews[i].setBackgroundColor(Palette::BackgroundHard); - } - - // We set the texts of the firsts defaults messages - for (uint8_t i = 0; i < k_numberOfUSBMessages; i++) { m_messageTextViews[i].setText(I18n::translate(sUSBConnectedMessages[i])); } - - // Last message, depending of the USB protection level - if (GlobalPreferences::sharedGlobalPreferences()->dfuUnlocked()) { - m_messageTextViews[k_numberOfUSBMessages].setText(I18n::translate(I18n::Message::DfuStatusUnprotected)); - } else { - int protectionLevel = GlobalPreferences::sharedGlobalPreferences()->dfuLevel(); - switch (protectionLevel) { - case 0: - m_messageTextViews[9].setText(I18n::translate(I18n::Message::USBProtectionLevel0)); - break; - case 1: - m_messageTextViews[9].setText(I18n::translate(I18n::Message::USBProtectionLevel1)); - break; - default: - assert(protectionLevel == 2); - m_messageTextViews[9].setText(I18n::translate(I18n::Message::USBProtectionLevel2)); - break; - } - } } void USBConnectedController::ContentView::drawRect(KDContext *ctx, KDRect rect) const { @@ -72,7 +48,7 @@ void USBConnectedController::ContentView::drawRect(KDContext *ctx, KDRect rect) } View *USBConnectedController::ContentView::subviewAtIndex(int index) { - assert(index < k_numberOfMessages); + assert(index < k_numberOfUSBMessages); return &(m_messageTextViews[index]); } @@ -81,7 +57,7 @@ void USBConnectedController::ContentView::layoutSubviews(bool force) { KDCoordinate titleHeight = m_messageTextViews[0].minimalSizeForOptimalDisplay().height(); KDCoordinate textHeight = KDFont::SmallFont->glyphSize().height(); m_messageTextViews[0].setFrame(KDRect(0, k_titleMargin, width, titleHeight), force); - for (uint8_t i = 1; i < k_numberOfMessages; i++) { + for (uint8_t i = 1; i < k_numberOfUSBMessages; i++) { m_messageTextViews[i].setFrame(KDRect(0, k_paragraphHeight + (i - 1) * textHeight, width, textHeight), force); } } diff --git a/apps/usb/usb_connected_controller.h b/apps/usb/usb_connected_controller.h index c0b991521..d6e3de3eb 100644 --- a/apps/usb/usb_connected_controller.h +++ b/apps/usb/usb_connected_controller.h @@ -16,15 +16,14 @@ private: ContentView(); void drawRect(KDContext * ctx, KDRect rect) const override; protected: - int numberOfSubviews() const override { return k_numberOfMessages; } + int numberOfSubviews() const override { return k_numberOfUSBMessages; } View * subviewAtIndex(int index) override; void layoutSubviews(bool force = false) override; private: constexpr static KDCoordinate k_titleMargin = 30; constexpr static KDCoordinate k_paragraphHeight = 80; - constexpr static uint8_t k_numberOfUSBMessages = 9; - constexpr static uint8_t k_numberOfMessages = k_numberOfUSBMessages + 1; - MessageTextView m_messageTextViews[k_numberOfMessages]; + constexpr static uint8_t k_numberOfUSBMessages = 8; + MessageTextView m_messageTextViews[k_numberOfUSBMessages]; }; ContentView m_contentView; };