1983 Commits

Author SHA1 Message Date
Alfonso Grillo e583f52c65 Edit poll UX (#2151)
* Add edit poll on room proxy

* Add CreatePollMode

* Add “edit poll” presentation flow

* Add delete poll section

* Inject editing poll

* Add submit action

* Refactor validation logic

* Add edit/delete actions

* Fix bubble timestamp for polls

* Update localisations

* Refactor CreatePoll -> PollForm

* Refactor tests

* Update rust sdk to 0.0.5-november23

* Update confirmation alerts

* Add edit support in TimelineItem menu

* Refactor a11y id

* Cleanup

* Fix failing tests

* Add tests

* Refine isEditable workaround

* Refactor timestamp in TimelineItemBubbledStylerView
2023-11-23 11:19:15 +00:00
Stefan Ceriu 0dbceceac3 Fixes #2147 - Automatically scroll the timeline to the bottom when sending a message 2023-11-22 18:29:31 +02:00
Stefan Ceriu 9ed35e8633 Fixes #2145 - Hide pin code in lock screen setup mode 2023-11-22 15:47:00 +02:00
Doug 0dafdc4e7a Add missing biometry type. (#2148) 2023-11-22 13:40:13 +00:00
Doug 99f5601330 Fix a crash when blocking/unblocking a user (#2143)
The view state doesn't like mutating an optional when built in release mode.
2023-11-22 13:13:59 +00:00
Stefan Ceriu f7e5dfd04e Prevent the composer from jumping when in reply to mode and reaching the end of the line 2023-11-21 16:34:28 +02:00
Nicolas Mauri 7f65dfee60 Fix: Long replies overlay the replied message (#1832) (#2131) 2023-11-21 13:50:15 +00:00
Mauro 7b812a45c3 Read Receipts sheet + enabled RR by default (#2123) 2023-11-21 12:38:39 +00:00
Stefan Ceriu bec6cdac05 Secure backup tweaks (#2122)
* Show the recovery section if key backup is anything **but** disabled

* Don't show an action on secure backup if its current state is unknown

* Do not show a badge on the home screen avatar while the recovery state is unknown

* Do not assume key backup is disabled when its state is unknown. If the state is unknown, check if a backup exists remotely.

* Dedupe remote backup state requests and handle task cancellations
2023-11-21 10:59:10 +02:00
ElementRobot 2e1b0cc6a9 Translations update (#2118)
* Translations update

* Fix strings

---------

Co-authored-by: Velin92 <Velin92@users.noreply.github.com>
Co-authored-by: Stefan Ceriu <stefan.ceriu@gmail.com>
2023-11-20 14:51:00 +02:00
Doug f2391394a7 Cherry pick some missed Compound/layout changes that ended up in the Xcode 15 PR. (#2120)
Fix broken Settings screen snapshots.
2023-11-20 11:06:24 +00:00
Mauro fc7b0038bc Fix: RTE Speech to Text suddenly stops working (#2114) 2023-11-20 09:46:42 +01:00
Doug f2b4525d91 Use Compound List in more screens. (#2099)
* Use Compound List in room member details, secure backup, notification settings.

* Use ListRow in CreateRoomScreen.

* Fix ListRow layout when isWaiting && !isSelected.
2023-11-17 17:07:27 +00:00
Stefan Ceriu f717c7dba4 Fix room list search bar focus glitches (#2112)
* Fixes #2112 - Room list search bar focus glitches

* Address PR comments
2023-11-17 18:08:29 +02:00
Stefan Ceriu d245a4f158 Secure backup tweaks (#2095)
* Show a loading indicator when confirming the recovery key

* Hide the passphrase characters when confirming the recovery key

* Don't show the settings security section until session verification state is retrieved (async)

* Fix preview screenshots
2023-11-17 12:06:36 +02:00
Doug 22742620c5 Fix an animation glitch when signing in on iOS 16. (#2098) 2023-11-17 09:19:18 +00:00
Mauro 93c6aa684b Accessibility on RRs (#2094)
* added accessibility on the read receipts but there is something wrong in the generation

* voice over implementation for RRs

* Update ElementX/Sources/Screens/RoomScreen/View/Supplementary/TimelineReadReceiptsView.swift

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

* done

* changelog

---------

Co-authored-by: Doug <6060466+pixlwave@users.noreply.github.com>
2023-11-16 16:51:25 +00:00
Doug 0831c898ef Compound icons part III - Revenge of the SF Symbol (#2093)
* Use Compound in StartChat screen.

* Update location sharing icons.
2023-11-16 15:50:06 +00:00
Stefan Ceriu 6c9ed73e67 Fixes #2001 - Simplify room and user avatar preview screens 2023-11-16 16:23:59 +02:00
Mauro 003b494c90 Artificial delay when a message fails to send (#2091) 2023-11-16 10:09:29 +01:00
Alfonso Grillo 9f1092b0b6 Reply to a poll (#2087)
* Refactor TimelineItemReplyDetails for polls

* Fix reply for polls

* Update reply details factory

* Revert Poll Hashable conformance

* PR comments
2023-11-15 15:57:34 +00:00
Mauro 342feb4113 Added a disclaimer in Notification Settings for "Mentions Only" (#2081) 2023-11-15 14:57:17 +00:00
Stefan Ceriu eb6f7e0409 Fixes #2083 - Expose options for overriding the system appearance in the advanced settings menu 2023-11-15 14:23:11 +02:00
Doug 4b3a373782 Use more Compound icons (part 2!) (#2082)
* Use Compound icons in ListRow.

* Add CompoundIcon(asset:) convenience initialiser.
2023-11-15 09:54:43 +00:00
Doug 2c1e61a1bc Add SwiftLint rule to enforce stack spacing. (#2080)
Xcode 15 changes the default behaviour and given we're always working from designs, we shouldn't rely on it for our layout.
2023-11-14 12:38:38 +00:00
Alfonso Grillo 752ad66397 Add scaledFrame/scaledPadding APIs (#2079)
* Add scaled frame and padding modifiers

* Refactor AppLockScreen

* Refactor FormattingToolbar

* Refactor RoomAttachmentPicker

* Refactor ComposerToolbar

* Refactor VoiceMessageRecordingButton

* More refactors

* Refine ScaledPaddingModifier

* Cleanup

* Fix preview tests

* Fix preview test

* Use CompoundIcon for custom image

* Add .scaledFrame(size:) overload

* Set fallback style to .body
2023-11-14 12:20:34 +01:00
Doug 4257c20bc9 First round of icon updates. (#2076)
Update Compound too.
2023-11-13 16:44:29 +00:00
Stefan Ceriu bc46c48b2e Update room summary provider mock room details and snapshots 2023-11-13 17:02:02 +02:00
Stefan Ceriu 5c4e0bd76d Display whether a call is ongoing in any particular room on the room list 2023-11-13 17:02:02 +02:00
Stefan Ceriu 2e1b4cb80b Fixes #2058 - Prevent QuickLook from breaking media uploading on Mac, replace the preview with a plain filename label 2023-11-13 13:52:55 +02:00
Stefan Ceriu 0e6e8a5892 Fix drag and dropping files onto the timeline on Mac 2023-11-13 13:52:55 +02:00
Stefan Ceriu a8be8f839b Fix new swiftformat warnings: convert types used for hosting only static members into enums. 2023-11-13 13:47:14 +02:00
Doug b4ec04ec26 Update the welcome screen with the latest designs. (#2067) 2023-11-13 09:42:43 +00:00
Doug 61af01e6fb Don't show the call button on macOS (#2064)
Calls don't work in the web view on macOS.
2023-11-13 07:32:42 +00:00
Doug b5cc2cbf61 Fix a regression where the forced logout indicator was presented on the hidden overlay window. (#2063) 2023-11-10 17:21:02 +00:00
Stefan Ceriu 5adbb3789e Fixes #660 - Expose message actions to voice over rotor (#2061)
* Fixes #660 - Expose message actions to voice over rotor

* Expose "message actions" accessibility action on polls and voice messages too.
2023-11-10 18:32:15 +02:00
Doug 37d88e622c Add UI tests for AppLockFlowCoordinator. (#2055)
* Add UITests for the App Lock flow.

* Add Notification Signal

Fix unwanted imports in UITests.
2023-11-10 15:38:54 +00:00
Nicolas Mauri da831f6725 New voice message recording mode (#2051)
* Lock voice message recording

* Use the VoiceMessageCache to store the recording file

* Rework on some composer toolbar buttons

* Update accessibility labels for voice message recording button

* PreviewTests
2023-11-10 15:32:22 +00:00
Stefan Ceriu 019ca625ab Group together voice message and poll actions (#2054)
* Group together voice message and poll actions

* Extract nested switches into separate methods
2023-11-09 19:16:42 +02:00
Stefan Ceriu 4b26a798dc Have the UserIndicatorController use a separate window, switch to using one single instance throughout the application 2023-11-09 16:18:11 +02:00
Doug 1102beb3dd Add UI tests for mandatory PIN setup flow. (#2049) 2023-11-09 09:18:18 +00:00
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 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