Commit Graph

131 Commits

Author SHA1 Message Date
Jonathan Rainville e28e98a394 fix: fix community rebase errors 2021-03-03 16:45:23 -05:00
Jonathan Rainville b38d1df591 refactor: move communities functions to communities view in chat 2021-03-03 16:45:23 -05:00
Jonathan Rainville f9817d4f52 feat: add community requests, permissions, ENS and more 2021-03-03 16:45:23 -05:00
Iuri Matias 27eab84f94 Revert "chore: add dummy ListView to ChatMessages to avoid app crash"
This reverts commit 7b07a31fa6.
2021-03-01 16:06:06 -05:00
Pascal Precht 7b07a31fa6 chore: add dummy ListView to ChatMessages to avoid app crash
For an unknown reason, when the `chatLogView` ListView uses
a `verticalLayoutDirection: BottomToTop`, it prevents the application
from successfully rendering during login and crashes.

From debugging this, we know that this only happens when the above
condition applies *and* when a `DelegateModel` is used.
The delegate doesn't even need proper data, it application would still
crash.

We found out that the crash can be avoided when another `ListView` exists
in this component (however it's unclear why).

For now this commit adds such a placeholder `ListView` until it
we know more about what's going on.
2021-03-01 14:18:46 -05:00
Jonathan Rainville f52cc984d6 fix: fix profile image order since reversing the list order 2021-02-25 15:41:14 -05:00
Jonathan Rainville fdcc700607 fix: fix chatMessages not starting at bottom by reversing list layout 2021-02-23 11:57:33 -05:00
Richard Ramos b43122d7f3 feat: use stacklayout for chat messages 2021-02-23 08:53:31 -05:00
Jonathan Rainville 0e699cac65 chore: run translation scripts 2021-02-18 15:23:58 -05:00
Jonathan Rainville 0104962df8 fix: fix App not showing correctly when notification is clicked 2021-02-15 16:22:26 -05:00
Jonathan Rainville 82ede94700 fix: remove notifications from OS tray when app is opened back 2021-02-15 16:22:26 -05:00
Iuri Matias 7b5a1660f8 make compact mode the default 2021-02-10 15:48:57 -05:00
Jonathan Rainville c665861820 fix: fix button alignment and background glitch in compact mode 2021-02-08 16:48:14 -05:00
Jonathan Rainville bffe888b0d feat: improve compact mode to fix all alignements 2021-02-08 16:48:14 -05:00
Jonathan Rainville b245d858aa feat: redisgn compact mode part 1
redesigns the compact mode to have a nice hover, easier replying and adding reactions and more

Missing parts are aligning chat command, images and unfurlings, redesigning mentions and the channel list and also trying to find a way to re-enable link hovers in the text
2021-02-01 11:54:26 -05:00
Jonathan Rainville 2d3a870f60 wip community invitatations and more 2021-01-11 13:57:35 -05:00
Jonathan Rainville 6afe9088e9 fix: show notification if the window isn't focused 2020-12-28 14:29:54 -05:00
emizzle 6a0a75888b feat: whitelist gifs (no url extension needed)
Fixes #1377.
Fixes #1479.

Two sites have been added to the whitelist: giphy.com and tenor.com.

`imageUrls` in its entirety has been removed and instead all links are being handle through the message `linkUrls`. This prevents double-handling of urls that may or may not be images.

The logic to automatically show links previews works like this:
1. If the setting "display chat images" is enabled, all links that *contain* ".png", ".jpg", ".jpeg", ".svg", ".gif" will be automatically shown. If the URL doesn't contain the extension, we are not downloading it. This was meant to be somewhat of a security compromise as we do not want to download each and every link posted in a message just to find out its true content type.
2. If the above setting is *disabled*, then we follow the whitelist settings for tenor and giphy. This allows us to preview gifs that do not have a file extension in their url.

feat: bump status-go to the commit that supports the new whitelist (https://github.com/status-im/status-go/pull/2094), and also lets us get link preview data from urls in the whitelist. NOTE: this commit was branched off status-go `develop`, so once it is merged, and we update this PR to the new commit, we will effectively be getting status-go develop changes. We *could* base that status-go PR off of master if it makes things easier.

fix: height on settings update issue

feat: move date/time of message below links

fix: layout issues when changing setting `neverAskAboutUnfurlingAgain`

feat: Add MessageBorder component to aid in showing rounded corners with different radius
2020-12-21 14:14:32 -05:00
emizzle 5953031bfc fix: YouTube unfurling
YouTube link unfurling was not working for a couple reasons.

There were two main parts fixed:
1. QML context for messages pertaining to linkUrls and imageUrls was changed from implicit to explicit. By this, I mean that any time we referenced linkUrls/imageUrls, we were relying on the knowledge that those values would be populated by some parent context several levels up. Now, we are referring to properties that have been explicitly defined on the components. This offers the ability to reuse components, and makes reading the code and debugging much easier.
2. Error handling has been added to getting link preview data. An unhandled "error" was thrown each time a link that wasn't whitelisted was passed in, causing the app to crash. For example, when a link to a tenor gif was posted in the chat, that URL was not whitelisted, causing the app to crash.
2020-12-10 14:45:48 -05:00
Pascal Precht e11139df12 feat: make `UserNameLabel` render local nick names and ENS names
In timeline status update messages we want to render the ENS name next to a
local nickname in case it exists. This commit extends the `UsernameLabel` to do
just that.

Closes #1488
2020-12-10 12:30:31 +01:00
Jonathan Rainville 08a7baed8f feat: add OS notification and setting to switch back 2020-12-09 14:19:16 -05:00
Richard Ramos 6494427de0 fix: notifications
- If notification is clicked and app minimized, restore app
- If app is minimized, show notifications for active chat
2020-12-01 16:17:19 -04:00
hydrogen ff5b972139 fix: stop crash by showing error message
fix #898

The segmentation fault occured because the RPC response returned json with an error message as oppossed to the usual data required to update the chat. Since the section of the code didn't handle this error message it caused the app to crash. I've handled this error to show an error alert box by emitting a  event
2020-12-01 13:40:49 -05:00
Jonathan Rainville b536707646 fix: fix notification banner showing the pubkey of group chats 2020-11-27 15:15:26 -05:00
Richard Ramos 8890805a14 fix: scroll to bottom when switching back from any module to chat 2020-11-26 11:43:45 -05:00
Pascal Precht db0b765d74 feat(Notifications): allow users to turn of notifications for non-contacts
Partially fixes #1280
2020-11-24 11:16:02 +01:00
Richard Ramos 983fbfd3d4 fix: scroll speed 2020-11-19 16:57:20 -05:00
Jonathan Rainville 08f8035b31 fix: add timeout to scroll bottom at all times to make sure we do scroll 2020-10-20 13:52:13 -04:00
Pascal Precht 3d0f50a5b3 feat: allow users to configure notification settings
Can choose between all, just mentions, or nothing
2020-10-20 13:50:49 -04:00
Richard Ramos 2fb9d569f7 refactor: open profile popup 2020-10-02 12:48:58 -04:00
Jonathan Rainville 9acb6609ab feat: only show the scrollDown when scrolled up 400 pixels 2020-09-29 14:43:58 -04:00
Jonathan Rainville 3881d1e012 fix: make chatMessages new message box clearer 2020-09-29 14:43:58 -04:00
Jonathan Rainville 39f06d0741 feat: implement design for the new messages box in chat 2020-09-29 14:43:58 -04:00
Jonathan Rainville 9f9bad2fa3 feat: add a read more button and crop text when message is too long 2020-09-29 14:02:33 -04:00
Jonathan Rainville 81f5e4e7d8 chore: update translations 2020-09-23 17:19:57 -04:00
Jonathan Rainville c36f1f82cd feat: add a button to scroll back to the end of the chat list 2020-09-23 15:16:22 -04:00
Jonathan Rainville 7dce940e68 fix: fix message order being messed up because of the messageId 2020-09-18 17:23:09 -04:00
Jonathan Rainville 23ca5f9930 feat: make settings user dependant and clean settings uses 2020-09-16 16:58:55 -04:00
Richard Ramos 6c7a3d6340 fix: use messageid in comparator
Fixes #324
2020-09-14 14:39:06 -04:00
hydr063n b479dba001 feat: open modal when user left clicks on message containing image 2020-09-14 14:38:41 -04:00
Jonathan Rainville 0c686c3fcf chore: run qstrConverter script 2020-08-27 17:09:37 -04:00
Jonathan Rainville 72af6adb69 feat: get and display emoji reactions in chat 2020-08-27 16:34:35 -04:00
Pascal Precht 04ff3393fa feat: introduce confirmation dialog for blocking contacts actions
Closes #632
2020-08-13 14:40:03 -04:00
Jonathan Rainville 156aaba0aa feat: improve style of the notification box
Use the Channel box for that
2020-08-10 09:34:02 -04:00
Jonathan Rainville 9604faff08 feat: add New messages box in chat when scrolling up 2020-07-23 17:01:04 -04:00
Jonathan Rainville 327552c33b add loading and error image boxes 2020-07-23 15:44:59 -04:00
Jonathan Rainville c7cfa5d32b fix: fix scrolling to bottom for images 2020-07-23 15:44:59 -04:00
Jonathan Rainville e176443ceb fix: fix chat not scrolling to bottom on load 2020-07-23 15:44:59 -04:00
Richard Ramos 7ca512661b fix: load messages on scroll up, scroll down when sending messages and hide sending status for expired messages 2020-07-22 15:58:31 -04:00
Richard Ramos f9335c0969 feat: retry sending messages 2020-07-21 10:19:12 -04:00
Jonathan Rainville 262941e839 feat: add space between the last chat and the chat input 2020-07-16 10:32:27 -04:00
Jonathan Rainville 5951fcf131 feat: refactor Message and add Compact message type 2020-07-16 10:29:29 -04:00
Iuri Matias c5410b6536 remove leftover condition 2020-07-15 16:05:35 -04:00
Jonathan Rainville 7d178b355e feat(chat): add image support
This commit adds support for rendering images by detecting
image URLs inside of a message and attaching them to their
corresponding message bubble.
2020-07-15 16:05:35 -04:00
Iuri Matias 7d7bac5fb6 add notifications support
first attempt

attempt 2

working notifications

add notification sound

cleanup

remove unneeded imports

remove unneded imports
2020-07-14 14:23:40 -04:00
Richard Ramos ceb5873272 show date headers, and fix sending replies only when they are enabled 2020-07-14 13:10:14 -04:00
Richard Ramos a342192f43 fix: code review 2020-07-10 20:09:15 -04:00
Richard Ramos 649023bacf feat: support message replies 2020-07-10 20:09:15 -04:00
Jonathan Rainville 25ac69b37c fix: fix message width by using the plainText 2020-07-10 15:54:48 -04:00
Richard Ramos 7b82f52fac fix: show replies and do not trigger an activeChannelChanged event on init 2020-07-09 12:01:32 -04:00
Richard Ramos 64452e71b9 feat: Determine if a message was sent 2020-07-02 11:57:48 -04:00
Richard Ramos bcec11c432 fix: message scrollbar 2020-06-25 16:26:21 -04:00
Jonathan Rainville 02d915cb50 chore: up import version and fix SplitViews 2020-06-25 11:02:35 -04:00
Iuri Matias 0ad64cc5de update qml imports 2020-06-18 11:02:11 -04:00
Iuri Matias e7e77f58dc make profile popup reusable 2020-06-18 08:13:45 -04:00
Richard Ramos 0971b5928d feat: Support ENS usernames in messages 2020-06-17 13:09:31 -04:00
Richard Ramos b842925ba4 feat: edit group name 2020-06-16 12:05:22 -04:00
Richard Ramos d7f9120840 Adding messageId to messages 2020-06-15 08:23:03 -04:00
Richard Ramos 761be22bfa feat: Join private groups 2020-06-10 15:54:56 -04:00
Richard Ramos 40a523851d fix: chat identifier position 2020-06-09 11:49:23 -04:00
Richard Ramos f3ff229bf8 feat: load messages on scroll to top, and fix last message scrolling 2020-06-08 16:07:11 -04:00
Richard Ramos b5b02cfd57 show identifier as the first message of chat view 2020-06-08 15:27:30 -04:00
Richard Ramos 9d75f6f552 Use section identifiers as a way to identify if messages have been sent by the current user (no need to modify the model with `repeatMessageInfo`) 2020-06-08 13:24:46 -04:00
Richard Ramos 1b086b006d fix: show new messages at the bottom 2020-06-05 05:56:21 -04:00
Richard Ramos 722ab36bf1 Sort messages by clock 2020-06-05 05:56:21 -04:00
Iuri Matias 98d2c1df68 display a sticker when a content type sticker message is received
display a sticker when a content type sticker message is received

display a sticker when a content type sticker message is received

display a sticker when a content type sticker message is received

display sticker

fix height and default value

cleanup

cleanup

cleanup

use constants for the content type
2020-05-29 09:52:20 -04:00
Richard Ramos f67fb34e69 Add scrollbar to chat messages 2020-05-28 19:25:03 -04:00
Jonathan Rainville 4fa3c34199 feat: new design for the chat bubble 2020-05-28 17:35:38 -04:00
Iuri Matias 0ee32c2bb1 add default list to the chat messages 2020-05-28 13:49:53 -04:00
Iuri Matias 2f428ef41d add default properties to message component 2020-05-28 13:49:53 -04:00
Iuri Matias de9d5ad63f extract ChatMessages into its own files 2020-05-28 06:28:18 -04:00