Commit Graph

1668 Commits

Author SHA1 Message Date
Iuri Matias 38be2889cd use StatusIconButton component to avoid pixelized close button 2021-05-05 17:15:40 -04:00
RichΛrd efe550ccd5 Update ui/app/AppLayouts/Chat/ChatColumn.qml
Co-authored-by: Jonathan Rainville <rainville.jonathan@gmail.com>
2021-05-05 17:13:02 -04:00
Richard Ramos fbbfa30b1b Allow image drag/drop in communities 2021-05-05 17:13:02 -04:00
Iuri Matias a2655c9b7b hide node tab toggle for now 2021-05-05 17:09:17 -04:00
Jonathan Rainville c45fe44ad5 feat(Community): show community description in CommunityColumn
Fixes #2400
2021-05-04 15:52:35 -04:00
Jonathan Rainville 9d625016ff chore: fix spacing and width of chat identifier 2021-05-04 14:52:37 -04:00
Jonathan Rainville 49d130a111 feat(ChatMessages): show chat identifier at the top of the window 2021-05-04 14:52:37 -04:00
Jonathan Rainville 64e965ea07 feat(Chat): add Add To Contact banner in 1 to 1 chats 2021-05-04 14:52:37 -04:00
Iuri Matias 11e6ca7e42 don't allow username change for own user 2021-05-04 14:46:32 -04:00
Richard Ramos f5dacb40b1 fix: group info font
Fixes #2380
2021-05-03 15:03:51 -04:00
Richard Ramos 9ea56a3ae7 force refetching previews when preview whitelist changes 2021-05-03 15:03:03 -04:00
Jonathan Rainville 659eb6c681 fix: fix lists overflowing 2021-05-03 14:46:25 -04:00
Jonathan Rainville eac7009807 feat(community): fetch community info from link
Fixes #2290
2021-05-03 14:36:37 -04:00
Richard Ramos 7ee11e27e2 fix: can't send transactions on browser
Fixes #2433
Fixes #2422
2021-05-03 14:13:41 -04:00
Jonathan Rainville 33a77ab761 fix(CommunityTransfer): fix private key display to match design
Fixes #2419

Makes it so the private key is elided by default so you can see it all from the get-go. If you focus the field, the key will "unfurl" and you can copy it manually.
Otherwise. the Copy button will always copy the whole key
2021-04-30 13:09:19 -04:00
Jonathan Rainville 22398284e9 fix(CompactChat): fix margins for images and invites
Fixes #2407
2021-04-30 13:01:52 -04:00
Jonathan Rainville 010b617da6 fix(CommunityList): fix CommunityList binding loop 2021-04-29 13:05:49 -04:00
Jonathan Rainville 1b491df9b4 feat(CommunityBackup): remove backup banner after clicking on it 2021-04-29 13:05:49 -04:00
Jonathan Rainville f353a29c3f feat(Communities): add Back up community rectangle for admins
Fixes #2417
2021-04-29 13:05:49 -04:00
Eric Mastro 0850835b34 fix: Send Message button not working in profile popup
Fixes: #2364

The Send Message button click event was erroring due to a refactor that had been done to allow for changing app sections.

This has been updated to follow the current way to change app sections.

fix: “Send Message” button crash in communities
This required switching from communities to normal view.

fix: crash when clicking channel link in community message
When a message in communities contains a link to another channel (ie #otherchannel), the search for this channel needed to be updated to also search for the channel by name, allowing for switching between channels within a community by message link. Additionally, when in a community, if the channel was located in a normal chat, it will switch the view to the normal chat after being found.
2021-04-29 12:36:58 -04:00
Eric Mastro daabef3a3c fix: do not show watch-only accounts as “from address”
Fixes: #2257.

If a user had selected a watch-only address in the wallet, the backend `walletModel.currentAccount` property would also change. When loading a transaction modal, this property was used to set the `selectedAccount` value for the “from” `AccountSelector`, regardless if the account was a watch-only address.

This PR updates the logic for `selectedAccount` such that it will only allow the account to be selected if it is not a watch-only account.
2021-04-29 12:36:39 -04:00
Jonathan Rainville 3a7c95967a feat: implement redesign of message replies
Fixes #2303
2021-04-29 12:35:59 -04:00
Jonathan Rainville 7def4b8630 fix(TextArea): fix selecting text in a TextArea and placeholder color 2021-04-29 12:31:40 -04:00
Jonathan Rainville 6a9bd579d1 fix(CreateCommunity): fix separator margins 2021-04-29 12:21:12 -04:00
Jonathan Rainville aab008d6ef fix(CreateCommunity): fix membership text color and spacing 2021-04-29 12:21:12 -04:00
Jonathan Rainville e77012919b fix(CompactMessage): fix reactions overlapping with the test 2021-04-29 12:18:31 -04:00
Richard Ramos 4d55e3f583 fix: channel context menu colors
Fixes #2363
2021-04-27 16:19:49 -04:00
Pascal Precht aa8d9a7f48 feat: introduce StatusLoadingIndicator component
A `StatusIcon` that rotates infinitely and can be used for indicating
pending states.

Usage:

```
StatusLoadingIndicator {
    width: 24 // default: 17
    height: 24 // default: 17
    color: "red" // default: loading asset color
}
```

This also removes `LoadingImage` component from `ui/shared`.

Closes #2360
2021-04-27 14:56:09 -04:00
Richard Ramos f01bbcb926 fix: seedphrase backup endless loop
Fixes #2232
2021-04-27 14:12:45 -04:00
Richard Ramos b0a9a9ab06 fix: group members context menu icons
Fixes #2381
2021-04-27 14:11:49 -04:00
Iuri Matias 093f7cff7a re-disable experimental features 2021-04-23 07:44:55 -04:00
B.Melnik 0e2ca770b8 feat: add confirmation dialog on experimental features enabling 2021-04-23 07:01:12 -04:00
Iuri Matias 079aa825cd update to 0.1.0-beta.9 2021-04-22 12:49:11 -04:00
B.Melnik e211acae9b feat: process activeFocusChange event and select all in address line in Browser 2021-04-22 09:58:24 -04:00
Pascal Precht 5d34147956 fix(Communities): don't render invite button for non admins 2021-04-21 18:14:56 -04:00
Richard Ramos a581facd88 fix: code review 2021-04-21 18:09:50 -04:00
Richard Ramos 1914557e6b Comment ENS toggle on communities
Fixes #2269
2021-04-21 18:09:50 -04:00
Jonathan Rainville 2e25bf4f8a fix(CompactMessage): fix message hover getting stuck
Fixes #2226 and #2196
2021-04-21 18:05:42 -04:00
Eric Mastro 58e292e9ab fix: Add close button to seed backup warning
Fixes: #2248.

Add a close button to the seed backup warning banner in the wallet. The banner will reappear upon application restart as long as the seed hasn’t already been backed up (`profileModel.mnemonic.isBackedUp`).

A new .svg with a white outline needed to be added as well because the original “close.svg” had a purple outline, which would show up when the ColorOverlay applied to the close button had an opacity less than 1.0.
2021-04-21 17:59:27 -04:00
Pascal Precht bda1582ea0 uiux: ajdust app tab icons to have the correct size
Closes #1843
2021-04-20 15:15:17 -04:00
Jonathan Rainville b433b23245 chore(CommunityProfile): comment notifications and remove Delete code
Fixes #2272
2021-04-20 14:47:07 -04:00
Pascal Precht 35c63418e2 fix(Communities): remove context menu option to leave channel
Community channels can't be left, only muted.

Closes #2273
2021-04-20 13:55:07 -04:00
Pascal Precht dcb0f4dce9 fix(Communities): make invite popup push onto modal stackview
The popup to invite friends to communities has so far always been a brand new
popup that's opened on top of possible existing popups.

The design however, expects that the same section should be shown as part
of a wizard-like process inside of the existing community profile overview
popup, when entered from there.

This commit extracts the invite friends popup section into component that
can be reused as stack view, as well as modal content, to implement both
scenarios.
2021-04-20 13:24:08 -04:00
Pascal Precht 66839443c5 uiux(Community): minor fixes in create channel modal to match designs 2021-04-20 13:24:08 -04:00
Pascal Precht fc2e8505f3 uiux(Communities): various community profile popup ui fixes
This commit changes a bunch of things related to ui bugs in the community
profile popup. Fixes include:

- Removing the `Delete Community` option since this functionality isn't implemented yet
- Changing the color of the menu item's icons in dark mode to be blue
- Doing the same in the memberlist popup
2021-04-20 13:24:08 -04:00
Jonathan Rainville ea802a95d7 fix(TransactionModal): fix values oferflowing
Fixes #1872
Elides those values and adds a tooltip to show them completely
2021-04-20 13:20:34 -04:00
Jonathan Rainville 20f9f47028 chore(CreateCommunityPopup): leave create btn enabled to show errors 2021-04-20 13:19:22 -04:00
Jonathan Rainville b4de0da9f7 fix(CreateCommunityPopup): make image optional as before
Fixes #2301
2021-04-20 13:19:22 -04:00
Pascal Precht 1c910deca9 fix(Communities): make kicking members work again
There's a regression in the application where kicking members from communities
doesn't work anymore. This was due to UI logic being moved to a different model
without updating the corresponding view action.

Fixes #2274
2021-04-20 13:16:28 -04:00
Pascal Precht b36652348a uiux(Chat): ensure emojis are centered vertically within messages
Closes #227
2021-04-20 13:06:25 -04:00
B.Melnik 9dc51b82fd feat: add processing CTRL + W to Browser 2021-04-20 12:59:59 -04:00
Pascal Precht e63db9a21c uiux(Communities): use proper icon for "leave community" menu item 2021-04-20 12:30:10 -04:00
Pascal Precht 5016091df7 fix(Communities): allow everyone to activate community profile popup
Prior to this commit, only admins of a community could open up the community
profile popup from inside the community. However, normal members should be able
to do so too.
2021-04-20 12:29:56 -04:00
Pascal Precht 122b3b8ae9 chore(Communities): remove community context menu for non-admins
Normal members shouldn't be able to create channels, nor should "leave
channel" be an option of the context menu provided inside of a community.

This commit removes these.
2021-04-20 12:19:37 -04:00
Eric Mastro 6de717e0e4 fix: remove emoji html from notifications 2021-04-20 12:12:33 -04:00
B.Melnik 35b8699f9f feat: add https protocol to urls without protocol in Browser 2021-04-20 12:06:49 -04:00
Pascal Precht c804bb243a feat: store appearance settings globally across accounts
As discussed in https://github.com/status-im/status-desktop/issues/2144#issuecomment-817791172 and https://github.com/status-im/status-desktop/discussions/2145, it's no longer desired
to have different appearance settings across multiple accounts.
Instead, the appearance setting should apply globally to all accounts,
essentially bypassing the individual setting stored in status-go.

This commit introduces a new global setting called `theme` which,
at the time of introducing this commit, can be either:

0 => Light
1 => Dark
2 => System

Because those enum values matches the `AppearanceContainer.Theme` enum,
this commit removes it completely and simply relies on QML's built-in
`Universal.[Light|Dark|System] variants respectively.

Closes #2144
2021-04-19 13:53:14 +02:00
Pascal Precht aeedc87368 feat: introduce global settings
This commit introces global settings that apply across accounts used
inside the application. This is useful when settings like the selected
locale should b the same across all accounts.

Closes #2144
2021-04-19 13:53:14 +02:00
Eric Mastro 9e6bd7a2da fix: create community and channel name validation
Fixes #2050.

This PR contains changes to fix the name validation for new communities and new channels in communities. In the process of updating this, better validation was also added to both popups (create community and create channel), including the prevention of the "Create" button from being enabled until all form fields were valid.

During this process, it was noticed that the community image cropper was not actually cropping the image *in the preview*. Once the community was created, status-go was successfully cropping the image as the user intended. However, the preview thumbnail prior to creation was not accurately showing the cropped image preview and showing the entire image centred instead. *This is still yet to be fixed.* One solution is to upgrade Qt to `5.15` to take advantage of Image QML's `sourceClipRect`.
2021-04-19 20:19:43 +10:00
Pascal Precht 6529efda4d uiux: fix sticker message border color 2021-04-15 16:59:55 -04:00
Jonathan Rainville dae0d60684 feat: extract seed textArea to shared component and use it in wallet 2021-04-15 16:50:57 -04:00
Eric Mastro 707604f250 fix: SyncContainer “activeMailserver” error
There was a bad merge in PR #2225 that caused the QML propery `activeMailserver` in `SyncContainer` to be stripped out. This was causing an error in the console: `qrc:/app/AppLayouts/Profile/Sections/SyncContainer.qml:16: Error: Cannot assign to non-existent property "activeMailserver”`.

This PR adds the property back in and resolves the issue.
2021-04-15 11:00:07 -04:00
Pascal Precht 63bc6f0e53 chore: remove unnecessary splitview props 2021-04-15 10:12:50 +02:00
Eric Mastro e7571bd2a4 feat: Add Methuselah and Mailserver long-running task
Fixes #2143.

Methuselah is the a task manager for long-running tasks. It allows fo registration of workers that will each run in their own thead. Each worker can pass messages to and recieve messages from the main thread.

MailserverWoker was also introduced which moves all mailserver model logic to a MethuselahWorker. All communication to/from the model is done via a MethuselahTask. Results of the task are returned to the main thread by way of `signal_handler`, which calls the QtObject slot specified in the task.

Mailsever also provides a way for the model to emit events inside of the worker. These events are forwarded to the main thread via the `receiveEvent` slot of the `MailserverController`.

Co-authored-by: Michael Bradley, Jr <michaelsbradleyjr@gmail.com>
2021-04-14 15:37:05 -04:00
Jonathan Rainville 988f0b9c57 fix: fix changing network because popup didn't open 2021-04-14 14:39:11 -04:00
Jonathan Rainville 1983fa79aa feat: improve ens search in wallet send by showing the result 2021-04-14 14:39:11 -04:00
Pascal Precht 57ac94c4ac fix(Profile): ensure profile popup has window
When the profile popup is opened inside the contacts list, it doesn't have
a surrounding window context (`Popup` types should usually be used within `ApplicationWindow`
or `Window` components as per https://doc.qt.io/qt-5/qml-qtquick-controls2-popup.html).

This is problematic when popup are nested, like it's the case with the
nickname popup that will be instantiated by the profile popup.
With no window context, such nested popup can't be opened by the application.

This commit ensures the profile popup is created with a proper context,
fixing the issue that the nickname popup won't open when visting via
contacts list.

Fixes #2216
2021-04-14 12:40:50 -04:00
Pascal Precht a954639cba fix(ui): use correct light theme color for app bar divider 2021-04-14 17:00:37 +02:00
Pascal Precht f88241e689 fix(ui): ensure icons in device container have proper theme color 2021-04-14 17:00:37 +02:00
Pascal Precht 153d37a7dc fix(Wallet): use correct theme colors for wallet icons in receive modal 2021-04-14 17:00:37 +02:00
Pascal Precht f2524db882 fix(Wallet): introduce hover effect for wallet accounts 2021-04-14 17:00:37 +02:00
Pascal Precht 78ce77c9c6 fix(ui): remove clip padding in profile section menu 2021-04-14 17:00:37 +02:00
Pascal Precht 18acef7fd3 fix(ui): visually remove splitview handle 2021-04-14 17:00:37 +02:00
Pascal Precht a243c04e29 fix(ui): use correct darkmode color for icons in profile section 2021-04-14 10:54:20 +02:00
Pascal Precht ce774a4dae fix(contextMenu): make menu item hover work and change color 2021-04-14 10:54:20 +02:00
Pascal Precht 5d59cb3870 fix(ui): use proper color for badge border 2021-04-14 10:54:20 +02:00
Jonathan Rainville 00b793c11c feat: move chat button under communities 2021-04-13 18:02:02 -04:00
Jonathan Rainville 048642b7df fix: order joined communities from newest to oldest
Fixes #2154
2021-04-13 18:02:02 -04:00
Jonathan Rainville 63b5c549b9 fix: fix invite button not setting Joined correctly
Fixes #2209
2021-04-13 17:50:32 -04:00
Jonathan Rainville 8607251a6e fix: fix qml warnings 2021-04-13 17:49:43 -04:00
Pascal Precht 5ca9d66212 fix(Communities): ensure newly created community is opened 2021-04-13 15:21:00 -04:00
Pascal Precht 0b5a51177f core: update token icon assets
Closes #2019
2021-04-13 15:12:12 -04:00
Pascal Precht 6e63f65dae fix(Communities): use fallback color for community icon if model doesn't have one 2021-04-13 15:07:14 -04:00
Pascal Precht b76468e675 uiux(Communities): fine-tune header button component to align with designs 2021-04-13 15:07:07 -04:00
Jonathan Rainville bf67c941ff fix: improve profile sections min width and scaling 2021-04-13 15:05:51 -04:00
Jonathan Rainville 3fe9f6c6b8 fix: fix custom network modal not opening
Fixes #2179
2021-04-13 15:00:02 -04:00
Jonathan Rainville 90d7f65369 fix: remove possibility to click through the top bar on messages
Fixes #1942
Also cleans up a little the ChatColumn abuse of rows
2021-04-13 14:56:00 -04:00
Jonathan Rainville 4cb6a5b01d chore: update transparent to use Style
Co-authored-by: RichΛrd <info@richardramos.me>
2021-04-13 14:49:43 -04:00
Jonathan Rainville 8c753d58f0 fix: fix copy link submenu items being unreadable in dark theme
Fixes #2194
2021-04-13 14:49:43 -04:00
Jonathan Rainville b45cbe83b7 fix: fix channel list spacing during a search
Fixes #2191
2021-04-13 14:47:35 -04:00
Jonathan Rainville a9cae5b96e fix: fix compact message hover when a popup is opened
Fixes #2187
2021-04-13 14:43:48 -04:00
Jonathan Rainville b1fbad91fe fix: fix channel-identifier-dark-text 2021-04-13 14:42:45 -04:00
Jonathan Rainville 10fd90a152 fix: date label not showing correctly
Fixes #2184
2021-04-13 14:40:44 -04:00
Iuri Matias e68333fb07 update to beta.8 2021-04-12 14:26:30 -04:00
Jonathan Rainville b19ab8a03e update to beta.8.rc3 2021-04-06 14:35:52 -04:00
Iuri Matias 6417628531 update to beta.8.rc2 2021-04-02 11:15:25 -04:00
Jonathan Rainville 2e248d710d fix: fix mention popup not showing after a line break 2021-04-01 17:07:25 -04:00
Jonathan Rainville a01e851070 fix: fix being unable to put multiple spaces in a row 2021-04-01 17:07:25 -04:00
Jonathan Rainville 6c0fce5b0c fix: menu dropdowns not closing on button click and position 2021-04-01 16:59:43 -04:00
Jonathan Rainville 62b0c63965 feat: add invite button to community menu
Fixes #2139
2021-04-01 16:51:37 -04:00
Jonathan Rainville 8b3ce83d00 fix: input box disappearing on communities
Fixes #2155
2021-03-31 16:53:08 -04:00
Jonathan Rainville 303e6e9893 refactor: change PrivateChatPopup to use the new ContactListAndSearch 2021-03-31 16:25:24 -04:00
Jonathan Rainville c42bd1ea78 feat: add input to search and use ENS for community invite
fixes #2138
2021-03-31 16:25:24 -04:00
Iuri Matias 63b3ee3942 toggle browser settings 2021-03-31 15:35:04 -04:00
--replace-all b3791cb39f fix: typo in community popup
fixes #2156
2021-03-31 15:34:44 -04:00
Jonathan Rainville 49aae68097 chore: fix wrong sound id used in timeline 2021-03-30 16:08:43 -04:00
Jonathan Rainville 1bc3fa1c97 fix: fix sticker click modal to only open on sticker click 2021-03-30 16:08:13 -04:00
Jonathan Rainville 996b36714d fix: fix scroll speed on Windows 2021-03-30 16:02:10 -04:00
Jonathan Rainville a337b293da feat: show community context menu on Community button 2021-03-30 15:53:32 -04:00
Jonathan Rainville e33266aa2f fix: fix emoji popup and create community popop text color 2021-03-30 15:38:15 -04:00
Iuri Matias fdf9d0b5ec fix blank sync settings 2021-03-30 15:36:09 -04:00
Iuri Matias 22370e0b34 update to beta.8.rc1 2021-03-26 15:30:40 -04:00
Jonathan Rainville de307276c1 fix: wallet left tab button colors 2021-03-26 15:28:06 -04:00
Jonathan Rainville 038ea033c9 feat: implement new dark theme colors for menu and more
Fixes #2094
2021-03-26 15:28:06 -04:00
Pascal Precht 907c257eaf fix(Wallet): prevent signing phrase from leaking out of modal 2021-03-26 11:30:03 -04:00
Jonathan Rainville e0b8a74e29 fix: fix show tooltip under the version button because of small space 2021-03-25 16:57:47 -04:00
Jonathan Rainville d3dbab11d2 fix: fix settings menu overflowing 2021-03-25 16:57:47 -04:00
Jonathan Rainville aeded149db fix: show community button tooltip on the right
Fixes #2069
2021-03-25 16:57:47 -04:00
Jonathan Rainville 0478a04db9 fix: fix chat time tooltip being too big
Fixes #1946
2021-03-25 16:57:47 -04:00
Jonathan Rainville 012b5dc8a0 fix: fix language list view scrollbar and binding loop 2021-03-25 16:45:56 -04:00
Iuri Matias 3813a1a330 fix language modal 2021-03-25 16:45:56 -04:00
Iuri Matias 5e0da7c1ec updated language modal 2021-03-25 16:45:56 -04:00
Pascal Precht dc9de1968f fix: enforce locale provided by appSettings
Prior to this commit, we would only set the translation package for the
application's engine when `appSettings.locale !== "en"`.

This is problematic because it seems that `engine` is already provided with
a system default that may not be `en`. In practice, this means that, initially,
engine is loaded with, say `de`. `appSettings.locale` might be `en` but because
we're only loading the correct translation package when it's **not** `en`,
the application will stay in `de`.

Changing the language to `en` at runtime is fine, however once the application
is restarted, `engine` is again initialized with some other possible system default.

It seems that we should *always* load the translation packge when `appSettings` are
loaded.
2021-03-25 16:37:13 -04:00
Eric Mastro 2336aa4e6f fix: custom token validation for non-token addresses
When contract addresses that are not ERC-20 or ERC-721 were input, the token would be allowed to be added and would crash the app.

In addition, when an ERC-20 contract was deployed without a name and symbol, “Invalid ERC-20 address” would appear.

This PR adds error checking from the token detail lookup and reports the error back to the user in the modal. This prevents non-ERC-20/721 contracts from being able to be added to the app and prevents a crash.
2021-03-25 15:52:02 -04:00
rinzlxr 0abaa61067 fix: typos and switch statement string literals
remove console log

fix last typo
2021-03-25 15:00:13 -04:00
Iuri Matias 857f0ac069 remove various titles from profile sections 2021-03-24 14:45:17 -04:00
Iuri Matias 3d2eaa3369 remove various titles from profile sections 2021-03-24 14:45:17 -04:00
Iuri Matias 4e15002beb hide reactions and replies when the message is a transaction 2021-03-24 14:43:04 -04:00
Jonathan Rainville 686cbc7f54 fix: fix communities not showing the letter identicon correctly 2021-03-24 14:20:47 -04:00
Pascal Precht c28d4054ef fix(Chat): ensure chat reply separator doesn't leak into message
Fixes #1988
2021-03-24 14:17:43 -04:00
Jonathan Rainville 7188579e46 fix: fix mention showing as pubkey and show styling 2021-03-24 14:16:55 -04:00
Jonathan Rainville 5d67a3f5f9 fix: fix sending three word names mentions not working 2021-03-24 14:16:55 -04:00
rinzlxr 47ae3a4c16 ens section fixes
use the available dark image for ens section

add the image, ensure 624 widths and fix button

move common strings to constants and use number consts
2021-03-24 14:09:59 -04:00
Jonathan Rainville 2a9f9118a1 fix: fix settings not being refetched when they had been edited before 2021-03-24 12:06:24 -05:00
Pascal Precht e1a4a47636 fix(Chat): disable HoverHandler when profile popup or context menu are open
Alright, this is an interesting one:

As described in #1829, when the profile popup is opened within the chat view,
users are still able to click *through* the popup on message, which then puts them in
an active state.

I've done a bunch of debugging as described [here](https://github.com/status-im/status-desktop/issues/1829#issuecomment-804748148) and after doing some
further debugging, I found out that `isMessageActive` isn't really the culprit here.

What causes this effect is the `HoverHandler` that's attached to the `CompactMessage` item.
`HoverHandler` is a standard QML type that emits `hoverChanged` signals so one can do things like
applying hover effects on elements, which is exactly what we do:

```
HoverHandler {
  onHoverChanged: {
    root.isHovered = hovered  // `root` being the message item
  }
}
```

I assume we went with this handler because putting a `MouseArea` in there instead, which fills
the entire message component pretty much eliminates all existing mouse handlers attached to
other child components, such as the profile image or the username of the message, which also
open a message context menu.

It turns out that, having a `HoverHandler` as described above, actually activates it when the
user clicks with the left mouse button as well (not just on hover). That's what causes the "click-through"
effect. This can be verified by setting `acceptedButtons` to `Qt.RightButton`, basically telling
the handler that only right clicks will activate it.

I then tried using `Qt.NoButtons` instead so that no button clicks and only hovers will activate
the handler, but that didn't seem to have any effect at all. It still defaults to `Qt.LeftButton`.

So the last resort was to disable the `HoverHandler` altogether, whenever either the profile popup,
or the message context menu (for emojis etc) is open.

Unfortunately, we don't have access to the profile popup in the compact message component, because it's
detached from the component tree. Therefore, I've introduced a new property `profilePopupOpened` on
the chat layout, which we can read from instead.

Fixes #1829
2021-03-23 10:32:31 -04:00
Pascal Precht a030a4fadc refactor: make add new contact modal looks the same as new chat modal
Closes #1660 #2086
2021-03-22 15:55:13 -04:00
Pascal Precht e2113553b9 feat(PrivateChatPopupSearchResults): introduce reset() and config API
This commit introduces a `reset()` function so that search results inside
the application can be easily reset. It also introduces a `resultClickable`
flag which allows consumers of this component to decide whether a search result
is clickable and emits a dedicated event.

This is useful when UIs should only allow actions via the result icon button
(as it's the case with the new add-to-contact modal).
2021-03-22 15:49:47 -04:00
Jonathan Rainville 7fb9578285 feat: highlite mentions in the chat input as well 2021-03-22 15:49:21 -04:00
Pascal Precht d2b9d54c4b fix: ensure lists and radio button groups look concise throughout app
Fixes #1992
2021-03-19 16:17:14 -04:00
Jonathan Rainville 98ef76d3c8 chore: hide edit community button until the feature is implemented 2021-03-18 14:52:28 -04:00
Pascal Precht 29c7f7b91d uiux(Profile): adjust layout max width of profile sections
Closes #1994
2021-03-18 14:50:58 -04:00
Pascal Precht 010a7e0d8e feat(Communities): open member profile on memberlist click 2021-03-18 14:47:36 -04:00
Pascal Precht 6b6a318a8c
refactor(Communities): make member list look as intended
This change aligns the member list's look & feel of the community profile popup
with the designs by implementing the proper member list items styles, hover effects
and fine-tuning the context menu.

This commit also comments some of the actions provided by the context menu,
which aren't implemented yet. There's no point in having UI components that don't or
can't function.

Those will be re-introduced once they are actually implemented.

Closes #1959
2021-03-18 10:03:24 +01:00
Pascal Precht b4389402e9
refactor: make use of StatusContextMenuButton 2021-03-18 10:03:08 +01:00
Jonathan Rainville 23a8de0449 fix: fix community not being passed correctly to the invite bubble 2021-03-17 16:09:23 -04:00
Jonathan Rainville f3b452188a chore: extract join.status link prefixes to Constants 2021-03-17 16:09:23 -04:00
Jonathan Rainville 62d10eba49 feat: show community invite component on community link 2021-03-17 16:09:23 -04:00
Jonathan Rainville 5581fca41d feat: show default unfurling for community links 2021-03-17 16:09:23 -04:00
Jonathan Rainville c5c348b0b1 feat: add back status link whitelisting and public chat links 2021-03-17 16:09:23 -04:00
Pascal Precht 907fbc21b8 fix(Chat): don't render "Copy Link" menu item if not desired
This adjust the rules to render the copy link menu item so that it aligns
with what has been mentioned in #1943.

Fixes #1943
2021-03-17 15:28:12 -04:00
Iuri Matias 98eea14da8 fix default mode 2021-03-17 15:25:15 -04:00
Jonathan Rainville d0f141c1b8 fix: fix appSetting not defined by removing sounds from login 2021-03-17 13:35:15 -04:00
Pascal Precht 053c7fdcf3 fix: enforce compact mode
Since https://github.com/status-im/status-desktop/commit/93668ff75
we're hiding the setting to change appearance for compact normal mode
of the UI. For now, compact mode is the new default (reasoning is unclear
at this point).

Prior to this change, most likely many users are still using the
normal mode configuration, so we have to enforce compact mode for
those.
2021-03-17 13:34:42 -04:00
Pascal Precht 362ad02ffc
refactor(Communities): make membershipt request button looks as designed
The designs for the membership request button look different now, so this
commit makes use of the `StatusSettingsLineButton` to implement that new
look & feel.
2021-03-17 10:30:19 +01:00
Pascal Precht 38bd5f1422
fix(Communities): remove type error in item width
There's no `parent` in that componen, which results in a QML type error
at runtime.
2021-03-17 10:30:18 +01:00
Pascal Precht 638892f21d
refactor(Communities): use StackView inside profile popup for memberlist
Prior to this commit, the community memberlist was represented in a nested modal
which doesn't adhere to the designs. Rather, the section should render inside the
existing modal, requiring it to be refactored using a `StackView`.

This commit refactors the community profile popup so that the different content
sections ("Overview" and "MemberList") are rendered inside of the popup and can
be pushed onto and popped off a stack view.

The content components (newly introduced in this commit) `CommunityProfilePopupMembersList`
and `CommunityProfilePopupOverview` need to define a `headerTitle`, `headerDescription` and
if needed `imageSource` so they can alter the modal's header.

The same pattern might be used in other places of the modal if required.

Partially fixes #1959
2021-03-17 10:29:31 +01:00
Jonathan Rainville b9594591b0 fix: fix a lot of issues relative to dark theme
Fixes #1997
2021-03-16 17:22:58 -04:00
Jonathan Rainville 9d9b0ab5e6 fix: fix chat link preview modal
Fixes #2001
Fixes icons
Fixes Icon border
Fixes button hover
Fixes list scrolling and overflow
2021-03-16 17:20:12 -04:00
Iuri Matias 9621230e6d update default settings 2021-03-16 16:51:14 -04:00
Iuri Matias 9c404a1047 show browser favourites bar by default 2021-03-16 16:51:14 -04:00
Richard Ramos 4f4a3f1c30 feat: see stickers details when clicking on a sticker 2021-03-16 15:39:52 -04:00
Pascal Precht 8ad9e52abf fix(Communities): render community image in profile popup 2021-03-16 14:57:45 -04:00
Eric Mastro f1e83f74bc feat: drag and drop images
Allow up to 5 images to be dragged and dropped in to one-on-one chats and in the timeline. Can be combined with the existing upload button. The upload file dialog has been changed to allow multiple selections. Drag and dropped images adhere to the following rules, with corresponding validations messages:
- Max 5 image
- Image size must be 0.5 MB or less
- File extension must be one of [".png", ".jpg", ".jpeg", ".heif", "tif", ".tiff"]

Drag and drop and uploaded images are now also deduplicated.
2021-03-16 13:51:37 -04:00
Iuri Matias e6a3014d9f update description of sign out button 2021-03-16 12:43:37 -04:00
Iuri Matias 3119aebed4 re-add sign out button 2021-03-16 12:43:37 -04:00
Iuri Matias 93668ff75a hide chat mode switch for now and make compact mode the default 2021-03-16 12:43:07 -04:00
Pascal Precht e725e7982d fix(Communities): properly pass `admin` state to profile popup
This was hardcoded into `isAdmin` for some reason. It also seems that the
property isn't actually used anywhere in the profile popup, so we might
as well get rid off it.
2021-03-16 12:43:01 -04:00
rinzlxr 410851da33 fix: profile menu seperators
fixes #1991

fix: use secondary color instead
2021-03-16 12:38:17 -04:00
Iuri Matias 3878b8a662 update to beta.7.rc2 2021-03-15 15:05:33 -04:00
Pascal Precht eefd56dd28 fix(Communities): ensure app remembers hidden community intro banners
Fixes #1960
2021-03-15 14:35:31 -04:00
Pascal Precht 2e710715bc fix(Communities): ensure profile popup is hydrated with correct data
The `communityProfilePopup` relies on the currently `activeCommunity` to
get its data. Unfortunately, once read, even when `chatsModel.setActiveCommunity()`
is called which triggers `activeCommunityChanged`, the data in the popup
won't be updated. The next time one would open a community profile page,
it'd have the data that was previously received from the model.

This commit ensures that the popup is hydrated with the most recent data
by explicitly updating its properties right before it's opened.
2021-03-11 10:41:19 -05:00
Pascal Precht 51c8d86ccc fix(Communities): don't crash on rejoin attempt
Prior to this commit there was a scenario where the application would
crash due a memory bug when attempting to (re)join a community.

The scenario is as follows:

1. User creates or has been invited to community with `ON_REQUEST` permissions
2. User leaves community
3. User decides to rejoin, so she selects the community she's been part
of and hits the "Join" button

At this point Status Desktop would send a new `RequestToJoin` request, as the
community has a corresponding permissions setting.

This would then result in an `already a member` error in status-go, because
status-go checks whether the requestee is already part of the members list of
the community. The error isn't handled inside Status Desktop which causes
a crash because we're trying to access data in memory that doesn't exist.

Why is this happening?

While this might be unexpected, when leaving a community (as done on step 2 of
the mentioned scenario), users don't actually lose membership but simply
"unsubscribe" from all channels in the community in question and their `joined`
flag is set to `false`.

From that point on, re-joininng a community is done by sending a `JoinCommunity`
request (instead of `RequestToJoin`), which will then set the `joined` flag to
`true` and doesn't actually check the membership in the database.

This commit ensures we're calling the right API by checking whether not only
whether the community is needs `ON _REQUEST` permissions, but also whether the
user isn't already a member of it.

Fixes #2017
2021-03-11 10:41:19 -05:00
Pascal Precht 49b5e6c097 fix(Communities): make validation on community import work again
In https://github.com/status-im/status-desktop/commit/a90a30af1 we've introduced the functionality to import
communities through the UI via a community private key.
That private key is being validated before it gets imported.
For some reason, validation has been removed in another refactor
later on in https://github.com/status-im/status-desktop/commit/534cb23e1, rendering the import
functionality broken.

This commit re-introduces the `validate()` method to make importing
communities work again.
2021-03-11 10:00:05 -05:00
Pascal Precht 01d3369c64 fix(Communities): fallback to letter identicon if no image available
Prior to this commit, communities without an image would render invisible
in the navigation bar of the application. To avoid this, we're now falling
back to our StatusLetterIdenticon component, which renders the first letter
of the community name with the color of the community.
2021-03-11 10:00:05 -05:00
Iuri Matias 00e66009db update to beta.7.rc1 2021-03-08 14:26:39 -05:00
Pascal Precht 0a7d6f6bae fix(Community): ensure community members with write access can post to channel
When a user is part of a community, write access to any channel of
that community is granted. When the permission allows for it, a community's
channel `canPost` property is `true`, which should be relied on to
render the necessary component for writing into a channel.

This commit makes sure community members with proper access get the
chat input rendered so they can write to channels.

Fixes #1985
2021-03-08 11:57:09 -05:00
Jonathan Rainville d361853d0d fix: disable ENS only setting if user has no ENS name
Fixes #1984
2021-03-05 14:01:42 -05:00
Jonathan Rainville 44c9f480c2 feat: set profile and community image cropper to 1:1 ratio 2021-03-05 14:01:30 -05:00
Pascal Precht aa7fb862f2 fix(Communities): make creating channels work again
Very similar to #1986, we're trying to access the `activeCommunity`
property on the `chatsModel` object, which doesn't have such a property
anymore every since we've moved communities into its own view.
This causes errors when trying to create channels.

This commit fixes this bug by ensuring `activeCommunity` is accessed
from `chatsModel.communities` instead.
2021-03-05 13:59:44 -05:00
Pascal Precht 86ea7014f6 fix(Communities): make rejoining communities work
When the communities code was moved into its own view in https://github.com/status-im/status-desktop/commit/b38d1df59
it broke the functionality to join communities again.

Qt complains that the Nim API in use `chatsModel.communities.joinCommunity`
expects two parameters, when it's call with just one.
This is unexpected because the API in question set a default value
for its second parameter.

To make this work again, we have to make sure the `setActive`
parameter is supplied every time we call the API from
within QML.

Also, worth noting that this is not the first time we're running into
a scenario like this.
2021-03-05 13:59:44 -05:00
Pascal Precht 43e4ba771b fix(Communities): make leaving communities work again
Turns out in https://github.com/status-im/status-desktop/commit/81bb7fcc6 we've introduced a regression where
leaving a communities isn't possible anymore because we're trying
to call an API that doesn't exist on the `chatsModel`.

This commit fixes it by ensuring the API is called from `chatsModel.communities`.
2021-03-05 13:59:44 -05:00
Jonathan Rainville 131685ecf5 fix: fix member popup layout and member not showing
Fixes #1949
2021-03-05 13:57:49 -05:00
Richard Ramos 9fe925ca8f fix: make the profile icons smooth 2021-03-05 10:34:10 -05:00
Richard Ramos 9749fe4938 fix: remove svg hack 2021-03-05 09:36:50 -05:00
ace-smart 6e2062ec6f Fixed not showing issue for the profile thumbnail in the suggestion list. Fixes #1916 2021-03-04 17:34:01 -05:00
Jonathan Rainville 4a1c497a08 fix: fix users being able to see admin popup
Fixes #1976
2021-03-04 17:21:17 -05:00
ace-smart 81bb7fcc65 Updated community popup menu btn style. Fixes #1961# This is a combination of 4 commits.
Updated community popup menu btn style. Fixes #1961

Updated community popup menu btn style. Fixes #1961

Updated community popup menu btn style. Fixes #1961

Updated community popup menu btn style. Fixes #1961
2021-03-04 17:20:39 -05:00
ace-smart f3226852c3 Fixed onboarding view backgroud image issue on dark mode. Fixes #1965 2021-03-04 17:17:29 -05:00
Jonathan Rainville 844a61798a fix: fix left tab line not following height of parent
Fixes #1948
2021-03-04 17:02:03 -05:00
Jonathan Rainville a09dd25506 fix: fix description is required for communities 2021-03-03 16:45:23 -05:00
Jonathan Rainville 7e8dc8c5d1 fix: fix community channels not showing the right type
Fixes #1954
2021-03-03 16:45:23 -05:00
Jonathan Rainville 84034d5dbf fix: fix channel color in communities 2021-03-03 16:45:23 -05:00
Jonathan Rainville e52f6daec9 feat: update to latest status go and add color to the community 2021-03-03 16:45:23 -05:00
Jonathan Rainville e28e98a394 fix: fix community rebase errors 2021-03-03 16:45:23 -05:00
Jonathan Rainville c5241e2bf4 feat: intercept clicks on messages links as well 2021-03-03 16:45:23 -05:00
Jonathan Rainville 35688e9740 feat: show unfurled link for status chats in 1:1 2021-03-03 16:45:23 -05:00
Jonathan Rainville c86f67b9f1 fix: fix community header button in dark mode 2021-03-03 16:45:23 -05:00
Jonathan Rainville f8704d7b64 feat: show unviewed count on the community button 2021-03-03 16:45:23 -05:00
Jonathan Rainville b76cb5682c fix: chats not updating on new messages in communities 2021-03-03 16:45:23 -05:00
Jonathan Rainville da77487746 fix: fix invite to use new API and remove the double msg send 2021-03-03 16:45:23 -05:00
Jonathan Rainville 63e2c21b33 feat: show tooltip on top of community button with name 2021-03-03 16:45:23 -05:00
Jonathan Rainville 75a0818d41 fix: fix community image display in the header 2021-03-03 16:45:23 -05:00
Jonathan Rainville 64d38b6049 feat: implement redesign of communities on the left tab 2021-03-03 16:45:23 -05:00
Jonathan Rainville 534cb23e18 feat: add new import community popup 2021-03-03 16:45:23 -05:00
Jonathan Rainville a47847b40f fix: fix community profile looks and style 2021-03-03 16:45:23 -05:00
Jonathan Rainville 6213e020a0 feat: new design for export popup 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 3cc62d65aa feat: show membership requests in the admin popup 2021-03-03 16:45:23 -05:00
Jonathan Rainville 807048522a fix: ste channels correctly when going back and forth to communities 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
Richard Ramos 608455f563 fix: improve qml bottlenecks 2021-03-01 14:17:26 -05:00
ace-smart 367afb70a2 Fixed wrong invite description text color in dark mode. Fixes #1912 2021-02-25 15:43:57 -05:00
ace-smart 4c31a97db8 Fixed wrong color issue of the wallet layout. Fixes #1903 2021-02-25 15:43:14 -05:00
Richard Ramos 1a05b944a2 fix: input html being shown when removing css format 2021-02-25 15:41:31 -05:00
Jonathan Rainville f52cc984d6 fix: fix profile image order since reversing the list order 2021-02-25 15:41:14 -05:00
Richard Ramos 6211d094dc fix: set hide on close as default 2021-02-25 15:40:46 -05:00
Iuri Matias 6222ff985f update to beta.6 2021-02-23 14:28:35 -05:00
Jonathan Rainville fdcc700607 fix: fix chatMessages not starting at bottom by reversing list layout 2021-02-23 11:57:33 -05:00
Jonathan Rainville 744a16a0f4 fix: fix errorSound not defined 2021-02-23 11:57:33 -05:00
Pascal Precht bd9fa37ce3 fix(Chat): ensure correct contact username is shown
In some cases inside of 1-on-1 chats, the fake messages added to
the beginning of the message list, wouldn't determine the correct
username of the contact in question.

This commit explicitly calls `chatsModel.userNameOrAlias()` instead
of relying on `activeChannel.name` which tries to do the same.
2021-02-23 10:42:23 -05:00
Pascal Precht 84806ee96c feat(MessageContextMenu): add copy link actions
This commit adds a menu item to the message context menu to
copy links that may exist inside of a message.

There are three possible scenarios:

1. There's no link in the message, which causes the menu to not
render the dedicated menu item at all
2. There's one link in the message, which renders an additional
`Action` with a copy-to-clipboard functionality
3. There are multiple links in a single message. This adds a
nested `PopupMenu` in the existing menu with menu items for each
link extracted from the message

To make this work there were some changes in the `PopupMenu` component
needed, as it wasn't take the sub menu's `enabled` state into account
properly. This makde it always render nested menus even when they
should've been invisible.

Closes: #1733
2021-02-23 08:53:54 -05:00
Richard Ramos fd8a84eb9d fix: minimize on close 2021-02-23 08:53:37 -05:00
Richard Ramos b43122d7f3 feat: use stacklayout for chat messages 2021-02-23 08:53:31 -05:00
Jonathan Rainville ae56a360c4 fix: message height taking into account the image even when hidden 2021-02-22 17:29:06 -05:00
Jonathan Rainville 6eee5da36e fix: fix texts to use secondaryText instead of darkGrey 2021-02-22 09:58:18 -05:00
Richard Ramos 6f11ee972a fix: remove defaultAppSettings completely 2021-02-18 16:40:21 -05:00
Richard Ramos 6207c8af53 fix: appSettings were being overwritten due to defaultAppSettings periodically executing sync() 2021-02-18 16:40:21 -05:00
Jonathan Rainville eeb1628337 fix: fix binding loop on the fetch button 2021-02-18 16:38:10 -05:00
Jonathan Rainville fbf592bf52 fix: fix ChannelContextMenu undefined errors 2021-02-18 16:38:10 -05:00
Jonathan Rainville 2a4780f379 fix: fix top bar not showing group chat name 2021-02-18 16:38:10 -05:00
Jonathan Rainville 7dc3bf7e87 fix: fix group info popup warning and don't load popup immediately 2021-02-18 16:38:10 -05:00
Pascal Precht 3d8f7ad463 refactor: Move TimelineLayout into Component 2021-02-18 16:37:42 -05:00
Jonathan Rainville 46412204c5 feat: implement new colors for dark mode 2021-02-18 15:24:12 -05:00
Jonathan Rainville 0e699cac65 chore: run translation scripts 2021-02-18 15:23:58 -05:00
Jonathan Rainville b277346490 chore: change translations to only translate complete languages 2021-02-18 15:23:58 -05:00
ace-smart 5014513c17 Adjusted compass tab icon size and badge border color. Fixes #1843 2021-02-16 14:48:04 -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
Pascal Precht dd195431a5 chore: improve channel switch perf
Having the Timeline component loaded eagerly made switching
between channels rather slow because it always tries to read
the current message list from the chats model.

This commit changes the layout so that the timeline layout container
is only loaded conditionally when indeed activated.
2021-02-15 16:22:05 -05:00
ace-smart 0f1b46097e Updated truncate long name to use default Elide property. Fixes #1830 2021-02-15 16:05:03 -05:00
ace-smart 29c555bd2d Truncate long 3 words name. Fixes #1830 2021-02-15 16:05:03 -05:00
ace-smart 6494d45b44 Truncate long 3 words name. Fixes #1830 2021-02-15 16:05:03 -05:00
ace-smart 3420593774 Fixed an issue that doesn't update one2one chatview name when unassign nickname from the contact. Fixes #1840 2021-02-15 16:04:31 -05:00
Jonathan Rainville 3fef5c7a69 feat: hide fetch old messages after 30 days 2021-02-12 14:45:43 -05:00
Jonathan Rainville 90e9e2d192 fix: fix top bar menu position 2021-02-12 14:45:09 -05:00
Pascal Precht 6c272dddf6 feat(StatusChatInput): introduce context menu to format message
Closes #1804
2021-02-12 14:44:47 -05:00
ace-smart aca6d4bd2e Fixed showing wrong ensname on one2one chat profile modal. Fixes #1810 2021-02-12 14:44:37 -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
Iuri Matias 7b5a1660f8 make compact mode the default 2021-02-10 15:48:57 -05:00
Richard Ramos e8c169aace fix: make the time not selectable 2021-02-10 13:53:09 -05:00
Richard Ramos 0f44178c85 feat: add tooltip with the message timestamp when hovering the chat time 2021-02-10 13:53:09 -05:00
Richard Ramos b2262c8105 Show chat image and username again after a couple of minutes in chat
Fixes #1764
2021-02-10 13:52:36 -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
ace-smart 0c65551b45 Limited StatusToolTip width for maxWidth. Fixes #1817 2021-02-10 13:37:02 -05:00
ace-smart 9950221159 Adjusted padding and margin of the StatusTooltip component as design. Fixes #1817 2021-02-10 13:37:02 -05:00
ace-smart 849be39ee2 Adjusted confirm button wrong style. Fixes #1811 2021-02-10 13:36:20 -05:00
Richard Ramos 3f525a0b2a fix: hover state on compact messages 2021-02-10 09:52:05 -05:00
Richard Ramos 2ac67f95aa fix: add contact using status ens name 2021-02-08 17:39:10 -05:00
Richard Ramos 4b7769c391 fix: adding padding to suggestion box to avoid having the identicon cut 2021-02-08 17:38:53 -05:00
Richard Ramos 21176f702f fix: remove format on text
Fixes #1771
2021-02-08 17:38:42 -05:00
Pascal Precht 4050a40c8f refactor: introduce LoadingAnimation for reusability 2021-02-08 17:38:25 -05:00
Pascal Precht e61d91dd51 fix: make sure context menu receives correct channel index
This was missing in one of our previous PRs and causes the
channel context menu to not function properly e.g. when deleting
chats, it currently always deletes the first chat in the channel list
instead of the active channel.
2021-02-08 17:38:17 -05:00
ace-smart e0a6f48b8e Resolved fixed width issue of profile setting's left panel items. Fixes #1794 2021-02-08 17:37:53 -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 7da6bd9834 fix: fix channel list disappearing with only one channel 2021-02-08 17:37:36 -05:00
Pascal Precht 5ec3ad88d5 fix(SetCurrencyModal): fix callstack size exceeded error
There's a bug in the `SetCurrencyModal` where it runs into a callstack size
exceeded error because we're calling it's `open()` API to open itself.
That function happens to call itself again and again.

The reason that API was introduced in the first place, was to ensure that
the configured default currency is reflected currectly.

This commit fixes that issue by getting rid off the `open()` and `close()`
APIs which cause the mentioned error, and rely on `openPopup`'s parameters
configuration instead.
2021-02-08 17:37:28 -05:00
Jonathan Rainville cabc82782c fix: fix emojis on normal mode and replies on compact 2021-02-08 16:48:14 -05:00
Jonathan Rainville e57fc2afb7 fix: fix appearance container to not have hover state and better height 2021-02-08 16:48:14 -05:00
Jonathan Rainville 51a379efda fix: add hover color for active emoji and fix corner 2021-02-08 16:48:14 -05:00
Jonathan Rainville 55920a4f9d feat: use StatusTooltip for emoji reaction list 2021-02-08 16:48:14 -05:00
Jonathan Rainville 984133ba4a feat: position emoji picker next to button group on the top 2021-02-08 16:48:14 -05:00
Jonathan Rainville 02651326b5 feat: add hover and selected state to the emoji picker 2021-02-08 16:48:14 -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 8a43fffd77 feat: add back date group 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
Pascal Precht 105c4cba4a
refactor(ContactsContainer): make use of NoFriendsRectangle 2021-02-02 11:51:02 +01:00
Pascal Precht 1b009d634d
refactor(Notifications): turn reset button into link-like element
This is so that it looks and behaves as designed.
2021-02-02 11:51:02 +01:00
Pascal Precht 758acfaab8
chore: update arrow-right icon
Seems like the one that was used so far is different from what we get
from the designs. This commit updates it to the latest version of
figma.
2021-02-02 11:51:02 +01:00
Pascal Precht bdbd9aa2b9 fix(ProfilePopup): make unblocking contacts/users work
There's a bug in the profile popup where we're calling an API that
actually doesn't exist. This commit fixes it by calling into the
correct `profileModel` member, to make unblocking users work.
2021-02-02 10:57:42 +01:00
Pascal Precht 62183fb414 refactor: replace StyledButton with StatusButton
There are some inconcistencies in the application when it comes to
button UI elements because we're using `StatusButton` in some places,
in other we use `StyledButton`. The latter is the original
component we've created when we started out building Status
Desktop, but is planned to be removed entirely in favour of
`StatusButton`.

This commit replaces the usages of `StyledButton` with `StatusButton`
2021-02-02 10:57:42 +01:00
RichΛrd 200285399d Update ui/app/AppLayouts/Chat/ChatColumn/Message.qml
Co-authored-by: Jonathan Rainville <rainville.jonathan@gmail.com>
2021-02-01 14:23:29 -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
Jonathan Rainville bc61aee55e fix: fix QML errors 2021-02-01 13:27:20 -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 f0479a50b1 fix: do not use a loading indicator for identicons 2021-02-01 12:00:03 -05:00
Pascal Precht a69d6befe4 refactor: replace custom buttons with StatusRoundButton
There are some places in the application where a custom round
button has been implemented, which essentially can be realized
using our `StatusRoundButton`. This commit addresses those cases.
2021-02-01 11:57:41 -05:00
Pascal Precht 3bf15785fa fix(Profile): ensure invite friends link is rendered
There's a but in the app's profile section where the link to
invite friends is never rendered, even if the currently logged-in
user has no added contacts.

This is because the UI refers to the count of *all* contacts the
user has (even removed ones - remember that, once added, removing
a contact is only done by removing a tag).

This commit ensures that the invitation link is rendered by
relying on the *added* contacts list. It also prevents the
"blocked contacts" button from rendered when there's no blocked
contacts.
2021-02-01 11:57:24 -05:00
Jonathan Rainville 9026108e86 fix: status update not using the right component 2021-02-01 11:54:26 -05:00
Jonathan Rainville b773766055 fix: fix chatIdentifier binding loop 2021-02-01 11:54:26 -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
Pascal Precht d1faf98f80 chore: remove reference error
There's a reference error in our code that `mouseArea` is undefined.
This seems to be a left over, so this commit is removing its usage.
2021-02-01 11:53:44 -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 682d5dcd21 fix: fix privacy setting page design and spacings 2021-01-22 13:41:46 -05:00
Jonathan Rainville 13dc160d11 fix: fix muted chats modal not showing correctly 2021-01-22 13:41:46 -05:00
Pascal Precht 4fbe1f202f uiux: adjust hover color for menu items in profile and channel list 2021-01-22 13:39:15 -05:00
staked-smart-ace 062c2e26b2 Updated profile settings icon color. Fixes #1731 2021-01-22 13:38:47 -05:00
staked-smart-ace 492fcc2dcd Updated profile settings icon color. Fixes #1731 2021-01-22 13:38:47 -05:00
Jonathan Rainville fe3698a912 feat: improve contact list clicks and hovers 2021-01-21 12:05:09 -05:00
Jonathan Rainville dc313e200a fix: fix mention list having no currentIndex on mouse select 2021-01-21 12:04:50 -05:00
Pascal Precht f5bcaa5ac5 refactor: introduce ChannelContextMenu component
This commit introduces a new `ChannelContextMenu` component that can be reused
in different places, such as the channel list, as well as the chat bar.

At the moment we use two different pop up menus that also show two different
set of menu options. By using `ChanelContextMenu` in both of these places,
we get the same menu and same experience.

Closes #1711
2021-01-21 12:02:41 -05:00
Jonathan Rainville 21edea4a9a fix: fix double popup for estimating gas errors 2021-01-21 11:59:51 -05:00
Pascal Precht 3a538acb1e feat: introduce StatusWalletColorSelect component
This is a new form control component to select colors for wallet
accounts. It will replace the currently used `ColorSelect` in the
Status Desktop application so it aligns with the new designs.

Closes #1497
2021-01-21 11:59:34 -05:00
staked-smart-ace 74a8cfd880 Fixed filtering contacts issue on when create new chat. Fixes #1705 2021-01-21 11:40:34 -05:00
staked-smart-ace 8acdaff6f9 Fixed filtering contacts issue on when create new chat. Fixes #1705 2021-01-21 11:40:34 -05:00
staked-smart-ace 5b3d202797 Updated group naming functionality. Fixes #1693 2021-01-21 11:40:11 -05:00
Richard Ramos d8345c5e0e fix: Adding contacts via profile settings 2021-01-19 16:52:37 -05:00
Jonathan Rainville 444072f599 feat: call getPreviewData (url unfurling) in a separate thread
Fixes #1678
2021-01-19 16:51:59 -05:00
Pascal Precht 787354b0dc feat: introduce StatusExpandableAddress component
This introduces a new component to render Addresses that can be
expanded as well as copied using `CopyToClipBoardButton`.
While there's already an `Address` component that allows for expansion,
it doesn't give us control over it's look and feel and, should rather
be a `Button` anyways.

There's also cases in the application where we render a collapsed address
and don't allow for expanding it. In such cases, we might not want/need
a button at all.

Might make sense to introduce a separate address component that just shows
a collapsed address without any behaviour, which can then be used inside
`StatusExapandableAddress`.

Closes #1633
2021-01-19 16:48:26 -05:00
staked-smart-ace a289871482 Updated font color name Fixes #1616 2021-01-19 16:47:52 -05:00
staked-smart-ace 9edcb1dc4d Updated group chat member list likes the design. Fixes #1616 2021-01-19 16:47:52 -05:00
Jonathan Rainville 32570e39c8 fix: update privacy settings like design 2021-01-19 16:47:16 -05:00
Jonathan Rainville eb6c865e5b fix: fix lists of browser settings 2021-01-19 16:45:57 -05:00
Jonathan Rainville c26e91ab35 fix: fix lists in browser settings 2021-01-19 16:45:57 -05:00
Jonathan Rainville 7fef440a97 fix: fix design of appearance in settings 2021-01-19 16:45:57 -05:00
Jonathan Rainville acac683dc2 feat: fix Notification page and lists of contacts 2021-01-19 16:45:57 -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
staked-smart-ace 086c868bdc
uiux(StatusButton): introduce warn type
Fixes #1603
2021-01-19 12:45:03 +01:00
staked-smart-ace ac6d55ae2d Updated main tap's profile badge. Fixes #1619 2021-01-18 15:27:56 -05:00
staked-smart-ace 1f3be224b8 Updated main tap badge. Fixes #1619 2021-01-18 15:27:56 -05:00
staked-smart-ace 2de8faf5a5 Updated main tap badge. Fixes #1619 2021-01-18 15:27:56 -05:00
staked-smart-ace 78479749c6 Keep item ID. Fixes #1619 2021-01-18 15:27:56 -05:00
staked-smart-ace 6ae099ab11 Keep string explanation comment. Fixes #1619 2021-01-18 15:27:56 -05:00
staked-smart-ace c84806aa4e Adjusted badge positions as designs. Fixes #1619 2021-01-18 15:27:56 -05:00
Jonathan Rainville 76688733f5 feat: add muted states for channel
Fixes #1615
2021-01-15 13:52:50 -05:00
Jonathan Rainville 8462c1c013 fix: fix QML warnings + some UI fixes to match the design 2021-01-15 13:52:05 -05:00
staked-smart-ace f2eda36569 Fixes #1610 2021-01-15 13:51:52 -05:00
staked-smart-ace 1d2ad3092f Fixes #1610 2021-01-15 13:51:52 -05:00
Richard Ramos efc1feb2fa feat: add custom mailserver 2021-01-15 13:51:31 -05:00
Pascal Precht 14809cebfe uiux(About): revamp about page
Closes: #1625
2021-01-15 10:57:31 -05:00
Jonathan Rainville 7230cdf7c7 feat: only show profile pics for contacts by default
But add a profile switch to show them for everyone
2021-01-15 10:53:45 -05:00
Jonathan Rainville 5ab99cbeac feat: show time and sent status on the image itself 2021-01-14 16:02:27 -05:00
Pascal Precht d4227e75d0 uiux(Glossary): make links behave the way they should
Closes #1624
2021-01-14 16:02:10 -05:00
Pascal Precht 61e5bcb24b fix(Contacts): make add contact button work again
Adding a contact through the Add Contact Modal isn't working because the
function being called to add a contact doesn't actually exist.
This was most likely a mistake as the change was just to call that function
in question from a different property.

This commit does exactly that.

Fixes #1660
2021-01-14 16:00:20 -05:00
Pascal Precht c328f332f6 fix(Wallet): fix bug that prevented users from setting the currency
Setting the default currency through the UI doesn't work because of a `MouseArea` that
is masking the an underlying `StatusRadioButton` which will tricker the default currency
change.

This commit enhances the `MouseArea` to trigger the default currency change and it
also ensures the UI is responding accordingly. Namely that the new default currency
is correcly selected in the list of currencies.

There's also a little change in the background hover color so it works well across
light and dark themes.

Fixes #1632
2021-01-14 16:00:10 -05:00
Jonathan Rainville be8e2c82f0 fix: fix image click not opening on click
Fixes #1607
2021-01-14 15:58:55 -05:00
Pascal Precht 7c8aca0fbc uiux(Wallet): improve asset manager usability and UI
This commit does a couple of things:

- It changes a label in the wallet menu from "Add/remove Token" to "Manage Assets"
  as it has been designed
- It changes the asset list so a hover state could be introduced. Previously there
  was no visual effect or response to mouse hover on asset items
- It improves usability of the asset list by making an entire asset item
  clickable to toggle the asset in the wallet. This was not possible before.
  Users had to click the checkbox achieve this effect

Closes #1631
2021-01-14 15:43:29 -05:00
Pascal Precht 085f5901ac uiux: revamp advanced settings panel
Closes #1623
2021-01-14 15:41:14 -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
staked-smart-ace 9facb14808
Update nickname modal to confirm when press Enter key
Fixes #1605
2021-01-14 10:42:30 +01:00
Iuri Matias d5f8148fc3 update to beta.5 2021-01-13 15:14:21 -05:00
Jonathan Rainville e459d4dbd4 fix: fix PopupModal to not show a footer at all if there is no children 2021-01-13 14:32:35 -05:00
staked-smart-ace 39d72c5f79 Fixes #1604 2021-01-13 14:31:44 -05:00
staked-smart-ace 858c041671 Fixes #1455 2021-01-13 14:31:00 -05:00
Jonathan Rainville 3f63ded1b2 fix: make profile popup look like the design 2021-01-13 13:14:06 -05:00
Jonathan Rainville 56f9b79834 fix: update profile popup qr code button to use StatusIconButton 2021-01-13 13:14:06 -05:00
Jonathan Rainville 317a183b8b fix: toggle top bar menu on button click 2021-01-12 16:35:44 -05:00
staked-smart-ace a4ffc56d56 Updated timer delay amount 2021-01-12 16:34:07 -05:00
staked-smart-ace 2f2b06fb5e Added tooltip when copy invite URL to clipboard 2021-01-12 16:34:07 -05:00
Pascal Precht 7fe54a1182 uiux(Wallet): ensure send and receive buttons have the right look & feel
Closes #1628
2021-01-12 16:33:46 -05:00
Pascal Precht b2636a0807 uiux(Wallet): use StatusButton instead of StyledButton
`StyledButton` is considered obsolete and by using `StatusButton` we're getting
the expected and correct look & feel of buttons by default.

Closes #1627
2021-01-12 16:33:39 -05:00
Jonathan Rainville 6705e3f8c7 fix: fix profile popup buttons to fit the design 2021-01-12 16:33:32 -05:00
Pascal Precht 686bcd03ca uiux(Profile): adjust layout of contact list section
The contact list was taking the entire width of its surrounding element,
making it grow too wide to be usable (see #1589).

In fact, it's not following the designs made for this part of the application,
so this commit changes the max layout width to align with the intended
design and should also fix some of the usability issues mentioned in #1589

Fixes #1589
2021-01-12 13:27:08 -05:00
Pascal Precht 4ff5281f40 uiux(Profile): theme color fixes for the contact list
The "more actions" button in the contacts list had some hard coded colors
for its hover effect which break the experience in dark mode.
This commit makes changes those so that they work universally.
2021-01-12 13:26:58 -05:00
Richard Ramos 29742e2074 Set custom network id 2021-01-12 13:26:39 -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
Pascal Precht 020fffa537 uiux: add visual effect to walkie-talkie links
Closes #1453
2021-01-12 13:26:00 -05:00
Richard Ramos 2a6eb20094 pin selected mailserver 2021-01-11 14:01:17 -05:00
Jonathan Rainville 1df42a62ca fix: fix chat bubble height when considered long text 2021-01-11 13:59:00 -05:00
Jonathan Rainville ab1a03c3b2 fix isedit missing from import form 2021-01-11 13:57:35 -05:00
Jonathan Rainville 7f2f3b599d Apply suggestions from code review
Co-authored-by: RichΛrd <info@richardramos.me>
2021-01-11 13:57:35 -05:00
Jonathan Rainville fe42cd08f8 fix: code review suggestions
Co-authored-by: RichΛrd <info@richardramos.me>
2021-01-11 13:57:35 -05:00
Jonathan Rainville 4aeeee6d9c feat: hide community stuff by default and add a setting to show it 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 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
Jonathan Rainville 93376f0047 fix: fix createCommunityPopup being in edit mode all the time 2021-01-11 13:57:35 -05:00
Jonathan Rainville 7ddb93266b fix: chatLayout getting squished on first login 2021-01-11 13:57:35 -05:00
Jonathan Rainville 29a9ca4ef5 refactor: use getNickname function for nicknames fetches 2021-01-11 13:57:35 -05:00
Richard Ramos 78e7fa380c feat: display a community's member list 2021-01-11 13:57:35 -05:00
Jonathan Rainville f17bc199b5 fix group popup and up status-go 2021-01-11 13:57:35 -05:00
Richard Ramos 019f558308 ui: edit community 2021-01-11 13:57:35 -05:00
Richard Ramos 6be81c4575 ui: community popup 2021-01-11 13:57:35 -05:00
Richard Ramos 04845e3a8e fix: channel/communities list height depending on search string 2021-01-11 13:57:35 -05:00
Richard Ramos 2ed3261170 Minor UI changes for communities 2021-01-11 13:57:35 -05:00
Jonathan Rainville 2d3a870f60 wip community invitatations and more 2021-01-11 13:57:35 -05:00
Jonathan Rainville ce3252fb8f wip community 2021-01-11 13:57:35 -05:00
Jonathan Rainville 6157744d59 fix: browser setting top padding 2021-01-05 11:24:31 -05:00
Jonathan Rainville f99b91bc72 chore: hide download location for now 2021-01-05 11:24:31 -05:00
Jonathan Rainville 71477d0496 feat: implement redirect to block explorer if settings is not none 2021-01-05 11:24:31 -05:00
Jonathan Rainville 6ed0d30fc5 feat: add ethereum explorer setting in the profile 2021-01-05 11:24:31 -05:00
Jonathan Rainville ac4404c565 feat: implement using the wanted search engine in the browser 2021-01-05 11:24:31 -05:00
Jonathan Rainville 1c83ac98a0 feat: add search engine settings in the profile 2021-01-05 11:24:31 -05:00
Jonathan Rainville 6c2836ded1 feat: use browserHomepage settting as the browsers default page 2021-01-05 11:24:31 -05:00
Jonathan Rainville 36b6e76a2e feat: add browserHomepage setting that can be changed 2021-01-05 11:24:31 -05:00
Jonathan Rainville f1ea517dd6 feat: add browser settings buttons and design (mostly placeholder) 2021-01-05 11:24:31 -05:00
Pascal Precht 38654fe438 fix: ensure changeAppSection links to correct section
Fixes #1579
2021-01-05 11:24:16 -05:00
Jonathan Rainville 9007e6d5c3 feat: add setting to change the browser to open links with 2021-01-04 15:29:23 -05:00
Jonathan Rainville 89da5dd923 feat: open links in user request browser with modal 2021-01-04 15:29:23 -05:00
Jonathan Rainville bc515d2627 fix: fix chat reply color and size 2021-01-04 15:29:10 -05:00
Jonathan Rainville 37edfed446 fix: fix QML warnings 2021-01-04 15:23:23 -05:00
Pascal Precht f9b7d9dfc9 refactor: make use of Qt.locale 2021-01-04 15:16:37 -05:00
Pascal Precht eca5622439 feat: introduce Utils.formatDateTime
We already have a utility function to format time, this one formats date + time
and is used in status updates as well as channel lists.
2021-01-04 15:16:37 -05:00
Pascal Precht 0767ce2443 feat: introduce timeline
Closes #1489 #1490 #1491
2021-01-04 15:16:37 -05:00
Jonathan Rainville 1ead1c3db5 feat: show favorites bar when setting is enabled 2020-12-30 16:52:44 -05:00
Jonathan Rainville 16f5c2fb1a feat: add showFavoritesBar setting (placeholder for now) 2020-12-30 16:52:44 -05:00
Jonathan Rainville 825097f007 feat: add channel switcher when hitting CTRL+K 2020-12-30 15:01:51 -05:00
Jonathan Rainville 6afe9088e9 fix: show notification if the window isn't focused 2020-12-28 14:29:54 -05:00
Pascal Precht ad8f713f1d fix(StatusChatInput): fix sending messages by adding missing parameter to sendMessage 2020-12-22 15:13:24 -05:00
Pascal Precht 90dfa94805 refactor: move getProfileImage API to appMain
Prior to this commit, the function was expected on a `chatView` QML object.
This has worked out so far because the places where the API is used were always
living inside `ChatLayout`.

With the new timeline however, this is no longer the case so we have to make sure
that the API is available to other views as well.
2020-12-21 14:15:08 -05:00
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
Richard Ramos 3258ac8f9c feat: disconnect accounts in browser 2020-12-17 16:44:50 -05:00
Jonathan Rainville d5f3cf71a2 Apply suggestions from code review
Co-authored-by: RichΛrd <info@richardramos.me>
2020-12-17 16:44:25 -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 c2f2b7e6cd fix: default value for trx data 2020-12-11 14:04:25 -05:00
Richard Ramos 4d2e396b7f fix: display transaction data 2020-12-11 14:04:25 -05:00
Richard Ramos e37cba7edd fix: etherscan link 2020-12-11 14:04: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 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 a0fcb0e4c7 fix: resolve ens addresses in bookmarks 2020-12-09 14:19:49 -05: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 239b95e9a2 fix: initialize wallet paths and types, and disable deletion of non-watch accounts 2020-12-09 14:18:45 -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 c11eb69ac1 feat: introduce empty timeline component 2020-12-07 13:52:25 +01: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 4ab1d20c82 fix: use StatusIconButton instead 2020-12-04 16:21:13 -05:00
hydrogen 66d2534956 fix: update profile ui
fixes #1269

- [x] New name font size: 20 Inter Bold
- [x] Increase Name<->Address padding on 4px
- [x] Create a hover state on QR
- [x] QR Modal
2020-12-04 16:21:13 -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
Pascal Precht fff67083f8 fix: remove unresolvable anchor in StatusNotificationWithDropShadow 2020-12-04 15:52:40 -05:00
Pascal Precht 3188646fa8 fix: remove unresolvable path from SVG images that cause errors 2020-12-04 15:52:31 -05:00
hydrogen fad0bb858e fix: password count and disable repeat until first is valid
cleanup
2020-12-04 15:52:23 -05:00
hydrogen d797880e6e fix: forgotten log 2020-12-04 15:52:04 -05:00