Commit Graph

212 Commits

Author SHA1 Message Date
Alex Jbanca 8cb4420d49 perf(chatScroll): Create message quick context items only when message row is hovered 2023-01-13 11:13:42 +02:00
Jonathan Rainville af0c9767d1 feat(context-menu): add Copy message action in message context menu
Adds the action to copy the right-clicked message's text.

It copies the unparsed text (no html).
For that, I had to add it in the MessageItem and expose it in the model.

I also fixed the copy MessageId action that didn't show + didn't work even if it would have shown.

Plus some small cleanups.
2023-01-12 16:15:17 -05:00
Jonathan Rainville c3945f33c0 feat(replies): add deleted to QuotedMessage to change msg displayed
Adds `deleted` to the QuotedMessage object so that on the frontend, we can show "Delete message" only when we know the message was deleted.
Otherwise, when we don't know the quoted message, we show "Unknown message [...]"
2023-01-12 15:18:03 -05:00
Jonathan Rainville 91c2e6d257 feat: use QuotedMessage object for replies to better show the replies
Fixes #7754
ok
2023-01-12 15:18:03 -05:00
Lukáš Tinkl 9e396f7344 chore: refactor/improve/optimize StatusMessage & friends
- drop dead code
- reduce number of direct bindings
- use Loaders whenever possible

Fixes #8744
2023-01-10 10:55:53 +01:00
Jonathan Rainville 29450d34a7 feat(admin): enable admins to delete messages from other users
Fixes #8869
2023-01-04 11:12:47 -05:00
Alex Jbanca 94b911a986 fix(messagesView): Increase spacing between chat messages
Added padding between messages as specified in Figma:
topPadding - 8 if the current message has header, 2 otherwise
bottomPadding - 8 if both current and next message have header, 2 otherwise
2022-12-23 16:46:33 +02:00
Igor Sirotin 784b9acd4f fix(MessageView): Ignore message editing with no actual changes 2022-12-22 15:00:48 +03:00
Patryk Osmaczko 87674064d0 feat(chat/messages): implement new messages marker
closes: #8572
iterates: #7488
2022-12-16 19:12:12 +01:00
Igor Sirotin 50427390dd ens: Fix ens name inconsistency across app 2022-12-14 23:46:50 +03:00
Boris Melnik 5d19667f2d fix(warnings): Fix warnings raised from settings
Fixes: #8293
2022-12-14 14:33:13 +03:00
Jonathan Rainville 194e3048bc fix(messages): fix Resend btn not working and add Sending visual state
Fixes #7643

This adds the backend to resend. It then hooks the button to it.
This also adds a visual state for when we are sending. This gives a good indication that a message was sent.
2022-12-12 11:56:21 -05:00
Lukáš Tinkl 9559789030 chore: reduce the number of (verification) RPC calls
- when calling `Utils.getColorHashAsJson()` we don't actually need to
issue ID verification requests at all and there might be situations when
we know beforehand that we don't need the ENS verification either
- change these helper functions' syntax and do early returns in that case
- in MessageContextMenuView, the "contact details" were duplicated, so
remove one
- remove dead code, fix some warnings
2022-12-01 16:50:23 +01:00
Boris Melnik bff6b22fc4 fix(replies): Get original message from status-go for replies
Fixes: #7248
2022-11-30 14:07:49 +01:00
Lukáš Tinkl 3d4cb12d0c fix: some notification UI fixes
This aims at bringing the notifcation display closer to what regular
messages look like, namely:

- show compressed chat keys
- don't show identicon rings for ENS names
- fix timestamps and their tooltips (`notification` isn't part of StatusMessage!)
- unbreak clicking outside of the whole popup overlay (`activityCenter`
is undefined)
- fix blurry checkmark icon for marking notification as read
2022-11-30 11:05:58 +01:00
mprakhov e8e2c022ca fix(@desktop/chat): Hide quick actions panel in non-joined chats 2022-11-29 19:56:04 +02:00
MishkaRogachev 726ae26128 hotfix(ActivityCenter): Fix AC timestamps and binding loop for previousMessageIndex
Close #8434
2022-11-29 16:49:36 +04:00
Lukáš Tinkl 8e4d9be779 fix: disable quick actions when editting a message
also move the top/bottom margins one level up so that the message editor
gets the same margins as well

Fixes: #8185
2022-11-21 20:55:08 +01:00
Jonathan Rainville 312dd72955 fix(windows): fix windows chat list empty because of popup overflow
Fixes #7906
2022-11-16 15:41:32 -05:00
Alexandra Betouni 7c88f462ec fix(StatusMessage): Updated component to QQC2 Control and as per desing
Fixes #7318
2022-11-14 18:13:40 +02:00
Igor Sirotin a69b3b5928 fix(StatusMessageReply): Fixed reply text styling and behavior 2022-11-11 13:31:06 +01:00
Boris Melnik b10b6617cf fix(edit-message): Add content-type to edit message request
Closes: #7879
2022-11-11 14:01:16 +03:00
Richard Ramos ae7a16f27e fix: display "Resend" for expired messages 2022-11-10 11:49:42 -04:00
Lukáš Tinkl 80d211f521 fix(MessageView): fix opening URL links
Fixes: #8123
2022-11-07 11:03:39 +01:00
Lukáš Tinkl f122607ada fix: consecutive discord messages should be grouped like status messages
- fill the senderId just like other messages
- add some checks in Utils since the "publicKey" (ID) coming Discord
isn't in the format we'd normally expect

Closes #6678
2022-10-27 22:44:00 +02:00
Lukáš Tinkl 16a51f2f72 fix(MessageView): unbreak showing identity ring in replies
use the correct way to get the original message's content type and
compare it with the correct Constant type
2022-10-27 10:01:59 +02:00
Lukáš Tinkl 2c2337a45d fix(MessageView): unbreak message reply update and found animation
due to the refactor, StatusMessage is no longer the toplevel item inside
the delegate, so adjust the functions

some minor cleanups and dead code removals; striving for keeping the
number of properties and bindings inside a ListView delegate at a minimum
2022-10-26 12:50:39 +02:00
Michal Iskierko 6d2a2e6e03 fix(@desktop/general): Fix clicking deep links in chat
Clicking any deep-link in chat: /u, /c, /cc does not open browser but executes instantly

Fix: #6302
2022-10-25 08:26:16 -04:00
Igor Sirotin 5ff2976e80 fix(MessageView): Changed visual borders of message 2022-10-21 00:44:19 +02:00
Lukáš Tinkl 38b6bdbfd3 chore: split English TS files
- qml_base.ts is created as a reference point for translators
- qml_en.ts is a minimal overlay translation, providing just the needed
  plural forms
- adjust the script to generate the above TS files
- fixup some leftover qsTrId() calls and the qmake file
2022-10-19 10:48:08 +02:00
Michał Cieślak f0e238dce6 chore(general): Remove profile pictures visibility options
From now on, if the image is available it should be displayed
uncoditionally.

Closes: #7609
2022-10-13 07:51:55 -04:00
Boris Melnik 4cfa4e5451 fix(replies): Fire dataChanged when contact changed in reply
Closes: #7687
2022-10-12 10:54:24 -04:00
Boris Melnik 6a11a89ff3 fix(Reply): Add check if responsed message was deleted and add `<deleted>` to reply message
Closes: #7372
2022-10-12 15:43:48 +03:00
Michal Iskierko 95c0721578 fix(@desktop/chat): Fix channel link in chat
Clicking on a #link will open link channel in community

Fix #7636
2022-10-10 11:27:16 +02:00
Pascal Precht 5c3517ee6f fix(Chat): ensure profile image with base64 sources are working
This broke with the introduction of discord messages because we were
setting the `assetSettings.isImage = true` when `isDiscordMessage`.

This has overriden the default config for all non discord messages which
check for whether the asset source includes `("data")`.
2022-10-06 22:18:36 +02:00
Pascal Precht d9acab566f perf(chat): only perform verification requests on scroll if necessary
There was an issue where imported messages from third-party services
would cause super laggy scroll behaviour in the chat view.

The reason for that is that on scroll, the app keeps calling
`getVerificationRequestFrom()` on the chatkey of the community.
Typically the results of these requests are cached so that it should
perform the call only once, but because there's no actual verification
request/contact for the community chat key (all third-party messages are
signed by the community), the call keeps on happening over and over.

This commit adds a flag to `getContactDetailsAsJson` and `isEnsVerified`
to control whether or not the call to `getVerificationRequestFrom`
should in fact be made (which should not be the case for imported
messages).

The result of this is a smoother scrolling experience.

Fixes #7767
2022-10-06 11:39:24 +02:00
Pascal Precht bf14b06d55 feat(CreateCommunityPopup): add discord import progress panel and discord message handling
This adds the UI plus all necessary models and signal handling to render
discord import progress in the desktop application.

It also introduces message handling for discord chat message types.

Requires status-im/status-go#2826 to function

Co-authored with @caybro
2022-10-06 09:13:57 +02:00
Igor Sirotin b65023bf45 fix(PinnedMessagesPopup): Fixed reply messages displaying 2022-10-04 14:09:19 +03:00
Lukáš Tinkl a209d39881 fix: ENS name issues
- don't display identicon rings for contacts with an ENS name
- prefer the at-form (@foo-user) whenever possible, and don't display their
  username or pubkey unless they are locally given a nickname
- show compressed keys everywhere instead of the regular ones

Fixes: #7319
Fixes: #7515
2022-09-26 22:38:02 +02:00
Lukáš Tinkl 54c73b0be7 chore: cleanup, fix warning, remove dead code 2022-09-26 22:38:02 +02:00
MishkaRogachev b9ca8654a8 feat(ActivityCenter): Fix messages and AC notifications height
Close #7497
2022-09-26 15:49:46 +03:00
Michał Cieślak be5de27513 feat(MessageView): hide image url in the message when image is unfurled
The url is hidden when there is only one url in the message with no
additional text and the image is shown (unfurled).

Closes: #7321
2022-09-21 10:33:15 +02:00
Lukáš Tinkl 9addf1221b fix(PinnedMessagesPopup): “Jump to” button doesn’t work pinned messages popup
This was never implemented, eventhough a similar approach is used with
the global AppSearch. Expose the method `scrollToMessage(messageId)` so
that it can be called from QML directly.

Fixes #7375
2022-09-19 16:34:07 +02:00
Michal Iskierko 62c2b56fc8 fix(@desktop/chat): Improving displaying user names in chat
1. Rename contactDetails.displayName -> defaultDisplayName
2. Add contactDetails.optionalName (filled in contact service)
3. Set in message_model defaultDisplayName and optionalName values
4. Adjust UI

Issue #7241
2022-09-19 11:24:35 +02:00
Lukáš Tinkl 2dca7904b8 fix(PinnedMessagesPopup): pinned messages modal design issues
- align the dialog to design
- fix radio button logic (it was possible to uncheck a mutually exclusive
checked button eventhough it's inside the button group, leaving the Unpin
button in an undefined state)
- port to StatusDialog and layouts, dropping a lot of needless code
- remove dead code for passing around the `property Component
pinnedMessagesListPopupComponent`; the popup is being invoked via
`Global.openPopup()`

Fixes #7316
Fixes #7315
2022-09-15 10:55:56 +02:00
Lukáš Tinkl d0b8af9e86 fix(MessageView): missing popup from when pin limit is reached
Can not use `root.messageStore.getNumberOfPinnedMessages()` directly in a
binding, as it's not a property and won't reevaluate on change

Closes #7314
2022-09-13 09:05:15 +02:00
Stefan d81b6ca518 fix(Chat): improve gif confirmation popup and fix preview whitelisting
Enable preview for gifs after enabling the gif functionality
Disable gif functionality if the preview was disabled

Addition fixes
- The gifs weren't checked if all images weren't enabled
- The subdomain wasn't checked for whitelisting if the main domain wasn't enabled
- Image clicking
- Dismiss asking for unfurling was not updating the state

Considerations
- Looked into having the "gif enabled" - "tenor unfurling" relation
embedded in the controller but it would require extensive refactoring
by implementing a data-model for unfurling whitelisted domains

Closes: #6829
2022-09-05 12:41:48 +02:00
Alexandra Betouni e1c548696f feat(Desktop)!: Updating desktop app due to IconSettings refactor
As part of https://github.com/status-im/StatusQ/issues/781
2022-09-02 18:41:21 +03:00
Michal Iskierko d6a061a517 feat(@desktop/chat): Add setting image in group chat
Image and cropping information are sent to status-go.

Issue #6466
2022-09-01 12:25:53 +02:00
Igor Sirotin 41910c9a8a fix(tests): Fixed message reply test 2022-08-30 17:03:36 +03:00
Jonathan Rainville 109b9ac290 test(community): add a test that pins and unpins messages
Fixes #6894
2022-08-26 10:29:28 -04:00
Boris Melnik c7efbe6629 test(chat): Can edit a message and save
Closes: #6877
2022-08-26 11:57:59 +03:00
Igor Sirotin 42a1cf995c fix(ChatMessagesView): Usage of `StatusMessage` WIP 2022-08-20 03:02:41 +03:00
MishkaRogachev 3afa49a873 fix(@dektop/chat): Fix messages timestump update
Close #6543
2022-08-05 17:15:38 +03:00
Lukáš Tinkl 120f6517c9 fix(CompactMessageView): disable hovering while scrolling
Fixes #6576
2022-07-25 18:21:14 +02:00
Lukáš Tinkl 9ad23c24d7 fix(MessageView): unbreak clicking on a reply's profile image
the role name exported by the model has (likely) changed :/

`qrc:/imports/shared/views/chat/MessageView.qml:212: Error: Cannot assign [undefined] to QString`
2022-07-21 15:55:55 -04:00
Noelia 47897f431f fix(Chat/ReactionDialog): The reaction dialog is shown in different places
Changed x and y assignment trigger to get the correct value once the position depends on the own popup height.

Fixes #6264
2022-07-13 10:55:12 +02:00
Jonathan Rainville f5d2d9d0ac fix(MessageView): slow chat switching because of height recalculation 2022-07-06 14:05:06 -04:00
Jonathan Rainville 1e7c648300 feat: contact verification request and trust status
feat: contact verification

fix: add remove identity verified btn

fix: add toast message

feat: received verification request model


feat: finish identity verification flow

Fixes #4784
2022-07-06 10:43:33 -04:00
Igor Sirotin eb7fa5be8b fix(ChatButtonsPanel): Added pin/unpin and delete buttons 2022-07-01 12:59:03 +04:00
Jonathan Rainville 9d2862a602 fix(chat): fix gifs staying active in the background when switching chat 2022-06-29 16:48:01 -04:00
Jonathan Rainville 9ebe9ec2c5 fix: fix blurry chat identifier and expose large image in contact proc
Fixes #6190
2022-06-22 15:33:11 -04:00
Patryk Osmaczko cdd06b05eb feat(@desktop/group-chat): remove explicit join for groups
closes: #5717
2022-06-14 15:21:56 -04:00
Boris Melnik d8b00bef02 fix(Chat): Messages with GIF not display the url
Closes: #6005
2022-06-14 14:32:11 -04:00
Pascal Precht 8c496e0505 feat(CommunitySettings): add checkbox to allow members to pin messages
This adds a checkbox to configure whether or not community members are
allowed to pin any message of a community channel, based on the newly
introduced `CommunityAdminSettings` that are introduced in https://github.com/status-im/status-go/pull/2668

Closes #5662
2022-05-19 14:53:40 +02:00
Alexandra Betouni 6a8fa13b62 fix(ChatMessage): hide "edit" option when right click on sticker
Closes #5766
2022-05-19 14:45:52 +03:00
Anthony Laibe c673f8302a fix(@chat): only show reaction to emoji right click
fixes #5764
2022-05-19 13:26:23 +02:00
Boris Melnik cf221eb06e fix(Chat): Add emoji popup to edit message input
Closes: #5527
2022-04-18 13:59:46 +03:00
Patryk Osmaczko 08caca2a60 fix(@desktop): use identicon ring/letter instead of identicon
fixes: #5149
2022-04-04 17:50:48 +02:00
Patryk Osmaczko 25c6a5f5ca chore(@desktop): remove identicon related code 2022-04-04 17:50:48 +02:00
Jonathan Rainville 43e58e357c feat(community): add emoji for channel header and identifier as well 2022-03-23 09:56:30 -04:00
Patryk Osmaczko e130953634 feat(@desktop): use emoji hash and identicon ring
Closes: #4782
2022-03-16 18:34:57 +01:00
Sale Djenic 9821e160c1 fix(@dekstop/chat): editing a message does not update the reply
Fixes #4891
2022-03-11 14:44:44 +01:00
Jonathan Rainville 68a4498d11 feat(privacy): reimplement show only contact pfp using status-go setting
Fixes #4900
2022-03-08 15:50:15 -05:00
Sale Djenic 40d10b0cbb fix(@dekstop/chat): timestamp for `Fetch messages` is wrong
Fixes #4850
2022-02-25 12:11:26 -05:00
Jonathan Rainville 3985272037 fix(invitation): fix community invite not showing in 1-1 chats
Fixes #4851
2022-02-24 10:58:26 -05:00
Sale Djenic 52fb195b39 fix(@dekstop/chat): trying to unblock a contact by hitting 'Unblock' via the chat view does not do anything
Fixes #4835
2022-02-24 16:19:51 +01:00
Jonathan Rainville 12d2652469 fix(groups): fix first message of group chats not appearing
Fixes #4852
2022-02-23 16:11:01 -05:00
Sale Djenic c855de98b6 fix(@dekstop/chat): higher cpu usage after opening gif selector
Fixes #4829
2022-02-23 15:43:21 -05:00
Jonathan Rainville 16aac6fd4a fix: fix self profile image not showing in the message and fix name
Fixes #4807
2022-02-21 09:32:26 -05:00
Sale Djenic 9ed6c6235c fix(@desktop/chat): can't join to group chat by clicking [Join chat] or decline invitation with [Decline invitation]
Fixes #4766
2022-02-17 11:28:59 -05:00
Khushboo Mehta 52e96e904b fix(@desktop/chat): enable transactions over chat
fixes #4610
2022-02-15 21:22:21 +01:00
Jonathan Rainville 16e7d16c8c feat(communities): re-implement community link unfurling
Fixes #4788
2022-02-14 17:03:41 -05:00
Sale Djenic aa6036b78b fix(@desktop/chat): mention suggestion list fixed 2022-02-08 12:33:45 -05:00
Jonathan Rainville f21c6eda45 fix(pins): only enable jump to and unpin buttons from the pinned popup
Fixes #4540
2022-02-04 09:39:23 -05:00
Richard Ramos ad7f48d6ac refactor: removing mailserver controller and model 2022-02-01 15:16:45 -04:00
Sale Djenic 25f7544b41 fix(@desktop/app-search): [base_bc] can't jump to a message from search results
- broken "jump to a section/chat/message" feature fixed
- added loading indicator while searching is in progress
- animation when we point to the searched message is in place again

Fixes #4577
2022-02-01 11:50:50 +01:00
Boris Melnik 5099ca4b3e fix(groups): Hide invitation for admin
Closes: #4574
2022-02-01 11:50:50 +01:00
Anthony Laibe 16225a3af9 fix(@chat): display link urls 2022-02-01 11:50:40 +01:00
Richard Ramos fb35f89336 fix: loading indicator 2022-02-01 11:50:17 +01:00
Patryk Osmaczko 75abaabb5d fix(@desktop/chat): show popup when image is clicked 2022-02-01 11:49:47 +01:00
Khushboo Mehta f68d967544 fix(@desktop/chat): making edit work on base_bc
fixes #4410
2022-02-01 11:49:44 +01:00
Jonathan Rainville 565211f38f fix(chat): fix sticker button not showing + stickers not showing in chat
Fixes #4407
2022-02-01 11:49:14 +01:00
Khushboo Mehta e757c07c96 fix(@desktop/chat): delete message not working
fixes #4411
2022-02-01 11:49:11 +01:00
Boris Melnik 35568d1d6b fix(Replies): Fix reply button
Closes: #4396
2022-02-01 11:49:04 +01:00
Sale Djenic 96e50a97ac refactor(@desktop/chat-community): `ChatContextMenuView` and `MessageContextMenuView` updated
Within this commit apart of `ChatContextMenuView` and `MessageContextMenuView`
some other things are fixed:
- pinned messages model (`asyncFetchChatMessagesTask`), which was corrupted most
likely by resolving conflicts
- `pinned by` part of the pinned messages
- set/remove local nickname for a contact
- contacts in a message list and pinned by name, contact in a pinned message list
and pinned by name, one to one chat details and chat tool bar are updated in a way
that they are responsive to the contact's updates
- pinned messages updated received from remote (from the `status-go`) is handled

Fixes #4366
2022-02-01 11:48:25 +01:00
Sale Djenic e220599612 refactor(@desktop/general): necessary changes applied due to refactored `Contacts` sub-section of the `Settings` section 2022-02-01 11:47:46 +01:00
Sale Djenic 5bafb2bb5a refactor(@desktop/settings-appearance): appearance settings updated 2022-02-01 11:47:18 +01:00
Alexandra Betouni 0eb40287fa refactor: removed dynamic scoping from shared module
Properties and functions moved to Global:
- toastMessage
- openProfilePopup()
- getProfileImage()
- popupOpened

Closes #4248
2022-02-01 11:46:39 +01:00
Sale Djenic 179b0f5a36 refactor(@desktop/chat-messages): add/remove reactions 2022-02-01 11:46:11 +01:00
Sale Djenic df5a5a627d refactor(@desktop/chat-messages): pin/unpin messages and pinned messages list updated 2022-02-01 11:45:50 +01:00
Sale Djenic b6b6d6b6c7 refactor(@desktop/chat-messages): `MessageContextMenuView` component updated 2022-02-01 11:45:50 +01:00
Sale Djenic bfaf1b5250 refactor(@desktop/chat-communities): `ChannelIdentifierView` component updated 2022-02-01 11:41:56 +01:00
Sale Djenic 7f40ae0f57 refactor(@desktop/chat-communities): unused component removed
- `NormalMessageView` component is removed since we work with `CompactMessageView`
and it's the only and default message component in the app.
- `useCompactMode` property removed from local settings since it's not in use as
well and corresponding code is updated accordingly
2022-02-01 11:41:38 +01:00
Sale Djenic e5a414a927 refactor(@desktop/chat-communities): qml part handles messages from refactored backend
- `chatType` added to `Constants` to group chat type related values
- `messageContentType` added to `Constants` to group message content type related
values
- `MessageStore` maintained per message list now
- added new `ChatContentView` component used to display chat/channel content
- components updated to display messages from the new backend
- `StatusChatToolBar` appropriately updated
- mute/unmute feature added to chat/channel list as well as to `StatusChatToolBar`
2022-02-01 11:41:22 +01:00
Richard Ramos d713c6fe9f fix: display loading indicator depending on mailserver request status 2022-01-25 13:59:41 -04:00
Richard Ramos a85ee8581a feat: show real sync date in "Fetch more messages" button 2022-01-03 21:12:28 +00:00
Alexandra Betouni 5e88a9a91b refactor(desktop): Removed all timeline related code
Removed all timeline associated code from base_bc.
This feature is deprecated and shall be removed

Closes #4064
2021-12-03 19:55:45 +02:00
Alexandra Betouni b4b28d2f98 feat(desktop/contacts) Improvements in contacts
Contacts updates currently in base_bc

Closes #4100
2021-12-01 20:51:06 +02:00
Jonathan Rainville 4d7d2261aa fix(reply): fix reply image displaying the current user
Fixes #4185
2021-11-29 09:32:08 -05:00
Khushboo Mehta 30d1866ee6 fix(@desktop/chat): Blocking a user with big messages leaves an empty space in the chat
fixes #4123
2021-11-29 10:14:47 +01:00
Alexandra Betouni c0450f0580 refactoring (desktop/chat) Message component
Moved Message component & dependencies  to shared
for usage import shared.views.chat 1.0 and accordingly
import shared.controls/panels.chat 1.0

Closes #3927
2021-11-24 13:15:15 +01:00