From e27f960a04daacd1567b4db67e68108f55e0e7d6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Luk=C3=A1=C5=A1=20Tinkl?= Date: Wed, 20 Aug 2025 17:33:50 +0200 Subject: [PATCH 1/2] chore: don't enforce the HomePage as the start section - treat the HomePage as any other section Fixes #18664 --- src/app/modules/main/module.nim | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/src/app/modules/main/module.nim b/src/app/modules/main/module.nim index da9da08beb8..0ca5627ce87 100644 --- a/src/app/modules/main/module.nim +++ b/src/app/modules/main/module.nim @@ -701,6 +701,8 @@ method load*[T]( enabled = true, ) self.view.model().addItem(homePageSectionItem) + if activeSectionId == homePageSectionItem.id: + activeSection = homePageSectionItem # Communities Portal Section let communitiesPortalSectionItem = initSectionItem( @@ -863,8 +865,9 @@ method load*[T]( self.marketModule.load() # If the home page is enabled, we default to it as the opening section - if homePageEnabled: - activeSection = homePageSectionItem + # (disabled for 2.35 as per https://github.com/status-im/status-desktop/issues/18664, revisit after) + #if homePageEnabled: + # activeSection = homePageSectionItem # Set active section on app start # If section is empty or profile wait until chats are loaded @@ -979,8 +982,8 @@ method onChatsLoaded*[T]( self.events.emit(SIGNAL_MAIN_LOADED, Args()) - # Set active section if it is one of the channel sections and the home page is not enabled - if not singletonInstance.featureFlags().getHomePageEnabled() and not activeSection.isEmpty(): + # Set active section if it is one of the channel sections + if not activeSection.isEmpty(): self.setActiveSection(activeSection) self.view.sectionsLoaded() From 5dd76b117853cf667fa25cdfa58a2e4506926a74 Mon Sep 17 00:00:00 2001 From: Anastasiya Date: Fri, 22 Aug 2025 12:27:21 +0300 Subject: [PATCH 2/2] chore(@e2e): fix tests to reflect the changes in UI --- test/e2e/gui/main_window.py | 4 ++-- test/e2e/helpers/settings_helper.py | 1 - test/e2e/tests/communities/test_communities_categories.py | 2 -- test/e2e/tests/communities/test_communities_channels.py | 1 - .../test_add_edit_restart_add_delete_generated_account.py | 2 +- .../crtitical_tests_prs/test_onboarding_import_seed.py | 2 +- .../crtitical_tests_prs/test_onboarding_sync_with_code.py | 6 +++--- .../test_settings_password_change_password.py | 2 +- .../wallet_load_time/test_wallet_loading_time.py | 2 +- 9 files changed, 9 insertions(+), 13 deletions(-) diff --git a/test/e2e/gui/main_window.py b/test/e2e/gui/main_window.py index 4198a68661e..bc4c76e55e1 100644 --- a/test/e2e/gui/main_window.py +++ b/test/e2e/gui/main_window.py @@ -179,9 +179,9 @@ def create_profile(self, user_account: UserAccount): splash_screen.wait_until_appears() splash_screen.wait_until_hidden(APP_LOAD_TIMEOUT_MSEC) - # Navigate from home to settings first # since we now struggle with 3 words names, I need to change display name first - settings_screen = self.home.open_from_dock(DockButtons.SETTINGS.value) + left_panel = MainLeftPanel() + settings_screen = left_panel.open_settings() profile = settings_screen.left_panel.open_profile_settings() profile.set_name(user_account.name) profile.save_changes_button.click() diff --git a/test/e2e/helpers/settings_helper.py b/test/e2e/helpers/settings_helper.py index 0d131242555..3eebf1e29c0 100644 --- a/test/e2e/helpers/settings_helper.py +++ b/test/e2e/helpers/settings_helper.py @@ -2,7 +2,6 @@ def enable_testnet_mode(main_window): - main_window.home.open_from_dock(DockButtons.SETTINGS.value) wallet_settings = main_window.left_panel.open_settings().left_panel.open_wallet_settings() test_mode_popup = wallet_settings.open_networks().switch_testnet_mode_toggle() test_mode_popup.turn_on_testnet_mode() diff --git a/test/e2e/tests/communities/test_communities_categories.py b/test/e2e/tests/communities/test_communities_categories.py index 380a454abf2..30d2b5714d0 100644 --- a/test/e2e/tests/communities/test_communities_categories.py +++ b/test/e2e/tests/communities/test_communities_categories.py @@ -6,7 +6,6 @@ from allure_commons._allure import step from constants import RandomCommunity -from constants.dock_buttons import DockButtons from tests import test_data from gui.components.context_menu import ContextMenu from gui.main_window import MainWindow @@ -22,7 +21,6 @@ def test_member_role_cannot_add_edit_or_delete_category(main_screen, user_data, user_account): with step('Choose community user is not owner of'): - main_screen.home.open_from_dock(DockButtons.WALLET.value) community_screen = main_screen.left_panel.select_community('Community with 2 users') with step('Verify that member cannot add category'): diff --git a/test/e2e/tests/communities/test_communities_channels.py b/test/e2e/tests/communities/test_communities_channels.py index c326ef9323f..73fd242b538 100644 --- a/test/e2e/tests/communities/test_communities_channels.py +++ b/test/e2e/tests/communities/test_communities_channels.py @@ -84,7 +84,6 @@ def test_create_edit_remove_community_channel(main_screen, channel_name, channel def test_member_role_cannot_add_edit_and_delete_channels(main_screen: MainWindow): with step('Choose community user is not owner of'): - main_screen.home.open_from_dock(DockButtons.WALLET.value) community_screen = main_screen.left_panel.select_community('Community with 2 users') with step('Verify that member cannot add new channel'): with step('Verify that create channel or category button is not present'): diff --git a/test/e2e/tests/crtitical_tests_prs/test_add_edit_restart_add_delete_generated_account.py b/test/e2e/tests/crtitical_tests_prs/test_add_edit_restart_add_delete_generated_account.py index 4aa539cf3fd..d4821a0d617 100644 --- a/test/e2e/tests/crtitical_tests_prs/test_add_edit_restart_add_delete_generated_account.py +++ b/test/e2e/tests/crtitical_tests_prs/test_add_edit_restart_add_delete_generated_account.py @@ -65,7 +65,7 @@ def test_add_edit_restart_add_delete_generated_account(aut: AUT, main_screen: Ma main_screen.authorize_user(user_account) with step('Add second generated wallet account'): - wallet = main_screen.home.open_from_dock(DockButtons.WALLET.value) + wallet = main_screen.left_panel.open_wallet() account_popup = wallet.left_panel.open_add_account_popup() account_popup.set_name(name2).save_changes() diff --git a/test/e2e/tests/crtitical_tests_prs/test_onboarding_import_seed.py b/test/e2e/tests/crtitical_tests_prs/test_onboarding_import_seed.py index a952da663fa..5c21d3ba28a 100644 --- a/test/e2e/tests/crtitical_tests_prs/test_onboarding_import_seed.py +++ b/test/e2e/tests/crtitical_tests_prs/test_onboarding_import_seed.py @@ -32,7 +32,7 @@ def test_import_and_reimport_random_seed( import_seed_and_log_in(create_your_profile_view, seed_phrase, user_account) with step('Verify that restored account reveals correct status wallet address'): - profile = main_window.home.open_from_dock(DockButtons.SETTINGS.value).left_panel.open_profile_settings() + profile = main_window.left_panel.open_settings().left_panel.open_profile_settings() profile.set_name(user_account.name) profile.save_changes_button.click() diff --git a/test/e2e/tests/crtitical_tests_prs/test_onboarding_sync_with_code.py b/test/e2e/tests/crtitical_tests_prs/test_onboarding_sync_with_code.py index 26a1c182301..e2daef7d0b9 100644 --- a/test/e2e/tests/crtitical_tests_prs/test_onboarding_sync_with_code.py +++ b/test/e2e/tests/crtitical_tests_prs/test_onboarding_sync_with_code.py @@ -75,11 +75,9 @@ def test_sync_devices_during_onboarding_change_settings_unpair(multiple_instance SplashScreen().wait_until_hidden(APP_LOAD_TIMEOUT_MSEC) with step('Verify user details are the same with user in first instance'): - home = HomeScreen() - online_identifier = home.open_online_identifier_from_home_screen() + online_identifier = main_window.left_panel.open_online_identifier() assert online_identifier.get_user_name == user.name, \ f'Name in online identifier and display name do not match' - main_window.home.click() main_window.hide() with step(f'Open first instance {aut_one.aut_id} and verify it is synced, click done'): @@ -90,6 +88,7 @@ def test_sync_devices_during_onboarding_change_settings_unpair(multiple_instance lambda: 'Device synced!' in sync_device_found.device_synced_notifications, 23000) assert user.name in sync_device_found.device_synced_notifications sync_device_found.done_button.click() + # TODO: https://github.com/status-im/status-desktop/issues/18680 # with step('Change Allow contact requests toggle state to OFF'): # home = main_window.left_panel.open_home_screen() @@ -129,3 +128,4 @@ def test_sync_devices_during_onboarding_change_settings_unpair(multiple_instance # assert driver.waitFor( # lambda: not msg_stngs.allow_contact_requests_toggle.object.checked, 15000), \ # f'Toggle state should remain unchecked becase devices are not paired' + diff --git a/test/e2e/tests/crtitical_tests_prs/test_settings_password_change_password.py b/test/e2e/tests/crtitical_tests_prs/test_settings_password_change_password.py index a1ba4fa4b7e..d1c31d320e5 100644 --- a/test/e2e/tests/crtitical_tests_prs/test_settings_password_change_password.py +++ b/test/e2e/tests/crtitical_tests_prs/test_settings_password_change_password.py @@ -34,6 +34,6 @@ def test_change_password_and_login(aut: AUT, main_screen: MainWindow, user_accou password=new_password)) with step('Verify that the user logged in correctly'): - online_identifier = main_screen.home.open_online_identifier_from_home_screen() + online_identifier = main_screen.left_panel.open_online_identifier() profile_popup = online_identifier.open_profile_popup_from_online_identifier() assert profile_popup.user_name == user_account.name diff --git a/test/e2e/tests/wallet_main_screen/wallet_load_time/test_wallet_loading_time.py b/test/e2e/tests/wallet_main_screen/wallet_load_time/test_wallet_loading_time.py index a9eb0c0876c..c479a07b77c 100644 --- a/test/e2e/tests/wallet_main_screen/wallet_load_time/test_wallet_loading_time.py +++ b/test/e2e/tests/wallet_main_screen/wallet_load_time/test_wallet_loading_time.py @@ -22,7 +22,7 @@ def test_wallet_loading_time(main_screen, user_data, user_account, tmp_path): os.environ['STATUS_RUNTIME_TEST_MODE'] = 'True' # to omit banners with step('Open wallet after login'): - main_screen.home.open_from_dock(DockButtons.WALLET.value) + main_screen.left_panel.open_wallet() load_times = [] report_lines = []