Commit Graph

1155 Commits

Author SHA1 Message Date
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 974803131a uiux: update application and menu icons for macOS
Closes #1278
2021-01-15 10:59:05 -05:00
Pascal Precht 14809cebfe uiux(About): revamp about page
Closes: #1625
2021-01-15 10:57:31 -05:00
staked-smart-ace c6c8ed0858 Fixed radius issue of the chat input box. Fixes #1612 2021-01-15 10:54:40 -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
Pascal Precht 51083e2005 feat: introduce StatusSectionDescItem
This is a component that is similar to the `StatusSectionMenuItem` component, just
with the difference that it's not a clickable element, rather "description" element,
inspired by HTML `<dl>`, `<dt>` and `<dd>` elements ("description list", "description term",
"description" respectively).

The component comes with a `CopyToClipBoardButton` by default. We might want to decide
to make it configurable later on, as there could be places where we just want to
render the description item, without a copyble description.
2021-01-14 16:03:43 -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 e82b0b194d uiux: remove active checked state from StatusIconTabButton
Closes #1618
2021-01-14 16:00:48 -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
staked-smart-ace bc63c30ec2 Applied selection color to the StyledTextArea and StyledTArea. Fixes #1611 2021-01-14 15:59:45 -05:00
staked-smart-ace 1840165caa Applied selection color to the StyledTextEdit. Fixes #1611 2021-01-14 15:59:45 -05:00
staked-smart-ace 96b09fd025 Fixes #1611 2021-01-14 15:59:45 -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 5a108f9f41 feat: change icon to show indicator when new messages appear 2021-01-12 16:35:59 -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 8afcacfa6a uiux(Wallet): introduce hover state for tab buttons
Closes #1630
2021-01-12 16:33:56 -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
Pascal Precht 0a96b76b9c uiux(Onboarding): some UI improvements to align app with designs 2021-01-11 13:59:08 -05:00
Jonathan Rainville 1df42a62ca fix: fix chat bubble height when considered long text 2021-01-11 13:59:00 -05:00
Jonathan Rainville 6b76996bf0 fix: clear channel picker search input on open 2021-01-11 13:57:54 -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
emizzle 7e1d7be314 feat: load installed stickers while offline
When the network connection is changed, the sticker packs are cleared and then re-loaded (either loading the offline (installed) sticker packs, or all the sticker packs from the network).

Stickers can be sent while offline, though the sticker images do not load once offline (this is likely a side effect of the bug described below).

There is a known bug in QNetworkAccessManager (https://bugreports.qt.io/browse/QTBUG-55180) that was re-introduced in 5.14.1 that does not allow us to download resources if we go offline then come back online. The workaround employed in this PR manually sets the NetworkAccessible property of QNetworkAccessManager once we have been connected back online. The NetworkAccessible property is marked as obsolete and will be removed in Qt6, so it is something that we need to be aware of when we upgrade. However the hope is that the bug has been fixed.

Close StickersPopup when disconnected from network (so that re-loading of sticker packs doesn't look out of place).

fix: set network status correctly at load

feat: stickers gas estimate async

feat: When network re-connected, any http images that were not properly loaded in an ImageLoader component will automatically be reloaded.

fix: Sticker button loading icon

chore: Bump nimqml and dotherside

NOTE: This PR uses an updated nimqml and dotherside. The respective changes should be merged first, and the commit hash should be bumped in this PR prior to merging. Relevant PRs:

[https://github.com/status-im/dotherside/pull/20](https://github.com/status-im/dotherside/pull/20)

[https://github.com/status-im/nimqml/pull/17](https://github.com/status-im/nimqml/pull/17)
2020-12-28 14:29:38 -05:00
Pascal Precht ad8f713f1d fix(StatusChatInput): fix sending messages by adding missing parameter to sendMessage 2020-12-22 15:13:24 -05:00
Jonathan Rainville cbbe2b46fc fix: fix generate keys identicons being all the same 2020-12-21 14:19:34 -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 400b020118 fix(StatusChatInput): ensure send button is disabled when message limit is exceeded
This was missing in the previous work we've done to make the `StatusChatInput` work
as a status timeline update component.

This commit also adds an event handler which was missing to trigger the `onMessage`
event when the send button is clicked.
2020-12-21 14:14:48 -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
emizzle ba48b266a9 chore: re-add sticker loading UI
The sticker loading UI was removed when the StatusChatInput and friends were added in. This PR re-adds the sticker loading UI introduced in PR# 955 (https://github.com/status-im/nim-status-client/pull/955).
2020-12-18 15:34:31 -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
Richard Ramos 43d9d5184d feat: close image popup on click 2020-12-16 09:17:04 -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 f512d5063c feat: introduce StatusUpdateChatInput variation
This commit changes the `StatusChatInput` component to also be a `StatusUpdateInput`.
The latter isn't an actual new type or component, it's just a visual variation of the already
existing status chat input. That's my most of the changes are `isStatusUpdateInput` conditions
sprinkled here and there.

In addition, this commit introduces a new `chatType` which is passed to `StatusChatInput` later
in the timeline view, so it knows it has to render like a status update input.
2020-12-14 12:36:49 +01:00