Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: add jump-to button in group-detail screen #19134

Conversation

codemaster115
Copy link
Contributor

If you submit PR for issue with bounty then write here Fixes #NN where NN is issue number

otherwise

fixes #19122

Summary

This PR is to add the jump-to floating button in group detail screen.

Platforms

  • Android
  • iOS
  • macOS
  • Linux
  • Windows

Areas that maybe impacted

Functional
  • group chats

Steps to test

  • Open Status
  • Create a group chat
  • Long press a group chat and click group details in the opening sheet.

Before and after screenshots comparison

Simulator Screenshot - iPhone 13 - 2024-03-07 at 09 04 20

status: ready

@status-im-auto
Copy link
Member

status-im-auto commented Mar 7, 2024

Jenkins Builds

Click to see older builds (23)
Commit #️⃣ Finished (UTC) Duration Platform Result
✔️ 3e8d864 #1 2024-03-07 17:13:13 ~8 min android 🤖apk 📲
✔️ 3e8d864 #1 2024-03-07 17:13:28 ~8 min android-e2e 🤖apk 📲
✔️ 3e8d864 #1 2024-03-07 17:16:55 ~11 min ios 📱ipa 📲
✔️ 3e8d864 #2 2024-03-07 18:08:30 ~3 min tests 📄log
✔️ 942ead7 #2 2024-03-08 13:40:33 ~7 min android-e2e 🤖apk 📲
✔️ 942ead7 #2 2024-03-08 13:40:38 ~7 min android 🤖apk 📲
✔️ 942ead7 #2 2024-03-08 13:45:32 ~12 min ios 📱ipa 📲
✔️ 3b71465 #4 2024-03-18 15:22:59 ~6 min tests 📄log
✔️ 3b71465 #3 2024-03-18 15:24:40 ~8 min ios 📱ipa 📲
✔️ 3b71465 #3 2024-03-18 15:24:40 ~8 min android-e2e 🤖apk 📲
✔️ 3b71465 #3 2024-03-18 15:24:52 ~8 min android 🤖apk 📲
✔️ 7baa265 #6 2024-03-18 18:14:51 ~6 min tests 📄log
✔️ 7baa265 #5 2024-03-18 18:15:17 ~6 min android-e2e 🤖apk 📲
✔️ 7baa265 #5 2024-03-18 18:16:16 ~7 min android 🤖apk 📲
✔️ 7baa265 #5 2024-03-18 18:17:20 ~8 min ios 📱ipa 📲
✔️ 4519da2 #6 2024-03-18 18:26:12 ~6 min android-e2e 🤖apk 📲
✔️ 4519da2 #6 2024-03-18 18:26:29 ~6 min android 🤖apk 📲
✔️ 4519da2 #6 2024-03-18 18:28:09 ~8 min ios 📱ipa 📲
✔️ 4519da2 #8 2024-03-18 19:01:49 ~4 min tests 📄log
✔️ 4e1db1a #9 2024-03-18 20:10:39 ~6 min tests 📄log
✔️ 4e1db1a #7 2024-03-18 20:12:17 ~8 min android-e2e 🤖apk 📲
✔️ 4e1db1a #7 2024-03-18 20:12:24 ~8 min android 🤖apk 📲
✔️ 4e1db1a #7 2024-03-18 20:12:28 ~8 min ios 📱ipa 📲
Commit #️⃣ Finished (UTC) Duration Platform Result
✔️ 927ec6a #8 2024-03-19 12:07:36 ~7 min android-e2e 🤖apk 📲
✔️ 927ec6a #8 2024-03-19 12:07:44 ~7 min android 🤖apk 📲
927ec6a #8 2024-03-19 12:09:11 ~8 min ios 📄log
✔️ 927ec6a #11 2024-03-19 12:28:29 ~3 min tests 📄log
927ec6a #9 2024-03-19 12:30:23 ~1 min ios 📄log
927ec6a #10 2024-03-19 13:11:21 ~12 sec ios 📄log
✔️ 474a5c9 #12 2024-03-19 13:23:22 ~5 min tests 📄log
✔️ 474a5c9 #9 2024-03-19 13:24:28 ~7 min android-e2e 🤖apk 📲
✔️ 474a5c9 #9 2024-03-19 13:24:43 ~7 min android 🤖apk 📲
✔️ 474a5c9 #11 2024-03-19 13:26:35 ~9 min ios 📱ipa 📲

@@ -166,4 +168,15 @@
:render-section-footer-fn contacts-section-footer
:render-data {:chat-id chat-id
:admin? admin?}
:render-fn contact-item-render}]]))
:render-fn contact-item-render}]
[quo/floating-shell-button
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

hey @Parveshdhull instead of adding this to each screen do you think it would be possible just to have :shell-button? true option for the screen?

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hi @flexsurfer, that's great suggestion.

How about we just use this button also as a overlay similar to alert banner.
Because foating button supposed to use custom animation of fading instead of folding with closed screen. (Check out home screen animation of floating button for reference)

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

agree with @flexsurfer here, should be a generic solution where possible 👍

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Created an issue: #19192

@codemaster115 codemaster115 force-pushed the 19122-the-jump-to-button-is-missing-on-the-group-details-screen branch from 942ead7 to 3b71465 Compare March 18, 2024 15:15
@codemaster115 codemaster115 force-pushed the 19122-the-jump-to-button-is-missing-on-the-group-details-screen branch from ea121c2 to 7baa265 Compare March 18, 2024 18:08
:render-fn contact-item-render}]]))
:render-fn contact-item-render}]
[quo/floating-shell-button
{:key :shell
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

why key?

(we also have similar :key and :on-press in status-im.contexts.profile.settings.view, needs to be refactored)
(will be addressed in #19192)

Copy link
Member

@Parveshdhull Parveshdhull Mar 18, 2024

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

please remove this key, I am not sure why we added in settings page. Also this might show an error component with duplicate key etc... (if being used, but here :key will be just ignored)

@status-im-auto
Copy link
Member

94% of end-end tests have passed

Total executed tests: 48
Failed tests: 2
Expected to fail tests: 1
Passed tests: 45
IDs of failed tests: 702840,703629 
IDs of expected to fail tests: 703503 

Failed tests (2)

Click to expand
  • Rerun failed tests

  • Class TestCommunityMultipleDeviceMerged:

    1. test_community_emoji_send_copy_paste_reply, id: 702840

    Device 2: Tap on found: SendMessageButton
    Device 1: Looking for a message by text: test message

    critical/chats/test_public_chat_browsing.py:526: in test_community_emoji_send_copy_paste_reply
        chat_element_1.wait_for_element(60)
    ../views/base_element.py:129: in wait_for_element
        raise TimeoutException(
     Device `1`: `ChatElementByText` by` xpath`: `//*[starts-with(@text,'test message')]/ancestor::android.view.ViewGroup[@content-desc='chat-item']` is not found on the screen after wait_for_element
    



    Device sessions

    Class TestCommunityMultipleDeviceMergedTwo:

    1. test_community_join_when_node_owner_offline, id: 703629

    Device 2: Looking for community: 'open community'
    Device 2: Click until Text by accessibility id: community-description-text will be presented

    critical/chats/test_public_chat_browsing.py:1178: in test_community_join_when_node_owner_offline
        self.errors.verify_no_errors()
    base_test_case.py:191: in verify_no_errors
        pytest.fail('\n '.join([self.errors.pop(0) for _ in range(len(self.errors))]))
     Text "You joined “closed community”" in shown toast element doesn't match expected "You joined “open community”"
    



    Device sessions

    Expected to fail tests (1)

    Click to expand

    Class TestCommunityOneDeviceMerged:

    1. test_community_discovery, id: 703503

    Test is not run, e2e blocker  
    

    [[reason: [NOTRUN] Curated communities not loading, https://github.com//issues/17852]]

    Passed tests (45)

    Click to expand

    Class TestActivityMultipleDevicePRTwo:

    1. test_activity_center_mentions, id: 702957
    Device sessions

    2. test_activity_center_admin_notification_accept_swipe, id: 702958
    Device sessions

    Class TestGroupChatMultipleDeviceMergedNewUI:

    1. test_group_chat_pin_messages, id: 702732
    Device sessions

    2. test_group_chat_mute_chat, id: 703495
    Device sessions

    3. test_group_chat_send_image_save_and_share, id: 703297
    Device sessions

    4. test_group_chat_reactions, id: 703202
    Device sessions

    5. test_group_chat_join_send_text_messages_push, id: 702807
    Device sessions

    6. test_group_chat_offline_pn, id: 702808
    Device sessions

    Class TestOneToOneChatMultipleSharedDevicesNewUiTwo:

    1. test_1_1_chat_delete_via_long_press_relogin, id: 702784
    Device sessions

    2. test_1_1_chat_is_shown_message_sent_delivered_from_offline, id: 702783
    Device sessions

    3. test_1_1_chat_mute_chat, id: 703496
    Device sessions

    Class TestOneToOneChatMultipleSharedDevicesNewUi:

    1. test_1_1_chat_emoji_send_reply_and_open_link, id: 702782
    Device sessions

    2. test_1_1_chat_text_message_delete_push_disappear, id: 702733
    Device sessions

    3. test_1_1_chat_push_emoji, id: 702813
    Device sessions

    4. test_1_1_chat_non_latin_messages_stack_update_profile_photo, id: 702745
    Device sessions

    5. test_1_1_chat_edit_message, id: 702855
    Device sessions

    6. test_1_1_chat_send_image_save_and_share, id: 703391
    Device sessions

    7. test_1_1_chat_pin_messages, id: 702731
    Device sessions

    8. test_1_1_chat_message_reaction, id: 702730
    Device sessions

    Class TestCommunityMultipleDeviceMerged:

    1. test_community_several_images_send_reply, id: 703194
    Device sessions

    2. test_community_one_image_send_reply, id: 702859
    Device sessions

    3. test_community_mark_all_messages_as_read, id: 703086
    Device sessions

    4. test_community_contact_block_unblock_offline, id: 702894
    Device sessions

    5. test_community_edit_delete_message_when_offline, id: 704615
    Device sessions

    6. test_community_message_delete, id: 702839
    Device sessions

    7. test_community_message_send_check_timestamps_sender_username, id: 702838
    Device sessions

    8. test_community_links_with_previews_github_youtube_twitter_gif_send_enable, id: 702844
    Device sessions

    9. test_community_message_edit, id: 702843
    Device sessions

    10. test_community_unread_messages_badge, id: 702841
    Device sessions

    Class TestDeepLinksOneDevice:

    1. test_links_open_universal_links_from_chat, id: 704613
    Device sessions

    2. test_links_deep_links, id: 702775
    Device sessions

    Class TestCommunityMultipleDeviceMergedTwo:

    1. test_community_markdown_support, id: 702809
    Device sessions

    2. test_community_hashtag_links_to_community_channels, id: 702948
    Device sessions

    3. test_community_mentions_push_notification, id: 702786
    Device sessions

    4. test_community_leave, id: 702845
    Device sessions

    Class TestCommunityOneDeviceMerged:

    1. test_restore_multiaccount_with_waku_backup_remove_switch, id: 703133
    Device sessions

    2. test_community_copy_and_paste_message_in_chat_input, id: 702742
    Device sessions

    3. test_community_undo_delete_message, id: 702869
    Device sessions

    4. test_community_navigate_to_channel_when_relaunch, id: 702846
    Device sessions

    5. test_community_mute_community_and_channel, id: 703382
    Device sessions

    Class TestActivityMultipleDevicePR:

    1. test_navigation_jump_to, id: 702936
    Device sessions

    2. test_activity_center_reply_read_unread_delete_filter_swipe, id: 702947
    Device sessions

    Class TestActivityCenterContactRequestMultipleDevicePR:

    1. test_add_contact_field_validation, id: 702777
    Device sessions

    2. test_activity_center_contact_request_accept_swipe_mark_all_as_read, id: 702851
    Device sessions

    3. test_activity_center_contact_request_decline, id: 702850
    Device sessions

    @status-im-auto
    Copy link
    Member

    96% of end-end tests have passed

    Total executed tests: 48
    Failed tests: 1
    Expected to fail tests: 1
    Passed tests: 46
    
    IDs of failed tests: 702733 
    
    IDs of expected to fail tests: 703503 
    

    Failed tests (1)

    Click to expand
  • Rerun failed tests

  • Class TestOneToOneChatMultipleSharedDevicesNewUi:

    1. test_1_1_chat_text_message_delete_push_disappear, id: 702733

    Device 2: Find `Text` by `xpath`: `//*[starts-with(@text,'smth I should edit')]/ancestor::android.view.ViewGroup[@content-desc='chat-item']//*[@content-desc='message-status']/android.widget.TextView`
    Device 2: `Text` is `Sent`

    critical/chats/test_1_1_public_chats.py:468: in test_1_1_chat_text_message_delete_push_disappear
        self.chat_2.chat_element_by_text(message_after_edit_1_1).wait_for_status_to_be("Delivered")
    ../views/chat_view.py:243: in wait_for_status_to_be
        raise TimeoutException("Message status was not changed to %s, it's %s" % (expected_status, current_status))
     Message status was not changed to Delivered, it's Sent
    



    Device sessions

    Expected to fail tests (1)

    Click to expand

    Class TestCommunityOneDeviceMerged:

    1. test_community_discovery, id: 703503

    Test is not run, e2e blocker  
    

    [[reason: [NOTRUN] Curated communities not loading, https://github.com//issues/17852]]

    Passed tests (46)

    Click to expand

    Class TestOneToOneChatMultipleSharedDevicesNewUiTwo:

    1. test_1_1_chat_delete_via_long_press_relogin, id: 702784
    Device sessions

    2. test_1_1_chat_is_shown_message_sent_delivered_from_offline, id: 702783
    Device sessions

    3. test_1_1_chat_mute_chat, id: 703496
    Device sessions

    Class TestGroupChatMultipleDeviceMergedNewUI:

    1. test_group_chat_pin_messages, id: 702732
    Device sessions

    2. test_group_chat_mute_chat, id: 703495
    Device sessions

    3. test_group_chat_send_image_save_and_share, id: 703297
    Device sessions

    4. test_group_chat_reactions, id: 703202
    Device sessions

    5. test_group_chat_join_send_text_messages_push, id: 702807
    Device sessions

    6. test_group_chat_offline_pn, id: 702808
    Device sessions

    Class TestDeepLinksOneDevice:

    1. test_links_open_universal_links_from_chat, id: 704613
    Device sessions

    2. test_links_deep_links, id: 702775
    Device sessions

    Class TestCommunityMultipleDeviceMergedTwo:

    1. test_community_markdown_support, id: 702809
    Device sessions

    2. test_community_hashtag_links_to_community_channels, id: 702948
    Device sessions

    3. test_community_mentions_push_notification, id: 702786
    Device sessions

    4. test_community_leave, id: 702845
    Device sessions

    5. test_community_join_when_node_owner_offline, id: 703629
    Device sessions

    Class TestActivityMultipleDevicePR:

    1. test_navigation_jump_to, id: 702936
    Device sessions

    2. test_activity_center_reply_read_unread_delete_filter_swipe, id: 702947
    Device sessions

    Class TestActivityCenterContactRequestMultipleDevicePR:

    1. test_add_contact_field_validation, id: 702777
    Device sessions

    2. test_activity_center_contact_request_accept_swipe_mark_all_as_read, id: 702851
    Device sessions

    3. test_activity_center_contact_request_decline, id: 702850
    Device sessions

    Class TestCommunityOneDeviceMerged:

    1. test_restore_multiaccount_with_waku_backup_remove_switch, id: 703133
    Device sessions

    2. test_community_copy_and_paste_message_in_chat_input, id: 702742
    Device sessions

    3. test_community_undo_delete_message, id: 702869
    Device sessions

    4. test_community_navigate_to_channel_when_relaunch, id: 702846
    Device sessions

    5. test_community_mute_community_and_channel, id: 703382
    Device sessions

    Class TestActivityMultipleDevicePRTwo:

    1. test_activity_center_mentions, id: 702957
    Device sessions

    2. test_activity_center_admin_notification_accept_swipe, id: 702958
    Device sessions

    Class TestCommunityMultipleDeviceMerged:

    1. test_community_several_images_send_reply, id: 703194
    Device sessions

    2. test_community_one_image_send_reply, id: 702859
    Device sessions

    3. test_community_emoji_send_copy_paste_reply, id: 702840
    Device sessions

    4. test_community_mark_all_messages_as_read, id: 703086
    Device sessions

    5. test_community_contact_block_unblock_offline, id: 702894
    Device sessions

    6. test_community_edit_delete_message_when_offline, id: 704615
    Device sessions

    7. test_community_message_delete, id: 702839
    Device sessions

    8. test_community_message_send_check_timestamps_sender_username, id: 702838
    Device sessions

    9. test_community_links_with_previews_github_youtube_twitter_gif_send_enable, id: 702844
    Device sessions

    10. test_community_message_edit, id: 702843
    Device sessions

    11. test_community_unread_messages_badge, id: 702841
    Device sessions

    Class TestOneToOneChatMultipleSharedDevicesNewUi:

    1. test_1_1_chat_emoji_send_reply_and_open_link, id: 702782
    Device sessions

    2. test_1_1_chat_push_emoji, id: 702813
    Device sessions

    3. test_1_1_chat_non_latin_messages_stack_update_profile_photo, id: 702745
    Device sessions

    4. test_1_1_chat_edit_message, id: 702855
    Device sessions

    5. test_1_1_chat_send_image_save_and_share, id: 703391
    Device sessions

    6. test_1_1_chat_pin_messages, id: 702731
    Device sessions

    7. test_1_1_chat_message_reaction, id: 702730
    Device sessions

    @codemaster115 codemaster115 force-pushed the 19122-the-jump-to-button-is-missing-on-the-group-details-screen branch from 4519da2 to 4e1db1a Compare March 18, 2024 20:03
    @mariia-skrypnyk
    Copy link

    Hi @codemaster115 !
    Tiny but important fix! Thank you!

    I've checked iOS and Android and really button now is present there.
    But it doesn't work: tap on it does nothing.

    ISSUE 1: Jump to button doesn't redirect user to the Jump to screen

    Expected result: user can tap on Jump to button and be redirected to the Jump to screen
    Actual result: tap on Jump to button does nothing

    *iOS and Android

    @codemaster115 codemaster115 force-pushed the 19122-the-jump-to-button-is-missing-on-the-group-details-screen branch from 4e1db1a to 927ec6a Compare March 19, 2024 12:00
    @codemaster115 codemaster115 force-pushed the 19122-the-jump-to-button-is-missing-on-the-group-details-screen branch from 927ec6a to 474a5c9 Compare March 19, 2024 13:17
    @mariia-skrypnyk
    Copy link

    Hi @codemaster115 !
    Thanks for adding this fix.
    Jump to works fine on both platforms.
    You can merge it!

    @codemaster115 codemaster115 merged commit 2ee7db9 into develop Mar 19, 2024
    6 checks passed
    @codemaster115 codemaster115 deleted the 19122-the-jump-to-button-is-missing-on-the-group-details-screen branch March 19, 2024 14:06
    Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
    Projects
    Archived in project
    Archived in project
    Development

    Successfully merging this pull request may close these issues.

    The 'Jump to' button is missing on the 'Group details' screen
    6 participants