Commit Graph

528 Commits

Author SHA1 Message Date
Flavio Alescio
c8df835a9d UI on create room screen 2023-05-16 18:23:23 +02:00
Flavio Alescio
0be12eb2e0 persisting create room parameter in volatile memory 2023-05-16 18:23:23 +02:00
Flavio Alescio
aa7f446536 Create room: add selectable state for security, add navigation to screen 2023-05-16 18:23:23 +02:00
Flavio Alescio
9a56dae3a3 work on text input for room creation 2023-05-16 18:23:23 +02:00
Flavio Alescio
7e162bf604 add files for create room screen, add selected users section with test 2023-05-16 18:23:23 +02:00
Stefan Ceriu
3a9b477e1b Add list name to room summary provider logs to avoid confusion between multiple instances 2023-05-16 12:46:06 +03:00
Stefan Ceriu
0afaa0a300 Switch the RustSDK to v0.0.1-paginate-only-with-token in order to test out a timeline ordering fix 2023-05-15 19:19:44 +03:00
Stefan Ceriu
7b7b1fd4b3 Disabled the cold cache entirely so we can test out startup performance without it 2023-05-15 17:05:56 +03:00
Mauro
79b9f54a66 Fixing Tests for Xcode 14.3 (#888)
* settting macOS to 13, and let's runa test of... the tests

* I want the artifacts of the test, might give me some more insight in Xcode

* archive artifact

* trying a thing with the xcode version

* push notifications alert makes this test fail

* test improvement

* let's try with a very long time

* let's disable autocorrection

* sleep

* 1 seconds fixed 90% of the issue, 2 should fix 100%

* waiting some more time in flaky tests and updated the content of a test that was failing

* updated a screenshot test that had a notification

* this integration test is a bit so flaky increased the timing

* controlled delay waited a bit moe for the timeline to settle

* try await

* MainActor everywhere

* milliseconds fix

* trying with a bit more waiting time after the tap and a slow velocity for the swipe

* let's try waiting more time
2023-05-15 13:42:40 +00:00
Stefan Ceriu
c3b029f1a0 Add background app refresh support (#892)
* Add background app refresh support

* Cleanup: move methods around so delegates are implemented above privates and privates are ordered better

* Add discardableResult on the userSessionStore's refreshRestorationToken
2023-05-15 13:06:25 +03:00
Velin92
230ce8286f Translations update 2023-05-15 10:55:30 +03:00
Stefan Ceriu
75a48eda60 Fixes cache cleaning behavior after sdk change 2023-05-12 18:47:53 +03:00
Alfonso Grillo
d691878ba0 Invited members in room's members list (#880)
* Add invited people in RoomMembersListScreen

* Optimize main thread perfomance in RoomDetailsScreenViewModel

* Fix member count in RoomDetailsScreenViewModel

* Add warning

* Add performance warnings

* Build members in RoomMembersListScreenViewModel in global queue

* Refactor RoomDetailsScreenViewModel build members process

* Localize strings

* Cleanup

* Fix RoomDetailsScreenViewModelTests UTs

* Fix UI tests

* Add RoomMembersListScreenViewModel UTs

* Add UI tests

* Amend UI tests

* Use clearAndTypeText
2023-05-12 13:12:59 +00:00
Doug
06b7728f5b Use the existing quote bubble layout with TimelineReplyView. 2023-05-12 14:44:05 +03:00
Stefan Ceriu
64bcbd4265 The simmer modifier stopped animating on Xcode 14.3 iOS 16.4. Not entirely sure why but switching onAppear to task fixes it 2023-05-12 14:24:01 +03:00
Mauro
de4d065e60 Disable Local Push Notifications + Start Handling invite notifications (#882)
* disabled local pushes and fixed the issue with the image rendering

* disabled local notifications for now and started implementing invite notificatons

* disabled local notifications for now and started implementing invite notificatons

* removed code that should not have changed

* removed useless comment

* refactored name for category

* fixed a test

* fix

* fix for missing try await

* pr comments
2023-05-12 10:45:59 +00:00
Doug
133fccc812 Remove AppAuth and prepare for Rust OIDC. (#870) 2023-05-11 16:46:36 +01:00
Stefan Ceriu
ff4f5648c3 Add initial sync loading toast indicator 2023-05-11 17:31:44 +03:00
Stefan Ceriu
91411d5aff Tweak toast indicator so that it's a bit more proeminent 2023-05-11 17:31:44 +03:00
Stefan Ceriu
a3a1073686 Promote last message room list fetching to .userInitiated 2023-05-11 17:31:44 +03:00
Stefan Ceriu
7ca15e8c7a Fix the LoadableImage not using the already loaded image from the in-memory cache 2023-05-11 17:31:44 +03:00
Stefan Ceriu
8f5053df77 Force room list updates to not animate 2023-05-11 17:31:44 +03:00
Stefan Ceriu
3fcb7bc501 Show more descriptive errors when failing to retrieve a room tuple 2023-05-11 16:29:06 +03:00
Stefan Ceriu
25690158ca Correct the state machine current state after failing to retrieve a particular room 2023-05-11 16:29:06 +03:00
Stefan Ceriu
fcdb71dac5 Overhaul room list updates logging 2023-05-11 16:29:06 +03:00
Stefan Ceriu
5620e32f8e Various test fixes (#873)
* Switch back to macos-12 and see if the tests work

* Fix unit tests, add default invited, joined and active member counts to the mock room proxy

* Try running UI tests on 14.3 but on an existing iPad simulator

* Revert "Try running UI tests on 14.3 but on an existing iPad simulator"

This reverts commit b075e7fa384330a9070dc35ed4dded57e0af26e1.
2023-05-11 16:28:35 +03:00
Stefan Ceriu
842044ea1b Bump the SDK to 1.0.64-alpha 2023-05-11 14:07:09 +03:00
Mauro
cbf68eccf6 Update SDK to 1.0.63 (#869)
* bump sdk to 1.0.63

* code improvement
2023-05-10 14:36:40 +03:00
Stefan Ceriu
7aa5078535 Collect timeline diffs for a bit longer 2023-05-09 18:19:33 +03:00
Stefan Ceriu
bc62f230d6 Low effort fix for timeline date separator glitches 2023-05-09 18:19:33 +03:00
Alfonso Grillo
fedf50e047 Optimize leaving a room from home screen (#868)
* Use joinedMembersCount in HomeScreenViewModel

* Update matrix-rust-sdk to 1.0.62-alpha
2023-05-09 17:06:19 +02:00
Stefan Ceriu
b8ad1af172 Reply rendering (#861)
* Cleanup how we use message timeline items in preparation for rich reply rendering

* Expose reply details up to the UI level

* Render replies in the timeline (textual for now). Remove now unused AttributedStringBuilderComponent isReply flag.

* Move reply detail loading to when the item appears instead of when it's created.

* Fix unit tests

* Fetch event details also when the reply details are in the error state

* Tweaks following code review

* Localise emote bodies

* Fix replies not loading sometimes, use the current event identifier instead of the one being replied to
2023-05-09 16:09:38 +03:00
Stefan Ceriu
e9af6ec541 Improve media uploading content type selection. Fix pasting in screenshots not working 2023-05-09 12:45:09 +03:00
Stefan Ceriu
b02c76ac1c No restart sliding sync (#866)
* Adopt new sliding sync list interaction APIs

* Re-enable summary providers, be more leninent in the list proxy and remove now unnecessary restartSync method

* Rename all sliding sync views to lists

* Bump the SDK to v1.0.61-alpha
2023-05-09 07:46:46 +03:00
Mauro
733adbb7d6 Fix for the sender icon not being rendered in notifications sometimes (#862)
* fix for the sender icon not being rendered sometimes in notifications

* removing a line

* removing the environment every time we run a zsh command

* removed unused parameters that we already have stored in the notification

* changelog
2023-05-08 15:05:55 +00:00
Velin92
a17493e650 Translations update 2023-05-08 08:14:56 +03:00
Stefan Ceriu
efc87bd4ce Fix live photos failing to upload 2023-05-05 19:42:25 +03:00
Stefan Ceriu
54c812c140 Add developer option for clearing the application cache (#852)
* Add developer option for clearing the application cache

* Tweaks following code review
2023-05-05 19:41:21 +03:00
Mauro
25f29bbd26 Remote Push Notifications can now be decrypted (#854)
* refactored the NSE to use the client function

* removed unused imports in the target.yml

* some code improvements

* changelog

* code improvement

* code improvement

* more code improvements

* separated the client and the media provider in a dedicated NSEUserSession

* Update ElementX/Sources/Services/Client/ClientProxy.swift

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

* pr suggestions

* logging the error

---------

Co-authored-by: Doug <6060466+pixlwave@users.noreply.github.com>
2023-05-05 15:29:46 +00:00
Mauro Romito
03d0fc6763 sdk bump to 1.0.60 2023-05-05 15:44:18 +02:00
Stefan Ceriu
9c651ae6a3 Media uploading (#851)
* MediaUploadingPreprocessor - Prevent images without any GPS metadata from being changed

* Add support for sending images

* Add support for sending video, audio and file attachments

* Rename MediaPickerPreview to MediaUploadPreview

* Move media uploading to the MediaUploadPreviewScreen, add waiting indicators and error handling

* Add support for pasting and drag&dropping in media for upload

* Adopt new media picker source UI, remove developer flag

* Set minimum heights for timeline loadable images

* Fix invalid camera picker file names

* Fix flakey MediaUploadingPreprocessor image tests, improve gps metadata stripping

* UITests: Update existing screenshots and add new step for the room attachment picker

* Switch all github action runners to macos-13

* Cleanup enter key and paste message composer handlers
2023-05-04 16:09:29 +03:00
Alfonso Grillo
858e155a07 Contextual menu for rooms (#842)
* Add room contextual menu

* Add room context menu view actions

* Add navigation to room’s detail

* Show leave alert in HomeScreen

* Implement leave logic

* Refine leave navigation for iPad

* Optimize leave from homescreen

* Refactor roomSettings -> roomDetails

* Refactor room for id mock

* Add UTs

* Cleanup

* Fix alert presentation in RoomDetailsScreenViewModel

* Fix animation flag
2023-05-04 10:02:18 +00:00
Stefan Ceriu
8c19e66185 Pass attachment bodies when loading media 2023-05-04 11:32:44 +03:00
Mauro
168649030b Avoid race and duplication conditions between local and remote notifications (#848)
* added timestamp control of the local notification

* improved the code, and implemented the solution, just needs some testing

* sdk bump

* UserPreference init with initialValue instead of defaultValue

* pr suggestions

* changelog

* notifications sliding sync view added
2023-05-03 14:28:07 +00:00
Velin92
dfc2d9a179 Translations update 2023-05-02 09:52:38 +02:00
Mauro Romito
64b90c195c fix for missing image for groups in notifications 2023-04-28 16:42:29 +02:00
Mauro
66491caa6b Notification Handler to handle notifications in foreground (#837)
* changed how the notifications are handled

* local notifications can be decrypted and shown!

* Improved the handling for the mock and for the normal messages

* Avatar images are also displayed

* pr ready, commented some code that is not supposed to be releaaed yet, adjusted some tests and added some source code in the targets

* fixing some swiftlint complaints and removed an unused function

* better swiftlint disable

* addressing PR comments
2023-04-28 12:36:16 +00:00
Stefan Ceriu
a6582ea8e1 Fixes #687 - Incorrect link detection and handling 2023-04-28 14:11:21 +03:00
Doug
cb7e90cc54 Use search field style from Compound. (#839) 2023-04-28 11:59:40 +01:00
Stefan Ceriu
f2adfad5ae Fix glitches when loading the timeline: use locally generated stable identifiers for all possible timeline items 2023-04-27 17:10:25 +03:00