Fixes#9949
Only calls `setTenorAPIKey` once we need it (when doing a search or getting trending).
Also caches the trending gifs so that they are only fetched once.
Makes the search and trending calls async by create an async tenor query async task.
Users that request access to community that are token permissioned
need to authenticate and enter their password, so they can reveal
their wallet addresses
This is necessary because with community token permissions, when owners
manually accept a request, we a) don't want to block the UI when the
users funds are check on chain and b) in case of insufficient funds,
we'll react with a modal that tells the owner that the user can't be
accepted.
All of that is done in this commit.
Closing #9967
When Holdings dropdown is open, activate focus to searcher in assets and collectibles. Changes focus to ENS input in case ENS tab is active.
In Holdings dropdown, when ENS tab is active and Add button is enabled, pressing enter key should behave same than clicking on the button itself.
In Holdings dropdown, when one asset or collectible has been selected, activate focus in the amount input, then when Add button is enabled, pressing enter key should behave same than clicking on the button itself.
Created new `StatusEmojiAndColorComboBox` component that behaves like a combobox but with specific content item and delegate look (emoji + color + text).
Fixes#9859
getMessageById was called way too often, because each time a contact was updated, we called it on every message that contained a mention. Now we only call it on messages that contain a mention from that specific user.
Also, we called emojiReactionsByChatIDMessageID as part of that service call, but only the pinned message used it, so I removed it from the service function. This means that the pinned messages will no longer have the emoji reactions. I could add them back if we really want, but IMO, it's not really necessary. You can just click on the message and see it in the chat instead.
I removed the call to `getMessageById` in the activity center as well, since we can get the replied message info from the MessageDto directly now.
I also removed some dead code in the messages module.
Also add handlers to JoinCommunityView for requesting and cancelling
requests. These will be extended in follow up commits to included
authentication modals