Commit Graph

1339 Commits

Author SHA1 Message Date
Igor Sirotin 14c264e350
feature(Syncing): Embed QR code scanner for syncing devices on onboarding (#9981)
* fix(StatusQrCodeScanner): Improve QR code scanner
- Almost async loading
- Added camera selector
- Added `captureRectangle` property
- Add component info to sandbox qr code scanner page
- Embed QrCodeScanner into desktop app
* Compile and link qzxing as shared library
* Hardcode settingCurrentNetwork. Propagate inputConnectionString errors.
* Added qzxing libdir to e2e tests ld_library_path
2023-03-30 20:57:18 +03:00
Lukáš Tinkl 40e4a3670f fix: StatusComboBox doesn't react on click outside indicator
Redirect the click event and let the CustomComboItem fill the whole
`contentItem` (otherwise a Button over another Button eats all the mouse
events)

Fixes: #9977
2023-03-29 17:18:07 +02:00
Michał Cieślak 27c891fc18 feat(communities): AirdropTokensSelector component added
Closes: #9798
2023-03-29 14:25:46 +02:00
Michał Cieślak 2dc9c950d9 fix(StatusFlowSelector): minor adjustments to the design 2023-03-29 14:25:46 +02:00
Anthony Laibe 063198fc1f feat(@wallet): do not change value of symbol
fixes #9201
2023-03-29 10:14:08 +02:00
Sale Djenic 223e4f1bc2 feat(@desktop/wallet): new "Add Account" modal added
Closes: #9733
2023-03-28 18:09:39 +02:00
Sale Djenic 388fab4a4a feat(StatusQ.Components): `StatusPageIndicator` component introduced
Added `StatusPageIndicator` component which displays buttons in a row,
representing pages from the set range.

Corresponding page in API Documentation added.
2023-03-28 18:09:39 +02:00
MishkaRogachev 1f54d96f5f feat(Chat): Disable chat actions for non-contacts 2023-03-28 11:05:07 -04:00
Alex Jbanca 75571c9f22 fix(StatusItemsSelector): Allow icons to be provided by the model
Fixing https://github.com/status-im/status-desktop/issues/9766
The main change is that the model will now provide the image type, on top of the image source. The image type can be either icon or image. Icons will be coloured with the same colour as the text.
2023-03-28 12:46:20 +03:00
Alex Jbanca 2142a6bf9c fix(ActivitiCenterTolltip): Position tooltip arrow in the middle of the button 2023-03-27 14:19:43 +03:00
Khushboo Mehta 5b3a115f55 fix(@desktop/wallet): Loading screen after adding account
1. Removing logic for loading to nim
2. Handling error state for asset view also on the nim side

fixes #9648
2023-03-24 17:09:09 +01:00
Boris Melnik 30b4d9eb5c fix(chat): Sent images with text correctly
Fixes: #9564 #6374
2023-03-24 14:33:17 +03:00
Noelia e751f8c658 feat(SQ/StatusDialogFooter): Added new property spacing
Added new property spacing, between buttons.
2023-03-24 12:08:00 +01:00
Khushboo Mehta 072537f61a feat(@desktop/wallet): Implement connection error screens
fixes #9835
2023-03-23 15:26:22 +01:00
Jakub Sokołowski f39dfa87f7 move qzxing and SortFilterProxyModel to vendor folder
Lets avoid creating chaos by having multiple vendor folders.

Signed-off-by: Jakub Sokołowski <jakub@status.im>
2023-03-23 12:09:19 +01:00
Alex Jbanca f18ceff600 fix(StatusInput): forward focus to the input component 2023-03-23 12:24:05 +02:00
Alex Jbanca ad8ce70e09 fix(StatusBaseInput): forward focus to the input component and send signals on Enter/Return pressed 2023-03-23 12:24:05 +02:00
Noelia c6517c00f3 feat(SQ/StatusEmojiAndColorComboBox): Created new component
Created new `StatusEmojiAndColorComboBox` component that behaves like a combobox but with specific content item and delegate look (emoji + color + text).
2023-03-23 08:24:45 +01:00
Noelia b4355f8003 feat(SQ/StatusComboBox): Added new variant
Added variants related to type and size.
2023-03-23 08:24:45 +01:00
Michał Cieślak 083bea0954 fix(CommunityNewPermissionView): proper color of icons in "Is allowed to" section
Closes: #9280
2023-03-22 14:57:58 +01:00
Lukáš Tinkl eecaa0c7b9 fix(StatusEmojiReactions): Text in own reactions has wrong color in dark mode
always use "white on blue"

Fixes #9944
2023-03-22 12:31:11 +01:00
Michał Cieślak bef14365aa chore(StatusItemSelector): Use StatusFlowSelector as a base component
Closes: #9851
2023-03-21 11:59:12 +01:00
Michał Cieślak 7df80bfa1c StatusQ: StatusFlowSelector added 2023-03-21 11:59:12 +01:00
Michał Cieślak 347da1e007 StatusGroupBox used as a base for StatusItemSelector 2023-03-21 11:59:12 +01:00
Michał Cieślak 840ebbe1eb feat(StatusQ): StatusGroupBox component added 2023-03-21 11:59:12 +01:00
Michał Cieślak 0db5790f76 chore(Storybook): StatusItemSelectorPage moved from Sandbox to Storybook 2023-03-21 11:59:12 +01:00
Igor Sirotin 0689a8f386
fix(Syncing): Fixed synced devices list UI bugs (#9929)
* Added online badge to device delegates
* Fixing device last timestamp processing
* Synced devices sorting - current device is always first
* Devices list scrolling fixes
* Fix device list duplication
* Hide online badge for "Synced device" subtitle
2023-03-21 16:10:06 +11:00
Lukáš Tinkl 8aa8b8b7ce fix(StatusTooltip): long text goes out of bounds
Fixes #9918
2023-03-17 12:23:40 +01:00
Lukáš Tinkl 411961aee7 fix: ‘Share community’ URL is unnecessarily ellipsed
- set the width on title/subtitle
- put the subtitle with its optional icon into a Row
- elide title/subtitle
- update Sandbox

Fixes #9701
2023-03-17 11:45:16 +01:00
Lukáš Tinkl 1998a6556a feat(Profile): New Social Links workflow
TLDR;
- all links visible in settings/popup
- persistent order of items
- drag'n'drop to reorder
- editing/deleting in a new popup
- several links of the same type

Needs changes in nimqml (to expose QAIM::begin/endMoveRows), in
DOtherSide (to expose those to NIM), in status-go (to preserve the links
order and fully save them to DB)

Fixes #9777
2023-03-16 16:08:23 +01:00
Igor Sirotin 33d38a4081 fix: Device syncing
- Added local pairing signals
- Remove slash ending from keystorePath
- Implemented localPairingState. Fixed sync new device workflow. 
- Error message view design update 
- Moved local pairing status to devices service
- ConnectionString automatic validation
- Async inputConnectionString
- Added all installation properties to model. Minor renaming.
- Removed emoji and color customization
- Show display name, colorhash and color in device being synced
- Add timeout to pairing server
- Add device type
Fix `DeviceSyncingView` sizing. Fix `inputConnectionString` async task slot.
2023-03-16 00:27:21 +13:00
Noelia 79a1a60c70 refactor(MintingToken): Navigations refactor
- It has been added a `StackView` in main mint tokens panel to easily switch back / forward between views.

- It has been created a SQ component `StackViewStatesManager` that allows a managing together a stackview and states.

- Updated `HoldingsDropdown` to use new stack states component
2023-03-14 16:06:27 +01:00
MishkaRogachev ab1393b7f0 fix(Chat): Show message's text for community invitation
Close #9812
2023-03-14 12:00:17 +05:30
Alexandra Betouni ef8860edbb fix(StatusChatList): fixed dnd uncategorized channels
Part of #3364
2023-03-10 19:40:04 +02:00
Dario Gabriel Lipicar 2fb158b810 fix(@desktop/wallet): fix send input for some locales
Fixes #9324
2023-03-09 10:59:51 -03:00
Lukáš Tinkl 5c0f1981ad feat: Profile Showcase: Proof of concept for own Profile Dialog
- the goal of this PR is to get some bsais UI building blocks done for
the followup PRs
- the order of showcase tabs now is:
Communities/Accounts/Collectibles/Assets
- there will be further changes to accomodate for different types of
backend models as those get developed (for other users' profiles)

Fixes #9664
2023-03-08 18:45:27 +01:00
Lukáš Tinkl 2204273a22 chore: don't let text overflow
set maximum line count + elide + visibility
2023-03-08 18:45:27 +01:00
Igor Sirotin 7c1c178d37
QR code scanner (QML component) (#9464)
Co-authored-by: Richard Ramos <info@richardramos.me>
2023-03-07 12:08:38 -04:00
Noelia 02cf07044d feat(MintToken): Created Preview collectible page
- Added navigation between pages.
- Added main layout and properties (some backend integration still pending).
- Added holders model with mocked data.
- Added mint tokens footer component.

Closes #8734 and #8737
2023-03-07 13:24:45 +01:00
Noelia 72da3cdf63 feat(SQ/StatusImageSelector): Added new properties
`preview` and  `file` properties added.
2023-03-07 13:24:45 +01:00
Noelia 736f315c49 feat(SQ/StatusDotsLoadingIndicator): Created new 3 dots loading animation
- Created new loading animation component.
- Added documentation and page in `stroybook`.
2023-03-07 13:24:45 +01:00
Lukáš Tinkl 1a96700bb8 fix(ProfileHeader): Settings/Profile/avatar design updates
- correct margins, spacing, position for the avatar image
- action button in the top right corner
- fixup the context menu

Fixes #9682
2023-03-07 11:27:03 +01:00
Michał Cieślak 0e60ac4933 fix(AmountInput): Skip non-digits for max input length limit validation
Closes: #9718
2023-03-06 19:44:26 +01:00
Michał Cieślak 405a8ee3ed fix(LocaleUtils): Improve handling small numbers by fractionalPartLength(num)
Closes: #9681
2023-03-06 19:43:47 +01:00
Michał Cieślak 480c249ee0 chore(CommunityPermissions): Refactor channels handling
Community permissions model refers to channels by id instead of
taking/serving all details. UI fetches necessary metadata form
appropriate channels model.

Closes: #9588
2023-03-06 17:36:36 +01:00
Jonathan Rainville 40a157a5af fix(test): fix create category test 2023-03-03 16:14:38 -05:00
Michał Cieślak bb2e03bd88 feat(StatusQ): Added ModelChangeGuard utility to prevent altering models 2023-03-03 16:51:45 +01:00
Boris Melnik 18e5fc915c fix(chat): Display text from image message
Fixes: #9564
2023-03-02 22:08:46 +03:00
Ivan Belyakov e6226ab564 fix(@desktop/statusq): Fix icons background square, but must be circle
regression.

Fixes: #9714
2023-03-02 19:17:51 +01:00
Lukáš Tinkl ef99e3d017 fix: Primary nav bar vertical alignment on Windows/Linux
- reduce top margin for non-macOS builds

Fixes #9684
2023-03-02 15:49:28 +01:00
Ivan Belyakov 1c7c0d7d81 fix(@desktop/statusq): Change id for StatusListItem to root.
Fix some equal signs to be === and !==.
Removed iconHoverEnabled property for StatusListItem.

Fixes #8599
2023-03-01 13:59:49 +03:00
Ivan Belyakov 19436c0e58 fix(@desktop/statusq): Reverted StatusSmartIdenticon to use icon
with mouse area instead of button.
Added a missing bgRadius assignment.

Fixes #8599
2023-03-01 13:59:49 +03:00
Ivan Belyakov b901f32dd8 fix(@desktop/statusq): Fix StatusBaseInput marked dirty in case of
rich text if visual input is empty

Fixes #8599
2023-03-01 13:59:49 +03:00
Ivan Belyakov bfdd9092e1 fix(@desktop/statusq): Fix StatusQ and shared components as part of
new saved addresses UI implementation
  - Fixed StatusInput and StatusBaseInput to respect rich text.
  - Fixed AddressInput's height that breaks the layout when inside
of QtQuick Layout.
  - Added support for icon clicks in StatusListItem.
  - Fixed broken right alignment in ContactsListAndSearch.

Fixes #8599
2023-03-01 13:59:49 +03:00
Lukáš Tinkl 2a1ea3b0ae fix(StatusChatList): Missing space between channels in StatusChatList
- add an extra space for the item height to fix spacing; can't do this
using regular `spacing` due to height of collapsed categories
- remove dead code

Fixes #9657
2023-03-01 11:42:39 +02:00
Jonathan Rainville 5352ba8c6f refactor(chat-model): simplify chat model and put category as an Item
Fixes #9494
2023-02-28 11:58:40 -05:00
Noelia 2398b8bd46 fix(SQ/StatusIntValidator): Validation function fixed
Validation function fixed
2023-02-28 14:17:47 +01:00
Noelia aecb4816e0 feat(SQ/StatusImageSelector): Created new statusq component `StatusImageSelector`
Created new `StatusQ` component `StatusImageSelector`.

Closes #9629
2023-02-28 14:17:47 +01:00
Dario Gabriel Lipicar fa1c3beb25 feat(@dekstop/wallet) use user input resolution for Send/Bridge modals
Fixes #9459
2023-02-27 08:22:41 -03:00
Khushboo Mehta 2dbf2d4635 fix(@desktop/wallet): Remove the 'Load More' button from the Activity view and replace with automatic loading when the user scrolls down using a skeleton loading state
fixes #8987
2023-02-23 18:04:08 +01:00
Michał Cieślak 34676d0ec7 fix(CommunityPermissions): clean warnings by preventing assigning when some roles doesn't exist
Closes: #9608
2023-02-22 14:43:40 +01:00
Michał Cieślak c85a8d3647 fix(StatusQ/Utils): Fix ModelChangeTracker and ModelUtils to handle properly 2023-02-22 14:43:40 +01:00
Michał Cieślak 51928f5c20 fix(StatusQ): Removed nonexisting/unused imports from Sandbox pages
Closes: #9594
2023-02-22 13:35:14 +01:00
Lukáš Tinkl 340866612b feat: relative or absolute timestamping depending on time/date proximity
- implement LocaleUtils.formatRelativeTimestamp() that does all the heavy
  lifting
- use it in StatusTimeStampLabel -> propagates to all message timestamps
  (chat, activity center, settings, etc)

Closes #9397
2023-02-22 12:27:37 +01:00
Khushboo Mehta 4c0bd1058f fix(@desktop/wallet): Preferred network doesn't reflect in advanced view
fixes #9456
2023-02-21 17:47:30 +01:00
Lukáš Tinkl 79645b53ce fix: truncation of channel description and pinned message text
The chat title/subtitle no longer bleed into the action buttons

- handle long texts in chat description, elide them and show the whole
text in a tooltip
- minor UI fixes in ChatHeaderContentView and StatusToolBar
- adjust Sandbox' Controls page

Fixes #9583
2023-02-21 16:53:06 +02:00
Lukáš Tinkl ff75e862e5 fix(StatusLinkText): no duplicate import
- do not shadow/redefine builtin property `linkColor`
- minor typo fixes
2023-02-21 16:53:06 +02:00
Michał Cieślak 03e1636cff feat(StatusQ): Add cpp model utils to allow handling ListModel and generic QAbstractItemModel uniformly
Closes: #9562
2023-02-20 22:25:56 +01:00
Michał Cieślak 89b767cf2a chore(StatusQ): register StatusQ's cpp types for SanityChecker 2023-02-20 22:25:56 +01:00
Patryk Osmaczko 9f97ce2cde fix(StatusQ/Sandbox): move and update build script 2023-02-20 20:36:05 +01:00
Michał Cieślak a97c8a720e feat(CommunityPermissions): Implement duplication checking
Moreover:
- adapt flow to the design
- introduce ModelChangeTracker utility component

Closes: #9048
2023-02-20 18:40:59 +01:00
Michał Cieślak 0af9c27910 chore(CommunityNewPermissionView): simplified by introducing ModelsComparator component for tracking dirty state
Closes: #8830
2023-02-20 18:40:59 +01:00
Michał Cieślak 9f884605cb chore(CommunityNewPermissionView): Operations on models excluded to ModelUtils singleton 2023-02-20 18:40:59 +01:00
Lukáš Tinkl 277de1b544 fix: contact ID verification and community intro sizing issues
- port to StatusDialog
- fix binding loops
- fix `timestamp` to be a double rather than a `string`

Fixes #9563
2023-02-17 17:43:51 +01:00
MishkaRogachev b70e1f0fb4 feat(ActivityCenter): Add indication for visited/unvisited AC state
Close #347
2023-02-17 16:13:43 +04:00
Lukáš Tinkl 31be818e0e fix: Pinning messages - tweaks to UI and interactions
... to help align with original design intent

- dropped date breaks before msg groups
- show full date/timestamp in the msg header
- floating "Unpin" button on mouse hover
- no padding/spacing between messages
- some smaller code cleanups and dead code removals

Fixes #9396
2023-02-17 11:22:21 +01:00
MishkaRogachev 165271dbea fix(ActivityCenter): Fix CommunityBadge eliding
Close #9402
2023-02-17 14:01:30 +04:00
Stefan 3bb667bb7a feat(Wallet) cache fetched balance history to DB for efficiency
- Bump status-go head that include the required specific changes
  - fetch token balance (native or ERC20) and cache historical token quantity data
  - fetch FIAT currency
- Extend presentation layer (NIM and QML) to account for API changes
- Remove timed request and other optimizations from the time of fetching
  balance history every time instead of querying cache
- Add C++ integration debugging tests and update network chain configuration (outdated)

Closes: #8175
2023-02-15 18:52:37 +04:00
Stefan d7d9aa2612 fix(wallet): improve send modal amount received text
Make it dynamic based on the recipient address

Also fix autHideCopyIcon StatusAddressPanel property working independently
of showCopy property

fixes #9331
2023-02-14 08:24:24 +01:00
Alex Jbanca 26baaa0e15 fix(StatusChatList): Enable StatusChatList sizing and disable scroll filtering when the listview.height == listview.contentHeight
Fixing #9460 Community -> Channels list: can't scroll list of channels with touchpad
The root-cause of this issue is that we use a Listview with height == contentHeight and delegate the scrolling to a ScrollView. The reasoning is that we can attach other items to the bottom of the listview and delegating the scroll to a ScrollView will enable us to scroll the listview+other items attached at the bottom at the same time.
Fixing it by setting ListView.interactive to false when the listview cannot be scrolled.
Also fixed the listview height so that it can also be used as a scrollable listview.
2023-02-10 13:23:32 +02:00
Stefan 3a08ebec4e fix(wallet): some of SendModal's broken windows
- fix high level mixed and broken sizing due to missing a consistent
layouting strategy
- fix first selection. The floating header was covering and tried to
force StatusListView to account for it but nothing I tried worked
    - moved header outside the StatisListView (a good example of control
    want to to be doing too many things)
- fixed background color of the TokenListView
- fix tags occluding selection of token

Closes: #9282
2023-02-10 10:15:03 +01:00
Noelia 8e45d6c50e feat(JoinCommunity): Created `JoinCommunityView` page
Created new view to be used when a community needs permissions to join:
- Left panel blur layout created.
- Header panel blur layout created.
- Central panel blur layout created.
- Join permission overlay panel integrated.

Closes #9267
2023-02-10 10:45:38 +02:00
Lukáš Tinkl f5d6c538c2 chore: consolidate & refactor popup handling
- all remaining global popup components moved into a separate Popups
entity
- removed some static objects from the Global singleton (appMain,
pinnedMessagesPopup, communityProfilePopup, sounds); rationale:
singletons should not contain any state
- fixed support for popups in storybook
- fixed some warnings (most of them broke the popups in one way or the other)
2023-02-09 15:01:57 +01:00
Michał Cieślak 51afe05d3c chore(general): cmake include file defined for StatusQ sources
Closes: #9426
2023-02-09 13:41:15 +01:00
Michał Cieślak 940d8cd2c0 chore(general): Move RXValidator to StatusQ 2023-02-09 12:48:11 +01:00
Michał Cieślak f43c3e2f2b chore(general): Move StatusSyntaxHighlighter to StatusQ, remove mock from Storybook 2023-02-09 12:48:11 +01:00
Michał Cieślak 8f25b93f96 chore(general): Move QClipboardProxy to StatusQ 2023-02-09 12:48:11 +01:00
Michał Cieślak ad34694826 chore(general): Deduplicate and move StatusWindow to StatusQ 2023-02-09 12:48:11 +01:00
Lukáš Tinkl 4cefd4af2a fix: unbreak chat categories height and highlight
- fix chat category/section height not being (re)set to 0 properly and
  hidden
- restore the chat category header highlighting when it contains new
  messages/mentions after the new flattened chat model refactoring

Fixes #9493
2023-02-09 12:02:35 +01:00
Alexandra Betouni aa2e6386a2 fix(statusApp): resolving qml errors/warnings pt2.1
Relates to #8864
2023-02-08 18:43:51 +02:00
Khushboo Mehta 0d369129d5 feat(@desktop/wallet): Implement loading state for Send/Bridge Modal
fixes #9107
2023-02-08 11:44:22 +01:00
Alex Jbanca 025729421f Chore(Qt5.15): Fix qml warning 2023-02-03 11:56:22 +02:00
Alexandra Betouni 1793844cdb fix(StatusMessage): stickers were not aligned correctly 2023-02-02 19:29:59 +02:00
Sale Djenic 35edc2acfd fix(@desktop/general): broken `StatusModal` popups fixed 2023-02-01 13:00:48 +01:00
Alex Jbanca 81a4d70932 chore(Qt5.15): Fix qml warnings after qt 5.15 migration
Fixing QML Connections warnings due to deprecated onFoo handlers. Now we're using function onFoo(params).
Fixing QML compilation error due to js filename format.
Fixing cyclic dependencies between qml components.
2023-01-31 20:39:19 +02:00
Alexandra Betouni 9a2ffc0fc7 Fix(desktopapp): adding scrollview to storybook
Cleaned up binding loop warnings related to
ScrollView and added StatusScrollView in
storybook

As part of #8864
2023-01-31 18:45:51 +02:00
Khushboo Mehta dfcba80df2 fix(@desktop/wallet): Added missing LoadingGraphComponent in qmldir 2023-01-31 11:20:28 +01:00
Jonathan Rainville baea10cacf refactor(chat-model): flatten chat model to only have chat items
Fixes #5286
2023-01-30 15:36:48 -05:00
MishkaRogachev 5ff4c35bf0 feat(appMain): Add warning colors. Use warning color for story node banner 2023-01-30 12:40:31 +04:00
Alexandra Betouni 8bb9da6fcc Revert "fix(StatusMessage): stickers were not aligned correctly"
This reverts commit 0fb954b640.
2023-01-27 09:50:16 -05:00
Anthony Laibe 64d6c484b2 fix(@wallet): fix amount input send modal
fixes #9207
2023-01-27 11:47:52 +01:00
Michał Cieślak 5c3b9881c5 chore(CommunityPermissions): Setting icon/default values for 'In' section depending on chosen permission 2023-01-26 13:03:26 +01:00
Ivan Belyakov f2549fc1ff feat(@desktop/wallet): update wallet navigation
Fixed StatusBaseButton to expose a property to load either normal
icon or a round one.
Implemented new wallet navigation according to design in Figma.
Fixed regression: small accounts icons in accounts list view.
Updated wallet test.

Fixes #8598
2023-01-26 09:49:29 +01:00
Lukáš Tinkl 8569ea5b41 chore: Optimize StatusMessageReply using more Loaders
also fix the sender display name to respect ensName/nickname

Fixes: #9016
2023-01-25 19:58:19 +01:00
Lukáš Tinkl a8a3f5285e chore: optimize StatusDateGroupLabel some more
since this component is performance critical, optimize it some more by
extracting some common constants so that they don't have to revaluted
every time
2023-01-25 19:58:19 +01:00
Alexandra Betouni 0fb954b640 fix(StatusMessage): stickers were not aligned correctly
Closes #8944
2023-01-25 11:42:19 -05:00
Jonathan Rainville fdc0dce782 chore: remove public chat functionnalities
Fixes #8504

Removes the ability to create public chats, see public chats and even leaves previously active public chats
2023-01-25 10:05:55 -05:00
Michał Cieślak 14eb06b158 fix(StatusSwitch): Colors adjusted when disabled, cursor shape fixed
Closes: #9212
2023-01-24 15:03:04 +01:00
Alex Jbanca 27bb6bf665 perf(chatScroll): Optimize StatusTextMessage size and hover binding for the delegate 2023-01-19 19:24:18 +02:00
Alex Jbanca 2723ef1293 perf(chatScroll): Fix image loading from https url and raw data
perf(chatScroll): Fix comments on Fix image loading from https url and raw data
2023-01-19 19:24:18 +02:00
Alex Jbanca eb60d90346 perf(chatScroll): Lazy load message header components
perf(chatScroll): fix StatusMessageHeader comment

perf(chatScroll): Lazy load message header components - remove comment

perf(chatScroll): Remove unneeded indentation in Loaders
2023-01-19 19:24:18 +02:00
Alex Jbanca 719e0a34f6 perf(chatScroll): Optimise timestamps
The date parsing is time consuming and it needs to be used with care in the delegate

perf(chatScroll): Fix StatusDateGroupLabel comment - standaloneMonthName

perf(chatScroll): fix comments on Optimise timestamps

perf(chatScroll): Optimise timestamps - bring back comment

perf(chatScroll): fix activity notification
2023-01-19 19:24:18 +02:00
Alex Jbanca bf1d59c0ad perf(chatScroll): Avoid calling the backend on delegate creation/binding
Provide the needed data from the nim model directly to the delegate. This way whenever a delegate needs to display the data it doesn't need to reach the backend.

perf(chatScroll): Fix comments on Avoid calling the backend on delegate creation/binding

perf(chatScroll): Avoid calling the backend on delegate creation/binding  - add TODO comment on senderColorHash default

perf(chatScroll): merge quotedMessageAuthor details

perf(chatScroll): Fix nim tests

perf(chatScroll): Fix merge error - messages_model.nim
2023-01-19 19:24:18 +02:00
Alex Jbanca 15fe97c90c perf(chatScroll): Improve performance of the commonly used js libraries
Adding .pragma library to the js libraries because the entry point on these libraries were called multiple times. There is no need to share the qml context with these libraries.
Use find() instead of forEach() on emoji array to find an item
2023-01-19 19:24:18 +02:00
Lukáš Tinkl 6bd0dca983 fix: Highlight color of jump-to-message has too little contrast
Use the colors defined by design:
```
Light theme: Light Desktop / Blue 20% (4360DF 20%)
Dark theme: Dark Desktop / Blue 20% (869EFF 20%)
```

Fixes #8271
2023-01-18 18:30:39 +01:00
Lukáš Tinkl 3d2537d4ca chore: don't redefine theme palette category QtObjects
just assign to them, no need to duplicate the properties
2023-01-18 18:30:39 +01:00
Dario Gabriel Lipicar 1fc9dec4d4 feat(@desktop/wallet): handle very small currency amounts
Fixes #9013
2023-01-17 18:21:35 -03:00
Dario Gabriel Lipicar a6afdb5266 fix(@desktop): use system locale across the application 2023-01-17 16:39:56 -03:00
Dario Gabriel Lipicar d11017f7b3 feat(@desktop/wallet): implement unified currency formatting in send/bridge modal
Fixes #8934
2023-01-17 16:39:56 -03:00
Lukáš Tinkl b2328d6643 chore: Consolidate date/time formatting
- simplify locale settings
- extract/fix datetime related functions into LocaleUtils
- port code to the new LocaleUtils

Closes #7230
2023-01-17 16:42:34 +01:00
Patryk Osmaczko be8b270023 fix(chat/messages): ensure there is only one label for given date
Covers the case, where timestamps are missynchronized:
```
clock: 0 timestamp: 31.12.2022 10:00:00
clock: 1 timestamp: 01.01.2023 23:59:30
clock: 2 timestamp: 01.01.2023 23:59:45
clock: 3 timestamp: 02.01.2023 00:00:05
clock: 4 timestamp: 02.01.2023 00:00:10
clock: 5 timestamp: 01.01.2023 23:59:55
```

Before, it would result in repeated labels:
```
clock: 0 timestamp: 31.12.2022 10:00:00
    LABEL: 1.01.2023
clock: 1 timestamp: 01.01.2023 23:59:30
clock: 2 timestamp: 01.01.2023 23:59:45
    LABEL: 2.01.2023
clock: 3 timestamp: 02.01.2023 00:00:05
clock: 4 timestamp: 02.01.2023 00:00:10
    LABEL: 1.01.2023
clock: 5 timestamp: 01.01.2023 23:59:55
```

fixes: #8962
2023-01-17 16:21:25 +01:00
Pascal Precht 8644c841d4 fix(chat): make category bold if chats have unread messages
Closes #8604
2023-01-17 15:39:56 +01:00
MishkaRogachev 1717a03a94 fix(ContactVerificationRequestPopup): Fix overlapping messages
Close #9002 and #8950
2023-01-17 12:21:25 +04:00
Noelia 5676fb96ef fix(Community Permissions): Update `Who holds` add new item with always AND action
- Logic related to operators removed.
- Dropdown `and/or` removed.
- Updated `PermissionItem` to display only the tag and not the operator.
- Updated `storybook` according to new changes.

Fixes #8500
2023-01-13 10:51:10 +01:00
Alex Jbanca 8cb4420d49 perf(chatScroll): Create message quick context items only when message row is hovered 2023-01-13 11:13:42 +02:00
Dario Gabriel Lipicar 7c4022e4ac feat(@desktop/wallet): implement unified currency formatting
Fixes #8640
2023-01-12 15:21:27 -03:00
Khushboo Mehta 00817aedf9 fix(@desktop/wallet): Remove Animations from StatusQ and solve sanity check failure 2023-01-12 18:24:49 +01:00
Khushboo Mehta 5df7416fd9 feat(@desktop/wallet): Implement loading animation 2023-01-12 14:49:41 +01:00
Lukáš Tinkl 5a69cde2bc chore(StatusNavBarTabButton): delay the context menu creation
until it's actually right clicked
2023-01-11 21:55:52 +01:00
Pascal Precht 7d88adcbe1 fix(Chat): make message date group labels work again 2023-01-11 14:01:06 +01:00
Lukáš Tinkl 821c1f0ba0 hotfix(StatusMessage): restore timestamps
Qt broke the API between Qt 5.14 and Qt 5.15
(https://doc.qt.io/archives/qt-5.14/qml-qtqml-qt.html#formatDateTime-method vs
https://doc.qt.io/qt-5/qml-qtqml-qt.html#formatDateTime-method)

We'll move this function to C++ in a followup PR to preserve the API
compatibility while keeping it fast enough
2023-01-11 13:00:10 +01:00
Noelia ba5e8ed8d5 fix(SQ/StatusListItemTag): Text is not horizontally centered
Removed `Layout.rightMargin` in text component.

Fixes #8876
2023-01-10 17:09:47 +01:00
Lukáš Tinkl 9e396f7344 chore: refactor/improve/optimize StatusMessage & friends
- drop dead code
- reduce number of direct bindings
- use Loaders whenever possible

Fixes #8744
2023-01-10 10:55:53 +01:00
Pascal Precht 1a468a144b fix: remove group labels for 'today' and 'yesterday'
Closes #8377
2023-01-10 10:14:14 +01:00
Lukáš Tinkl 01f2e645bc fix: unbreak StatusAppNavBar margins
partially revert ba811acc27 and silence the
warning
2023-01-06 14:00:37 +01:00
Lukáš Tinkl f6355dc4a6 fix(StatusBaseInput): No padding for input fields
- make the left/right padding and internal spacing consistent with the
Figma design

- the padding itself got broken by a behavior-incompatible change introduced in
17aaec2d53 (diff-451194c72ab50ea2586b6f1d6521b81d9a93206069788117326788be28b638fd);
this change is however correct but we can no longer rely on the
implementation detail that used to "reset" the left/right padding to its
default value when we set  `leftPadding: 0`

Fixes #8910
2023-01-06 00:59:42 +01:00
Jonathan Rainville 67e0df17e1 test(contact): add a test that sends a contact request from the chat
Fixes #6883
2023-01-05 15:21:38 -05:00
Stefan 16af9dfae6 fix(wallet): fix rename account modal states
Considerations:

- Change validation mode for StatusText to have validity from the start
- Don't show a color selection if the selected color doesn't match the
  available color palette
- Don't enable button if nothing changed
- Tests
    - Add test for validation mode that shows how the valid property
    behaves based on findings.
    - Fix text to expect valid on no input for the default control

Fixes: #8211
2023-01-05 22:16:44 +04:00
Jonathan Rainville 235c0d3042 test(community): add a test where the admin can delete a user's message
Fixes #6891
2023-01-04 11:12:47 -05:00
Alexandra Betouni ba811acc27 fix(improvements): remove console warnings pt1
Closes #7959
2023-01-04 17:28:59 +02:00
Sale Djenic 32fcda485c feature(@desktop/keycard): migrate an exsiting account from Keycard to Status Desktop
Fixes: #7030
2023-01-04 14:24:55 +01:00
Sale Djenic e34aac0a0f feat(StatusQ.Components): `StatusStepper` component introduced
Added `StatusStepper` component which displays total number of steps which need to be passed,
marking each completed step based on `completedSteps` property.

Needed for importing a Keycard into the app flow.

Corresponding page in API Documentation added.
2023-01-04 14:24:55 +01:00
Sale Djenic 0e65f2a7ff feature(@desktop/keycard): create a new Keycard account with a new seed phrase
Fixes: #7028
2023-01-04 14:24:55 +01:00
Sale Djenic 9d382b1c81 fix(storybook): profile fetching updated
Profile fetching page, which is part of onboarding flow, is updated so it matches
the latest figma changes now.
2023-01-04 11:15:58 +01:00
Khushboo Mehta 5f55cd2be9 feat(@desktop/wallet): Update the token selector in SendModal
fixes #8713
2023-01-03 09:33:20 +01:00
Khushboo Mehta eb2ec7c1af feat(@desktop/wallet): Update network card and routing lines in SendModal
fixes #8714
2023-01-02 15:36:26 +01:00
Igor Sirotin 38353af413 fix(PinnedMessagesPopup): Force show repeat header 2022-12-29 11:58:40 +03:00
Alex Jbanca 94b911a986 fix(messagesView): Increase spacing between chat messages
Added padding between messages as specified in Figma:
topPadding - 8 if the current message has header, 2 otherwise
bottomPadding - 8 if both current and next message have header, 2 otherwise
2022-12-23 16:46:33 +02:00
Igor Sirotin 784b9acd4f fix(MessageView): Ignore message editing with no actual changes 2022-12-22 15:00:48 +03:00
Michał Cieślak c980b52c3b feat(StatusCheckBox): Add support for small size 2022-12-21 21:48:51 +01:00
Michał Cieślak ce3146ebc8 feat(StatusChatInfoButton): Add possibility to enforce hiding type icon 2022-12-21 21:48:51 +01:00
Michał Cieślak 4c4abdbea2 feat(StatusItemSelector): Add possibility to use letter identicons 2022-12-21 21:48:51 +01:00
Khushboo Mehta 17aaec2d53 feat(@desktop/wallet): Send modal update
fixes #8609
2022-12-21 20:44:56 +01:00
Khushboo Mehta f84404c956 feat(@desktop/wallet): Custom routing
fixes #8237
2022-12-21 19:25:11 +01:00
Noelia 265b0b5a8f fix(CommunityPermissions/NewPermissionsView): Holdings tags icon size/position didn't fit the design
- Updated `StatusItemSelector` API to allow other asset sizes and leftPadding.
- Applied different asset size in holdings tags in `NewPermissionView` to fit the design.
2022-12-21 18:42:16 +01:00
Noelia 579075d6cc fix(StatusQ/StatusListItemTag): Changed API and added test elide property when a specific width is forced
- Changed `StatusListItemTag` API. Now it is based on `Control` component.
- Updated needed qml files to fit with the new `StatusListItemTag` API.
- Added `elide` property in `Text` component to better visualise the content when a specific width is forced.
2022-12-21 18:42:16 +01:00
Noelia ec8c64d7a1 test(tst_userIdentity): Fix test scenarios broken due to new user profile design
- Fixed test scenarios broken due to new user profile design.
- Added new verifications in social links: github, youtube, discord and telegram.
- Scenario statements reorganization.

Fixes #8281
2022-12-20 15:53:50 +01:00
Boris Melnik 7563fe699a fix(sandboxapp): Fix build failed after spellchecking removing 2022-12-19 11:53:46 -05:00
Alex Jbanca 513fa1f71d Fix Emoji for projects that do not use qt resources system to resolve files
qrc mention is removed from emoji regex parsers
2022-12-19 10:11:53 +02:00
Boris Melnik f47e64c7e2 fix(hunspell): Remove hunspell usage in DOtherSide 2022-12-15 20:45:00 +03:00
Boris Melnik f35468963c fix(warnings): Rid off warnings
Fixes: #8293
2022-12-15 19:31:18 +03:00
Boris Melnik a584a31818 fix(warnings): Remove warnings on login screen
Fixes: #8293
2022-12-15 14:17:53 +03:00
Igor Sirotin 50427390dd ens: Fix ens name inconsistency across app 2022-12-14 23:46:50 +03:00
Anthony Laibe 9b0d9cf478 feat(@wallet): Display ens name in account view
fixes #8607
2022-12-14 16:04:58 +01:00
Alexandra Betouni 1c030b398c fix(StatusTextMessage): Handle quote formatting in QML
HTML doesn't know about TextEdit's wrapMode line count so
when text was a quote it was seeing it as single line thus
painting a singleline height quoteline.

Closes #8109
2022-12-13 17:13:16 +02:00
Jonathan Rainville 194e3048bc fix(messages): fix Resend btn not working and add Sending visual state
Fixes #7643

This adds the backend to resend. It then hooks the button to it.
This also adds a visual state for when we are sending. This gives a good indication that a message was sent.
2022-12-12 11:56:21 -05:00
Noelia 1cbb3e2ad3 feat(CommunityPermissions): Created `CommunityPermissionsView` layout
- Created `CommunityPermissionsView` and integrated into the flow.
- Created `PermissionItem` component.
- Added `holdingsListModel`, `permissionsObjectModel` and `channelsListModel` flows with mocked data.
- Added `isPrivate` permission property.
- Added button header in `SettingsPageLayout`
- Added signals/methods for edit/duplicate/remove permissions
- Created new file `OperatorsUtils.qml` specific for `Operators`
2022-12-10 14:02:02 +01:00
Noelia 5aeef81bad feat(statusq/StatusRoundButton): Added `Quaternary` type red
Added `Quaternary` type - red color.
2022-12-10 14:02:02 +01:00
Igor Sirotin 4da18c8de7 fix(EnsListView): Fixed preferred name message preview 2022-12-07 15:59:40 +03:00
Lukáš Tinkl e13726e4af feat(SocialLinkPreview): links are too short to display even short urls
- rework the way social links are displayed/editted; we now only allow to
enter a so called "handle" and then substitute that in the final URL
template
- move the "icon" model role to NIM backend

This has several advantages:
- we display only the "handle" and don't have to elide some long URL
- we won't let users enter random URLs into their profile and spoof the
viewing part into clicking it

Additionally, make the social link "button" clickable -> navigate to the
target URL, and make the tooltip behave as "usual" (on mouse hover).
2022-12-07 12:40:58 +01:00
Khushboo Mehta 26fcb8b99f fix(@desktop/wallet): Implement missing unprefered chains
fixes #8530
2022-12-05 12:18:10 +01:00
Tanguy 366a006c4c Change 😄 alias 2022-12-03 11:10:58 +01:00
Igor Sirotin e3bfdc0f09 fix(StatusPopupMenu): Refactoring 2022-12-02 10:30:50 +03:00
Khushboo Mehta 13ab93297e fix(@desktop/wallet): Fix routing lines in SendModal Advanced view
fixes #8515
2022-12-01 21:20:15 +01:00
Khushboo Mehta 9ded9d4ffa feat(@deaktop/wallet): Add bridge view
fixes #8236
2022-12-01 17:15:55 +01:00
Lukáš Tinkl 9559789030 chore: reduce the number of (verification) RPC calls
- when calling `Utils.getColorHashAsJson()` we don't actually need to
issue ID verification requests at all and there might be situations when
we know beforehand that we don't need the ENS verification either
- change these helper functions' syntax and do early returns in that case
- in MessageContextMenuView, the "contact details" were duplicated, so
remove one
- remove dead code, fix some warnings
2022-12-01 16:50:23 +01:00
Michał Cieślak b64dcaa14f fix(general): removed not working code for cropping tmp profile image
It was a source of warnings in the app and storybook.

Closes: #8519
2022-12-01 15:13:46 +01:00
Lukáš Tinkl 5c9cc84b3c fix: figma links pasted in channel are not clickable
- recognize parentheses, `(` and `)` respectively, as part of a URL when
linkifying the hyperlink; these are valid URL characters
- also correct the "status-im" deep link prefix to the new form

Fixes: #8512
2022-11-30 15:44:05 +01:00
Lukáš Tinkl 3d4cb12d0c fix: some notification UI fixes
This aims at bringing the notifcation display closer to what regular
messages look like, namely:

- show compressed chat keys
- don't show identicon rings for ENS names
- fix timestamps and their tooltips (`notification` isn't part of StatusMessage!)
- unbreak clicking outside of the whole popup overlay (`activityCenter`
is undefined)
- fix blurry checkmark icon for marking notification as read
2022-11-30 11:05:58 +01:00
Patryk Osmaczko 316372b469 chore: remove StatusAppNavBarFilterModel 2022-11-29 16:06:33 +01:00
Patryk Osmaczko 5d305a5221 refactor(StatusAppNavBar): simplify navbar
- removed imperative filtering
- removed imperative size calculation
- removed all ugly hacks

fixes: #7167
fixes: #8463
2022-11-29 16:06:33 +01:00
MishkaRogachev 726ae26128 hotfix(ActivityCenter): Fix AC timestamps and binding loop for previousMessageIndex
Close #8434
2022-11-29 16:49:36 +04:00
Lukáš Tinkl c1fd4cc680 fix(StatusEmojiSuggestionPopup): emoji is blurry in the suggestions popup
use an SVG icon instead of a potentially lowres PNG

Fixes #8409
2022-11-24 14:35:54 +01:00
Lukáš Tinkl 2bf2861631 fix: reactions distance to message content is inconsistent
- harmonize the margins/spacings in other message components
- fix warnings
- cleanup/remove some dead code

Fixes #8295
2022-11-23 17:42:11 +01:00
Pascal Precht 6acd816381 fix(Onboarding): ignore seed phrase capitalization
As requested in #8336

Closes #8336
2022-11-23 09:58:44 +01:00
Lukáš Tinkl 8e4d9be779 fix: disable quick actions when editting a message
also move the top/bottom margins one level up so that the message editor
gets the same margins as well

Fixes: #8185
2022-11-21 20:55:08 +01:00
MishkaRogachev e233771e6c feat(ActivityCenter): Remove MessageView from the Activity Center
Close #8285
2022-11-21 16:08:12 +04:00
Patryk Osmaczko bd7f890cce feat(storybook): add MembersSelector to storybook
closes: #8178
fixes: #8210
2022-11-18 13:13:38 +01:00
Pascal Precht dbf7fa4aab tests(suite_messaging): properly check if reply message has reply
Prior to this commit we were merely checking if the message in question
was the last one.

With this commit we now check whether there's a reply in the first place
and whether the reply-to-message is the correct one.

We also distinguish whether the message we're replying to is the one
from the loggedin user (and not someone else's)
2022-11-17 19:44:44 +01:00
Lukáš Tinkl 57ee378048 fix(StatusMessage): add spacing between individual subcomponents
Fixes #8267
2022-11-16 13:29:29 +01:00
Stefan d0389a6305 feat(Wallet) show balance cache for chain native token
Quick integration of fetching balance in the current chart view.

The proper implementation requires refactoring the QML views to separate
price chart, that depends only on the token and chain, from balance that
depends on token, chain and address.

Closes: #7662
2022-11-16 13:07:46 +01:00
Alexandra Betouni f34d0d7152 fix(StatusTextMessage): Removed vertical text alignment leftover
Closes #8242
2022-11-15 17:25:28 +02:00
Lukáš Tinkl 48f5a9d256 fix(NicknamePopup): add support for Unicode nicknames
- do not restrict NicknamePopup's regexp to ASCII characters
- a similar thing could be done to the user's DisplayName but currently
  that's blocked on status-go side
- uses RXValidator from dotherside

Needs status-im/dotherside/pull/74
Fixes #8115
2022-11-15 11:42:33 +01:00
Alexandra Betouni 7c88f462ec fix(StatusMessage): Updated component to QQC2 Control and as per desing
Fixes #7318
2022-11-14 18:13:40 +02:00
Boris Melnik 13acb5730d fix(profile-settings): Add usage dirty values for preview and load image profile on save
Closes: #7920 #7917
2022-11-14 14:59:46 +03:00
MishkaRogachev 7e7daa56e1 fix(ActivityCenter): Change activity center button tooltip text 2022-11-14 10:23:13 +01:00
Stefan e8b9760c4f fix(StatusQ) scrolling on macOS if mouse pointer is over StatusBaseInput
This commit fixes a scrolling on macOS using trackpad in the context
of Add Wallet Account using seed-phrase.

Considerations:
The scrolling of advanced input with seed-phrase selected was failing
when mouse pointer was moving over a word phrase.

Scrolling of the popup content in AddAccountModal would not work
when the mouse pointer was over a StatusSeedPhraseInput form
the ImportSeedPhrasePanel

The identified root cause is StatusBaseInput's flicker which captures
the mouse wheel event. It seems the trackpad wheel events are handled
differently on macOS by the flicker and not propagated to the parent.

Fixes #5355
2022-11-12 14:17:11 +01:00
Igor Sirotin a69b3b5928 fix(StatusMessageReply): Fixed reply text styling and behavior 2022-11-11 13:31:06 +01:00
Noelia e9f84b2973 test(suite_wallet): Created `bdd_hook` for each `suite_wallet` test case
- Created `bdd_hooks` that contain the sing up steps just only once in the feature start and the needed start steps depending on the test case.

- Updated feature files removing sign up steps and given/when/then reorganization.

Closes #8026
2022-11-10 15:43:02 +01:00
Mykhailo Prakhov eda2fcabc0 Update Utils.qml 2022-11-10 15:32:15 +02:00