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

[#9657] system messages ui changes in group chat #9800

Closed
wants to merge 2 commits into from

Conversation

ghmulti
Copy link
Contributor

@ghmulti ghmulti commented Jan 12, 2020

Fixes #9657

Summary

Suggest to create separate task for joining together events without separation (chained events) as this pr affects mostly styling

Platforms

Tested on Android

Areas that maybe impacted

Group chats

status: wip (awaiting feedback)

Screenshot from 2020-01-12 20-23-20

Colored block for margin/padding overview
Screenshot from 2020-01-12 20-21-24

@ghmulti ghmulti requested a review from a team as a code owner January 12, 2020 19:59
@auto-assign auto-assign bot removed the request for review from a team January 12, 2020 19:59
@status-github-bot
Copy link

Pull Request Checklist

  • Docs: Updated the documentation, if affected
  • Docs: Added or updated inline comments explaining intention of the code
  • Tests: Ensured that all new UI elements have been assigned accessibility IDs
  • Tests: Signaled need for E2E tests with label, if applicable
  • Tests: Briefly described what was tested and what platforms were used
  • UI: In case of UI changes, ensured that UI matches Figma
  • UI: In case of UI changes, requested review from a Core UI designer
  • UI: In case of UI changes, included screenshots of implementation

@status-im-auto
Copy link
Member

status-im-auto commented Jan 12, 2020

Jenkins Builds

Click to see older builds (23)
Commit #️⃣ Finished (UTC) Duration Platform Result
✔️ 16e2af7 #1 2020-01-12 20:09:33 ~9 min ios 📦ipa 📲
✔️ 16e2af7 #1 2020-01-12 20:15:40 ~15 min android-e2e 📦apk 📲
✔️ 16e2af7 #1 2020-01-12 20:15:41 ~15 min android 📦apk 📲
✔️ 8671067 #2 2020-01-13 19:52:55 ~10 min ios 📦ipa 📲
✔️ 8671067 #2 2020-01-13 19:57:01 ~15 min android-e2e 📦apk 📲
✔️ 8671067 #2 2020-01-13 19:57:05 ~15 min android 📦apk 📲
✔️ a7ac5f8 #3 2020-01-19 22:22:09 ~8 min ios 📦ipa 📲
✔️ a7ac5f8 #3 2020-01-19 22:27:31 ~13 min android-e2e 📦apk 📲
✔️ a7ac5f8 #3 2020-01-19 22:27:35 ~13 min android 📦apk 📲
6737239 #4 2020-01-30 17:32:32 ~4 min ios 📄log
6737239 #4 2020-01-30 17:34:47 ~6 min android-e2e 📄log
6737239 #4 2020-01-30 17:34:56 ~6 min android 📄log
27a3dbb #5 2020-01-30 19:40:03 ~31 sec android-e2e 📄log
27a3dbb #5 2020-01-30 19:40:03 ~28 sec android 📄log
27a3dbb #5 2020-01-30 19:40:28 ~50 sec ios 📄log
7c2ef5a #6 2020-01-30 19:46:32 ~22 sec android-e2e 📄log
7c2ef5a #6 2020-01-30 19:46:34 ~21 sec android 📄log
7c2ef5a #6 2020-01-30 19:47:02 ~46 sec ios 📄log
7c2ef5a #7 2020-01-31 11:15:18 ~42 sec android 📄log
7c2ef5a #7 2020-01-31 11:15:36 ~50 sec ios 📄log
7ecdbd5 #8 2020-03-06 17:44:32 ~3 min ios 📄log
7ecdbd5 #8 2020-03-06 17:49:08 ~8 min android 📄log
7ecdbd5 #7 2020-03-06 17:49:08 ~9 min android-e2e 📄log
Commit #️⃣ Finished (UTC) Duration Platform Result
✔️ 06dbb20 #9 2020-03-21 14:55:15 ~12 min android 📦apk 📲
✔️ 06dbb20 #9 2020-03-21 14:55:54 ~12 min ios 📦ipa 📲
✔️ 06dbb20 #8 2020-03-21 14:59:18 ~17 min android-e2e 📦apk 📲
✔️ a0fe73b #10 2020-03-23 09:38:30 ~14 min ios 📦ipa 📲
✔️ a0fe73b #9 2020-03-23 09:43:29 ~19 min android-e2e 📦apk 📲
✔️ a0fe73b #10 2020-03-23 09:45:45 ~21 min android 📦apk 📲

@errorists
Copy link
Contributor

errorists commented Jan 13, 2020

IMG_1260
getting this error when trying to connect with mail servers, unfortunately can't test it out

looking at the screenshots, it seems like the horizontal margin padding on those messages is too large, should be 8.

@flexsurfer
Copy link
Member

mailserver error introduced not in this PR

@errorists
Copy link
Contributor

@flexsurfer totally, just stops me from testing in as I can't setup a group chat between a couple devices

@errorists
Copy link
Contributor

@ghmulti ok managed to test it, these look correct as in the design apart from the horizontal margin which should be 8px on both left and right sides, so it's even with chat bubbles.

flexsurfer
flexsurfer previously approved these changes Jan 13, 2020
@ghmulti
Copy link
Contributor Author

ghmulti commented Jan 13, 2020

@errorists sure, there is a max-width limit defined for chat message view (red rectangle), should it be dropped for system messages then?
:max-width (if platform/desktop? 500 320)

here is view after removing max-width for system messages and adding margin 8px on both sides
Screenshot from 2020-01-13 20-27-58
Screenshot from 2020-01-13 20-29-41

@ghmulti
Copy link
Contributor Author

ghmulti commented Jan 13, 2020

it's worth mentioning that changes related to "system messages" are made within generic chat message component, so style changes potentially may affect public groups and one-to-one chat views

@errorists
Copy link
Contributor

@ghmulti thanks, that did the trick! I asked @Ferossgp to review changes in message code since he's too working on them and addressed some of the values in his PR here #9757

@Ferossgp
Copy link
Contributor

Hey @ghmulti, good work! I just have some suggestions, that may have made this type of message less dependent on the text message. What do you think about making them as a separate type in multi-method message-content. That way you will have to check system-message? only in one place and will avoid passing that value through components. You can do that check one-time chat-message.

Thanks!

@churik
Copy link
Member

churik commented Jan 15, 2020

Hello @ghmulti!
Thank you for contribution.
Can you please resolve conflicts and rebase your branch to current develop?

@ghmulti
Copy link
Contributor Author

ghmulti commented Jan 15, 2020

@Ferossgp hey, thanks for feedback and I think you are right - had the same thought

@churik sure, but I'll need to do some refactoring (#9800 (comment))

@churik
Copy link
Member

churik commented Jan 15, 2020

I meant when it will be ready. Thanks!

@ghmulti
Copy link
Contributor Author

ghmulti commented Jan 19, 2020

for now - since there is no content-type-system-text defined in status-go, it is assigned manually based on status-message? flag in chat-message
(when system-message? {:content-type constants/content-type-system-text})
(if this is permissible) after adding new content-type to status-go, that verification needs to be deleted

Copy link
Contributor

@errorists errorists left a comment

Choose a reason for hiding this comment

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

Tested latest commit, group chat system messages look as they should now, thanks!!

@ghmulti
Copy link
Contributor Author

ghmulti commented Jan 30, 2020

@cammellos done 👍

Copy link
Contributor

@cammellos cammellos left a comment

Choose a reason for hiding this comment

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

@Serhy could you give it another quick round of testing? if this tests ok I can merge status-go and update the version with develop.

@churik
Copy link
Member

churik commented Mar 4, 2020

@ghmulti sorry for the significant delay.
Can you please rebase your branch with the latest develop, because builds can't be built now?

@ghmulti
Copy link
Contributor Author

ghmulti commented Mar 6, 2020

@cammellos could you please prepare new status-go build with content-type, assume it will not work with the old build after rebase

@cammellos
Copy link
Contributor

@ghmulti sorry for the delay, I have been off for the past two weeks.
You can use this branch:
feature/add-content-type-group-chat

To update status-go you can run:

make shell
scripts/update-status-go.sh 'feature/add-content-type-group-chat'

and then you can restart the stack and it should pick up the new version.

@ghmulti
Copy link
Contributor Author

ghmulti commented Mar 21, 2020

@churik hey, pushed updated version could you take a look please?
as @cammellos said if everything looks fine he will need to merge status-go and update the version with develop before merging pr

@status-im-auto
Copy link
Member

94% of end-end tests have passed

Total executed tests: 94
Failed tests: 6
Passed tests: 88

Failed tests (6)

Click to expand
1. test_open_public_chat_using_deep_link

Device 1: Type 'https://join.status.im/chat/public/akwtckc' to SearchEditBox
Device 1: Tap 'Confirm' on native keyboard

Device 1: 'OpenInStatusButton' is not found on the screen

Device sessions

2. test_decline_invitation_to_group_chat

Device 1: Tap on SendMessageButton
Device 2: Looking for an element by text: 'revwvnx'

Message with text '@Navy Greenyellow Anemonecrab left the group' was not received

Device sessions

3. test_group_chat_system_messages

Device 1: Looking for a message by text: '@focused Boring Degu left the group'
Device 1: Wait for ChatElementByText

Message with test '@Stormy Darkviolet Kentrosaurus created the group dpyoddt' was not received Message with test '@Focused Boring Degu joined the group' was not received Message with test '@Focused Boring Degu left the group' was not received

Device sessions

4. test_dapps_permissions

Device 1: Tap on ProfileButton
Device 1: Wait for PrivacyAndSecurityButton

Device 1: 'PrivacyAndSecurityButton' is not found on the screen

Device sessions

5. test_pair_devices_sync_one_to_one_contacts_public_chat

Device 2: Wait for PlusButton
Device 2: Looking for an element by text part: 'after-pairing'

"Darkorchid Clueless Ewe" is not found in Contacts after adding when devices are paired

Device sessions

6. test_send_two_transactions_in_batch_in_dapp

Device 1: Wait for SignButton
Device 1: Wait for SignButton

Device 1: 'OkButton' is not found on the screen

Device sessions

Passed tests (88)

Click to expand
1. test_request_public_key_status_test_daap
Device sessions

2. test_ens_username_recipient
Device sessions

3. test_offline_status
Device sessions

4. test_open_transaction_on_etherscan
Device sessions

5. test_open_chat_by_pasting_public_key
Device sessions

6. test_back_forward_buttons_browsing_website
Device sessions

7. test_password_in_logcat_creating_account
Device sessions

8. test_can_use_purchased_stickers_on_recovered_account
Device sessions

9. test_modify_transaction_fee_values
Device sessions

10. test_insufficient_funds_wallet_positive_balance
Device sessions

11. test_mobile_data_usage_settings
Device sessions

12. test_delete_group_chat_via_delete_button
Device sessions

13. test_open_google_com_via_open_dapp
Device sessions

14. test_logcat_backup_recovery_phrase
Device sessions

15. test_unread_messages_counter_public_chat
Device sessions

16. test_send_two_transactions_one_after_another_in_dapp
Device sessions

17. test_message_marked_as_sent_in_1_1_chat
Device sessions

18. test_user_can_switch_network
Device sessions

19. test_public_chat_clear_history (TestRail link is not found)
Device sessions

20. test_wallet_set_up
Device sessions

21. test_timestamp_in_chats
Device sessions

22. test_delete_chats_via_delete_button
Device sessions

23. test_add_account_to_multiaccount_instance_seed_phrase
Device sessions

24. test_fetch_more_history_in_empty_chat
Device sessions

25. test_mobile_data_usage_popup_continue_syncing
Device sessions

26. test_add_to_contacts
Device sessions

27. test_long_press_delete_clear_all_dapps
Device sessions

28. test_need_help_section
Device sessions

29. test_transaction_wrong_password_wallet
Device sessions

30. test_offline_messaging_1_1_chat
Device sessions

31. test_token_with_more_than_allowed_decimals
Device sessions

32. test_add_account_to_multiaccount_instance_private_key
Device sessions

33. test_text_message_1_1_chat
Device sessions

34. test_install_pack_and_send_sticker
Device sessions

35. test_make_admin_member_of_group_chat
Device sessions

36. test_send_emoji
Device sessions

37. test_copy_and_paste_messages
Device sessions

38. test_clear_history_of_group_chat_via_group_view
Device sessions

39. test_add_account_to_multiaccount_instance_generate_new
Device sessions

40. test_send_eth_from_wallet_to_address
Device sessions

41. test_messaging_in_different_networks
Device sessions

42. test_start_chat_with_ens
Device sessions

43. test_logcat_recovering_account
Device sessions

44. test_connection_is_secure
Device sessions

45. test_user_can_see_all_own_assets_after_account_recovering
Device sessions

46. test_add_new_group_chat_member
Device sessions

47. test_long_press_to_delete_chat
Device sessions

48. test_add_and_remove_contact_from_public_chat
Device sessions

49. test_send_transaction_from_daap
Device sessions

50. test_onboarding_screen_when_requesting_tokens_for_recovered_account
Device sessions

51. test_add_and_delete_watch_only_account_to_multiaccount_instance
Device sessions

52. test_open_blocked_site
Device sessions

53. test_refresh_button_browsing_app_webview
Device sessions

54. test_public_chat_messaging
Device sessions

55. test_pass_phrase_validation
Device sessions

56. test_send_token_with_7_decimals
Device sessions

57. test_sign_message_from_daap
Device sessions

58. test_send_message_in_group_chat
Device sessions

59. test_deploy_contract_from_daap
Device sessions

60. test_recover_account_from_new_user_seedphrase (TestRail link is not found)
Device sessions

61. test_add_custom_token
Device sessions

62. test_send_and_open_links
Device sessions

63. test_manage_assets
Device sessions

64. test_share_contact_code_and_wallet_address
Device sessions

65. test_redirect_to_public_chat_tapping_tag_message
Device sessions

66. test_block_user_from_public_chat
Device sessions

67. test_ens_in_public_and_1_1_chats
Device sessions

68. test_sign_typed_message
Device sessions

69. test_create_new_group_chat
Device sessions

70. test_password_in_logcat_sign_in
Device sessions

71. test_account_recovery_with_uppercase_recovery_phrase
Device sessions

72. test_send_message_to_newly_added_contact
Device sessions

73. test_logcat_sign_message_from_daap
Device sessions

74. test_mobile_data_usage_popup_stop_syncing
Device sessions

75. test_collectible_from_wallet_opens_in_browser_view
Device sessions

76. test_logcat_send_transaction_from_daap
Device sessions

77. test_contact_profile_view
Device sessions

78. test_switch_users_and_add_new_account
Device sessions

79. test_logcat_send_transaction_from_wallet
Device sessions

80. test_filters_from_daap
Device sessions

81. test_send_stt_from_wallet
Device sessions

82. test_login_with_new_account
Device sessions

83. test_home_view
Device sessions

84. test_log_level_and_fleet
Device sessions

85. test_can_add_existing_ens
Device sessions

86. test_copy_contact_code_and_wallet_address
Device sessions

87. test_fetching_balance_after_offline
Device sessions

88. test_can_see_all_transactions_in_history
Device sessions

@churik
Copy link
Member

churik commented Mar 23, 2020

Tested ally types of group system messages, right order, fetching system messages from offline (Android 10, IOS 13).
Group tests should work with, however can't check because it is separate repo.

Thanks for a work @ghmulti !

@flexsurfer
Copy link
Member

#10208

@flexsurfer flexsurfer closed this Mar 26, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
No open projects
Archived in project
Development

Successfully merging this pull request may close these issues.

Correct the appearance of group chat system messages
7 participants