emizzle
7b0d3c496c
fix: exception handling in mutli-threaded transactions
...
Currently, exceptions thrown during transactions or gas estimation that were spawned in another thread are not being propagated, due to a limitation in nim (see https://nim-lang.org/docs/manual_experimental.html#parallel-amp-spawn ).
This means any exceptions from status-go were not propagated correctly and would cause the app to crash. This includes entering the wrong password when trying to send a transaction.
The issue was addressed by passing a `success` variable by reference, which is set to false if an exception was thrown by status-go.
2020-09-17 12:21:29 -04:00
Jonathan Rainville
bcbcd13611
refactor: use profileSettingsFile QtProperty instead of profile directly
2020-09-16 16:58:55 -04:00
Jonathan Rainville
db9472bc0b
refactor: change settings to use a filename instead
2020-09-16 16:58:55 -04:00
Jonathan Rainville
23ca5f9930
feat: make settings user dependant and clean settings uses
2020-09-16 16:58:55 -04:00
Richard Ramos
e4ffc897d7
fix: code review + reset sticker pack pending state
2020-09-16 14:22:29 -04:00
Richard Ramos
d0bca7afa6
fix: show stickers as pending while trx is being mined
...
Fixes #885
2020-09-16 14:22:29 -04:00
Richard Ramos
e75958d78d
fix: code review
2020-09-16 14:22:29 -04:00
Richard Ramos
83b0c8057e
fix: code review
2020-09-16 14:22:29 -04:00
Richard Ramos
0091fded3a
feat: toast messages for sticker and ens trxs
2020-09-16 14:22:29 -04:00
Jonathan Rainville
17aa8d274e
fix: fix defaultTokenList use in QML
2020-09-14 14:54:17 -04:00
Richard Ramos
6c7a3d6340
fix: use messageid in comparator
...
Fixes #324
2020-09-14 14:39:06 -04:00
hydr063n
b479dba001
feat: open modal when user left clicks on message containing image
2020-09-14 14:38:41 -04:00
emizzle
2c7dd929ad
feat: enable token transactions
...
Fixes #788 .
Fixes #853 .
Fixes #856 .
refactor: gas estimation and transaction sends have been abstracted to allow calling `estimateGas`, `send`, and `call` on the contract method (similar to the web3 API).
Moved sticker pack gas estimation and purchase tx over to the new API
*Sticker purchase:*
- gas estimate is done using new API and debounced using a timer
*Wallet send transaction:*
- tokens can now be sent
- gas is estimated correctly for a token tx, and debounced using a timer
***NOTE***
1. If attempting to send tokens on testnet, you must use a custom token as the token addresses in the pre-built list are for mainnet and will not work on testnet.
2. The new API should support all existing gas estimates, send txs, and calls. The loading of sticker pack data, balance, count, purchased sticker packs, etc, can be moved over to the new API. Almost all of the `eth_sendTransaction`, `eth_gasEstimate`, and `eth_call` could be move over as well (that's the idea at least).
2020-09-11 12:01:08 -04:00
Jonathan Rainville
f3f27a5e59
fix: address more comments about the chat commands
2020-09-09 15:03:45 -04:00
Jonathan Rainville
91c8089716
fix: fix decimals problem with Chat commands
...
The problem was that the BigInt lib did not handle decimals at all. `divMod` only let the remainder be what is after the dot. So I created my own divde and multiply methods to move the dot depending on the number of decimals
2020-09-09 15:03:45 -04:00
Jonathan Rainville
348e0a9bdc
fix: address review comments for the send forms
2020-09-09 15:03:45 -04:00
Jonathan Rainville
6b3cac31bc
feat: enable sending chat requests
2020-09-09 15:03:45 -04:00
Jonathan Rainville
60492b4db1
feat: add chat command bubbles for received txs
2020-09-09 15:03:45 -04:00
Iuri Matias
4e801c5336
add missing source comments
2020-09-09 14:08:19 -04:00
Iuri Matias
aeb8d2958d
display first menu option; include channel id
2020-09-09 14:08:19 -04:00
Iuri Matias
5e2c3c9ca7
add leave/quit for context menu
2020-09-09 14:08:19 -04:00
Pascal Precht
2cd6260515
uiux(Chat): make entire contact item clickable when starting new chat
...
Closes #847
2020-09-08 14:24:12 -04:00
Pascal Precht
a9fe6eb3b2
fix(Chat): use qsTr() over qsTrId() due to non-existent i18n id
...
Fixes #848
2020-09-08 14:23:40 -04:00
Pascal Precht
4bea011417
uiux(Chat): show loading indicator when fetching more messages
2020-09-08 14:09:09 -04:00
Pascal Precht
1481f2648f
feat: introduce "fetch more messages" button to request old messages
...
Closes #149
2020-09-07 10:20:17 -04:00
emizzle
d8b0145eb3
feat: Add Sticker purchase transaction modal
...
Add gas estimate for sticker pack purchase.
Update transaction for sticker pack purchase.
Add GasValidator component which validates gas is selected correctly and displays an error message if not. This component is not visible until it is not valid (at which point the valdiation error message is displayed).
In a future PR, need to:
1. estimate gas for token txfer (sendTransaction) via a normalised method for estimating gas for EthSend
2. move sticker pack purchase to use an EthSend object so gas can be estimated and tx sent
2020-09-04 16:13:33 -04:00
hydr063n
4f409f76c8
replace console.log with comment on popup section
2020-09-04 15:31:46 -04:00
hydr063n
e77b6d193e
refactor and add support for converting to emoji after pasting text
2020-09-04 15:31:46 -04:00
hydr063n
542020d6a6
extrapolate cursorPosition to account for the fact the emojis are not length 1
2020-09-04 15:31:46 -04:00
hydr063n
deacefb03f
poll for emoji event when user moves cursor with kbd or mouse and replace emoji token with code point
2020-09-04 15:31:46 -04:00
hydr063n
1cc43c15e7
implement emoji handler that replaces text 😂 with text
2020-09-04 15:31:46 -04:00
Richard Ramos
1d0e4fe2cf
feat: disable reply on stickers and make sticker images smooth
2020-08-28 11:11:08 -04:00
Jonathan Rainville
1592115dde
feat: change other components to use Address where needed
2020-08-27 17:48:03 -04:00
Pascal Precht
6fd4c363e7
uiux(Chat): replace status ens address with user names in suggestion box
...
UX request mentioned in #769
Fixes part of #769
2020-08-27 17:38:32 -04:00
Pascal Precht
de5b62030b
fix(Chat): ensure cursor is set correctly in when selecting suggestion
...
This commit fixes a regression that was introduced in: https://github.com/status-im/nim-status-client/commit/459de8cd1
where the cursor position in the chat input was calculated incorrectly.
It also introduced a bug in the text processing which is described in #769
Partly fixes #769
2020-08-27 17:38:32 -04:00
Jonathan Rainville
0c686c3fcf
chore: run qstrConverter script
2020-08-27 17:09:37 -04:00
Jonathan Rainville
d19f15bb84
fix: fix chat links in a couple of ways
...
- link color in compact mode
- channel links did not have a #
- clicking on a mention should show that profile
- The AddChat button image didn't reposition when closing
2020-08-27 17:09:04 -04:00
Jonathan Rainville
3ca1c470a5
feat: enable toggling emoji reactions using the reactions themselves
2020-08-27 16:34:35 -04:00
Jonathan Rainville
5f119e1ead
feat: enable removing emoji reactions from the context menu
2020-08-27 16:34:35 -04:00
Jonathan Rainville
99ca0e9e55
feat: enable adding reactions to chat messages from the menu
2020-08-27 16:34:35 -04:00
Jonathan Rainville
72af6adb69
feat: get and display emoji reactions in chat
2020-08-27 16:34:35 -04:00
Jonathan Rainville
60f7a3cbe2
feat: format timestamp in TransactionBubble like the Chat
2020-08-27 16:15:27 -04:00
Jonathan Rainville
9e2bf87d84
feat: add TransactionBubble for use with the chat commands
...
Add only the UI component for the TransactionBubble
Was not thoroughly tested since it was only developed in QT Designer
2020-08-27 16:15:27 -04:00
Pascal Precht
f4d16d7661
refactor(IconButton): turn IconButton into proper button control
...
So far our `IconButton` hasn't been a proper button control which comes
with many downsides, such as:
- Some default button behaviours need to be simulated (e.g. `onClicked`)
- Any support built-in features for all controls in QML like `ToolTip` aren't can't be used
- There are probably accessibility aspects to it as well
We use the `IconButton` in many different places. Sometimes it doesn't
even act as a button, but just as an icon. I suggest we introduce a separate
`StatusIcon` component for that in future changes.
This commit turns the `IconButton` into a proper `RoundButton`, restoring
the control behaviour and features we get from QML.
This also required to expose the `icon` property as a `iconImg`,
because a `RoundButton` already comes with an `icon`.
On the other hand, we could remove the `onClick` simulation and can now
take advantage of components like `ToolTip`.
2020-08-25 10:26:34 +02:00
Iuri Matias
69b3ea57d6
fix volume of notification sounds
2020-08-20 13:39:57 -04:00
Jonathan Rainville
d35c971c8b
fix: fix layout of input buttons when some are hidden
2020-08-19 15:25:13 -04:00
Jonathan Rainville
474f68cf8a
feat: add chat command modal shell
...
It doesn't do anything for now
2020-08-19 15:25:13 -04:00
Jonathan Rainville
59cba0f125
refactor: make ChatButtons a Row to not have to position them manually
2020-08-19 15:25:13 -04:00
Jonathan Rainville
8ac2d66f63
refactor: make ChatInputButton to reduce duplication
2020-08-19 15:25:13 -04:00
Iuri Matias
9b6ae2e6ad
close join channel popup when clicking a suggestion
2020-08-19 14:39:45 -04:00
Pascal Precht
ef22fb348d
feat: allow users to mute and unmute channels
...
Closes #152
2020-08-19 14:39:31 -04:00
Richard Ramos
f6cf197983
fix: pixelated icons on the menu
2020-08-17 11:57:32 +02:00
Pascal Precht
4f7486afbe
refactor: Introduce more generic confirmation dialog for simpel cases
2020-08-13 14:40:03 -04:00
Pascal Precht
6d0d0fb2aa
feat: introduce dialog to confirm removal of contacts
...
Closes #632
2020-08-13 14:40:03 -04:00
Pascal Precht
04ff3393fa
feat: introduce confirmation dialog for blocking contacts actions
...
Closes #632
2020-08-13 14:40:03 -04:00
Richard Ramos
477f5aa460
feat: display empty state when user has no contacts
2020-08-11 08:39:10 -04:00
Richard Ramos
d3b6ff32b8
fix: additional text on channel identifier
2020-08-11 08:39:10 -04:00
Richard Ramos
edbb183242
fix: show ens and alias on profile popup header
2020-08-11 08:39:10 -04:00
Richard Ramos
e96f3ed47f
fix: display ens names with correct format in all screens
2020-08-11 08:39:07 -04:00
Pascal Precht
17396c85cb
feat(GroupInfo): allow user to visit group member profile page
...
Closes #638
2020-08-10 09:42:47 -04:00
Jonathan Rainville
156aaba0aa
feat: improve style of the notification box
...
Use the Channel box for that
2020-08-10 09:34:02 -04:00
Richard Ramos
e484c41291
fix: alignment of emojis
...
- Added an nsbp in front of paragraphs, otherwise the alignment property was ignored
- Enabled richformat for channel list to avoid emoji overlap in last message
2020-08-06 15:48:06 -04:00
Richard Ramos
613c70c4a6
fix: link color
2020-08-06 16:35:54 +02:00
Jonathan Rainville
d5e9f086f2
feat: add submenu to popup menu
2020-08-06 15:49:57 +02:00
Jonathan Rainville
32b0e185db
feat: add channel list context menu
2020-08-06 15:49:54 +02:00
Jonathan Rainville
3cb88d0cfa
feat: add profile section to the context menu
2020-08-05 12:14:46 +02:00
Richard Ramos
cb92c1dc14
fix: incorrect mentions behavior when text contains emojies
2020-08-04 10:19:42 -04:00
Richard Ramos
397be0b0c0
fix: sendBtn and trim
2020-08-04 10:14:57 -04:00
Richard Ramos
459de8cd1c
fix: display emojis on input textarea
2020-08-04 10:14:57 -04:00
Richard Ramos
86794dda0b
fix: chat scrollbars and input text wrapping
2020-07-31 12:00:18 -04:00
Richard Ramos
5ab1088f7c
feat: play audio messages
2020-07-30 13:49:50 -04:00
Jonathan Rainville
983d258a9a
feat: add support for recent emojis
...
(cherry picked from commit 07ccf8f74ee7b37652ccedbddd6dfdaa5908a846)
2020-07-30 10:45:56 -04:00
Jonathan Rainville
13d2cf73fb
feat: add emoji search
...
(cherry picked from commit 3cc9a98ce584a48f6c430a57126bd548e9dedc7e)
2020-07-30 10:44:07 -04:00
Jonathan Rainville
549f1ff7f2
feat: categorize emojis in the menu and add category buttons
...
Signed-off-by: Jonathan Rainville <rainville.jonathan@gmail.com>
2020-07-30 10:04:08 -04:00
Jonathan Rainville
3d04076910
feat: update emoji list to use the new categorized list
...
Still shows everything in the same page, but now they are ordered and can be categorized
2020-07-30 10:03:55 -04:00
Richard Ramos
7fd1f9c468
fix: send emoji contentType
2020-07-28 15:35:06 -05:00
Richard Ramos
13f8875263
fix: hide replybox after sending a message
2020-07-28 15:35:06 -05:00
Richard Ramos
b3fcd394de
fix: show disconnected/connected banner on load
2020-07-24 11:42:58 -04:00
Richard Ramos
83d2e274ff
fix: show disconnected/connected banner on load
2020-07-24 11:04:47 -04:00
Jonathan Rainville
9604faff08
feat: add New messages box in chat when scrolling up
2020-07-23 17:01:04 -04:00
Richard Ramos
cc735aec6b
fix: hide usernames on 1:1 chats
2020-07-23 16:19:54 -04:00
Richard Ramos
adde2e2017
fix: dateLabel height
2020-07-23 16:00:14 -04:00
Richard Ramos
99b9c21221
fix: date
2020-07-23 16:00:14 -04:00
Jonathan Rainville
9654f937f2
fix: fix all remaining QML warnings
2020-07-23 15:59:18 -04:00
Jonathan Rainville
c71f5f1a07
fix: fix dark theme colors for chat and profile
2020-07-23 15:59:18 -04:00
Jonathan Rainville
a1585c8499
feat: add ImageLoader to reuse Image loading mechanism
2020-07-23 15:44:59 -04:00
Jonathan Rainville
327552c33b
add loading and error image boxes
2020-07-23 15:44:59 -04:00
Jonathan Rainville
42c09c9f3a
fix: hide sent message on compact mode once sent
2020-07-23 15:44:59 -04:00
Jonathan Rainville
c7cfa5d32b
fix: fix scrolling to bottom for images
2020-07-23 15:44:59 -04:00
Jonathan Rainville
e176443ceb
fix: fix chat not scrolling to bottom on load
2020-07-23 15:44:59 -04:00
Pascal Precht
f2d345fe6e
feat(chat): support mention auto complete anywhere inside the message
2020-07-23 15:36:45 -04:00
Richard Ramos
7ca512661b
fix: load messages on scroll up, scroll down when sending messages and hide sending status for expired messages
2020-07-22 15:58:31 -04:00
Richard Ramos
192fbbea69
fix: add scrollview to channellist
2020-07-22 15:43:08 -04:00
Richard Ramos
3140d76a5c
fix: group status messages were not being displayed
...
Fixes #610
2020-07-22 10:22:10 -04:00
Richard Ramos
7115a1bed6
feat: resize images and remove EXIF data - UNSAFE
2020-07-21 14:26:20 -04:00
Richard Ramos
a32a156651
feat: send images - UNSAFE -
...
Sends images but does not clean metadata nor limits file size
2020-07-21 14:26:20 -04:00
Richard Ramos
a31610742c
fix: code review
2020-07-21 13:15:22 -04:00
Richard Ramos
5351fb62dc
feat: display messages with an image contenttype
2020-07-21 13:15:22 -04:00
Jonathan Rainville
a9cddde37e
fix: fix text selection by putting mouseArea under text
...
And put link click handling by the TextField itself
2020-07-21 12:00:24 -04:00
Jonathan Rainville
601d237fde
fix: fix replies being all squished if the replied message was smaller
2020-07-21 12:00:24 -04:00
Jonathan Rainville
4c7c8a06a3
fix: fix message overflowing because break spaces were stopped by pre
2020-07-21 12:00:24 -04:00
Jonathan Rainville
911aac92de
feat: add onClicked to Emojis and use a Model to show them
2020-07-21 11:41:19 -04:00
Jonathan Rainville
15cc48c6f8
feat: add mock emoji menu in popup menu for chat
2020-07-21 11:41:19 -04:00
Jonathan Rainville
f51399ff1f
fix: fix QML warnings and errors
2020-07-21 11:09:00 -04:00
Richard Ramos
0278379495
fix: allow resending older expired messages
2020-07-21 10:19:12 -04:00
Richard Ramos
f9335c0969
feat: retry sending messages
2020-07-21 10:19:12 -04:00
Dean Eigenmann
ca92fa03d8
Update EmptyView.qml
2020-07-20 15:59:42 +02:00
decanus
fe3706defc
fixes the seperator color to match
2020-07-20 15:59:42 +02:00
decanus
90f7570b4e
updates
2020-07-20 14:50:21 +02:00
decanus
ec0b0dc327
fixes empty view background
2020-07-20 14:50:21 +02:00
Pascal Precht
1e39cf4821
feat(chat): implement mention auto complete
...
Closes #515
2020-07-17 12:31:20 -04:00
Jonathan Rainville
b829acb3c4
chore: re-run qstr converter
2020-07-17 11:55:01 -04:00
decanus
b3a4903655
fix channel identifier color
2020-07-17 17:27:01 +02:00
Jonathan Rainville
0ab257d005
feat: make RectangleCorner a component and show images in compact
2020-07-16 11:49:13 -04:00
Jonathan Rainville
66467ff070
fix: wallet ui errors
...
Fixes # 472
2020-07-16 11:43:42 -04:00
Richard Ramos
fd88fd19d0
feat: display connected/disconnected status in the chat module
2020-07-16 11:38:00 -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
262941e839
feat: add space between the last chat and the chat input
2020-07-16 10:32:27 -04:00
Jonathan Rainville
851eb82026
feat: make channel list compact in compact mode
2020-07-16 10:32:27 -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
Iuri Matias
c5410b6536
remove leftover condition
2020-07-15 16:05:35 -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
emizzle
69ba3c4468
feat: add support for purchased sticker packs
2020-07-15 15:53:48 -04:00
emizzle
ac7deb3af0
feat: Un/install free sticker packs in sticker market
...
Sticker pack details retreived from contract:
- pack data decoded from contract response
- data contains contentHash which, once decoded, contains an IPFS identifier
- futher pack data in EDN format is downloaded from IPFS
- the EDN info is decoded in to a StickerPack
List of available packs from contract are obtained separately from list of installed contracts (stored as a setting in Status-go).
Sticker market contains dynamic list of sticker packs. The sticker button shown for each pack has all states defined (in the design) for all UI states (ie bought, free, installed, pending, etc)
Add modal popup showing sticker pack details and list of stickers to be un/installed. Contains a "larger" version of the sticker pack button with many differnt UI states defined.
Uninstallation of a sticker pack removes those sticker pack's stickers from the recent sticker list and persists the list
Simplify the view model by including stickers, instead of setting an "activeStickerPackId" property. This allowed for display of sticker pack stickers to be displayed in the modal popup separately from the sticker packs shown in the market.
2020-07-15 15:53:48 -04:00
Dean Eigenmann
6521573b51
Update Message.qml
2020-07-15 16:02:30 +02:00
decanus
c840c7374c
fixes some color errors
2020-07-15 11:46:12 +02:00
Iuri Matias
7d7bac5fb6
add notifications support
...
first attempt
attempt 2
working notifications
add notification sound
cleanup
remove unneeded imports
remove unneded imports
2020-07-14 14:23:40 -04:00
Richard Ramos
19f358ef9c
fix: md format
2020-07-14 13:30:40 -04:00
Richard Ramos
ceb5873272
show date headers, and fix sending replies only when they are enabled
2020-07-14 13:10:14 -04:00
Jonathan Rainville
92f5a9ca5c
feat: add dark theme colors and new properties for it
2020-07-14 12:37:17 -04:00
Richard Ramos
06efb531cb
feat: adds QML debounce library
2020-07-14 11:56:44 -04:00
Richard Ramos
a342192f43
fix: code review
2020-07-10 20:09:15 -04:00
Richard Ramos
649023bacf
feat: support message replies
2020-07-10 20:09:15 -04:00
Iuri Matias
e82dbfb7c6
add /shrug and /tableflip cmds
...
add /shrug and /tableflip cmds
fix
2020-07-10 15:56:05 -04:00
Jonathan Rainville
25ac69b37c
fix: fix message width by using the plainText
2020-07-10 15:54:48 -04:00
Jonathan Rainville
cbcab82e5d
fix: fix PopupMenu icon size to be back to 25 but customizable
2020-07-10 15:39:56 -04:00
Jonathan Rainville
c00843c94c
chore: remove useless console log
2020-07-10 15:39:56 -04:00
Jonathan Rainville
1b3314ea9a
fix: fix chat input size and postiion
2020-07-10 15:39:56 -04:00
Jonathan Rainville
dd6454f55c
fix: fix PopupMenu style
2020-07-10 15:39:56 -04:00
Jonathan Rainville
9462beaa3f
fix: fix chat menu button
2020-07-10 15:39:56 -04:00
Jonathan Rainville
b5619dadaf
fix: close chat menu when re-clicking the button
2020-07-10 15:39:56 -04:00
Jonathan Rainville
bcee0079e5
fix: change sticker background to white
2020-07-10 15:39:56 -04:00
Jonathan Rainville
3d19e9ed74
feat: add profile popup for the empty chat view
2020-07-10 15:39:56 -04:00
Jonathan Rainville
b3b7047fe1
feat: add invite friends modal
2020-07-10 15:39:56 -04:00
Jonathan Rainville
ff2ed712f2
feat: improve Copy button to copy directly and have an active state
2020-07-10 15:39:56 -04:00
Jonathan Rainville
33d639b071
feat: fix walkie talkie image and add text with links
2020-07-10 15:39:56 -04:00
Jonathan Rainville
284572898a
feat: add view when clicking the X on the EmptyView
2020-07-10 15:39:56 -04:00
Jonathan Rainville
fc80e1e1ac
feat: add section for friend in contact column
2020-07-10 15:39:56 -04:00
Iuri Matias
91cf1682b1
put sounds on top level to avoid duplicated sound channels
2020-07-10 15:27:26 -04:00