Commit Graph

292 Commits

Author SHA1 Message Date
Alexandra Betouni 1557996cbc fix(@desktop/chatInput) Pasting text with emoji was invisible
When text from clipboard that contained any emoji was pasted
in the chat input it was becoming invisible

Closes #3291
2021-08-31 14:25:16 -04:00
Khushboo Mehta f4baf7c738 fix(@desktop/chat): Emoji reaction Menu is incorrect
Added logic to set parent ,x and y positions from the place where the menu is opened

fixes #2385
2021-08-31 13:45:32 -04:00
Anthony Laibe c11267c13d fix(@desktop/communities): Fix suggestion for communities 2021-08-31 13:22:26 -04:00
Khushboo Mehta d8817a468e fix(@desktop/chat) Reply to image doest show image in reply box
Added component to show both an image/sticker in the reply area.
Moved some components from app to shared folder so that they can be reused

fixes #3272
2021-08-31 12:14:48 -04:00
Richard Ramos 80343446ec feat: release ENS names 2021-08-31 12:04:03 -04:00
Anthony Laibe d0d4debdb4 fix(@desktop/wallet): Add wallet confirmation modal
For all actions related to the wallet, add a confirmation if the wallet
is not enabled

fixes #3258
2021-08-26 16:46:48 -04:00
Pascal Precht fb0cedf9a6 feat(@desktop/chat): allow for entering ENS names manually
This commit enables users to enter fully qualified ENS names manually
and marking them as mentions, which are then later being replaced with
pubkeys.

The changes do not prevent users from entering ENS names that don't exist.

There's also a fix that ensure prepended "@" signs are removed from the
items selected in the suggestions box.

Closes #3149
2021-08-26 15:05:29 -04:00
Khushboo Mehta 0531d71e6c fix(@desktop/chat): Text formatting menu should not disappear when performing actions
Qt's Menu closes the menu when action is triggered and to overcome this default behaviour added a custom event to be called when action is clicked.
Fixed some formatting related bugs.

fixes #2349
2021-08-26 15:00:34 -04:00
Anthony Laibe 94f6041ec5 feat(@desktop/chat): Align chat member and suggestion
Removed all computation of suggestion from qml
Reuse user list in order to populate the suggestion box

As a side effect, the suggestion are not serialized from qml to
nim

Remove InputArea which seems not used anymore
2021-08-24 14:56:20 -04:00
Anthony Laibe 03cfead241 fix(@desktop/timeline): Fix leaving the timeline chat
fixes #3249
2021-08-19 10:50:11 -04:00
Khushboo Mehta 8caf95aace feat(MessageContextMenu): Allow Copy and Download Image
Added copy and download Image functionality on right click of an image or its preview

closes #2672
2021-08-19 10:23:18 -04:00
Alexandra Betouni f218fbf739 fix(desktop/chatinput) fixed automatic emoji replacement missbehavior
Closes #3203
2021-08-17 12:23:56 -04:00
Alexandra Betouni 581557cf7e fix(desktop/chat)Adding custom syntax highligther to StatusChatInput
And disabling all previous text formatting

Closes #2920
Closes #3063
2021-08-17 12:20:08 -04:00
Alexandra Betouni f82a23e361 fix(desktop/chatmessages) fixed stickers can't be used as reply
Closes #2404
2021-08-17 11:41:06 -04:00
Andrei Smirnov 8310a36bde feat(@desktop): change password 2021-08-16 15:32:21 -04:00
Anthony Laibe 28a4362b64 feat(@desktop/profile): handle blocked contact
fixes #3047
2021-08-16 14:03:52 -04:00
Anthony Laibe ee84818c06 feat(@desktop/chat): Save favorites and recents gif 2021-08-10 15:31:19 +02:00
Anthony Laibe 4958e4d941 fix(@desktop/settings): Enable stickers/ens on ropsten
fixes #911
2021-08-10 13:35:37 +02:00
Anthony Laibe b21e1d87c0 feat(@desktop/chat): Style gif widget component 2021-08-03 16:42:05 -04:00
Anthony Laibe c5051d4d4f feat(@desktop/chat): display gif with 3 columns 2021-08-03 16:42:05 -04:00
Andrei Smirnov 0ef1dee5ce fix(@desktop/timeline): profile picture is not updated in timeline 2021-08-02 19:56:46 -04:00
Jonathan Rainville 164efde2c4 chore(theme): add dropShadow theme color and use it where needed 2021-08-02 17:02:01 -04:00
Pascal Precht 49a522e889 fix(@desktop/chat): ensure edit message input uses correct theme color
Fixes #2978
2021-07-28 16:45:49 -04:00
Richard Ramos 97f0a0435d refactor: SNT transaction modal (for buying sticker packs and ens) 2021-07-28 11:56:17 -04:00
Jonathan Rainville 552b6e8af9 fix(edit): fix edit input text color in dark theme 2021-07-26 17:14:07 -04:00
Sale Djenic 3c2c8816d2 bug(@desktop/wallet): gas selector modal has text, divider and custom/suggestions toggle overlapped
Bug is easily reproducible if you try to buy some stickers, in that case suggestion text
overlaps divider and buttons, and if you don't enough balance warning about that will overlap
all that also.

Fixed by increasing hight of the appropriate modal.

Fixes: #2994
2021-07-26 13:20:21 -04:00
Anthony Laibe 58506fbd97 feat(@desktop/chat): Display gif popup next to emoji 2021-07-23 15:27:56 -04:00
Richard Ramos 6564bd8497 fix: make gas selector visible in transaction modals
Fixes #2434.  Modals that were affected by this issue were
- RegisterENSModal (for registeing an ens username)
- SetPubKeyModal (for changing the contact code of an already owned ens)
- StatusStickerPackPurchaseModal (for acquiring a sticker pack)
2021-07-20 10:29:54 -04:00
Alexandra Betouni 81fe8976dd [#1945] Fixed ToolTip position when there is no space
Closes #1945
2021-07-19 13:25:47 -04:00
Sale Djenic 1acbc76cc9 chore(@desktop/general): run translation script
All untranslated properties are translated now using translation scripts.
2021-07-19 12:27:45 -04:00
Alexandra Betouni c1a6e57ca6 [#2650] Fixed pasting rich text in text box
* Text copied from clipboard that included images
  and other rich content was not visible in text
  box when pasted, modified to keep only plain
  text instead and removed unnecessary funtions
* Also removed unecessary Rectangle in Input

Closes #2650
2021-07-16 17:56:14 -04:00
Andrei Smirnov 42b92a5853 fix(@desktop/chat): odd logging 2021-07-13 17:05:58 -04:00
Andrei Smirnov fcc2a9e025 fix(@desktop/timeline): timeline and images area bugfixes 2021-07-13 17:05:58 -04:00
Alexandra Betouni 40b2a5c778 [#1608] convert text to emoji automatically
For example, typing :D should turn into 😁

Closes #1608
2021-07-13 11:42:46 -04:00
Jonathan Rainville 4277a6e7f4 feat(mentions): show mentions ordered by how it matches the filter
Fixes #2543
2021-07-13 09:41:52 -04:00
Pascal Precht a69c2aea73 refactor(Chat, Communities): replace `TopBar` with `StatusChatToolBar`
This commit replaces the `TopBar` components with StatusQ's `StatusChatToolBar`
and touches a few other things as part of this refactoring, namely:

1. `ChannelContextMenu` has been renamed to `ChatContextMenu` and is now a `StatusPopupMenu`
2. Leftover components have been removed: `StatusChatInfo`, `StatusChatInfoButton` and `TopBar`
3 `ActivityCenter` has been moved into `ChatColumn.qml` because `StatusChatToolBar` doesn't provide it
4. `Share chat` option in `ChatContextMenu` has been removed as it wasn't doing anything.

Closes #2746
2021-07-09 10:39:58 -04:00
Alexandra Betouni 35198cb448 [#2534] Adding emoji skin color selector
* Icon was there but feature was not implemented

fixes #2534
2021-07-07 14:40:10 -04:00
Richard Ramos c7750da267 feat: edit messages 2021-07-06 11:30:07 -04:00
Richard Ramos e347255df4 fix: channel description width 2021-07-06 10:44:28 -04:00
Sale Djenic 341d3ebcf7 fix: typing in `<` in the input box deletes everything afterwards in
Fixes: #2267
2021-07-02 08:52:03 -04:00
Iuri Matias f8e5b25a09 refactor: extract messages from chat view
refactor: extract messages from chat view

refactor: extract messages from chat view

refactor: extract messages from chat view

update references to messageView

fix setup

remove duplicated method
2021-06-22 15:12:01 -04:00
Iuri Matias 599bf731fb refactor: extract 'channels' to its own file 2021-06-18 12:12:01 -04:00
Iuri Matias 45b0e5e756 refactor: move input formatting code to its own file 2021-06-17 16:29:35 -04:00
Iuri Matias 6bcdb9ca54 refactor wallet views
add getSettings methods to src/status

fix issue with calling getSettings; document issue

remove most direct references to libstatus; document some common issues

remove most references to libstatus wallet

add mailserver layer to status lib; remove references to libstatus mailservers

remove libstatus accounts references

move types out of libstatus; remove libstatus types references

remove libstatus browser references

refactor libstatus utils references

remove more references to libstatus stickers

remove references to libstatus constants from src/app

remove more libstatus references from src/app

refactor token_list usage of libstatus

refactor stickers usage of libstatus

refactor chat usage of libstatus

remove libstatus references from the wallet view

remove logic from ens manager view

fix issue with import & namespace conflict

remove unnecessary imports

refactor provider view to not depend on libstatus

refactor provider view

refactor: move accounts specific code to its own section

fix account selection

move collectibles to their own module

update references to wallet transactions

refactor: move gas methods to their own file

refactor: extract tokens into their own file

refactor: extract ens to its own file

refactor: extract dappbrowser code to its own file

refactor: extract history related code to its own file

refactor: extract balance to its own file

refactor: extract utils to its own file

clean up wallet imports

fix: identicon for transaction commands
Fixes #2533
2021-06-17 16:11:01 -04:00
Eric Mastro 21e6affa98 feat: edit community channels
Closes #2344.

Add ability to edit name, description, and private fields of a community channel.

feat: Display community channel description
Ensure the width of the description does not surpass the context menu and instead wraps to the next line.

feat: After channel is created, set it as the active channel
2021-06-09 10:19:26 +10:00
Jonathan Rainville bee54e628f feat(Activity center): add placeholder activity center
Fixes #2608
2021-05-31 15:54:18 -04:00
Jonathan Rainville 436cb42eae feat: add contact requests and handling of them 2021-05-28 13:31:33 -04:00
Jonathan Rainville c1f6afd799 fixes 2021-05-26 12:12:05 -04:00
Jonathan Rainville b52dceb984 feat(Chat): add pinned messages feature 2021-05-26 12:12:05 -04:00
Pascal Precht 636b39d082 fix(StatusLetterIdenticon): ensure letterSize is correct
Due to historic reasons, conditionally assign a font size for the letter
identicon, based on whether or not the app's compact mode is active.

Compact mode has become the new default a while back and the component's
`isCompact` property isn't set anywhere in throughout the application,
resulting in `letterSize` to always be `21`, which is too big.

This commit removes the condition, defaulting to always having a letter size
of 15 pixels as designed.
2021-05-14 11:48:37 -04:00
Jonathan Rainville a0029ce270 refactor(ChatInput): refactor text formation to increase perfo and enbale undo 2021-05-14 10:27:47 -04:00
Eric Mastro ee1287b71d fix: prevent crash on generate account wrong password
Fixes #2448.

Currently, if a wrong password is entered when generating a wallet account, the app will crash due to attempting to decode a `GeneratedAccount ` from an rpc response containing only an error.

With this PR, we are detecting if an error is returned in the response, and if so, raising a StatusGoException. This exception is caught in the call chain, and translated in to a `StatusGoError` which is serialised and sent to the QML view, where it is parsed and displayed as an invalid password error in the input box.

refactor: remove string return values as error messages in wallet model
In the wallet model, we were passing back empty strings for no error, or an error as a string. This is not only confusing, but does not benefit from leaning on the compiler and strong types. One has to read the entire code to understand if a string result is returned when there is no error instead of implicitly being able to understand there is no return type.

To alleviate this, account creation fundtions that do not need to return a value have been changed to a void return type, and raise `StatusGoException` if there is an error encountered. This can be caught in the call chain and used as necessary (ie to pass to QML).

refactor: move invalid password string detection to Utils
Currently, we are reading returned view model values and checking to see if they include a known string from Status Go that means there was an invalid password used. This string was placed in the codebased in mulitple locations.

This PR moves the string check to a Utils function and updates all the references to use the function in Utils.
2021-05-14 10:27:37 -04:00
Jonathan Rainville d2b6bf9310 fix(Input): fix mention formation on rewriting a mention
Fixes #2325
2021-05-05 17:26:48 -04:00
Iuri Matias cfe2139524 fix text formatter icons size & pixelation 2021-05-05 17:09:28 -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
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
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
Pascal Precht 17e9e30454 feat: introduce StatusIcon component
This introduces a new `StatusIcon` component to the component library,
including various icon assets.

The component can be used to render icons in different colors and rotations.
It's also one of the atomic components that can be used to build other
more complex components like icon buttons.

Usage:

```
StatusIcon {
    icon: "arrow-right" // name of asset file in `ui/shared/status/assets/img/icons
    width: 24 // default: 24
    height 24 // default: 24
    color: "red" // default: asset file color
    rotation: 0 // default: 0
}
```

Closes #2330
2021-04-27 14:56:09 -04:00
Jonathan Rainville 378473b923 chore: remove unused code to remove wrapping 2021-04-22 12:00:10 -04:00
Jonathan Rainville 0c34335d1c feat: show formation hightlighted even when not selecting the stars 2021-04-22 12:00:10 -04:00
Jonathan Rainville f2f2707d68 feat: enable unwrapping text formations with the buttons 2021-04-22 12:00:10 -04:00
Pascal Precht 973830349d uiux(StatusChatInput): toggle markdown from selection
Closes #1930
2021-04-21 18:13:02 -04:00
Pascal Precht 95bc455dcd fix(StatusChatInfoButton): use correct hover color in darkmode 2021-04-14 17:00:37 +02: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 4af1135f6c fix: show formation menu in middle of selection or above double click 2021-04-01 16:49:02 -04:00
Jonathan Rainville 1c95a495b8 fix: fix channel picker needing to hit bottom to select after searching 2021-03-30 15:42:26 -04:00
Jonathan Rainville e33266aa2f fix: fix emoji popup and create community popop text color 2021-03-30 15:38:15 -04:00
Jonathan Rainville c460206c58 fix: fix sticker popups to have the right colors and right size 2021-03-30 15:38:15 -04:00
Jonathan Rainville 1afa192bc4 fix: fix color picker button size 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
Jonathan Rainville 63bf1be96a fix: fix community button staying active when clicking on a new section
Fixes #2133
2021-03-26 15:25:53 -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 d09f049e77 feat: enable tooltip orientation 2021-03-25 16:57:47 -04:00
Pascal Precht 42e3444731 fix(StatusChatInput): fix text area alignment so it doesn't jump
There was a UI bug in the StatusChatInput where, only in the timeline view,
the scrollview wrapping the textarea would have a weird behaviour in which
it would render the visible text(placeholder) *lower* than how it's actually
positioned. Once the textarea is clicked, it would re-adjust with a smooth
scroll.

Obviously this is undesired behaviour as the text should always render in the
correct position.

This commit finally fixes this weird behaviour by moving the dynamic height
calculation to the wrapping Rectangle and changing the textarea's top- and
bottom paddings dynamically.

Fixes #2018
2021-03-24 14:35:30 -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
Jonathan Rainville 7fb9578285 feat: highlite mentions in the chat input as well 2021-03-22 15:49:21 -04:00
Pascal Precht a27f9cf25d fix(StatusRadioButtonRow): ensure checked state is propagated properly
There were cases in which this component was used and its `checked` state wasn't
properly emitted to the underlying component.

This commit fixes that by ensuring the `MouseArea` only alters the radio button's
`checked` state and let the radio button handle the event propagation.
2021-03-19 16:17:14 -04:00
Pascal Precht f497091c3e
feat: introduce new StatusContextMenuButton component
We've been implementing such a button in various ways throughout the
application. Sometimes using SVG icons and rectangles, sometimes highjacking
`StyledText` components (which was clever though).

Obviously this resulted in inconsistencies, so this commit introduces
a new dedicated component to render the three-dots button for context menus.
2021-03-18 10:03:04 +01:00
Pascal Precht ea39ead64b
feat(StatusSettingsLineButton): make some of the component's props configurable
This helps with using this component in other places where the default
settings for some UI related properties don't match otherwise.
2021-03-17 10:30:19 +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
Iuri Matias 5cef8e3e60 adjust content height of sticker popup 2021-03-16 15:39:52 -04:00
Richard Ramos 4f4a3f1c30 feat: see stickers details when clicking on a sticker 2021-03-16 15:39:52 -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
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
Richard Ramos 6a51d80832 fix: use SVGs in emoji popup 2021-03-08 14:10:58 -05:00
Pascal Precht e6f17fdf55 uiux(StatusChatInput): highlight matching formatting option
This will highlight any option in the text formatting menu whose
formatting matches the selected text formatting

Closes #1931
2021-03-04 08:57:43 -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 64d38b6049 feat: implement redesign of communities on the left tab 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
Pascal Precht 6603f025c3 fix(StatusChatInput): exclude markdown indicators from formatting
Closes #1928
2021-03-03 15:42:42 -05:00
Pascal Precht ed0b9ec1d6 uiux(StatusChatInput): close text format menu on deletion
Closes #1932
2021-03-03 13:30:57 -05:00
Richard Ramos 608455f563 fix: improve qml bottlenecks 2021-03-01 14:17:26 -05:00
Richard Ramos 750371a3f8 fix: don't estimate gas before when displaying sticker packs
Fixes: #1728
2021-02-22 17:31:17 -05:00
Richard Ramos 6207c8af53 fix: appSettings were being overwritten due to defaultAppSettings periodically executing sync() 2021-02-18 16:40:21 -05:00
Pascal Precht 10636c2460 feat(StatusChatInput): render formatted text inside input
Closes #1796
2021-02-18 16:37:36 -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
Pascal Precht 96c2f123b4 feat(StatusChatInput): make text input formatting work via shortcuts
Closes #1803
2021-02-15 16:22:16 -05:00