// Copyright (c) 2017-2022, Mudita Sp. z.o.o. All rights reserved. // For licensing, see https://github.com/mudita/MuditaOS/LICENSE.md #include "SimPINSettingsWindow.hpp" #include #include #include #include #include namespace gui { SimPINSettingsWindow::SimPINSettingsWindow(app::ApplicationCommon *app) : BaseSettingsWindow(app, window::name::sim_pin_settings) { app->bus.sendUnicast(); } void SimPINSettingsWindow::onBeforeShow(ShowMode mode, SwitchData *data) { if (const auto pinSettingsSimData = dynamic_cast(data); pinSettingsSimData != nullptr) { setTitle(utils::translate("app_settings_network_pin_settings") + " (" + pinSettingsSimData->getSim() + ")"); } auto newPinLockStateRetrieved = false; if (const auto pinSettingsLockStateData = dynamic_cast(data); pinSettingsLockStateData != nullptr) { newPinLockStateRetrieved = pinIsOn != pinSettingsLockStateData->getSimCardPinLockState(); if (newPinLockStateRetrieved) { pinIsOn = pinSettingsLockStateData->getSimCardPinLockState(); } } if (mode == ShowMode::GUI_SHOW_RETURN) { application->bus.sendUnicast(); } if (mode == ShowMode::GUI_SHOW_INIT || newPinLockStateRetrieved) { refreshOptionsList(); } } auto SimPINSettingsWindow::buildOptionsList() -> std::list