567 Commits

Author SHA1 Message Date
Doug
4af881a20f
Update the SDK, minor version, handle API breaks (#1994) 2023-10-31 14:56:23 +00:00
Alfonso Grillo
b50b74b175
Ignore keyboard input in "voice message mode" (#1988)
* Update rte to 2.15.0

* Ignore keyboard input when in voice message mode
2023-10-31 11:47:10 +00:00
Doug
87f772647b
Update Compound with new Pill colours. (#1989) 2023-10-31 10:47:06 +00:00
Stefan Ceriu
a837ce5cff
Key backup Rust API adoption (#1952)
* Adopt Rust side secure backup APIs (incomplete, based on poljar/backup-pr)

* Implement the home screen recovery key confirmation banner.

* Update with the latest Rust changes.

The loading button for .unknown was incorrect. It should be treated as disabled.

---------

Co-authored-by: Doug <douglase@element.io>
2023-10-27 20:16:51 +01:00
Stefan Ceriu
4077f5f4bb
Session verification fixes and bump SDK to v0.0.1-october23 (#1954)
* Fixes vector-im/element-x-ios/issues/1868 Incorrect `is_verified` flag after successfully running verification flow
- the inner user_identity isn't automatically updated when the flow finishes, needs to be fetched again from encryption
- also replaces `UserIdentity.is_verified` with `Device.is_cross_signed_by_owner`
- depends on matrix-org/matrix-rust-sdk/pull/2775

---------

Co-authored-by: Doug <douglase@element.io>
2023-10-27 19:39:21 +01:00
Alfonso Grillo
adfe855b99
Refactor voice messages touch interaction (#1970)
* Remove enable/disable long press actions

* Working poc

* Refactor interaction in VoiceMessageRoomPlaybackView

* Cleanup DateFormatter

* Fix VoiceMessagePreviewComposer

* Cleanup

* Delete WaveformViewDragState

* Refactor WaveformCursorView

* Cleanup

* Add WaveformInteractionModifier

* Add selection hapitc feedback

* Fix ComposerToolbar ZStack alignment

* Refine cursor size

* Remove haptic feedback

* Fix preview test

* Delete longPressDisabledItemID

* Remove progress animation

* Project file
2023-10-27 10:08:30 +00:00
Doug
11563c6297
Add support for Face ID/Touch ID to app lock. (#1966)
* Fix biometrics with low grace period and backgrounding before unlocked.

* Trigger permissions alert when enabling Face ID.
2023-10-27 09:09:12 +00:00
Alfonso Grillo
a1bbc7ecce
Voice messages UI polish (#1959)
* Add VoiceMessageButton

* Add VoiceMessageRecordBadge

* Make composer transition faster

* Use VoiceMessageButton

* Adjust recording badge

* Update localisation key

* Remove animation in VoiceMessageButton

* Fix preview tests

* Cleanup

* Update preview tests
2023-10-26 09:05:42 +00:00
Mauro
d457736673
Check Application state before sending RR (#1960)
* check the state

* better handling

* protocol to mock the application state

* test improvement
2023-10-25 19:16:37 +02:00
Mauro
c04e812a02
Replies now display mentions with @displayname (#1957)
* reply with mentions

* fixed a bug and wrote a test for it

* error message
2023-10-25 18:39:18 +02:00
Doug
c6e4dc2a37
Initial implementation for AppLockSetupFlowCoordinator. (#1949)
Rename AppLockSettingsScreen to AppLockSetupSettingsScreen.
Implement forced logout and persist PIN entry attempts.
2023-10-25 11:03:37 +00:00
Nicolas Mauri
30b18031a0
Add a progress indicator to voice message preview (#1956) 2023-10-25 10:27:00 +00:00
Stefan Ceriu
37f1a79a11
Key backup returns (#1951)
* Converge on UserSessionFlowCoordinator logout confirmation

* Add logout confirmation screen strings to untranslated.

* Fix chat backup learn more URl fragment.

* Implement logout flows that check recovery and key backup for the last session

* Move logout confirmation screen strings to localazy

* Change encrypted timeline item copy to "Waiting for decryption key"

* Use different encrypted history banner based on key backup states

* Introduce a SettingsFlowCoordinator and implement navigation directly to the secure backup screen from the logout flows.

* Fix **mocked** secure backup controller flows

* Simplify encrypted history banner logic

* Address PR comments
2023-10-24 18:38:41 +03:00
Stefan Ceriu
c885585b6b Bump the RustSDK to v1.1.26, adopt the new room hasActiveRoomCall state property 2023-10-24 16:23:14 +03:00
Nicolas Mauri
2f57fbc77d
Allow to record a voice message (#1926) 2023-10-23 15:47:36 +00:00
Doug
65b7c1df20
Add AppLockSetupBiometricsScreen. (#1942) 2023-10-23 16:18:25 +01:00
Mauro
db79784b8e
new pill view color and size (#1933) 2023-10-23 16:55:04 +02:00
Alfonso Grillo
6d577eae11
Update DSWaveformImage (#1935) 2023-10-23 12:25:30 +00:00
Doug
5356a56a00
Add AppLockSetupPINScreen. (#1930) 2023-10-23 09:07:13 +00:00
Doug
ceee6b1853
Implement AppLockScreen as per the designs. (#1925)
Fix a bug in the unlock flow
2023-10-20 17:35:57 +01:00
Stefan Ceriu
d292fe890d Bump the RustSDK to v1.1.25 2023-10-20 16:59:27 +03:00
Mauro
1d1f76ff43
Send Intentional Mentions (#1929)
* updated sdks

* fix waveform

* implementation completed

* intentional mentions test

* removed unused var

* suggestion
2023-10-20 16:51:25 +03:00
Alfonso Grillo
7dfc17f4b6 Fix DSWaveformImage version 2023-10-20 13:44:13 +03:00
Stefan Ceriu
c8b9d95122
#1899, #1900, #1901 - Implement chat backup setting screens 2023-10-19 15:34:10 +03:00
Doug
ebd9f4c916
Add App Lock settings screen (#1917) 2023-10-19 12:26:34 +01:00
Doug
99c28784a9
Initial service implementation for using a PIN code. (#1912)
* Initial service implementation for using a PIN code.

* Tweak Danger for commit size

600-800 lines is perfectly normal for our PRs, up it to 1000.
2023-10-19 10:42:12 +01:00
Alfonso Grillo
fbcf037240
Voice message waveform from audio files (#1919)
* Add DSWaveformImage

* Add estimated waveform

* Add progress mask modifier

* Add real waveform

* Fix cursor

* Fix scale factor

* Refine ProgressMaskModifier

* Refine waveform logic

* Add docs

* Add waveform placeholder
2023-10-19 11:01:45 +02:00
Stefan Ceriu
6e8dff2ef6
Implement support for ElementCall through Rust side widgets (#1906)
* Implement support for ElementCall through Rust side widgets

* Add Element Call feature flag

* Fix the unit tests

* Address PR comments
2023-10-17 12:41:56 +03:00
Nicolas Mauri
9ab3b20a49
Add UI to record a voice message from the composer toolbar (#1892) 2023-10-16 15:18:51 +00:00
Doug
e42977a7b0 Remove smudging workarounds. 2023-10-16 12:55:05 +01:00
Doug
d2653e95ea Update Compound. 2023-10-16 12:55:05 +01:00
Stefan Ceriu
7f09c02298 Check network reachability before attempting to restart the sync service 2023-10-13 17:42:15 +03:00
Alfonso Grillo
f97a7c8cce
Update Matrix SDK to 1.1.23 (#1890) 2023-10-13 12:31:22 +00:00
Nicolas Mauri
2f0b5a42f5
Prevent multiple conversion of the same voice message audio file. (#1887) 2023-10-13 09:48:11 +00:00
Mauro
ad0b2f114f
@room in user suggestions (#1880)
* for now I am using a local RTE solution, need to fix one test

* fixed a test

* new rte version

* pr suggestions

* @room added to the suggestions

* removed empty space

* revert

* code improvement

* project updated

* package
2023-10-12 16:15:47 +00:00
Doug
2c5662a278
Remove DesignKit package (#1886)
- Move button styles to Compound
- Rename text style to AuthenticationTextStyle as its only in the auth flow.
- Add the brand colour locally for now until its included in Compound.

* Update snapshots.

---------

Co-authored-by: Stefan Ceriu <stefan.ceriu@gmail.com>
2023-10-12 15:45:27 +01:00
Element CI
3838ca1064 Prepare next release 2023-10-12 07:13:43 -07:00
Stefan Ceriu
b5e334f4a9 Bump the RustSDK to v1.1.22 2023-10-12 11:26:28 +03:00
Mauro
c358150449
Render pills in RTE (#1874)
* for now this can only work locally

* works

* added a test

* updated RTE

* revert package

* pr suggestion

* reverting package versions

* better naming
2023-10-11 16:40:52 +02:00
Stefan Ceriu
ff4d59bac7
Various optimisations (#1878)
* Cache TimelineBubbleLayout subview sizes

* Cache MessageText sizes, avoid extra updates

* Only use the `CollapsibleReactionLayout` if there's more than 5 reactions on a particular message

* Upgrade Sentry to 8.13.0, disable various options as they're not useful and impact performance

* Address PR comments, fix unit tests
2023-10-11 16:21:45 +03:00
Doug
b6470c9651
Initial setup ready for PIN/Biometric app lock. (#1876)
* Add AppLockCoordinator and WindowManager.
2023-10-11 12:59:47 +00:00
Element CI
fc3bc00d92 Prepare next release 2023-10-10 02:31:55 -07:00
Nicolas Mauri
cb9d35948e
Add unit tests for voice messages (#1869) 2023-10-10 08:03:40 +02:00
Mauro
8270a868a7
Completion Suggestion view for user mentions (#1859)
* created the list but I need to find a way to overlay it

* make the list able to have an intrinsic height

* best solution so far but does not work with expansion

* needs testing

* more scalable solution

* tests completed

* changelog

* injecting the media provider

* fix tests

* pr suggestions

* better testing
2023-10-06 15:47:31 +02:00
Nicolas Mauri
82abd0aaf3
Add voice message playback from the timeline (#1844) 2023-10-04 16:32:45 +00:00
Alfonso Grillo
e065f9d3a2
Update RTE to 2.14.1 (#1854) 2023-10-04 15:47:21 +02:00
Matthew Hodgson
68ec7bbc9e
Implement emotes (/me) (#1841)
* implement emotes (/me)

requires matthew/emotes branch of matrix-rust-sdk

* changelog + whitespace

* remove apparently superfluous swiftlint

* fix constness

* remove inout params and incorporate review

* switch to new api based on sdk PR feedback

* Bump the RustSDK to v1.1.21

* Address PR comments

---------

Co-authored-by: Stefan Ceriu <stefan.ceriu@gmail.com>
2023-10-03 16:17:03 +03:00
Mauro
7124f24d7c
supported versions (#1848) 2023-10-03 10:10:38 +02:00
Alfonso Grillo
e84e9b2938
Update rte to 2.14.0 (#1849) 2023-10-03 08:46:47 +02:00
Stefan Ceriu
a22bde91b2 Introduce primitives for working with fragment url query items; switch the generic call links to it. 2023-09-30 09:59:40 +03:00