Commit Graph

305 Commits

Author SHA1 Message Date
Igor Sirotin 52dd0abbce
feature: live status link previews (#12613)
* feat: live received status link previews
* link preview cards: active members count
* update `requestCommunityInfo` to new backend. Add `requiredTimeSinceLastRequest` arg
2023-11-06 19:26:44 +00:00
Alex Jbanca 0f07ea09da fix(LinkPreviews): Left align the message link preview tight corner 2023-11-02 14:32:22 +02:00
Khushboo Mehta bcdb37b0c5 fix(@desktop/wallet): Use LeftJoinodel to link networks with chainId in various models such collectibles model, assets models.
fixes #8923
2023-11-01 20:11:43 +01:00
Noelia a7d430e309 feat(ShapeRectangle): Added icon
Added icon
2023-11-01 10:58:21 +01:00
Valentina1133 0f1b16006e
chore: object names added for keycard controller elements (#12583) 2023-10-30 17:57:24 +01:00
Cuteivist b1a8fd6260
fix(@desktop/wallet): Prevent nil conversion to qvariant (#12546) 2023-10-26 10:01:52 +02:00
Alex Jbanca 4a30d13bdc
feat(LinkPreviews): Integrate Link previews with the backend (#12523)
* feat(StatusQ): Adding numberToLocaleStringInCompactForm function to LocaleUtils

This function will format the number in a compact form
E.g: 1000 -> 1K; 1000000 -> 1M; 1100000 -> 1.1M

+ adding tests

fix(statusQ): Update numberToLocaleStringInCompactForm to return the locale number when greter than 999T

fix(StatusQ): extend the test_numberToLocaleStringInCompactForm with new data

* feat(LinkPreviews): Update the link preview area in StatusChatInput to use the new model

Changes:
1. Create a new component `LinkPreviewMiniCardDelegate.qml` that filters the model data to properly fill the link preview card with the needed data based on the preview type
2. Update storybook pages
3. Small updates to LinkPreviewMiniCard

* feat(LinkPreviews): Update the link previews in message history to use the new backend

Changes:
1. Create delegate items for LinkPreviewCard and gif link preview to clean the LinksMessageView component and filter the model data based on the preview type
2. Remove UserProfileCard and reuse the LinkPreviewCard to display contacts link previews
3. Update LinkPreviewCard so that it can accommodate status link previews (communities, channels, contacts). The generic properties (title, description, footer) have been dropped and replaced with specialised properties for each preview type.
4. Fix LinkPreviewCard layout to better accommodate different content variants (missing properties, long/short title, missing description, missing icon)
5. Fixing the link preview context menu and click actions

fix: Move inline components to separate files

Fixing the linux builds using Qt 5.15.2 affected by this bug:
https://bugreports.qt.io/browse/QTBUG-89180

* fix: Align LinkPreviewMiniCard implementation with LinkPreviewCard and remove state based model filtering
2023-10-25 18:20:02 +03:00
Alex Jbanca 337a81fc49 fix: Update link preview border to match the new design
+ fix link preview highlighting
2023-10-23 18:53:34 +03:00
Anthony Laibe 0ba9ce9c8e fix(@wallet): token not always visible
fixes #12508
2023-10-23 16:05:19 +02:00
Michał Cieślak ce18a52171 chore(StatusChatInput): Move inline LinkPreviewSettingsCard's menu to separate file
Because of https://bugreports.qt.io/browse/QTBUG-90740 inline context menu causes tests for StatusChatInput crashing (stack overflow) on 5.15.2 (this version is used on CI). The easiest option to solve that problem is moving inline component to a separate file.

Closes: #12435
2023-10-13 16:20:09 +02:00
Igor Sirotin 520d34240a
feature: support unfurled Status links (contact/community/channel) (#12303)
* chore: move `LinkPreviewThumbnail` to a separate file
2023-10-13 14:36:07 +01:00
Alex Jbanca 331f27b52a feat: highlight the hovered hyperlink and link preview 2023-10-12 15:46:20 +03:00
Alex Jbanca fcd9567677 feat: Add settings card to control link previews settings in chat input
This commit adds the link preview settings card in the chat input area and connects the settings to the controller.

Not included in this commit: Backend for the preserving the settings, syncing the settings and enforcing the settings on the backend side.

Whenever an url is detected in the chat input area, the link preview settings card is presented. This card enables the user to choose one of the following options:

1. `Show for this message` - All the link previews in the current message will be loaded without asking again. The current message can be defined as the message currently typed/pasted in the chat input. Deleting or sending the current content is resetting this setting and the link preview settings card will be presented again when a new url is detected.
2. `Always show previews` - All the link previews will be loaded automatically. The link preview settings card will not be presented again (in the current state, this settings is enabled for the lifetime of the controller. This will change once the settings are preserved and synced)
3. `Never show previews` - No link preview will be loaded. Same as the `Always show previews` option, this will be preserved for the lifetime of the controller for now.
4. Dismiss (x button) - The link preview settings card will be dismissed. It will be loaded again when a new link preview is detected

The same options can be loaded as a context menu on the link preview card.

Changes:
1. Adding `LinkPreviewSettingsCard`
2. Adding the settings context menu to `LinkPreviewSettingsCard` and `LinkPreviewMiniCard`
3. Connect settings events to the nim controller
4. Adding the controller logic for settings change
5. Adding the link preview dismiss settings flag to the preserverd properties and use it as a condition to load the settings.
6. Adding/Updating corresponding storybook pages
2023-10-12 15:40:01 +03:00
Alex Jbanca 422bb2c064 feat: Generate link previews in StatusChatInput - Small updates + Add basic zoom to Storybook InspectionWindow 2023-10-12 14:08:28 +03:00
Alex Jbanca 3ce9d66d25 feat: Generate link previews in StatusChatInput - introduce ChatInputLinksPreviewArea
This component is a wrapper for LinkPreviewMiniCard and StatusChatInputImageArea. The purpose of this component is to arrange the cards in a row layout and provide scrolling behaviour. This component also has an opacity mask that will provide a fade out appearance when the items are scrolled out of view.

+ adding storybook page
+ integrate ChatInputLinksPreviewArea in StatusChatInput
2023-10-12 14:08:28 +03:00
Alex Jbanca 2c8ad61947 feat: Generate link previews in StatusChatInput - introduce LinkPreviewMiniCard
Adding LinkPreviewMiniCard component based on Figma designs. This component is similar to LinkPreviewCard, but has less info and a different format.

There is also some additional functionality attached to this card: close button, reload button and hovered state. The LinkPreviewMiniCard can have multiple states, based on content type and loading state.

+ Adding storybook page

Figma design: https://www.figma.com/file/Mr3rqxxgKJ2zMQ06UAKiWL/💬-Chat⎜Desktop?type=design&node-id=22341-184809&mode=design&t=151TjdzkzI7flR4P-0
2023-10-12 14:08:28 +03:00
Lukáš Tinkl 78b4fee587 fix: Add Copy/Open Link as context menu actions on GIF message previews
also fix the issue of not having the respective image context menu for
the new unfurled links component

Fixes #12183
2023-10-10 12:27:46 +02:00
Khushboo Mehta b5723db3c9 fix(@desktop/wallet): Wallet settings - various small enhancements identified via mobile wallet settings work
fixes #11675
2023-10-09 18:46:57 +02:00
Lukáš Tinkl 7171094f01 fix(storybook): fix broken pages
It was mostly some missing or non-existing properties or the component
got moved somewhere else

Fixes #12285
2023-10-06 14:59:02 +02:00
Lukáš Tinkl bcb89c8818 fix(SyncingEnterCode): tweak to local pairing messaging
... to clarify both devices should be on the same network

- add the view to storybook
- fix some layout/margin issues

Fixes #12261
2023-10-05 10:12:48 +02:00
Lukáš Tinkl 621090174a fix(GetSyncCodeInstructionsPopup): mention same network
- integrate it into Settings/Syncing
- simplify the GetSyncCodeInstruction structure
2023-10-05 10:12:48 +02:00
Sale Djenic d107a9f90b feat(@desktop/keycards): managing mocked keycards when running keycard flows 2023-09-27 18:20:43 +02:00
Cuteivist fddcc3a83f
feat(@desktop/wallet): Transaction collectibles filtering (#12162) 2023-09-21 08:58:44 +02:00
Alex Jbanca 7c8436f492 feat: Adding new user profile cards for link previews 2023-09-20 19:56:18 +03:00
Michał Cieślak fb48e7be0b feat: Refactor AmountToSend to use exact amounts for transactions
Closes: #12168
2023-09-20 15:15:29 +02:00
Alex Jbanca a072286675 Update ui/imports/shared/controls/chat/LinkPreviewCard.qml
Co-authored-by: Igor Sirotin <sirotin@status.im>
2023-09-18 09:28:22 +03:00
Alex Jbanca 7b6281a6c6 feat: Implement the new Link Preview cards
Implementing the new design for the following preview types:
 - Community and channel
 - General link previews (Youtube, github etc)
 - Image link preview

The storybook implementation has all these links available for testing.
Missing features in the app:
 - Logo (favicon)
 - Community card
 - Image preview details (title, domain name)
2023-09-18 09:28:22 +03:00
Khushboo Mehta 1d99d8ae97 chire(@desktop/wallet): Streamline send modal folder structure
fixes #12140
2023-09-15 13:43:59 +02:00
Khushboo Mehta 296f70103a feat(@desktop/wallet): Enable Collectibles tab before token is selected
fixes #12095
2023-09-14 11:26:41 +03:00
Khushboo Mehta f597ef4e6a feat(@desktop/wallet): Glue for sending nft
fixed #12128
2023-09-12 14:01:10 +02:00
Dario Gabriel Lipicar 50ffbb9dce feat(@desktop/wallet): add collectibles list to send modal
Fixes #12072
2023-09-11 08:02:02 -03:00
Cuteivist 63eacf0817
feat(@desktop/wallet): Use estimated latest block for details (#12092) 2023-09-11 10:08:53 +02:00
Stefan 8138e5edcf chore(wallet) remove requesting detailed transaction info for activity
Closes #11598
2023-09-04 22:07:24 +02:00
Stefan 6b56bbe01f chore(wallet) move totalFees to details
Updates #11597
2023-09-04 14:33:19 +02:00
Cuteivist 722a9022e2
feat(@desktop/wallet): Extended activity progress block (#12013) 2023-09-04 12:19:02 +02:00
Michał Cieślak 2de2393ec1 chore(AmountInput): Allow custom err msg for exceeding max, custom label and flag for zero as valid input 2023-08-31 00:37:23 +02:00
Khushboo Mehta 330ccb58a6 chore(@desktop/wallet): Move send modal logic over to nim side
fixes #11881
2023-08-30 14:45:40 +02:00
Cuteivist db350dc36e
feat(@desktop/wallet): Fetch multi tx details (#12002)
closes #11897
2023-08-30 14:10:59 +02:00
Sale Djenic aec5dc62c9 fix(@desktop/wallet): importing keypairs at the account level (navigating into an account page in Wallet) (point 9)
Point 9 of #11968
2023-08-25 13:31:42 +02:00
Sale Djenic 70343c4b4f fix(@desktop/wallet): QR dialog - how to generate the QR on the other synced device instructions (point 5)
Point 5 of #11968
2023-08-25 13:31:42 +02:00
Sale Djenic a1bf7bed19 feat(@desktop/syncing): make a not operable account fully operable, part 3
Closes the third part of #11779
2023-08-22 12:22:32 +02:00
Sale Djenic c207a4aefc chore(@desktop/syncing): syncing qr code related qml files move to shared location 2023-08-22 12:22:32 +02:00
Cuteivist faf4933262
fix(@desktop/wallet): Show networks for Bridge txs (#11898) 2023-08-18 10:56:57 +02:00
Lukáš Tinkl 4d770e6a7f fix: don't display bogus empty tooltip with no text 2023-08-17 14:05:40 +02:00
Michał Cieślak 1c50ec17a8 chore(Communities): Refactor amounts handling for displaying, minting, airdropping and burning
Closes: #11491
2023-08-17 11:26:25 +02:00
Khushboo Mehta ec3231ef7e feat(@desktop/wallet): Update remove keypair popup to match the Figma
fixes #11734
2023-08-10 19:56:59 +02:00
Alex Jbanca 7d0d321b35 feat(community): Add Pending states to community membership request decisions in members tab panel 2023-08-10 18:02:27 +03:00
Cuteivist b5a81badaa
feat(@desktop/wallet): Handle collectible minting (#11796) 2023-08-04 12:47:45 +02:00
Cuteivist 66e9631933
fix(@desktop/wallet): Speedup wallet view loading (#11736)
fixes #11627
2023-08-04 10:41:45 +02:00
Cuteivist cdcfe811f5
fix(@desktop/wallet): Update transaction status UI (#11681)
fixes #11534
2023-08-02 06:36:54 +02:00