M module-apps/application-phonebook/models/NewContactModel.cpp => module-apps/application-phonebook/models/NewContactModel.cpp +0 -7
@@ 116,13 116,6 @@ void NewContactModel::clearData()
eraseInternalData();
}
-void NewContactModel::recreateData()
-{
- clearData();
- createData();
- list->rebuildList();
-}
-
bool NewContactModel::verifyData()
{
for (auto item : internalData) {
M module-apps/application-phonebook/models/NewContactModel.hpp => module-apps/application-phonebook/models/NewContactModel.hpp +1 -2
@@ 1,4 1,4 @@
-// Copyright (c) 2017-2021, Mudita Sp. z.o.o. All rights reserved.
+// Copyright (c) 2017-2022, Mudita Sp. z.o.o. All rights reserved.
// For licensing, see https://github.com/mudita/MuditaOS/LICENSE.md
#pragma once
@@ 23,7 23,6 @@ class NewContactModel : public app::InternalModel<gui::ContactListItem *>, publi
explicit NewContactModel(app::ApplicationCommon *app);
void clearData();
- void recreateData();
void saveData(std::shared_ptr<ContactRecord> contactRecord);
void loadData(std::shared_ptr<ContactRecord> contactRecord, gui::SwitchData *data);
void createData();
M module-apps/application-phonebook/windows/PhonebookNewContact.cpp => module-apps/application-phonebook/windows/PhonebookNewContact.cpp +4 -6
@@ 42,6 42,8 @@ namespace gui
newContactModel,
listview::ScrollBarType::PreRendered);
list->setBoundaries(Boundaries::Continuous);
+ newContactModel->createData();
+
setFocusItem(list);
}
@@ 52,12 54,8 @@ namespace gui
void PhonebookNewContact::onBeforeShow(ShowMode mode, SwitchData *data)
{
- if (mode != ShowMode::GUI_SHOW_RETURN) {
- newContactModel->recreateData();
+ if (mode == ShowMode::GUI_SHOW_INIT && data != nullptr) {
newContactModel->loadData(contact, data);
- }
-
- if (mode == ShowMode::GUI_SHOW_INIT) {
list->rebuildList();
}
@@ 188,7 186,7 @@ namespace gui
std::unique_ptr<gui::SwitchData> data =
std::make_unique<PhonebookItemData>(contact, newContactModel->getRequestType());
- data->ignoreCurrentWindowOnStack = true;
+ data->ignoreCurrentWindowOnStack = true;
application->switchWindow(gui::window::name::contact, std::move(data));
return true;
} // namespace gui