Commit Graph

360 Commits

Author SHA1 Message Date
Pascal Precht e18188514a feat(profile): implement contact management
This introduces the ability to:

- list search existing contacts
- block contacts
- unblock contacts
- list blocked contacts
- remove contacts
- search and add contacts

Closes #608
2020-07-24 09:37:32 -04:00
Jonathan Rainville c71f5f1a07 fix: fix dark theme colors for chat and profile 2020-07-23 15:59:18 -04:00
Jonathan Rainville 145519719b fix: fix MyProfile not having the right data 2020-07-23 15:59:18 -04:00
Jonathan Rainville 7f7a6cbc97 feat: make profile look like the design
Improve left tab menu
Move settings to right panel instead of advanced
Create MyProfile container
Improve Contacts and Security
2020-07-22 10:17:54 -04:00
Jonathan Rainville 5268484114 feat: save locale in qt settings and switch to it on load 2020-07-21 11:09:00 -04:00
Jonathan Rainville 489ad7052f feat: add changeTranslation function 2020-07-21 11:09:00 -04:00
Jonathan Rainville b829acb3c4 chore: re-run qstr converter 2020-07-17 11:55:01 -04:00
emizzle 15a860b2bb feat: Enable switching to testnet
Allow switching to Ropsten by flipping a toggle switch in Profile > Advanced settings.

When switching networks, note that installed stickers will be uninstalled, and recent stickers will be removed. Sticker packs can be reinstalled after login. Purchased sticker packs will not need to be re-purchased, but will need to be re-installed.

Mailserver fleet information will **not** be updated. This can be controlled by a separate (undeveloped yet) setting.
2020-07-16 10:59:31 -04:00
Jonathan Rainville 36f230e03d feat: add saved setting for Compact mode 2020-07-16 10:29:29 -04:00
Jonathan Rainville 5951fcf131 feat: refactor Message and add Compact message type 2020-07-16 10:29:29 -04:00
Jonathan Rainville 7d178b355e feat(chat): add image support
This commit adds support for rendering images by detecting
image URLs inside of a message and attaching them to their
corresponding message bubble.
2020-07-15 16:05:35 -04:00
decanus c840c7374c fixes some color errors 2020-07-15 11:46:12 +02:00
Jonathan Rainville 92f5a9ca5c feat: add dark theme colors and new properties for it 2020-07-14 12:37:17 -04:00
Dean Eigenmann 2bfdedbed7 Update DevicesContainer.qml 2020-07-14 16:04:41 +02:00
Richard Ramos 93d420758f feat: device pairing 2020-07-08 13:53:04 -04:00
Jonathan Rainville 1eb1d3d41c chore: run transform script to change qstr to qstrid 2020-07-08 12:37:41 -04:00
Richard Ramos f16ee322e1 fix: code review 2020-07-06 14:17:19 -04:00
Richard Ramos 5ee3c6938f feat: Advertise device 2020-07-06 14:17:19 -04:00
Richard Ramos a4b9eedd5e feat: set device name 2020-07-06 14:17:19 -04:00
Jonathan Rainville 0f9a79e214 feat: save and get appearance from the settings 2020-07-03 09:59:14 -04:00
Jonathan Rainville 881f6dbe80 feat: enable changing theme from the profile settings 2020-07-03 09:59:14 -04:00
Jonathan Rainville a529d729ea feat: change Theme to Style to enable changing Theme 2020-07-03 09:59:14 -04:00
Jonathan Rainville d90c9ba882 fix: use normal Inter for normal text and StatusInter for addresses 2020-07-02 10:51:57 -04:00
Iuri Matias 7440b5beb1 add missing var 2020-06-30 12:30:40 -04:00
Iuri Matias 716258156e feat(Chat): display clickable links, sanitize them and XSS protect
Closes #458
2020-06-30 12:30:40 -04:00
Iuri Matias 6e9ce3b250 disable browser, wallet, node tabs by default; add warning checkbox to intro screen 2020-06-26 11:37:59 -04:00
Iuri Matias 20e0f2c625 add alpha warnings 2020-06-25 17:26:46 -04:00
Jonathan Rainville 902b23c0ee fix: fix profile buttons 2020-06-25 15:48:37 -04:00
Jonathan Rainville 9683b7a79e feat: enable saving app settings like the SplitView state 2020-06-25 11:02:35 -04:00
Jonathan Rainville 02d915cb50 chore: up import version and fix SplitViews 2020-06-25 11:02:35 -04:00
emizzle 847eb2623f feat: add sticker popup
Add sticker popup
Add send sticker message
Add ability to select sticker pack and show stickers for pack with scroll

1. Sticker history
2. Install sticker packs
3. Sticker market

1. Sticker packs are installed on app start up until installation of sticker pack functionality is added
2. Optimisations such as preloading images to be done so that sticker images are not downloaded each time.
2020-06-25 10:27:26 -04:00
Richard Ramos 55fbd4b0fe fix: make the identicons sharp 2020-06-23 14:45:21 -04:00
Pascal Precht 74cb71295e feat(settings): introduce moodal to back up seed phrase
Closes #345
2020-06-23 13:35:33 -04:00
Richard Ramos 33b3c4dc97 fix: manage contacts without systemTag 2020-06-22 15:21:13 -04:00
Jonathan Rainville 8755c901de fix: fix font loading issue and create a text component to use that font 2020-06-19 14:53:45 -04:00
Iuri Matias 0ad64cc5de update qml imports 2020-06-18 11:02:11 -04:00
Iuri Matias 1cacc8cf88 support enabling/disabling tabs in the advanced settings
support enabling/disabling tabs in the advanced settings

use qstr
2020-06-18 10:28:43 -04:00
Richard Ramos b70a29f059 fix: code review 2020-06-18 10:16:32 -04:00
Iuri Matias 93361921b7 support opening profile modal in contacts section 2020-06-18 08:13:45 -04:00
Iuri Matias c79fa1e4cc disable unused methods 2020-06-18 08:13:45 -04:00
Iuri Matias 965e71e45d display more info in the about section 2020-06-18 08:13:45 -04:00
Iuri Matias 22721f3c47 display selected side menu 2020-06-18 08:13:45 -04:00
Iuri Matias 090ba1a063 display pubkey in the profile 2020-06-18 08:13:45 -04:00
Iuri Matias bddfe99621 use properties for profile section qml 2020-06-18 08:13:45 -04:00
Iuri Matias 116b04a9ef fix installationId usage; disable in-app logout for now
fix installationId usage; disable in-app logout for now

fix
2020-06-17 12:26:41 -04:00
Iuri Matias fe82f762bb display list of contacts in the open chat modal 2020-06-17 07:41:32 -04:00
Iuri Matias e802159a6a display real contacts on profile
display real contacts on profile

query contacts

add contact in form

fixes

fixes

display contacts

cleanup

cleanup

remove echo

refactor to use profile instead of contact model
2020-06-16 12:48:25 -04:00
Iuri Matias eaad59f690 add divider to profile layout and add minimum widths for sidebars 2020-06-11 18:02:47 -04:00
emizzle 4ec593baed feat: Add logout functionality
Move the onboarding/login state machine to the top level in main.qml, so that logout events can trigger new states.

Add Loader to statemachine so that each component is lazy-loaded. Initial tests saved 50MB of memory on startup.

Currently, logging out, then logging back in to the same or different account results in a doubling-up of chats/messages/wallet accounts. These need to be reset, however I need help doing that and it would delayed and blown out this PR further. This reset has been done for Onboarding and Login, but needs to be done for chats, wallet, mailservers, etc.
2020-06-11 09:28:25 -04:00
Iuri Matias d2a23fb265 separate profile sections 2020-05-27 17:30:53 -04:00
Iuri Matias 1503f2d1f8 divide left tab into 2 files 2020-05-27 17:30:53 -04:00
Jonathan Rainville cccc7f599f chore: fix last anchor warnings 2020-05-27 14:56:33 -04:00
Jonathan Rainville b8a5d25d8b chore: remove no longer necessary anchors on layouts
Not sure why, but these are no longer necessary
2020-05-27 14:56:33 -04:00
Iuri Matias 0d7cb1b401 add contact list 2020-05-25 09:50:35 -04:00
Iuri Matias c6ed2c8852 add mouse hand pointer to chat list; add simple FAQ (testing QT urls)
add mouse hand pointer to chat list; add simple FAQ (testing QT urls)

refactor wallet to use asset model

move some of wallet logic away from the controller

move ChatMessage to model

move chatItem model

organize models folder

simplify chat message and chat item

rename messageList to message_list

simply addresses in the controller

rename mailservers list

refactor how profile is set

refactor/simplify profile view

refactor/simplify adding mailservers

rename wallet view

simplify wallet assets

rename nodeView to view

extract channel list view

extract channel list view

refactor channel list / chats view

move signals out of app folder

simplify callRPC

add raw rpc method and make node section use it

add node model

move accounts model inside onboard controller (for now)

make events usage consistent among models and controllers; separate model events from app events

make mouse show hand cursor when hovering over chat list

add FAQ url
2020-05-25 09:48:46 -04:00
Iuri Matias 6e14749904 simplify controllers and views, make everything more consistent
simplify controllers and views, make everything more consistent

refactor wallet to use asset model

move some of wallet logic away from the controller

move ChatMessage to model

move chatItem model

organize models folder

simplify chat message and chat item

rename messageList to message_list

simply addresses in the controller

rename mailservers list

refactor how profile is set

refactor/simplify profile view

refactor/simplify adding mailservers

rename wallet view

simplify wallet assets

rename nodeView to view

extract channel list view

extract channel list view

refactor channel list / chats view

move signals out of app folder

address code reviews
2020-05-25 09:22:11 -04:00
Pascal Precht 10b51956f2 ui: render mailservers list 2020-05-22 16:56:51 -04:00
Iuri Matias 51ced8bc2d display users identicon in the profile instead of an hardcoded one 2020-05-19 22:04:03 -04:00
Iuri Matias 24bb268934 add profile module; display username from one of the accounts instead of hardcoded one 2020-05-19 22:04:03 -04:00
Michael Bradley, Jr d673915975 feat: layouts for the Profile screens
Work on this PR started before the build system was updated and at one point I
upgraded `nim_status_client.nimble` to use NimScript so the nimble command
would stop warning that the old format was being used. In team chat it was
discussed that since we're no longer using nimble for package management we
could simply delete `nim_status_client.nimble` to avoid confusion, which can be
done in another PR.

Introduce a BrowserLayout stub so the index will be calcualted correctly re:
the active tab.

Reorganize ChatLayout and NodeLayout into subdirs `Chat` and `Node`,
respectively.

Introduce ProfileLayout which uses a "LeftTab" approach similar to that of
WalletLayout. There remains quite a bit of styling work to be done in
ProfileLayout and its LeftTab. Also, it may be better to start over using a
SplitView like the ChatLayout, I'm not really sure.

It wasn't clear what should be the default view for the right-pane when Profile
is selected in the left-most TabBar. In this PR, it defaults to showing the
view corresponding to the ENS usernames button.

In the archived Figma for the desktop design, it seemed a picture could be set,
e.g. there is a headshot of a woman used in the Profile screen. To that end I
explored how to take a square image and clip/mask it so it appears round and I
included a larger placeholder image for that purpose. In the new design, and
with respect to mobile, it may not be possible to set a profile picture so the
code that rounds the image can maybe be dropped.
2020-05-19 20:02:21 -04:00