Commit Graph

717 Commits

Author SHA1 Message Date
Michael Kaye 5e97a4a0fa Performance tests (#1301)
* Add signposts to performance tests.

- Update flow to include support for the migration screen.

* If the welcome screen shows, click on the button.

* Ensure a clean simulator each run.

* Add accessibility identifier for migration screen if required.

* Handle walking into the room and back out again.

* use iphone 14 pro to match what's used in xcode.

* Remove ApplicationTests as duplicated in LoginTests.

We measure app startup time in LoginTests as part of the flow - we may as well avoid spending 60s doing only that measurement in ApplicationTests

* Sleep 10s, the ui is otherwise showing up in random order.

* Revert "Remove ApplicationTests as duplicated in LoginTests."

This reverts commit 8670710315bcd0d6c3c3046f534b32b4c728b837.

* Update script to parse out correct values from results file.

* Allow cancellation of password prompt in any order.

* Remove test timeout, performance tests will always take a while.

* Adjust parsing further

* Remove ApplicationTests.

* Move to a more elegant way to wait for something to disappear.

* Linting.

* Fix unit tests.

---------

Co-authored-by: Doug <douglase@element.io>
Co-authored-by: Doug <6060466+pixlwave@users.noreply.github.com>
2023-07-11 10:32:24 +01:00
Mauro 28fa1140b7 Removing Delivered Notifications (#1305)
* completed

* changelog

* tests

* more tests

* better naming

* fix

* a bit more waiting time

* generated mocks

* xcodegen
2023-07-11 10:44:06 +02:00
Alfonso Grillo 98dabe8500 Optimize invites list (part 2) (#1268)
* Optimise invites list

* Fix failing tests

* Cleanup

* Add weak self

* Refactor ReportContentViewModelTests
2023-07-11 08:08:27 +00:00
Nicolas Mauri 5ae227179c New notifications section in settings (#1273) 2023-07-10 17:26:49 +00:00
David Langley 2cec1858ff Add expand/collapse UI for reactions (#1249)
* Add expand/collapse UI for reactions

- Adds a CollapsibleFlowLayout for controlling the layout
- Adds tests for  this layout and some mocks for testing layouts generally
- Improves the rendering of the reaction buttons which were not pixel perfect
- Adds the UI for the expand collapse buttons including the count of hidden items in the collapsed state.

* Add comment for reactionsCollapsed binding.

* Remove Flow and simplify implementation

- Remove SwiftUI-Flow
- Add strings by importing from Localyse
- Remove count on expand button as requires GeometryReader and can cause loops
- Don't use GeometryReader for hiding reactions with opacity(just put them way off screen for now)
- Fix unit and UI tests

* Address PR comments

- use synthesized inits
- use rows rather than lines for naming flow layout
- other naming improvements
- reactions were already rendered in another ui test, removing my test on favour of those and updating the screenshots for those.
2023-07-10 15:13:58 +00:00
Velin92 c453cc0680 Translations update 2023-07-10 13:23:34 +02:00
David Langley 83e27564d5 Add xcDeferFulfillment to help with tests that have publishers. (#1278)
* Add xcAwaitDeferred to aid with tests that have publishers.

* Improve naming

* Address Comments

- Fix naming
- Add optional expectation message
- Use trailing closure syntax
2023-07-07 15:08:32 +01:00
Mauro d2fe663003 SDK Bump + Back pagination state listener (#1274)
* backPagination improved

* sdk bump

* removed unused line

* Update ElementX/Sources/Services/Timeline/TimelineController/RoomTimelineController.swift

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

* cancelling the TaskHandle on deallocation

---------

Co-authored-by: Doug <6060466+pixlwave@users.noreply.github.com>
2023-07-07 07:54:40 +00:00
Alfonso Grillo 3afb8fa867 Improve user profile search (#1266)
* Filter account owner in UserDiscoveryService

* Add tests and refine logics
2023-07-06 15:53:31 +02:00
Mauro 1de2a0b3e3 Notification Encryption Sync is defaulted to true (#1265)
* notification encryption sync is defaulted to true

* more documentation
2023-07-06 09:45:38 +00:00
Mauro 00636d98da Welcome Screen (#1259)
* the screen renders and changed the analytics checkmark to be more generic

* welcome screen

* transition

* tests... TODO

* changelog

* changed assets and added multilineTextAlignment

* better naming

* fix for missing after migration but has a weird presentaiton bug

* fix

* icon color
2023-07-05 17:55:24 +00:00
Doug 9ebc57e1cf isDM in Notifications (#1254)
* isDm

* isDm added and some code improvements

* Bump SDK and fix one name.

* changelog

---------

Co-authored-by: Mauro Romito <mauro.romito@element.io>
2023-07-05 19:40:05 +02:00
Alfonso Grillo bfd75a335d Show location's description when sharing to Apple Maps (#1253)
* Add location description for Apple Maps

* Show location’s description on Apple maps

* Cleanup ShareToMapsAppActivity
2023-07-05 16:12:57 +00:00
Doug 6b8b5a75b3 Add encryption history banner and update session verification banner strings. (#1250)
* Add a hard wall on back-pagination in encrypted rooms.
Until the app supports key backup, the history will never be decryptable.

* Fix initial display of the timeline table view.

* Update session verification banner strings.
2023-07-05 14:08:31 +01:00
Mauro 29d90dd29e Notification Placeholder Image Caching (#1248)
* placeholder image caching

* code improvement

* code is now clearer
2023-07-05 12:28:45 +00:00
Alfonso Grillo d15d0e0070 Add location related analytics (#1241)
* Refactor trackComposer method

* Track location screen

* Refactor isPinDropSharing -> isSharingUserLocation

* Add trackComposer event

* Fix UTs

* Cleanup

* Add AnalyticsLocationType
2023-07-05 12:54:03 +02:00
Alfonso Grillo ce14d13962 Add location's description in timeline (#1236)
* Refactor location URLs

* Add description in LocationRoomTimelineView

* Amend preview text

* Cleanup code
2023-07-05 08:27:59 +00:00
Mauro b294278170 Refactor the NSDiffableDataSourceLayer (#1235)
* first part, using references

* better animations

* delete view provider and replaced wth two files

* ordered dictionary usage

* bubbled styler view previews

* plain style is back

* fix

* read marker previews restored

* updated tests

* code improvements

* better naming
2023-07-04 14:08:43 +00:00
Doug eba3e5d5e6 Update the timeline padding. (#1233)
* Reduce padding on the avatar side of a bubble when the avatar isn't shown.

* Analytics Prompt Screenshots.

* Home screen screenshots.

* User Session screenshots and fix.

* Room screen screenshots.

* Bug Report screenshots.
2023-07-04 12:20:41 +01:00
Alfonso Grillo caf23094b0 Update SDK to 1.0.94-alpha (#1232)
* Update SDK

* Map new location fields

* Add LocationRoomTimelineItemContent.AssetType
2023-07-04 06:39:32 +00:00
Velin92 4162036f83 Translations update 2023-07-03 10:36:56 +02:00
Stefan Ceriu f91405eee9 Fixes #1228 - Failing attachment uploading 2023-06-30 17:15:38 +03:00
Doug ccd4101abf Fix reactions button faint outline. (#1226) 2023-06-30 14:21:25 +01:00
Doug 2025dd9517 Migration Screen (#1224)
- Hide bottom bar when in skeletons.
- Use the new design for the Waitlist screen too.
2023-06-30 13:27:49 +01:00
Mauro Romito c5d47378a4 bump 2023-06-30 15:18:03 +03:00
Stefan Ceriu 29cda71b82 Remove reaction summary view scroll animation, keep the buttons in sync with manual horizontal scrolling 2023-06-30 15:08:42 +03:00
Stefan Ceriu 2354f4ff99 Add missing trailing padding to reaction summary view buttons 2023-06-30 15:08:42 +03:00
Stefan Ceriu 4a72ca1b08 Prevent the longPressWithFeedback gesture from adding a shadow to its content before the gesture is triggered 2023-06-30 15:08:42 +03:00
Stefan Ceriu 6dc96295f6 Fix reaction borders 2023-06-30 15:08:42 +03:00
Mauro Romito f1d53649e0 empty circle always displays 2023-06-30 12:20:06 +02:00
Stefan Ceriu be124a972e Prevent the TimelineController from requesting a backpagination even though items are available on the TimelineProvider level. Manually populate the items subject in the TimelineProvider constructor. 2023-06-29 20:13:56 +03:00
Stefan Ceriu b89dbc3895 Fix build, switch missed staticString URL 2023-06-29 18:45:00 +03:00
Stefan Ceriu 4e7d05d4b8 Bump the RustSDK to v1.0.92-alpha 2023-06-29 18:01:46 +03:00
Ivan Enderlin b1dc20e55c fix: Do not call fullRoom on all rooms.
`fullRoom` creates a `Timeline` for the room. Calling this method on all
rooms doesn't make the room list fast :-).

Needs https://github.com/matrix-org/matrix-rust-sdk/pull/2186 to be merged.
2023-06-29 18:01:46 +03:00
Mauro b2ab6103c3 Editing a failed echo, just cancels and resends it (#1207)
* editing a failed message means cancelling and resending it

* changelog
2023-06-29 14:37:52 +00:00
Alfonso Grillo 3a6876f385 Conform URL to ExpressibleByStringLiteral (#1214) 2023-06-29 13:47:04 +00:00
Doug ba79d7f141 Trim newlines from message previews. (#1208)
- Fixes a bug with replies where the message shows on the line after the sender's name.
2023-06-29 11:34:37 +01:00
Stefan Ceriu ce7ca32efc Fixes #954 - Implement media upload cancelling 2023-06-29 13:32:42 +03:00
Stefan Ceriu d9e608a1e0 Stop running room proxy cleanup in a separate task 2023-06-29 13:31:43 +03:00
Alfonso Grillo edd12b02af Improve LocationRoomTimelineView layout (#1212)
* Improve LocationRoomTimelineView

* Cleanup
2023-06-29 10:22:43 +00:00
David Langley 98cec5672c Reaction summary and flow layout for reactions (#1158)
* Add reaction summary view

* Add avatars and display names and flowlayout for reactions

- Add avatars to summary view
- Add display names to summary view
- Add flow layout to reaction buttons as per designs(long press on  scolling buttons is difficult to achieve so prioritised this).

* Add and use SwiftUI-Flow for reaction layout.

* Correct Swift-Flow inclusion via xcodegen

* Remove own FlowLayout implementation and Fix unit tests

* Improve naming and correct spacing on summary view as per design.

* Fix safe area insets on summary view bottom sheet

* Scroll to selected reaction in the case that it is offscreen when the sheet is displayed.

* Add more reactions to UITests to ensure the new flow layout is displayed(wraps on to second line).

* Fix snapshot image.

* Address review comments.

* Use onLongPressGesture for reactions also to fix double actions bug and for consistency.

* Respect RTL languages.

* Fix unit test.
2023-06-29 10:53:44 +01:00
Alfonso Grillo 3f6bfbcc14 Open map from timeline (#1199)
* Add navigation to expaneded map

* Add MapLibreMapView.Options

* Add AppActivityView

* Add ShareToMapsAppActivity

* Add share sheet presentation

* Add localisations

* Cleanup

* Fix UT build errors

* Revert breaking change

* Fix UIView setup

* Add support for location’s description

* Show popover on iPad

* Restore assets

* More cleanup
2023-06-29 09:12:42 +00:00
Doug 67e48e465f Remove asset (#1213)
Re-add asset
2023-06-29 09:47:17 +01:00
Stefan Ceriu 93022dd7f2 Implement swipe to reply on timeline items (#1148) 2023-06-29 11:31:46 +03:00
Mauro 10e167732b Show Only Retry Decryption and View Source for Unencrypted messages (#1202)
* show only retryDecryption for unencrypted message

* fix
2023-06-28 15:57:19 +00:00
Doug fbb17e9288 Update long press gesture animation. (#1195) 2023-06-28 16:06:43 +01:00
Mauro e4959ff156 Fix for flipped image notification placeholder on iPhone (#1200)
* fix

* better handling

* reverted wrong commit

* typo in changlog
2023-06-28 14:52:23 +00:00
Doug afbb0a8260 Replace FilePreviewScreen with InteractiveQuickLook. (#1187)
* Replace FilePreviewScreen with InteractiveQuickLook.

- Allows full screen presentation.
- Allows dismiss gesture to work.
- Presentation looks much better on macOS.
2023-06-28 15:32:16 +01:00
Mauro 908b368680 Delivery status is displayed only for last message (#1193)
* checkmark only displays for the last message

* delivery status is now displayed only for last message

* changelog
2023-06-28 14:28:56 +00:00
Stefan Ceriu 02f086cfcb Prevent the app from crashing when multiple virtual timelineStart items appear in the timeline 2023-06-28 15:33:07 +03:00