Commit Graph

38 Commits

Author SHA1 Message Date
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
Jonathan Rainville 4f2a1b5e73 fix: fix scroll going back down when hitting images 2020-12-18 15:39:16 -05:00
Richard Ramos a901351e7e fix: chat reply width when content is smaller than author 2020-12-11 13:56:04 -05:00
Richard Ramos 5ad54b057b fix: missing username 2020-12-11 13:47:51 -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
Pascal Precht 5e422691e3
chore: remove unnecessary `enabled` prop binding in ChatText connection 2020-12-07 13:15:46 +01:00
Pascal Precht b778fa9c30 refactor(ChatText): move Connection out of component
This is done because there's gonna be a case where this connection causes errors
because the component expects `NormalMessage` to be a parent of this component.

When used in future StatusUpdates, there's no `NormalMessage`. Unfortunately,
disabling the connection based on a condition doesn't remove the error, so we have
to move this code out entirely
2020-12-07 13:06:21 +01:00
Jonathan Rainville dae7f9cd44 fix: fix ChatImage not opening in the popup 2020-11-27 15:19:20 -05:00
Jonathan Rainville 9e8ecd69e9 fix: change chat rectangle width to match designs 2020-11-26 11:43:53 -05:00
emizzle 417194e7b4 feat: Keyboard shortcuts
Add keyboard shortcuts according to https://notes.status.im/02cfVf1KQLeQU2SqrIi9tw

fix: update chat message bubbles
- Align emojis to middle of text
- Add line-height as per design
- Properly support RTL languages (right-aligned) and LTR languages (left-aligned)
- Remove unneeded non-breaking space at the beginning of current user messages
- Properly support markdown for bold, strikethrough, and italic
- Fix text being removed when in between strikethrough markdown (~~)

fix: emoji resolution update for high resolution monitors
- Emojis now use the 72x72 original set, but are down-scaled to 20x20 (in chat bubbles) or 22x22 in other places, effectively tripling their pixel density

feat: handle new lines in blockquote

Handle new lines in blockquote so that messages display correctly.

Also, add functionality when a new line is entered in to the chat input, if it's inside a blockquote, a new ">" will be added automatically. This is also handled when backspace is entered.

feat: update xss to support full qt html4 table and table-cell attributes
2020-11-26 11:33:32 -05:00
Jonathan Rainville 447591e9b4 feat: make the message box scale according to the parent's width 2020-11-19 16:57:58 -05:00
Jonathan Rainville 1ec28bca01 feat: enable animated gifs but stop them on click and out of focus 2020-11-19 16:55:41 -05:00
Pascal Precht 47a561daf4 uiux: apply rounded corners to images from image URLs 2020-11-17 12:48:06 -05:00
Pascal Precht be2aadb4e2 uiux: Refactor chat images so they look like they've been designed
Fixes: #1114
2020-11-17 12:48:06 -05:00
Pascal Precht 4ac8400038 fix: ensure `sending` message state isn't shown when message is expired 2020-11-17 10:01:13 -05:00
Jonathan Rainville b583a4d4bf feat: show unfurled youtube links 2020-11-05 11:25:22 -05:00
Jonathan Rainville b05a9a8ff6 fix: fix text in bubbles being too low 2020-10-07 11:22:29 -04:00
Pascal Precht c64424990d uiux(Chat): remove sent badge
Closes #919
2020-10-07 11:21:54 -04:00
Jonathan Rainville 261460f8fb fix: fix chat height being too high in compact mode 2020-10-02 12:48:02 -04:00
Pascal Precht edfd952166 feat(Chat): allow viewing unfurled images via popup
Fixes #668
2020-10-02 12:37:57 -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
emizzle 5eabcd2725 feat: Add loading and reload states to stickers/packs
Related to: #586.

Adds a loading state to stickers, so that a loading indicator appears while the sticker is being downloaded from IPFS.

In the case of a network failure or timetout, a reload button is shown instead. Once network is restored and the reload button is clicked, the image is reloaded from the network, going through the same lifecycle of showing the loading state first.
2020-09-29 13:27:50 -04:00
Jonathan Rainville 4060b40ccf fix: fix mentions box being too big because plainText was the pubKey 2020-09-23 15:15:44 -04:00
Jonathan Rainville a35130ff68 fix: fix reply colors in dark mode 2020-09-22 11:30:30 -04:00
Jonathan Rainville 23ca5f9930 feat: make settings user dependant and clean settings uses 2020-09-16 16:58:55 -04:00
Jonathan Rainville 72af6adb69 feat: get and display emoji reactions in chat 2020-08-27 16:34:35 -04:00
Richard Ramos f6cf197983 fix: pixelated icons on the menu 2020-08-17 11:57:32 +02:00
Richard Ramos e96f3ed47f
fix: display ens names with correct format in all screens 2020-08-11 08:39:07 -04:00
Richard Ramos 5ab1088f7c
feat: play audio messages 2020-07-30 13:49:50 -04:00
Richard Ramos cc735aec6b fix: hide usernames on 1:1 chats 2020-07-23 16:19:54 -04:00
Richard Ramos adde2e2017 fix: dateLabel height 2020-07-23 16:00:14 -04:00
Richard Ramos a31610742c fix: code review 2020-07-21 13:15:22 -04:00
Richard Ramos 5351fb62dc feat: display messages with an image contenttype 2020-07-21 13:15:22 -04:00
Jonathan Rainville 601d237fde fix: fix replies being all squished if the replied message was smaller 2020-07-21 12:00:24 -04:00
Richard Ramos f9335c0969 feat: retry sending messages 2020-07-21 10:19:12 -04:00
Jonathan Rainville 0ab257d005 feat: make RectangleCorner a component and show images in compact 2020-07-16 11:49:13 -04:00
Jonathan Rainville 5951fcf131 feat: refactor Message and add Compact message type 2020-07-16 10:29:29 -04:00