~aleteoryx/muditaos

cd51f0dca55dd45b74eb87225803c7e9342b6a04 — Kuba 3 years ago 7e6f54a pure_1.3.0-rc.1
[MOS-519] Fixed ICE conntact calls

Now user is able to make emergency call to ice contact
couple times in row.
M module-apps/application-call/ApplicationCall.cpp => module-apps/application-call/ApplicationCall.cpp +3 -0
@@ 41,6 41,7 @@ namespace app
        });
        statusBarManager->enableIndicators(
            {Indicator::Signal, Indicator::Time, Indicator::Battery, Indicator::SimCard});

        addActionReceiver(manager::actions::Call, [this](auto &&data) {
            if (auto msg = dynamic_cast<app::CallSwitchData *>(data.get()); msg != nullptr) {
                handleCallEvent(msg->getPhoneNumber().getEntered(), ExternalRequest::True);


@@ 159,6 160,7 @@ namespace app

        connect(typeid(cellular::CallEndedNotification), [&](sys::Message *request) {
            callModel->setState(app::call::CallState::Ended);
            switchWindow(app::window::name_call);
            return sys::MessageNone{};
        });



@@ 166,6 168,7 @@ namespace app
            auto message = static_cast<cellular::CallStartedNotification *>(request);
            callModel->setPhoneNumber(message->getNumber());
            callModel->setState(app::call::CallState::Outgoing);
            switchWindow(app::window::name_call);
            return sys::MessageNone{};
        });


M module-apps/application-call/presenter/CallPresenter.cpp => module-apps/application-call/presenter/CallPresenter.cpp +5 -0
@@ 171,4 171,9 @@ namespace app::call
    {
        return model->getPhoneNumber();
    }

    void CallWindowContract::Presenter::handleDelayedViewClose()
    {
        model->setState(CallState::None);
    }
} // namespace app::call

M module-apps/application-call/presenter/CallPresenter.hpp => module-apps/application-call/presenter/CallPresenter.hpp +2 -0
@@ 51,6 51,8 @@ namespace app::call
            void sendSms(const UTF8 &smsBody);
            utils::PhoneNumber getPhoneNumber();

            void handleDelayedViewClose();

          private:
            std::shared_ptr<app::call::AbstractCallModel> model;
            UTF8 getCallerId();

M module-apps/application-call/windows/CallWindow.cpp => module-apps/application-call/windows/CallWindow.cpp +2 -1
@@ 201,8 201,9 @@ namespace gui
    {
        timerCallback = [this](Item &, sys::Timer &timer) {
            LOG_DEBUG("Delayed exit timer callback");
            app::manager::Controller::switchBack(application);
            presenter->handleDelayedViewClose();
            application->popCurrentWindow();
            app::manager::Controller::switchBack(application);
            return true;
        };
        delayedExitTimer =

M module-apps/application-phonebook/models/PhonebookModel.cpp => module-apps/application-phonebook/models/PhonebookModel.cpp +0 -1
@@ 198,7 198,6 @@ void PhonebookModel::activateContactSelectCallback()
            std::unique_ptr<PhonebookSearchRequest> data = std::make_unique<PhonebookSearchRequest>();
            data->result                                 = item->contact;
            data->setDescription("PhonebookSearchRequest");

            return app::manager::Controller::switchBack(
                application,
                std::make_unique<app::manager::SwitchBackRequest>(application->GetName(), std::move(data)));