* Change native back button behavior in EC view:
- inject escape into webview instead of going back.
- the webview will call back when no other modal is open.
* call down and up in the webview + make sure that we fall back to close
pip in case the webview did not handle the esc action.
* Tests and refactor to CallScreenBackPressPolicy
---------
Co-authored-by: Jorge Martín <jorgem@element.io>
* Update dependency io.element.android:element-call-embedded to v0.19.3
* Remove `Scaffold` component from CallScreenView
* Add immersive mode to calls in landscape orientation
* Add `consumeWindowInsets`, which fixes the webview not displaying any insets for the bottom nav bar
* Update screenshots
* Ignore compact height in PiP mode
---------
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: ElementBot <android@element.io>
* Set `DmRoomDefinition.TwoPeople` in `ClientBuilder`. This applies the 'direct and with at most 2 non-service members' rule to what the SDK should consider a DM.
* Map `RoomInfo.isDm` from the SDK
* Map `NotificationData.isDm` from `NotificationInfo.roomInfo.isDm`
* Remove `RoomIsDmCheck` file as its extension functions are now redundant. Move `Room.isDm` helper function to `BaseRoom`.
* Map `isDm` in `SpaceRoom` from the SDK too
* Replace `isDirect` with `isDm` where possible
* Map `RoomMember.isServiceMember` from the SDK and use it to tell apart normal members of a room from service members (i.e. `RoomMembersState.getDirectRoomMember`)
* First live location sharing sending implementation
* Simplify logic around canStop sharing
* Add some debug logs around LiveLocationSharingService
* Add LiveLocationException
* Expose beaconId to identify the current share
* Throttle live location instead of debouncing
* Keep sync alive when sharing live location
* Improve LiveLocation sharing
* Show LiveLocationDisclaimer
* Read minDistanceUpdate in LiveLocationSharingService
* Set minDistanceUpdate in AdvancedSettings
* Display banner in room when sharing live location
* Fix tests around LiveLocationSharing
* Ensure shares are properly restarted/stopped when app is re-launched
* Ensure LLS data is cleared when session is removed
* Update and fix LLS tests
* Handle Start LLS in ui
* Add check LLS permissions
* Remove hardcoded strings
* Fix quality and format
* Create DeviceLocationProvider so we can share location data between sources (presenter/live location service)
* Update screenshots
* Fix warning
* Do not try to stop if it was not sharing
* Revert "Create DeviceLocationProvider so we can share location data between sources (presenter/live location service)"
This reverts commit ba12bd968e82941cc231bdbb449310b24c97c5b8.
* Tweak location provider config values
* Address PR review remarks
* Fix ktlint
* Update screenshots
* Fix some tests after merging develop
* Adjust TimelineItemLocationView ui to match figma
* Update screenshots
* Documentation and cleanup
* Remove temporary resource
---------
Co-authored-by: ElementBot <android@element.io>
Co-authored-by: Benoit Marty <benoit@matrix.org>
Co-authored-by: Benoit Marty <benoitm@matrix.org>
* Use just the other user's avatar for DM details. Remove `DmAvatars` component and other no longer needed data.
* Improve selection indicator by clipping the avatar to a circle shape
* Update screenshots
---------
Co-authored-by: ElementBot <android@element.io>
* Make send event state UI easier to click
Make it so the whole timestamp view can be clicked
* Update screenshots
* Simplify `clickableModifier`
---------
Co-authored-by: ElementBot <android@element.io>
* Use 'Report a problem' instead of 'Report bug'. This old string will be deleted soon.
* Update screenshots
---------
Co-authored-by: ElementBot <android@element.io>