Commit Graph

5280 Commits

Author SHA1 Message Date
Lukáš Tinkl e1c9f2f93f perf(AppMain): wrap CommunitiesPortalLayout in a Loader
- CommunitiesPortalLayout was the last piece still unconditionally loaded
on startup -> fixed
- extract the `communitiesStore` into AppMain to be able to reuse it from
other components
- move the import/create community dialogs to `Popups` (reusability)
- cleanup and remove some dead code, fix warnings

Iterates #6204
2023-04-28 21:35:29 +02:00
Alexandra Betouni 5615a534ea (settings): removed community permissions,tokens,airdrop and discord options
Also:
test(suite_communities): Fixed community related tests

- A new intermediate popup is now displayed when user clicks on `Create New Community` button from `Community Portal`.
- Reformulated `tst_communityPermissions` since now it is a default option without the need of activating it from experimental feature's section.

Closes #10115
2023-04-28 16:52:41 +03:00
Lukáš Tinkl 28374eb836 fix(ChatColumnView): unbreak 1-1 chats
the StatusChatInput (among other things) was disabled due to wrong
`activeChatType` being passed down to `ChatContentView` which does all
sorts of checks whether we are allowed to chat with that contact

The `root.activeChatType` no longer reflects the chat that we are going
to activate (probably due to the extensive use of `Loader`s)

(plus remove some dead code)

Fixes: #10463
2023-04-27 20:44:41 +02:00
Lukáš Tinkl c548a96a2a fix(Settings/LanguageView): do not change language on the fly
disable retranslation, display a confirmation dialog and apply the
language change after app restart

rationale: the way the retranslation works internally is that it force
reevaluation of _all_ QML bindings which:
- might lead to crashes (immediately or later)
- lots of warnings printed to console, some bindings can get broken as a result
- not all UI is correctly retranslated on the fly (we have lots of places
where we assign the text imperatively via JS code), so these wouldn't
appear translated before app restart anyway

Fixes #7823
2023-04-27 16:12:33 +02:00
Noelia 8ccd091ebc feat(CommunityPortal/StatusCommunityCard): Prepared `StatusCommunityCard` to display permissions row
- `StatusCommunityCard` updated with a new hearder component.
- `CommunitiesGridView` updated to use `CommunityPermissionsRow` component inside card.
- Added needed models.
- Updated storybook.

Pending backend integration: Part of task #10410
2023-04-27 16:10:20 +02:00
Noelia 3400f5e276 feat(CommunityPermissionsRow): Created new component
Permissions tags row created.

Closes #8018
2023-04-27 16:10:20 +02:00
Noelia 8ca70ea018 feat(Community Permissions): Update ENS icon in permission pills
Closes #10341
2023-04-27 16:10:20 +02:00
Noelia 87fa7cfe5a feat(SQ/StatusRoundedImage): Added border
If border is specified, the image has the same margin as the border, so the component embeds a border around the image.
2023-04-27 16:10:20 +02:00
Igor Sirotin 6fe82ef133
fix: Fix and rework "start chat" text field input (#10450) 2023-04-27 17:03:49 +03:00
Lukáš Tinkl 9aebf588a1 fix: reduce Image cache
for everything that's not a user interface element, esp. for static/big
images or chat/message elements which get served from locally anyway from
status-go

Iterates #10339
2023-04-27 13:56:39 +02:00
Anthony Laibe 542e5fdb6c feat(@wallet): remove usage of wallet section current 2023-04-27 11:58:27 +02:00
Cuteivist 75d17b4a07
Fix/wallet small fixes (#10427)
* fix(wallet): back button #10374

* fix(wallet): Bottom bar missing #10394

* fix(Wallet): Remove WalletFooter flickering

* fix(@desktop/wallet): Added footer for section layout
2023-04-26 19:31:34 +02:00
Alexandra Betouni b00ebeb615 [onboarding]: forbid display name whitespaces on beggining and end
Closes #10120
2023-04-26 15:24:08 +03:00
Boris Melnik 22ee49c551 feat(edit-message): Edit image messages
Fixes: #10072
2023-04-26 14:47:03 +03:00
Khushboo Mehta 663fac9fa7 fix(@desktop/wallet): When a path is shown on goreli and I disable it , it still shows the path to Goreli on simple view
fixes #10393
2023-04-26 08:51:54 +02:00
Lukáš Tinkl 7d6a2bae5f fix: community logo/banner edit icon fixes
- move the add/edit FAB icon to the topright corner as designed
- prepare UI changes for being able to delete banner/logo (missing impl
in status-go)

Fixes: #9680
2023-04-25 21:42:03 +02:00
Igor Sirotin 70e8370aae
fix(Makefile): Bugfixes and minor improvements (#10423) 2023-04-25 18:01:19 +03:00
Anthony Laibe e6f88758dc feat(@wallet): wallet accounts module dedup
Second part of having profile section accounts
2023-04-25 14:56:20 +02:00
MishkaRogachev 2160b53e33 fix(ActivityCenter): Use ContactRequestId for accpeting and declining CRs from AC
Close #10127
2023-04-25 16:16:32 +04:00
MishkaRogachev 0ae1881564 fix(ActivityCenter): Fix contact request notifications
Close #9788
2023-04-25 16:16:32 +04:00
Lukáš Tinkl 0009ebd68f fix: device sync timestamp is wrong
- prevent QML `int` overflow
- use `LocaleUtils.formatRelativeTimestamp()` to perform the timestamp
formatting

Fixes #10412
2023-04-25 13:24:17 +02:00
Lukáš Tinkl e170af5115 chore: use the "next" icon consistently
instead of variations of "chevron-*" and rotation
2023-04-25 13:24:17 +02:00
Khushboo Mehta c94997ddec feat(@desktop/wallet): Wallet -> Send: polish Send/Bridge Modals
fixes #10344, #10321, #10320
2023-04-24 22:07:22 +02:00
Jonathan Rainville db6af0554a fix(chat-model): use setData to set the chat model
Fixes #10384

The problem was that doing the sort inside the insertRows messed up the model.
I removed it and it fixed the issues. However, it created an other issue with ordering.

The problem this time is that when populating the model at the start, we do not get the chats in order, so calculating the right position to insert a chat is difficult.

Instead, I use a setData function to just put all the chats in the items list, sort it and call it done, using the resetModel function.

I also did some clean ups.
2023-04-24 11:06:17 -04:00
Jonathan Rainville 435b08501b refactor(ChatContentView): only get contact details when 1-1 chat 2023-04-24 09:31:00 -04:00
Vladimir Druzhinin 7757c3b47d
test(suite_settings/tst_userIdentity): Fix test on display name, bio and social links (#10226)
- scroll profile settings view added 
- method to add links fixed
- SettingProfile class moved from Settings class
2023-04-24 11:39:07 +02:00
Anthony Laibe c8d0cb36e6 feat(@wallet): sort saved addresses
fixes #9772
2023-04-22 11:06:59 +02:00
Alexandra Betouni 12520214d2 fix(StatusCommunityMenu): Added mute button
Closes #9694
2023-04-21 20:10:00 +03:00
Lukáš Tinkl 1fa8dffe3a fix(StatusChatListItem): fix mute icon overlapping badges 2023-04-21 17:36:52 +02:00
Michał Cieślak 9fe3456e8f feat(Community/Airdrop): MembersDropdown
Closes: #9800
2023-04-21 11:53:11 +02:00
Patryk Osmaczko c867e8f98c fix(chat): wrap `contextMenu` and `chatInput` into Loader
Please note that this solution serves as a temporary workaround and
comes with variety of limitations, particulary concerning the chat
input state. For instance, the reply area is not retained when switching
between chats.
Ideally the root cause, which is the high memory consumption of both
`StatusChatInput` and `MessageContextMenuView`, should be fixed. Once
this issue is addressed, the current workaround can be reverted.

fixes: #10378
2023-04-21 11:38:36 +02:00
Michał Cieślak 1ce17ca3d4 feat(TokenPanel): Add support for amounts and network selection
Closes: #9797
2023-04-21 10:26:00 +02:00
Michał Cieślak ada4fdd407 feat(TokenItem): add possibility to display amount, storybook page added 2023-04-21 10:26:00 +02:00
Michał Cieślak b5ba4d1bf4 feat(Airdrops): InlineNetworksComboBox component added 2023-04-21 10:26:00 +02:00
Michał Cieślak fb60d019b6 chore(StatusItemDelegate): api extended, internals improved
Id removed from StatusBaseText used in default contentItem, what was
causing that default contentItem was instantiated even when overridden
by user. Radius and cursorShape properties exposed.
2023-04-21 10:26:00 +02:00
Michał Cieślak c97fe80420 chore(Storybook): page for NetworkFilter added 2023-04-21 10:26:00 +02:00
Michał Cieślak 70a6327ad4 chore(TokenItem): component api simplified 2023-04-21 10:26:00 +02:00
Lukáš Tinkl 038ab08765 fix: do not display ENS name when not ENS verified
- expose "isEnsVerified" as model role
- fix returning "ensName" when the user is not ensVerified
- react to nickname updates correctly
- fix sorting in the user/member list view
2023-04-21 00:24:32 +02:00
Lukáš Tinkl c209e7c282 fix(ActivityNotificationMessage): use ProfileUtils.displayName()
to compose the primary/secondary user names, just like we do in the
message views, or the Profile dialog
2023-04-21 00:24:32 +02:00
Lukáš Tinkl 297b73fced fix: react to contact name (nickname) changes
the contact details are fetched imperatively in these popups (not via
model updates), so we need to setup a signal to be able to react to those
changes
2023-04-21 00:24:32 +02:00
Stefan 691de11211 fix(Wallet) network selection and unify network implementations
Major changes:

- Don't allow empty network selection. End up using the nim model
  directly instead because of individual row changes issues
  encountered with nim models
- Made the clone model a generic implementation to be used in other
places where we need to clone a model: ReceiveModal,
AddEditSavedAddressPopup
- Use cloned model as alternative to NetworksExtraStoreProxy in
  ReceiveModal
- Added tristate support to our generic checkbox control
- UX improvements as per design
- Fix save address tests naming and zero address issue
- Various fixes

Notes:
- Failed to make NetworkSelectPopup follow ground-truth: show partially
  checked as user intention until the network is selected in the
  source model. Got stuck on nim models not being stable models and
  report wrong entry change when reset. Tried sorting and only updating
  changes without reset but it didn't work.
- Moved grouped property SingleSelectionInfo to its own file from
  an inline component after finding out that it fails to load on Linux
  with error "Cannot assign to property of unknown type: "*".".
  It works on MacOS as expected

Closes: #10119
2023-04-20 19:34:24 +02:00
Noelia 73b2ec2903 feat(Mint/Airdrop Collectible): Implement Airdrop footer option
It enables navigation from mint token page to airdrop page selecting a specific collectible to be airdropped.

It is now used `symbol` property as the identifier for a collectible but will be needed to update it to `key` once this key property is build in backend by hash(chainId + contractAddress).

Closes #10047
2023-04-20 11:57:29 +02:00
Anthony Laibe 4e5f7763db feat:(@wallet): create wallet section in profile
Separate wallet module from profile wallet module
1 - they caused us many conflict regarding current
2 - better decoupling
2023-04-20 09:40:54 +02:00
Jonathan Rainville 2aa759adcf refactor(section-model): change model to be sorted to fix reorder
Part of #3364

To make the drag and drop reorder work correctly on channels, we needed to change the model again so that it was sorted in the model itself.
That is because the drag and drop gives us the value of the position it is dropped to as a single list, so dragging the second item of the second category would mean from position 5 to position to position 4, but what the backend wants is moving the item 2 to position 1.
Sorting the model enables us to get the category that is the parent of that position and call the service with the right positions and id.
It also enables us to reorder the channel in and out of the category.
See the module code to see how the calculation is done with an explanatory comment.
The model needed some changes to support that. Some of the function where changed from dataChange calls to resetModel calls, since we need to re-sort the model.
I tried using beginMove, but it would crash. Maybe there is a bug in NimQML or I used it badly, I'm not sure.
2023-04-19 12:26:15 -04:00
Alexandra Betouni f507e33cba feat(StatusChatList): adding drag n drop functionality
Closes #3364
2023-04-19 12:26:15 -04:00
Lukáš Tinkl 812c0e9705 fix: suggestions list displayed when mentioning, still searches by alias
explicitely leave out searching by the `alias` (3-word name); it's
already enabled as a fallback to `name`

Fixes #9738
2023-04-19 15:28:21 +02:00
Patryk Osmaczko 7f3a66b68d fix(chat): correct `isAdded` behavior
`isAdded` for specific chat was always reflecting the active chat
property, effectively causing the chat inputs of these chats to be
disabled and, as a consequence, making the input vanish.

fixes: https://github.com/status-im/status-desktop/pull/10343#issuecomment-1512825761
2023-04-19 11:13:01 +02:00
Patryk Osmaczko 36063f33f1 fix(chat): use proper section details data
It prevents `StatusChatInput::enabled` property to be changed when
switching sections, as a consequence the text is persisted.

fixes: #10286
2023-04-19 11:13:01 +02:00
Patryk Osmaczko 869c3937df fix(chat): prevent reloading chat&community sections
Lazily load chat and community sections but do not unload them,
otherwise all temporary data such as scroll position, text input,
cursor position, etc., would vanish

iterates: #10286
2023-04-19 11:13:01 +02:00
Patryk Osmaczko ec7bd963e9 fix(chat): use loader for `ChatMessagesView` instead `ChatContentView`
fixes: #10285
2023-04-19 11:13:01 +02:00