491 Commits

Author SHA1 Message Date
Pascal Precht
8a1a265036 fix(StatusUpdate): ensure hover effect is working properly
This commit introduces some `MouseArea`s so components inside the
`StatusUpdate` component cancel it out by having a higher `z`.

Also, in some cases we need to conditionally set the `root.hovered` property
to ensure the values get inverted correctly, otherwise it causes undesired
flicker effects.
2020-12-21 14:14:48 -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
Jonathan Rainville
4f2a1b5e73 fix: fix scroll going back down when hitting images 2020-12-18 15:39:16 -05:00
Jonathan Rainville
d01c9fef79 feat: add profile pic support 2020-12-17 16:44:25 -05:00
Michael Bradley, Jr
b524c3b423 fix: restore z-index to root Item of ChatText.qml 2020-12-16 09:16:50 -05:00
Pascal Precht
344880b3a3
fix: remove explicit properties in usernamelabel 2020-12-14 14:18:46 +01:00
Pascal Precht
743858837a uiux(StatusUpdate): add separator and fine-tune margins 2020-12-14 12:36:49 +01:00
Pascal Precht
8cd95d5bfd feat: introduce StatusUpdate component
This is a new MessageComponent type that will be used in the timeline status updates
view.
2020-12-14 12:36:49 +01:00
Pascal Precht
bb6bcc640a chore(MessageContextMenu): ensure chat tab is activated when attempting to send message
This is needed when accessing the context menu from the timeline status updates.
Previously, it'd only change the active channel because it assumed the user is already
in the chat view. This is no longer the case when in timeline view, so we need to make sure
we first navigate to the chat view.
2020-12-14 12:36:49 +01:00
Richard Ramos
4d2e396b7f fix: display transaction data 2020-12-11 14:04:25 -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
c9f7928956 fix(Usernamelabel): ensure message time is positioned correctly 2020-12-10 12:30:31 +01: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
066fd9f7e5 feat: allow message context menu to render emojis only
Closes #1492
2020-12-10 12:30:31 +01:00
Pascal Precht
2baf56f505 refactor(Chat): move suggestions ListModel into StatusChatInput
StatusChatInput was relying on the suggestions ListModel, even though there was
no guarantee that it would exist. This is more apparent when using the component
in different context (e.g. Timeline/Status Updates). QML will throw a reference
error in this case.
2020-12-10 12:30:31 +01:00
Pascal Precht
9745205302 refactor(Chat): move send message logic out of status chat input
`StatusChatInput` ideally shouldn't rely on chatsModel and other global
objects at all. Also, when using the component in different places, it can cause
accidental sending of message when testing the component (because all the logic is already
wired up)
2020-12-10 12:30:31 +01:00
Richard Ramos
b0829a4615 fix: account selector in browser 2020-12-09 14:19:26 -05:00
Jonathan Rainville
08a7baed8f feat: add OS notification and setting to switch back 2020-12-09 14:19:16 -05:00
Richard Ramos
ae30d04010 refactor: ProfileView 2020-12-08 17:01:22 -05:00
Richard Ramos
426fe504b4 refactor: move generateIdenticon to utils 2020-12-08 17:01:14 -05:00
Richard Ramos
ae83818eed refactor: chats view
Extract private groups, reactions, stickers and transactions procs to individual view files
2020-12-08 17:01:14 -05:00
hydrogen
3951d0fff5 fix: ensure cursor is changed when hovering a link 2020-12-08 17:00:06 -05:00
hydrogen
12bdec6b39 fix: remove patch 2020-12-07 10:48:55 -05:00
Pascal Precht
7210bb1370 fix: use ConfirmationDialog when unblocking users
We've introduced a bug in https://github.com/status-im/nim-status-client/commit/8fd28dfa where a
non-existing `UnblockContactConfirmationDialog` usage was added.
This commit changes it to be a standard `ConfirmationDialog` to make the application compile
again.
2020-12-07 13:44:30 +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
hydrogen
94b0343d04 fix: add padding to the empty chat view 2020-12-04 16:21:31 -05:00
hydrogen
2f0aab055a fix: use ModalPopup instead 2020-12-04 16:21:03 -05:00
hydrogen
323ba10a0e fix: qrcode popup should be its own modal
fixes #1457
2020-12-04 16:21:03 -05:00
hydrogen
d797880e6e fix: forgotten log 2020-12-04 15:52:04 -05:00
hydrogen
f69da599ae fix: update chat view after user is blocked 2020-12-04 15:52:04 -05:00
hydrogen
8fd28dfad6 fix: check if user is blocked on profile popup
This PR is a response to @emizzle's suggested change in PR #1431 . It checks if a user is blocked before exposing certain functionality to the user in a Profile popup. The new unblock button also has a fail-safe unblock confirmation popup

disable the chat input if 1-on-1 chat recipient has been blocked.
2020-12-04 15:52:04 -05:00
hydrogen
4e1f712376 fix: i18n placement caused incorrect reaction authors rendering
I've made a fix to better handle rendering of reaction authors in conjuction with i18n
2020-12-02 14:36:56 -05:00
Iuri Matias
3662a938c9 change message limit count to 99+ 2020-12-02 14:29:39 -05:00
Richard Ramos
77cf450d20 fix: +99 2020-12-02 14:29:39 -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
Richard Ramos
3a6248319c fix: QR button acts as a toggle, and changed the font of HeaderButtons 2020-12-01 13:46:47 -05: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
Richard Ramos
b9d59f44cc feat: show loading indicator on login when requesting mailserver messages 2020-12-01 13:32:39 -05:00
Richard Ramos
3f12320764 feat: checkbox style 2020-12-01 13:30:58 -05:00
Jonathan Rainville
dae7f9cd44 fix: fix ChatImage not opening in the popup 2020-11-27 15:19:20 -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
7c69f8fe52 fix: code review 2020-11-26 13:25:14 -05:00
Richard Ramos
95616e2d10 fix: colors for chat links 2020-11-26 13:25:14 -05:00
Richard Ramos
37aabf57b3 fix: code review 2020-11-26 13:24:53 -05:00
Richard Ramos
0c71ddc888 fix: use opacity gradient and icon for read more/less 2020-11-26 13:24:53 -05:00
Richard Ramos
a5b9511a55 fix: show ens usernames when creating a 1:1 chat 2020-11-26 13:23:42 -05:00
RichΛrd
71665ed53c Apply suggestions from code review
Co-authored-by: Jonathan Rainville <rainville.jonathan@gmail.com>
2020-11-26 11:45:17 -05:00