Commit Graph

745 Commits

Author SHA1 Message Date
Jonathan Rainville 937dd89146 refactor: split Input into three files to simplify and reduce memory
Having all the different input types in one file made it simpler to design, but created an issue with memory, because all the aliases, properties and images were created for all types even if you only used a basic Input. I tried using Loaders, but making aliases within loaders is super painful/impossible in some cases.
2020-06-10 15:00:50 -04:00
Richard Ramos afc247be23 Various fixes
- Make the topbar channel identifier color match the channel list color
- Display private groups on the channel list
- Reduce chat identifier height
2020-06-09 18:13:53 -04:00
Jonathan Rainville 7295fde809 feat: add watch only accounts to wallet 2020-06-09 18:10:57 -04:00
Jonathan Rainville c3f9d57e5d fix: fix Wallet asset list to not show on top of header 2020-06-09 18:10:57 -04:00
Jonathan Rainville 2ade9e938d feat: add modal to add an account with a private key 2020-06-09 18:10:57 -04:00
Pascal Precht d5ba992c81 refactor(ui/ProfilePopup): make use of newly introduced header content
This commit extends the profile popup to align more with the application
designs. There's still work left to be done such as showing/hiding the
qrcode view or copying data to the clipboard.

The profilepopup also relies on context data at the moment and should rather
receive its data via the newly introduced `getContractByID()` API proposed in
https://github.com/status-im/status-go/pull/1987
2020-06-09 18:01:06 -04:00
Pascal Precht 113ddc7ce3 feat(ui/shared): allow ModalPopup to receive header components
Similar to its `footer` content, ModalPopup can now receive header components
allowing consumers to design the header part of the modal to their likings.

Usage:

```
ModalPopup {
    id: popup

    header: Item {
			...
		}
	  ...
}
```

The header section will take the height of the root element of the substree
passed to `header`
2020-06-09 17:57:30 -04:00
Richard Ramos 40a523851d fix: chat identifier position 2020-06-09 11:49:23 -04:00
Jonathan Rainville 61606a872e fix: fix conditions for button disabled 2020-06-08 17:01:29 -04:00
Jonathan Rainville 43df7d2f77 feat: add TextArea to Input and set correct Modal height 2020-06-08 17:01:29 -04:00
Jonathan Rainville 50c10d38dd feat: enable adding an account with a seed phrase 2020-06-08 17:01:29 -04:00
Richard Ramos f3ff229bf8 feat: load messages on scroll to top, and fix last message scrolling 2020-06-08 16:07:11 -04:00
Richard Ramos b5b02cfd57 show identifier as the first message of chat view 2020-06-08 15:27:30 -04:00
Richard Ramos 9d75f6f552 Use section identifiers as a way to identify if messages have been sent by the current user (no need to modify the model with `repeatMessageInfo`) 2020-06-08 13:24:46 -04:00
Iuri Matias 5371f22e70 add/remove & update configured tokens on the fly
add/remove & update configured tokens on the fly

add wallet methods

generate configured assets

correct show selected tokens

toggle assets

add/remove configured tokens on the fly

cleanup

fix shown wallet
2020-06-08 12:14:09 -04:00
Jonathan Rainville c609a00784 feat: generate new accounts and get wallet account correctly 2020-06-08 09:39:01 -04:00
Richard Ramos 1cc5d9155f Set initial state to empty chat view instead of selecting the first chat 2020-06-05 18:21:46 -04:00
Richard Ramos 1b086b006d fix: show new messages at the bottom 2020-06-05 05:56:21 -04:00
Richard Ramos 722ab36bf1 Sort messages by clock 2020-06-05 05:56:21 -04:00
Jonathan Rainville 9c668c79d1 fix generate button position 2020-06-04 16:31:17 -04:00
Jonathan Rainville 3bab66fde9 add the account like a boss 2020-06-04 16:31:17 -04:00
Jonathan Rainville adda897eb9 make color selector work 2020-06-04 16:31:17 -04:00
Jonathan Rainville 68689147d6 wip select input 2020-06-04 16:31:17 -04:00
Jonathan Rainville bf5f0b6dda feat: add basic generate account popup 2020-06-04 16:31:17 -04:00
Iuri Matias df9a6d0f07 refactor & update currency modal to look and work like designs
update gitignore

display list of currencies
2020-06-04 14:29:04 -04:00
Iuri Matias b412a56577 use Theme properties 2020-06-04 10:43:39 -04:00
Iuri Matias 9b58111cab support filtering tokens 2020-06-04 10:43:39 -04:00
Iuri Matias ca82c9d5b2 fix icons; add slot for checking if an asset is currently added 2020-06-04 10:43:39 -04:00
Iuri Matias a9844099bb fix styling of token list 2020-06-04 10:43:39 -04:00
Iuri Matias 94bc4f02d7 add list of tokens and icons 2020-06-04 10:43:39 -04:00
Pascal Precht ffd356d182 feat(Chat): introduce Profile Popup
This is a simple profile popup that will get more functionality in future commits.

Closes #126
2020-06-04 08:47:44 -04:00
Richard Ramos dd0e9de324 refactor: code cleanup 2020-06-04 08:35:29 -04:00
Jonathan Rainville 15dc98b44a feat: show the real value of the current account in the wallet 2020-06-03 17:09:51 -04:00
Iuri Matias 24d0306869 use dropdown for wallet settings 2020-06-03 15:30:27 -04:00
Iuri Matias f62d3aaca7 wallet settings modal; save default currency
wallet settings modal; save default currency

wallet settings modal; save default currency

save/load currency preference

fix default currency call

use chronicle instead of echo

fix issues
2020-06-03 10:38:50 -04:00
Pascal Precht dc6793a0f0 refactor(chat): make activeChannel a ChatItem to expose relevant information to the view 2020-06-02 16:57:59 -04:00
Jonathan Rainville cc85a42b5c feat: show accounts in wallet and put assetList in Account 2020-06-02 16:41:08 -04:00
Pascal Precht 366d50bb74 feat(ui): introduce `ChannelIcon` component
This component renders channel identicons based on the chat type
and channel name and will render a user identicon in case of a one-on-one
chat.
2020-06-02 16:14:49 -04:00
Jonathan Rainville 9e25ba1d95 fix: fix wallet missing file message and color warning 2020-06-01 13:54:49 -04:00
Iuri Matias 470687c2a6 show dropdown for add account button 2020-06-01 12:31:14 -04:00
Iuri Matias ebd29d9ffd simply chat views by reacting to model events
simply chat views by reacting to model events

abstract join event from join event call; react to join channel event

remove unneded if else

move left channel to event

refactor getChannelColor

refactor getChannelColor

rename sendMessage method

cleanup

move random color to channels list

remove toChatType

remove toChatType
2020-05-29 15:03:13 -04:00
Richard Ramos 6f3b987346 fix: code review 2020-05-29 15:02:31 -04:00
Richard Ramos 1c00bb2dff Create a reusable modal popup 2020-05-29 15:02:31 -04:00
Richard Ramos 9d86082cfe Update channels position when receiving a new msg 2020-05-29 14:46:42 -04:00
Jonathan Rainville b6cf47f467 feat: fix StyledButton and use it in Send modal 2020-05-29 14:44:45 -04:00
Jonathan Rainville 65332804b9 feat: use Input component for the send modal 2020-05-29 14:44:45 -04:00
Jonathan Rainville 77966c8f6c feat: add very basic sendModal content 2020-05-29 14:44:45 -04:00
Iuri Matias 98d2c1df68 display a sticker when a content type sticker message is received
display a sticker when a content type sticker message is received

display a sticker when a content type sticker message is received

display a sticker when a content type sticker message is received

display sticker

fix height and default value

cleanup

cleanup

cleanup

use constants for the content type
2020-05-29 09:52:20 -04:00
Richard Ramos f67fb34e69 Add scrollbar to chat messages 2020-05-28 19:25:03 -04:00
Richard Ramos 8d2b955bcd load chats on login 2020-05-28 17:36:22 -04:00
Jonathan Rainville f08372879f fix: fix addChat plus sign 2020-05-28 17:36:01 -04:00
Jonathan Rainville 9bd54881ce feat: hide arrow input when text is empty + use good arrow icon 2020-05-28 17:36:01 -04:00
Jonathan Rainville 4fa3c34199 feat: new design for the chat bubble 2020-05-28 17:35:38 -04:00
Jonathan Rainville 9760008625 feat: add design for the Asset Tab 2020-05-28 13:59:56 -04:00
Jonathan Rainville 3ce1883c0b feat: add files for the wallet tabs 2020-05-28 13:59:56 -04:00
Jonathan Rainville d1b786811f feat: add TabButton and TabBar for the Wallet 2020-05-28 13:59:56 -04:00
Jonathan Rainville 2da4bd376f fix: fix receive icon rotation 2020-05-28 13:59:56 -04:00
Jonathan Rainville 47cc169c4f chore: split WalletHeader to another file 2020-05-28 13:59:56 -04:00
Iuri Matias 0ee32c2bb1 add default list to the chat messages 2020-05-28 13:49:53 -04:00
Iuri Matias 2f428ef41d add default properties to message component 2020-05-28 13:49:53 -04:00
Richard Ramos 3b8408d21a Join private chats 2020-05-28 11:54:44 -04:00
Richard Ramos 1a829828c8 feat: private chat popup 2020-05-28 09:29:17 -04:00
Pascal Precht 31a310314c ui(chat): introduce identicons for channels and users
Closes #128
2020-05-28 08:11:02 -04:00
Pascal Precht 37cce5b9f3 ui(chat): don't repeat user info for the same user
Closes #129
2020-05-28 08:10:15 -04:00
Iuri Matias dd9b4c50ea extract add chat to its own file 2020-05-28 07:41:49 -04:00
Iuri Matias e662f03e06 extract search box to its own file 2020-05-28 07:41:49 -04:00
Iuri Matias 8590a288b2 extract channel to its own file 2020-05-28 07:41:49 -04:00
Iuri Matias 0885ab6df0 extract ChannelList to its own file 2020-05-28 07:41:49 -04:00
Richard Ramos 2555eec8aa fix: menu styling 2020-05-28 06:45:30 -04:00
Iuri Matias 839afd6356 extract contacts EmptyView into its own file 2020-05-28 06:28:18 -04:00
Iuri Matias 3fb595dcc4 extract EmptyView into its own file 2020-05-28 06:28:18 -04:00
Iuri Matias 3adb5deeb0 extract ChatInput into its own file 2020-05-28 06:28:18 -04:00
Iuri Matias de9d5ad63f extract ChatMessages into its own files 2020-05-28 06:28:18 -04:00
Iuri Matias c1ec5de949 extract TopBar into its own file 2020-05-28 06:28:18 -04:00
Jonathan Rainville 056e640a29 feat: add wallet header 2020-05-27 17:43:36 -04:00
Jonathan Rainville 398e3387cf feat: add placeholder wallets in leftTab 2020-05-27 17:31:27 -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
Richard Ramos aa5dbc6994 fix: moving components to correct shared folder 2020-05-27 17:30:44 -04:00
Richard Ramos a96848f890 fix: image modes 2020-05-27 17:00:15 -04:00
Richard Ramos ff5f3b9ce3 fix: wrong image color 2020-05-27 17:00:15 -04:00
Richard Ramos cd08289146 refactor: extract popup menu to ext component 2020-05-27 17:00:15 -04:00
Richard Ramos a7fd933578 Adds a a popup dialog to join a public channel 2020-05-27 16:15:10 -04:00
Iuri Matias 567445ea30 Revert "ui: introduce identicons in channel/contacts list"
This reverts commit 9e69e24379.
2020-05-27 15:41:31 -04:00
Pascal Precht 9e69e24379 ui: introduce identicons in channel/contacts list 2020-05-27 15:02:49 -04:00
Jonathan Rainville cccc7f599f chore: fix last anchor warnings 2020-05-27 14:56:33 -04:00
Jonathan Rainville 4a00f3f307 chore: fix remaining warnings on Chat files 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
Jonathan Rainville d8511490ca chore: fix anchor warnings for CHatColumn and KenKey 2020-05-27 14:56:33 -04:00
Jonathan Rainville 5b14982393 chore: fix anchor warning in ContactColumn and cleanup 2020-05-27 14:56:33 -04:00
Jonathan Rainville 084c96afff base of changes to wallet 2020-05-27 14:56:33 -04:00
Iuri Matias 01f7449508 fix black border on the splitview 2020-05-27 13:59:46 -04:00
Richard Ramos 0050a50f37 fix: code review and missing `onTriggered` 2020-05-27 13:26:40 -04:00
Richard Ramos c7e54c8de7 Add icons to the menu 2020-05-27 13:26:40 -04:00
Iuri Matias dda6b3c76d add support to leave a chat
add support to leave a chat

add support to leave a chat

fix

add leave chat methods to model
2020-05-26 18:06:48 -04:00
Richard Ramos 0ee8f5c0fe feat: display menu when clicking on addChat 2020-05-26 18:06:16 -04:00
Iuri Matias f4439fcb6f default views for when there is no chat opened + chat links
default views for when there is no chat opened + chat links

add channel component

update other layouts

fix problem with alias

add test channels

fix merge conflict
2020-05-26 17:07:24 -04:00
Jonathan Rainville e869d62c98 fix: fix chat passing over the top bar 2020-05-26 15:11:48 -04:00
Jonathan Rainville 1ef8db3c44 feat: hook top bar to channel name and colors 2020-05-26 15:11:48 -04:00
Jonathan Rainville f11e17a792 feat: add placeholder top bar for the chat column 2020-05-26 15:11:48 -04:00
Jonathan Rainville f89628871f refactor: split chatLayout in column files 2020-05-26 13:55:00 -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
Richard Ramos 2eee8c7a2d feat: show last message and unread message count 2020-05-22 19:18:05 -04:00
Jonathan Rainville e371d2fe4b chore: fix a couple of warnings 2020-05-22 17:09:40 -04:00
Pascal Precht 10b51956f2 ui: render mailservers list 2020-05-22 16:56:51 -04:00
Iuri Matias 63d525e0f4 clarify one can join channel through sidebar 2020-05-21 20:07:55 -04:00
Pascal Precht 985b5d93d0 fix(ui/wallet): don't require password to be entered as hashed hex 2020-05-21 19:50:58 -04:00
Richard Ramos ec46dd13f1 refactor: join public chats 2020-05-21 19:43:02 -04:00
Richard Ramos 0e2131d499 feat: support multiple channels on the UI 2020-05-21 19:36:36 -04:00
Jonathan Rainville 6d34c8fa79 feat: set chat item height depending on the height of the text 2020-05-20 17:43:56 -04:00
Jonathan Rainville e157b1bc6d fix: always scroll to last item and only scroll when at bottom
Fixes #77
2020-05-20 17:43:56 -04:00
Iuri Matias 98ce32204d add icon for node tab 2020-05-20 07:56:39 -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
Iuri Matias 6ed3299c28 added webview 2020-05-19 20:07:58 -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
Iuri Matias 5cc31ae28d display identicons; display correct details for the user own messages 2020-05-19 19:40:40 -04:00
Iuri Matias 6a4c50fe9c subscribe node module to notifications 2020-05-19 17:00:29 -04:00
Iuri Matias 755fd6056b move block notification to node management tab 2020-05-19 17:00:29 -04:00
Jonathan Rainville 959f8277ce feat: enable filtering the channels with the search
Fixes #59
2020-05-19 16:29:39 -04:00
Jonathan Rainville 3916fb739b fix: fix name and chat text in middle bar to have an ellipsis 2020-05-19 15:16:31 -04:00
Pascal Precht 76a0b55d47 feat(ui/wallet): add basic form to send transaction
Closes #49
2020-05-19 11:48:41 -04:00
Richard Ramos a4deb4b7a9 Display chat messages 2020-05-18 16:41:16 -04:00
Michael Bradley, Jr 8cc8f4d659 chore: git should ignore *.qml.autosave
Also delete any `.qml.autosave` files currently in the repo
2020-05-18 11:44:04 -04:00
Richard Ramos 9411aa61e7 feat: display message in wallet 2020-05-18 11:42:50 -04:00
Jonathan Rainville acf0dcbf7a feat: show your messages right aligned
The messages you send will now be aligned right.
Also fixes the issue of the chats being visible under the chat input
2020-05-18 10:46:33 -04:00
Iuri Matias 531383c207 display several chat logs; style then a bit, make it scrollable 2020-05-18 10:46:33 -04:00
Iuri Matias bc6d1f1623 move views & logic into their respective folders; add initial tab for node management 2020-05-15 18:43:32 -04:00
Jonathan Rainville 491718a0bd feat: add wallet asset icon 2020-05-15 06:46:21 -04:00
Jonathan Rainville a962069b73 feat: hook wallet assets to nim model 2020-05-15 06:46:21 -04:00
Jonathan Rainville cd522ba803 feat: split left tab to its own file and move them to Wallet dir 2020-05-14 12:24:15 -04:00
Jonathan Rainville 37649a5d86 fix: fix wallet's tab bar issues 2020-05-14 12:24:15 -04:00
Jonathan Rainville 63ce87d5e9 fix: fix missing images 2020-05-14 12:24:15 -04:00
Jonathan Rainville dfcffeae62 feat: add asset list in wallet 2020-05-13 19:05:20 -04:00
Jonathan Rainville fe1a4db078 feat: add Wallet tab bar 2020-05-13 19:05:20 -04:00
Jonathan Rainville 067b6f6fb0 feat: add basic WalletLayout 2020-05-13 19:05:20 -04:00
Iuri Matias c258b7c746 send message when pressing enter; clear text area after sending 2020-05-13 15:21:45 -04:00
Richard Ramos 79638f6214 feat: Join chats on demand 2020-05-13 14:01:12 -04:00
Jonathan Rainville ae7ee0b363 chore: split ChatLayout into a seprate file
Preliminary work for the wallet. This way, AppLayout isn,t goign to be huge
2020-05-13 13:39:23 -04:00
Jonathan Rainville defd6f262e fix: cleanup some elements and fix the right side gap 2020-05-13 13:33:03 -04:00
Jonathan Rainville c3bddf863e fix: fix most anchor warnings 2020-05-13 13:33:03 -04:00
Jonathan Rainville ad390bb5d4 feat: add back chat stuff 2020-05-12 18:52:51 -04:00
emizzle 4769f578a6 feat: Onboarding carousel
Onboarding carousel completed

Redo folder restructuring

NOTES:
1. nim_status_client binary is output to `./bin/nim_status_client`, so you'll need to update your workflow to run this file. README has been updated to reflect this. Also, if you're running VSCode, instructions for code reload were added.
2. All `ui` files now live in `ui/`
3. All lib files (ie `libstatus`) now live in `lib/`
4. Removed the Qt Creater user project file as this is unique to each user
5. Moved the project file to `ui/`, so just open up the `ui` folder in Qt creator and it should locate the project file
6. `-d:release` removed from compilation as it wasn't needed
7. Broke up main.qml in to the main app and onboarding components, however this should be broken down further into more reusable components
8. Click "Get started" to show chat

Format some files using nimpretty
2020-05-12 18:52:51 -04:00