1172 Commits

Author SHA1 Message Date
Stefan Ceriu
abe2080ee2
Extract room screen action handling into separate component (#2045)
* Extract room screen action handling into separate component

* Fix tracing configuration unit tests

* Move the custom reactionsCollapsedBinding to the TimelineReactionsView

* Move voice message playback handling from the timelineController to the room view model

* Reorder methods

* Remove the need for a media player provider in the timeline controller

* Move room attachments opening to the view model, remove the need for a media provider in the timeline controller

* Rename RoomScreenActionsHandler -> RoomScreenInteractionHandler

* Move message sending retry and cancellation to the timeline controller.

* Move audio playback, attachment loading and  user tapping handling into the InteractionHandler

* Fix unit tests

* Switch back swiftlint file_length rule error to 1000 lines
2023-11-08 18:31:39 +02:00
Doug
07313926c9
Add UI tests for optional app lock setup. (#2046) 2023-11-08 15:33:40 +00:00
Nicolas Mauri
e04a55eaef
Voice message recording enhancements (#2042)
* Use Combine to report AudioRecorder state changes

* AudioRecorder is now using AVAudioEngine instead of AVAudioRecorder

* Stop recording when audio configuration changes

* AudioRecorder error handling

* UnitTests

* Use Accelerate to calculate RMS
2023-11-08 10:19:28 +01:00
Stefan Ceriu
14e0eba914 Bump the log level for matrix_sdk_crypto and matrix_sdk_http_client to debug 2023-11-08 11:18:03 +02:00
Stefan Ceriu
8d20cbfc68
Fixes #2040 - Prevent the room list from staying empty after cancelli… (#2041)
* Fixes #2040 - Prevent the room list from staying empty after cancelling a search

* Address PR comments, simplify implementation
2023-11-07 17:54:04 +02:00
Stefan Ceriu
5dcb24add7
Expose Element Call settings in the developer options. Start using th… (#2039)
* Expose Element Call settings in the developer options. Start using the encryption widget parameter.

* Remove the Element Call feature flag
2023-11-07 16:12:03 +02:00
Doug
344fed4ee6
Don't allow the Placeholder Screen layout to be influenced by the keyboard (#2034) 2023-11-07 11:16:02 +01:00
Doug
6adedaf267
Fix an inconsistency in the App Lock screen's background colour. (#2035) 2023-11-07 10:49:19 +01:00
Alfonso Grillo
30e8753663 Improve TimelineAccessibilityModifier 2023-11-07 10:32:14 +01:00
Alfonso Grillo
f7f3404312 Add TimelineAccessibilityModifier 2023-11-07 10:32:14 +01:00
Alfonso Grillo
6ad7dc7641 Delete .combine accessibility for bubble style 2023-11-07 10:32:14 +01:00
Alfonso Grillo
1780b58e58 Fix accessibility label for VoiceMessageButton 2023-11-07 10:32:14 +01:00
Stefan Ceriu
5823af6a91
Secure backup fixes (#2037)
* Fix logout alert title and message

* Disable auto correction and capitalization on the recovery confirmation screen

* Allow scrolling in the key verification screen for when the key needs to be confirmed and the keyboard is up.

* Address PR comments
2023-11-07 09:23:15 +02:00
ElementRobot
e260fd263f
Translations update (#2033)
Co-authored-by: Velin92 <Velin92@users.noreply.github.com>
2023-11-06 10:08:46 +00:00
Doug
5d2215f130
Use the custom log level inside the NSE too. (#2020) 2023-11-04 08:36:49 +00:00
Mauro
ce72a9b5f2
Fix NSE Leak (#2022) 2023-11-03 20:30:58 +00:00
Alfonso Grillo
4985d410b3 Add voice message analytics 2023-11-03 12:44:52 +01:00
Alfonso Grillo
530985e674
Add deferred spinner for voice messages (#2018)
* Add  delayedLoaderPlaybackState

* Add more tests

* Fix Xcode 14 build error

* Refactor  delayedLoaderPlaybackState -> playerButtonPlaybackState

* Fix runtime issue
2023-11-03 10:39:22 +00:00
Doug
b10d534c94
Debounce PIN entry to show the last digit before submitting. (#2017) 2023-11-03 07:31:01 +00:00
Doug
5ae6494004
Set the App Lock grace period to 0. (#2014) 2023-11-02 14:35:56 +00:00
Alfonso Grillo
4012aca661
Refactor frame reader API (#2016) 2023-11-02 14:15:57 +00:00
Mauro
14badab01f
Keep the original foreground color in the mention (#2015)
* keep the original foreground color in the mention

* changelog
2023-11-02 14:44:24 +01:00
Alfonso Grillo
4d3cb97fbb
Voice message record button hapitcs (#2013)
* Move tooltip logics in VoiceMessageRecordingButton

* Add hapitc feedback when recording a voice message

* Cleanup
2023-11-02 12:58:19 +01:00
Alfonso Grillo
4af8ef2a5f
Voice message UI polish (part 2) (#1995)
* Update compund

* Fix create poll screen bin button style

* Fix timeline menu description for voice messages

* Fix bin button in ComposerToolbar

* Add VoiceMessageButtonStyle

* Update compound & fix breaking changes

* Fix voice message bin size

* Refactor VoiceMessageRecordingButton

* Fix preview tests
2023-11-01 10:03:35 +01:00
Doug
d0ec76cf96
Fix crash in a UI test. (#1996) 2023-10-31 15:01:08 +00:00
Doug
4af881a20f
Update the SDK, minor version, handle API breaks (#1994) 2023-10-31 14:56:23 +00:00
Doug
b2f30974e3
Add missing gradient to lock screen placeholder. (#1991) 2023-10-31 13:25:18 +00:00
Doug
913b8ed244
Log the app version number at the start. (#1993) 2023-10-31 13:24:59 +00:00
Nicolas Mauri
8253920648
Fix: release audio session after playback ends (#1992) 2023-10-31 13:13:50 +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
Doug
af3732541e
Enable the App Lock feature. (#1990) 2023-10-31 08:55:30 +00:00
Nicolas Mauri
4f0ed94eaa
Fix the delay when switching between voice messages (#1985) 2023-10-30 19:44:59 +00:00
Doug
f63771d1dc
Enable Element Call FF by default. (#1983)
- Aligns with the same change on Android.
- Remove the now unused FF for mention pills.
2023-10-30 17:04:01 +00:00
Doug
e9cdc7649d
Enforce mandatory app lock outside of the authentication flow. (#1982) 2023-10-30 15:52:25 +00:00
Doug
8f010538ed
Fix presentation when not enrolled in Touch/Face ID. (#1981) 2023-10-30 15:02:48 +00:00
ElementRobot
de0656daa3
Translations update (#1984)
Co-authored-by: pixlwave <pixlwave@users.noreply.github.com>
2023-10-30 14:39:14 +00:00
Alfonso Grillo
7ba2e4f9f5
Set voice messages max width (#1980) 2023-10-30 12:09:10 +01:00
Alfonso Grillo
5439b650a0
Remove forward action for polls (#1973) 2023-10-27 20:35:18 +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
Nicolas Mauri
a32a7c8f2c
Fix: Keep the progress indicator visible after pausing or scrubbing a voice message. (#1969) 2023-10-27 15:24:22 +00:00
Mauro
0b31446817
Resizable Composer With Completion Suggestion View (#1971)
* resizable composer with suggestions view

* FF cleanup

* removing the view when the vertical size is compact

* merge conflict fix

* done

* solving a conflict

* Update ElementX/Sources/Screens/ComposerToolbar/View/CompletionSuggestionView.swift

Co-authored-by: Doug <6060466+pixlwave@users.noreply.github.com>

* pr suggestion

---------

Co-authored-by: Doug <6060466+pixlwave@users.noreply.github.com>
2023-10-27 13:54:30 +00:00
Doug
84a16091b2
Handle invalid PIN input in the settings flow. (#1972) 2023-10-27 14:08:06 +01:00
Alfonso Grillo
acfc564490
Remove feature flag for voice messages (#1964)
* Delete voice messages feature flag

* Fix preview tests

* Update snapshots
2023-10-27 13:45:15 +02: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
Mauro
2eb8945824
Converting detected plain text mentions into permalinks (#1963)
* it works but a test fail because URL(string) fails

* done!

* let
2023-10-27 09:31:01 +02:00
Mauro
24835a566e
Removed Pill Avatar + @room is not displayed among suggestions for DM (#1968)
* removed pill avatar

* completion suggestion service shows @room as first and only if not a DM

* code improvement
2023-10-27 09:29:20 +02:00
Nicolas Mauri
aa766f2eac
Add some logs to allow debugging of voice messages in rageshake (#1967) 2023-10-26 17:22:41 +02:00