501 Commits

Author SHA1 Message Date
Stefan Ceriu
7ab64d4cb4
Project file removal (#569)
* Deleted project file

* Add back SPM Package.resolved + .gitignore

* Generate project file on release builds

* Converge on single CI setup scripts within `ci_scripts/ci_common.sh`

* Fix unit tests

* Use new `ci_common/setup_github_actions_environment` setup script on all workflows

* Move lfs validation check to the pre-commit hooks. Remove validate-lfs github actions workflow

* Fix integration tests workflow

* Tweaks following code review
2023-02-13 12:53:01 +00:00
Stefan Ceriu
ee4e4a212b
#396 - Work around duplicated room list items and add error logs (#571) 2023-02-13 12:21:49 +00:00
Stefan Ceriu
b0a7d05a8c
BrowserStack support (#561)
* BrowserStack support

* Add fastlane step to automatically upload builds to BrowserStack

* Add error log for when Application Groups are not available

* Use better applicationSupportDirectory API
2023-02-10 16:52:15 +02:00
Mauro
c8fb93e00d
Swiftformat on githooks + New swift run tools setup command (#563) 2023-02-10 15:04:00 +02:00
Doug
f0a4cfd946
Update PR Build workflow. (#564) 2023-02-10 13:01:51 +00:00
Doug
d0960cf75c
Message composer icon and scroll to bottom button dark mode (#562)
Remove animations on the composer when entering/exiting edit/reply mode too.
2023-02-10 09:48:01 +00:00
Kat Gerasimova
60ca1c5dae
Create bug issue template (#558) 2023-02-10 11:11:00 +02:00
Stefan Ceriu
8932e83929 Fixes #464 - Incorrect regex usage on extended grapheme clusters 2023-02-10 09:50:52 +02:00
Mauro
910a8e2067
Updated Screenshot Tests and fixed an issue with the MockMediaProvider (#554)
* updated the tests

* updated ui tests

* removed unused files

* fixed a bug that prevented the image to be added in the avatar of the rooms from the mock, and improved some UI tests

* swiftformat

* fixed an issue where the room Id was not matching the real room id coming from the timelineController, also updated some tests, and added a test for the case where the RoomAvatar is available.

* added some waitForExistence checks to allow the CI to find the UI elements

* this should make the loading bar always match at the HStack size

* code improvement for the tests

* fix for the max frame of the loading screen

* updated tests

* regenerated and improved some tests

* sonarcloud improvements

* changelog
2023-02-09 14:57:55 +01:00
Stefan Ceriu
a02b461c37 Switch to weakAssign for all AppSettings listeners 2023-02-09 11:41:14 +02:00
Stefan Ceriu
98cfc2c9fb Fixes #367 - Refactor AppSettings usage patterns 2023-02-09 11:41:14 +02:00
Mauro
e5522e7753
Added a progress tracker to the bug report view (#513)
* created a progress tracker class and passed it in the user notification to be observed by the progress view

* improved the publishing by dispatching it on RunLoop.main

* bug report struct created and progress tracker class moved into the Other folder

* some swiftlint adjustments

* fixed tests

* fixed another test BugReportServiceTests

* changelog 495 - change

* added a mock preview

* fixing some linting suggestions

* no need to use KVO, achieve the same result using a publisher

* some refactors to address PR comments

* some code improvements

* fixed the issue that prevented the avatar of the room to be displayed in the mocks, and updated the tests

* Revert "fixed the issue that prevented the avatar of the room to be displayed in the mocks, and updated the tests"

This reverts commit 113d6091d91a3aac1f9a59ff6c5e07610ed59859.
2023-02-08 21:52:31 +01:00
Doug
4d87701ae9
Automatic discovery of the sliding sync proxy. (#535)
* Automatic discovery of the sliding sync proxy.

* Handle homeserver detection from a MXID.

* Update sliding sync info link, SDK and bump patch.

Add a migration on the new version. The change in restoration token format requires the user to sign in again, but this will fail with the existing device ID.
2023-02-08 19:07:02 +00:00
Doug
f7fbdcc32c
Update the timeline to correctly fix it to the bottom in UI tests. (#553) 2023-02-08 18:58:12 +01:00
Doug
22a99482a0
Fix UI Tests for OnboardingScreen, BugReportScreen, ServerSelectionScreen, and UserSessionFlows. (#549)
* Fix OnboardingScreen UI Tests

Disable the swipe tests for now as there is only a single page.

* Fix BugReportScreen UI Tests.

Use snapshots more and remove manual validation method.

* Fix ServerSelectionScreen UI Tests.

* Fix SessionVerificationScreen UI Tests.

* Fix UserSessionFlows UI Tests
2023-02-08 14:11:09 +00:00
Doug
588975d53f
Minor tweaks to the message composer. (#548) 2023-02-08 12:21:41 +00:00
Doug
993ecfb46d
Add shimmer effect to room skeletons. (#544) 2023-02-07 13:19:57 +00:00
Stefan Ceriu
f2f8872729 Add function_body_length swiftlint rule with default values in an attempt to fix false positives on the CI (DangerSwift) 2023-02-06 18:17:32 +02:00
Stefan Ceriu
9f8c7cc5a9 Remove now unneeded migration from caches to application support 2023-02-06 18:17:32 +02:00
Doug
591a8679e9
Explicitly pass the context into the cell's environment. (#539) 2023-02-06 15:55:00 +00:00
Stefan Ceriu
f8e6179933
Add permalink detection and custom attributed string attributes (#536)
* Pass full attributed string to TimelineItems and let the UI level handle blockquote coalescing
* Add permalink detection and attribute embedding within the attributed string
2023-02-06 14:59:32 +00:00
Doug
2734a18217
Allow blockquote bubbles to fill the message bubble (#527)
Use a custom layout to prevent them from unnecessarily widening the bubble.
2023-02-06 13:42:19 +00:00
Element CI
027de707fa Prepare next release 2023-02-03 08:35:05 -08:00
Doug
dae8f93b40
Revert decryption banner & try fix context menu crash. (#525) 1.0.18 2023-02-03 18:24:28 +02:00
Element CI
3015896d46 Prepare next release 2023-02-03 06:21:42 -08:00
Doug
2aaeb576d2
Further design updates to the timeline. (#524)
- Decryption banner on the timeline
- Bubble colours
- Background insets
- Multiline composer corner radius
- Read marker
- GIF indicator
- Reactions shape
- Use RoomTimelineViewLabelStyle everywhere possible
- Only set a line limit on reply quotes, allow all the lines for regular quotes.
- Message label icons
- Yes/No button casing
- Make sender profiles immutable.
- Enable copy link and invite buttons.
- Fix layout loop detecting multiline composer text.
- Add animation to the encryption banner.
1.0.17
2023-02-03 14:09:48 +00:00
Stefan Ceriu
183cc88114
Load member profiles through the timeline (#522) 2023-02-03 10:12:36 +00:00
Stefan Ceriu
3f900df3de Prevent duplicated timeline items from crashing the diffable datasource 2023-02-02 18:10:52 +02:00
Stefan Ceriu
cbfd2d1cca Refactor the dynamic timeline modifiers and make sure they fire in the right order 2023-02-02 17:09:14 +02:00
Stefan Ceriu
49c41d8581 Fixes #516 - Delay user profile details loading until the room list has been updated 2023-02-02 13:08:23 +02:00
Stefan Ceriu
594f6f85dd Fix remaining retain cycles, allow coordinators to be weakly referenced and make sure the NavigationStackCoordinator cleans up after itself 2023-02-02 13:08:08 +02:00
Doug
93997efef9
Allow different states for the last message. (#514) 2023-02-02 11:05:23 +00:00
Stefan Ceriu
9cc876eb0c Cache lproj bundles so that so we stop recreating them every time we request a localizable string 2023-02-01 16:57:43 +02:00
Stefan Ceriu
a9c24abcdf Introduce back custom room list item identifiers for invalidated rooms 2023-02-01 14:29:17 +02:00
Doug
3775569f48 Minor fixes.
- Marking a room as read on iPad.
- Potential state machine crash if you swipe to dismiss verification.
2023-01-31 21:21:59 +02:00
Stefan Ceriu
8f3842f74a Dynamically adjusting the visibleRoomsView's timeline limit based on the app state 2023-01-31 20:59:08 +02:00
Velin92
a8f154740e
iOS: Removing event id links (#509)
* removing unused event id link

* changelog

* Revert "removing unused event id link"

This reverts commit aacd1124498674662123d5598604ef8bfcdfe02e.

* commented the event id add link code

* better changelog

* commenting a tes that is related to the use of event id links which we don't handle for now
2023-01-31 19:42:45 +01:00
Doug
f6629e0d6e
Hardcode the sliding sync proxy. (#502)
* Add support for migrating between versions.
* Rename InfoPlistReader property.
* Bump SDK version.
2023-01-31 17:48:24 +00:00
Doug
4f8cc08989
Handle API changes from Rust. (#506)
There are some bad assumptions about profile changes in here.

* Remove assumption FIXME's

Profile changes that come from other members will be state event of None.

* Bump SDK version.
2023-01-31 13:28:28 +00:00
Doug
17568a6a2e
Initial timeline design tweaks (#505) 2023-01-31 13:27:35 +00:00
Stefan Ceriu
d51a9b3a2b
Memory management (#503)
* Correctly tear down the user session on signing out

* Fix session verification <-> user session retain cycle, visible range debouncer leak

* Manually clean up coordinators retained within SwiftUI's NavigationStacks

* Slightly refactor the timeline content menu builder and prevent it from retaining the view model. Cleanup now unnecessarily optional RoomScreenCoordinator instance vars

* Move coordinator dismissal logic to the navigation modules
2023-01-31 11:51:56 +02:00
Stefan Ceriu
70cff446cf
Workaround #418 - Allow swiping back from file previews (#499) 2023-01-30 18:53:05 +02:00
Doug
59b61dc61f
Remove room cell animations. (#501) 2023-01-30 12:27:26 +00:00
Gil Eluard
e2e69534e3
430 - Design review for first public TestFlight Part2 (#496)
* 430 - Design review for first public TestFlight Part2

---------

Co-authored-by: Doug <douglase@element.io>
2023-01-30 11:51:07 +00:00
Stefan Ceriu
f29c0a9811 Fix SS update observer and implicitly session verification not being requested 2023-01-27 16:54:20 +02:00
Element CI
d44ce9f44c Prepare next release 2023-01-26 07:52:56 -08:00
Gil Eluard
eeb69d1971
Design review for first public TestFlight (#492)
* 430 - Design review for first public TestFlight
1.0.15
2023-01-26 15:32:39 +00:00
Stefan Ceriu
413b433806 Move last message timestamp formatting to the room summary provider and its background processing queue 2023-01-26 16:31:26 +02:00
Stefan Ceriu
1433100535 Reduce the quality of service of all custom dispatch queues 2023-01-26 16:31:26 +02:00
Stefan Ceriu
86aec7896b Drop the timeline limit to 1 on the visible rooms sliding sync view 2023-01-26 15:03:23 +02:00