* Report shortcut usage for outgoing messages
This patch adds support for creating and pushing dynamic
long-lived shortcuts for outgoing messages. This together
with an existing reference to the roomId used by the
shortcuts as an identifer allows conversations to be
prioritized.
See https://developer.android.com/training/sharing/direct-share-targets#report-usage-outgoing
* Simplify how to get the other user in a DM room
* Add initial avatar icons to shortcuts
* Remove room shortcuts when they're no longer joined
* Try using API 33 for the new tests. They worked locally with API 30, so it's weird the CI asks for a higher API version.
* Add observers for the pin code and session logout states. With this we can prevent new shortcuts from being created and remove existing ones when needed.
* Wrap all calls to `ShortcutManagerCompat` with `runCatchingExceptions` to avoid crashes
* Make `DefaultNotificationConversationService` a singleton.
---------
Co-authored-by: networkException <git@nwex.de>
Co-authored-by: ElementBot <android@element.io>
* Move `ChangeRoles*` classes to their own module so they can be shared
* Hook the change roles screen to the leave room action, add confirmation dialogs
* Use enum instead of sealed interface for `ChangeRoomMemberRolesListType`
* Try to improve communications between nodes
* refactor (leave room) : makes sure to expose only necessary code from api module
* Add `:libraries:previewutils` module to share some test fixtures used for UI previews
* Update screenshots
---------
Co-authored-by: ElementBot <android@element.io>
Co-authored-by: ganfra <francoisg@matrix.org>
2 replace all actions have been performed:
- "SPDX-License-Identifier: AGPL-3.0-only" to "SPDX-License-Identifier: AGPL-3.0-only OR LicenseRef-Element-Commercial"
- "Please see LICENSE in the repository root for full details." to "Please see LICENSE files in the repository root for full details."
- Adds `ModalBottomSheet` to our design components (it wraps the homonimous Material3 one).
- Adds a bottom sheet to the Room list using the aforementioned design component.
- Adds navigation from the room list to a room detail (context menu "Settings" action).
- Consolidates the "leave room flow" into a new `leaveroom` module used by both the room list and the room details.
- Adds progress indicator to the leave room flow
- Uses new `leaveroom` module in `roomdetails` module too.
Parent issue:
- https://github.com/vector-im/element-x-android/issues/261