~aleteoryx/muditaos

f74b809ae0533c03ad7f36c3ccd0c50faaa44089 — Mateusz Grzegorzek 4 years ago 1c551cc
[BH-833] Show popup on Alarm deactivation - part II

Create AlarmDeactivatedWindow popup
which is displayed on AlarmDeactivated event.
M products/BellHybrid/apps/Application.cpp => products/BellHybrid/apps/Application.cpp +7 -0
@@ 3,6 3,7 @@

#include <Application.hpp>
#include <common/popups/AlarmActivatedWindow.hpp>
#include <common/popups/AlarmDeactivatedWindow.hpp>

namespace app
{


@@ 18,6 19,12 @@ namespace app
                                          return std::make_unique<gui::AlarmActivatedWindow>(app);
                                      });
                break;
            case ID::AlarmDeactivated:
                windowsFactory.attach(window::alarm_deactivated_window,
                                      [](app::ApplicationCommon *app, const std::string &name) {
                                          return std::make_unique<gui::AlarmDeactivatedWindow>(app);
                                      });
                break;
            default:
                break;
            }

M products/BellHybrid/apps/application-bell-alarm/ApplicationBellAlarm.cpp => products/BellHybrid/apps/application-bell-alarm/ApplicationBellAlarm.cpp +1 -1
@@ 34,7 34,7 @@ namespace app
            return std::make_unique<gui::BellAlarmWindow>(app, std::move(presenter));
        });

        attachPopups({gui::popup::ID::AlarmActivated});
        attachPopups({gui::popup::ID::AlarmActivated, gui::popup::ID::AlarmDeactivated});
    }

    sys::MessagePointer ApplicationBellAlarm::DataReceivedHandler(sys::DataMessage *msgl, sys::ResponseMessage *resp)

M products/BellHybrid/apps/application-bell-main/ApplicationBellMain.cpp => products/BellHybrid/apps/application-bell-main/ApplicationBellMain.cpp +1 -1
@@ 61,7 61,7 @@ namespace app
            gui::window::name::bell_main_menu_dialog,
            [](ApplicationCommon *app, const std::string &name) { return std::make_unique<gui::Dialog>(app, name); });

        attachPopups({gui::popup::ID::AlarmActivated});
        attachPopups({gui::popup::ID::AlarmActivated, gui::popup::ID::AlarmDeactivated});
    }

    sys::MessagePointer ApplicationBellMain::DataReceivedHandler(sys::DataMessage *msgl, sys::ResponseMessage *resp)

M products/BellHybrid/apps/application-bell-powernap/ApplicationBellPowerNap.cpp => products/BellHybrid/apps/application-bell-powernap/ApplicationBellPowerNap.cpp +1 -1
@@ 51,7 51,7 @@ namespace app
                                  return std::make_unique<gui::PowerNapSessionEndedWindow>(app, std::move(presenter));
                              });

        attachPopups({gui::popup::ID::AlarmActivated});
        attachPopups({gui::popup::ID::AlarmActivated, gui::popup::ID::AlarmDeactivated});
    }

    sys::MessagePointer ApplicationBellPowerNap::DataReceivedHandler(sys::DataMessage *msgl, sys::ResponseMessage *resp)

M products/BellHybrid/apps/application-bell-settings/ApplicationBellSettings.cpp => products/BellHybrid/apps/application-bell-settings/ApplicationBellSettings.cpp +2 -2
@@ 104,8 104,6 @@ namespace app
                return std::make_unique<gui::BellSettingsPrewakeUpWindow>(app, std::move(presenter));
            });

        attachPopups({gui::popup::ID::AlarmActivated});

        // Alarm setup
        windowsFactory.attach(gui::BellSettingsAlarmSettingsWindow::name,
                              [](ApplicationCommon *app, const std::string &name) {


@@ 118,6 116,8 @@ namespace app
                auto presenter = std::make_unique<bell_settings::SnoozePresenter>(provider, std::move(model));
                return std::make_unique<gui::BellSettingsAlarmSettingsSnoozeWindow>(app, std::move(presenter));
            });

        attachPopups({gui::popup::ID::AlarmActivated, gui::popup::ID::AlarmDeactivated});
    }

    sys::MessagePointer ApplicationBellSettings::DataReceivedHandler(sys::DataMessage *msgl, sys::ResponseMessage *resp)

M products/BellHybrid/apps/common/CMakeLists.txt => products/BellHybrid/apps/common/CMakeLists.txt +5 -3
@@ 11,11 11,12 @@ target_include_directories(application-bell-common
target_sources(application-bell-common
    PRIVATE
        src/AlarmModel.cpp
        src/TimeUtils.cpp
        src/popups/AlarmActivatedWindow.cpp
        src/SnoozeSettingsModel.cpp
        src/BellFinishedWindow.cpp
        src/BellSideListItemWithCallbacks.cpp
        src/SnoozeSettingsModel.cpp
        src/TimeUtils.cpp
        src/popups/AlarmActivatedWindow.cpp
        src/popups/AlarmDeactivatedWindow.cpp
    PUBLIC
        include/common/BellFinishedWindow.hpp
        include/common/TimeUtils.hpp


@@ 23,6 24,7 @@ target_sources(application-bell-common
        include/common/models/AlarmModel.hpp
        include/common/models/SnoozeSettingsModel.hpp
        include/common/popups/AlarmActivatedWindow.hpp
        include/common/popups/AlarmDeactivatedWindow.hpp
        include/common/widgets/BellSideListItemWithCallbacks.hpp
)


M products/BellHybrid/apps/common/include/common/popups/AlarmActivatedWindow.hpp => products/BellHybrid/apps/common/include/common/popups/AlarmActivatedWindow.hpp +0 -1
@@ 3,7 3,6 @@

#pragma once

#include <apps-common/popups/presenter/PowerOffPresenter.hpp>
#include <apps-common/windows/Dialog.hpp>
#include <AsyncTask.hpp>


A products/BellHybrid/apps/common/include/common/popups/AlarmDeactivatedWindow.hpp => products/BellHybrid/apps/common/include/common/popups/AlarmDeactivatedWindow.hpp +16 -0
@@ 0,0 1,16 @@
// Copyright (c) 2017-2021, Mudita Sp. z.o.o. All rights reserved.
// For licensing, see https://github.com/mudita/MuditaOS/LICENSE.md

#pragma once

#include <apps-common/windows/Dialog.hpp>

namespace gui
{
    class AlarmDeactivatedWindow : public Dialog
    {
      public:
        explicit AlarmDeactivatedWindow(app::ApplicationCommon *app);
        void onBeforeShow(ShowMode mode, SwitchData *data) override;
    };
} /* namespace gui */

A products/BellHybrid/apps/common/src/popups/AlarmDeactivatedWindow.cpp => products/BellHybrid/apps/common/src/popups/AlarmDeactivatedWindow.cpp +26 -0
@@ 0,0 1,26 @@
// Copyright (c) 2017-2021, Mudita Sp. z.o.o. All rights reserved.
// For licensing, see https://github.com/mudita/MuditaOS/LICENSE.md

#include <common/popups/AlarmDeactivatedWindow.hpp>

#include <apps-common/messages/DialogMetadataMessage.hpp>
#include <apps-common/popups/Popups.hpp>
#include <i18n/i18n.hpp>

namespace gui
{
    AlarmDeactivatedWindow::AlarmDeactivatedWindow(app::ApplicationCommon *app)
        : Dialog(app, popup::window::alarm_deactivated_window)
    {}

    void AlarmDeactivatedWindow::onBeforeShow(ShowMode mode, [[maybe_unused]] SwitchData *data)
    {
        auto msg = std::make_unique<DialogMetadataMessage>(DialogMetadata{
            .title = "", .icon = "bell_alarm_deactivated", .text = utils::translate("app_bell_alarm_deactivated")});
        Dialog::onBeforeShow(mode, msg.get());

        statusBar->setVisible(false);
        header->setTitleVisibility(false);
        bottomBar->setActive(BottomBar::Side::RIGHT, false);
    }
} /* namespace gui */