676 Commits

Author SHA1 Message Date
Richard Ramos
b43122d7f3 feat: use stacklayout for chat messages 2021-02-23 08:53:31 -05:00
Jonathan Rainville
98b3e64573 chore: update status-go version and update mailservers api 2021-02-22 10:01:19 -05:00
Jonathan Rainville
5327b7feea fix: fix mention not being removed 2021-02-22 09:58:28 -05:00
Pascal Precht
18ea9dc2cd fix: make reactions in 1-on-1 chats work
Turns out message reactions weren't functional in 1 on 1 chats.
Reaction signals come with a `chatId` that they correspond to, which is
then used to determine to channel and message list to apply/remove
the reaction to.

Inside of a 1 on 1 chat, the `chatId` of a reaction coming from the
will always be the pubKey of the the user that receives it.
A user however, usually doesn't store a chat item for her own pubKey
unless it's of type `Profile`.

This results in an illega storage access as reported in #1828

This commit fixes this bug by checking whether the reaction `chatId`
matches the user's `pubKey`. If that's the case, we know that the reaction
corresponds to the reaction's `fromAuthor` chat.

Fixes #1828
2021-02-22 09:58:07 -05:00
Richard Ramos
b1b32d354d fix: TLS verification 2021-02-22 09:57:42 -05:00
staked-smart-ace
1ad506e746 Fixed dismissing issue when update contact's profile. Fixes #1761 2021-02-22 09:54:18 -05:00
staked-smart-ace
31a9d1a6f1 Fixed dismissing issue when update contact's profile. Fixes #1761 2021-02-22 09:54:18 -05:00
Richard Ramos
228e746421 fix: Disable ListenAddr as it is not necessary for running status-desktop 2021-02-18 17:55:50 -05:00
Richard Ramos
38eeaf111c fix: update image when switching account on login
Fixes: #1847
2021-02-18 16:40:33 -05:00
ace-smart
03353af634 Updated codes be more compacted. Fixes #1826 2021-02-11 10:15:29 -05:00
ace-smart
972cf9f138 Fixed the issue doesn't show nickname on profileview in 1:1 chat. Fixes #1826 2021-02-11 10:15:29 -05:00
Pascal Precht
8977ba4931 refactor: redesign PrivateChatPopup to match new designs
This commit introduces the new design and behaviour of the modal
that opens up when starting a new 1-on-1 chat.

Main changes include:

- New search UI/UX functionality of users and ENS resolutions
- Composed view of existing contacts and contacts to be searched
- Ability to add contacts from within the modal

Closes: #1747
2021-02-10 13:39:25 -05:00
Richard Ramos
2ac67f95aa fix: add contact using status ens name 2021-02-08 17:39:10 -05:00
Richard Ramos
366ebffbe7 fix: code review 2021-02-08 17:37:44 -05:00
Richard Ramos
d0de5c074f fix: populate suggestion box with all users from the message list
Fixes: #1328
2021-02-08 17:37:44 -05:00
Jonathan Rainville
1616ae255b refactor: check mentions in toMessage 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
Richard Ramos
4a9f63c59a fix: code review 2021-02-01 14:23:29 -05:00
Richard Ramos
e76e936d2b feat: request older status updates 2021-02-01 14:23:29 -05:00
Richard Ramos
c241bd47db fix: code review 2021-02-01 12:02:55 -05:00
Richard Ramos
81c33fe2af Do initial balance fetch async 2021-02-01 12:02:55 -05:00
Richard Ramos
17477b0c45 fix: code review 2021-02-01 12:02:55 -05:00
Richard Ramos
55466416d6 fix: initial load of messages and reactions done on a separate thread 2021-02-01 12:02:55 -05:00
Richard Ramos
6af10ac900 fix: determine if a mnemonic has been loaded only once 2021-02-01 12:02:55 -05:00
Pascal Precht
b1e5a15e2a refactor(ChannelContextMenu): remove dependency on active channel
This commit does a bunch of things:

- First and foremost, it removes the active channel dependency.
  This is needed to have it operate on the correct channel object,
  without forcing us to change the active channel (e.g. right-clicking
  on a channel item that's not active, will make it active eventually)
- To make that work, this commit changes the `ChannelContextMenu`
  to receive a `ChatItemView`, so it can be used for things like determining
  what menu options are shown, what members are in a group, whether
  someone is admin of a group etc.
- This also required a new `QtProperty` called `contextChannel`.
  The reason this is required, is because in some cases, like receiving
  members count of groups, we need a complete `ChatItemView` object
  as we don't have access to certain APIs otherwise.
- Unfortunately, we can't pass down `activeChannel` every where for that
  because sometimes the context menu should not actually operate on
  the active channel.

Fixes: #1755
2021-02-01 11:53:06 -05:00
Jonathan Rainville
6dad050cc7 fix: fix muted chats not updating correctly in the profile 2021-01-22 13:41:46 -05:00
Jonathan Rainville
edf3e99f08 fix: update muted channel state if the channel is the active one 2021-01-21 12:04:27 -05:00
Jonathan Rainville
64a0710897 fix: fix channel not updating on new messages 2021-01-20 17:36:42 -05:00
Jonathan Rainville
444072f599 feat: call getPreviewData (url unfurling) in a separate thread
Fixes #1678
2021-01-19 16:51:59 -05:00
Malik Al-Jabr
3ad3739218 fix: gas estimate error
fixes #935
A bug occurs when someone requests a large amount of funds from you since the gas estimation will fail and there isn't a way of handling errors in the source yet.

This PR handles the error appropriatley for both `estimateGas` and `estimateTokenGas` where the response is only converted from hex to int if the RPC call was successful. Otherwise return the error message as the response and let the UI decide how to display it.

Currently the error for gas estimation in transaction bubbles is displayed in a popup however, ive come to realize that 2 popups open instead of one. This is a new bug of which I can't pinpoint the root cause at the moment and have opted to file a separate issue for it.
2021-01-19 16:11:06 -05:00
Jonathan Rainville
3f012dbf00 fix: fix clearing history removing the fake messages 2021-01-18 17:50:45 -05:00
Michael Bradley, Jr
05f38fa966 chore: refactor prod/dev app icon and related logic for macOS 2021-01-15 19:12:42 -05:00
Jonathan Rainville
76688733f5 feat: add muted states for channel
Fixes #1615
2021-01-15 13:52:50 -05:00
Richard Ramos
efc1feb2fa feat: add custom mailserver 2021-01-15 13:51:31 -05:00
Pascal Precht
840a6189eb fix: don't show backup message when mnemonic was imported
As reported in #1584 the message that asks users to backup their seed phrase
is shown even when the seed phrase was imported in the first place, implying that
the mnemonic is already backed (it has to come from somewhere, right?).

This commit introduces a new `appSettings` property that is temporarily set to
determine whether or not the backup message should be shown.

It's set only temporarily because we actualy determine whether we want to show the
backup message, by checking if the account's mnemonic is still stored in the settings.
When a backup is done, Status removes the mnemonic from the profile settings.

So in order to get the right behaviour we need to make sure to remove the mnemonic
from the profile settings after the account has logged-in and originated from
an imported seed phrase. This is done by setting the mentioned property.

Closes #1584
2021-01-15 13:51:20 -05:00
Pascal Precht
7102596b3f fix(Timeline): make reactions works
This commit makes reactions in the status timeline work.
There are two things prior to this commit that are broken:

1. The logic that opens the reaction context menu always expects
   and instance of `chatsView` because it tries to calculate a users
   nickname. Such an instance isn't always available in that context, so
   the nickname logic has been moved to `appMain` for now, removing that
   dependency and therefore making it work in both, the chat view as well
   as the status view.
2. While 1) makes the context menu work, it turns out that adding and
   removing reactions inside the status timeline is still not working.
   The reason for that is, that the reactions component maintains its own
   `messageList`, which isn't aware of the fact that reactions for messages
   coming from chats of `ChatType.Profile`, need to go into a dedicated
   message list for `ChatType.Timeline`.

In other words, reactions are sent and removed from message in messagelists
that don't actually exist.

This commit fixes both of these things by ensuring the message lists
maintained by reactions are timeline aware. Also ensuring updates are
done correctly.
2021-01-14 15:33:46 -05:00
Jonathan Rainville
a5fce2b7de fix: fix chat not scrolling because the signal was not called 2021-01-13 16:27:13 -05:00
Richard Ramos
6b1cef9235 List custom networks and allow selecting them 2021-01-12 13:26:39 -05:00
Richard Ramos
0acc959e4d Save new networks 2021-01-12 13:26:39 -05:00
Jonathan Rainville
e747ed8f1b fix: pending transactions crashing on infura issues 2021-01-12 12:40:51 -05:00
Richard Ramos
4b72e5dde0 fix: pinned mailserver default value 2021-01-11 14:51:08 -05:00
Richard Ramos
199d5a0342 use mailserver cycle or specific mailserver depending on settings 2021-01-11 14:01:17 -05:00
Richard Ramos
2a6eb20094 pin selected mailserver 2021-01-11 14:01:17 -05:00
Pascal Precht
b0cd49b111 fix(Timeline): ensure messagesList QtProperty is notified for rendering
The `messageList` model used for rendering messages gets notified by the
`activeChannelChanged()` signal. That signal is not immediately emitted inside
the timeline when new messages are received.

This causes the underlying view data to be out of sync with the model,
causing UI bugs, such as rendering the `EmptyTimeline` component when in fact,
the timeline is not empty.

To fix this, there are two options:

1. Change the signal from `activeChannelChanged` to `messagePushed` signal, which
is for sure emitted when messages are received
2. Ensure `activeChannelChanged` is emitted when messages are pushed and the
active channel is indeed the timeline

Since the application has been relying on `activeChannelChanged` so far, I decided
to go with option 2 as I'm not sure whether option 1 would introduce other unwanted
side effects.
2021-01-11 13:59:23 -05:00
Jonathan Rainville
0ff5fa32f0 fix: fix channels reordering and messing up the profile image 2021-01-11 13:57:35 -05:00
Jonathan Rainville
7b03da2967 feat: enable removing member and fix invites 2021-01-11 13:57:35 -05:00
Jonathan Rainville
b3844d4012 fix missing function 2021-01-11 13:57:35 -05:00
Jonathan Rainville
d48043ee22 chore: cleanup community code 2021-01-11 13:57:35 -05:00
Jonathan Rainville
a90a30af11 add import for a community 2021-01-11 13:57:35 -05:00
Jonathan Rainville
82405cc425 add export function and button 2021-01-11 13:57:35 -05:00