Commit Graph

130 Commits

Author SHA1 Message Date
Stefan Ceriu
50c80f4727 Remove view background colors as they cause glitches on the navigation bar background 2022-07-28 18:16:43 +03:00
Doug
19d92b452e #93: Add a sync limit of 20 and prefill rooms when loading the last message.
Update the SDK to 1.0.13-alpha.
2022-07-28 12:46:48 +01:00
Doug
653dc30b4a #42: Proof of concept login via OIDC.
Uses AppAuth library in the app, ignoring token refresh
2022-07-28 09:28:42 +01:00
Stefan Ceriu
b5bf60665f Setup tracing through the RustSDK (#146) 2022-07-27 16:06:40 +03:00
Doug
5a1b9463bc #40: Use the Rust AuthenticationService.
* Update SDK package to 1.0.12-alpha.
* Use an app group for storage and stop stripping the http from the homeserver when configuring the service.
* Rename access token to restore token.
* Remove matrix.org server description inline with latest FTUE changes.
2022-07-27 10:57:16 +01:00
Stefan Ceriu
3d8d1bdd89 Revert "Re-enable animations to see if it fixes the tests"
This reverts commit d0013cae50431f2c8150a873cfedf80038a38ef6.
2022-07-25 14:48:15 +03:00
Stefan Ceriu
2fb3496c20 Re-enable animations to see if it fixes the tests 2022-07-25 14:48:15 +03:00
Stefan Ceriu
863f88500e Attempt fix for unreliable tests 2022-07-25 14:48:15 +03:00
Stefan Ceriu
621a9a572f Fix SwiftFormat errors 2022-07-22 14:48:15 +03:00
Stefan Ceriu
ba245aa3bb Fix vector-im/element-x-ios/issues/134 - Prevent home screen room last message attributed string from being computed on every update
Add async/await methods to the AttributedStringBuilder and adopt them throughout the app
2022-07-22 10:25:17 +03:00
Stefan Ceriu
912bda95dc Prevent images cached on disk from loading on the main queue 2022-07-19 09:14:27 +03:00
Doug
c125189b89 Enable blank line rules. (#132) 2022-07-06 16:01:50 +01:00
Doug
a272980b62 Add SwiftFormat to the project. (#129)
* Run swiftformat for whitespace.
* Run swiftformat with some rules.
2022-07-06 14:49:05 +01:00
Doug
88ce67603e #40: Add basic AuthenticationService and missing UI tests.
* Add MockAuthenticationService and ServerSelectionUITests.
* Add tests covering the Authentication flow.
2022-07-04 10:00:27 +01:00
Stefan Ceriu
17d6bba923 vector-im/element-x-ios/issues/31 - Implement simple SaS sesson verification
* vector-im/element-x-ios/issues/31 - Session verification unit and UI tests
* Fix ImageAnonymizer tests when running on Apple Silicon
* Rename SessionVerification to SessionVerificationScreen
2022-07-01 13:56:52 +03:00
Doug
e27f37c69f Add Screen suffix to all screens. (#125) 2022-06-30 16:48:46 +01:00
ismailgulek
0c21e0ddcb Flatten room list (#121)
* #121 Flatten the room list

* #121 Add changelog

* #121 UI tweaks for avatar and display name and preview

* #121 Make avatar and label one button
2022-06-30 12:56:36 +03:00
Doug
e140c83c19 #40: Add server selection screen from EI. 2022-06-30 10:49:00 +01:00
Anderas
b1e9249328 Implement new ClientBuilder pattern for login (#120)
* Implement new ClientBuilder pattern for login

* Add changelog
2022-06-30 08:10:59 +01:00
ismailgulek
88c7b2340c Add localizations to UI tests target (#118) 2022-06-29 18:32:14 +03:00
ismailgulek
d89cefa253 Background execution (#100)
* #99 Implement background tasks

* #99 Add changelog

* #99 Fix some code smells

* #99 Use background tasks in room timeline controller

* #99 Move background task service into room proxy and media provider
2022-06-29 13:03:28 +03:00
Doug
da7cc779fe #40: Add the login screen from EI.
- Remove SSO and replace fallback with OIDC.
2022-06-28 12:23:35 +01:00
ismailgulek
704771206f Plain timeline styler (#94)
* #92 Create `TimelineStyle` and store it in user defaults

* #92 Create `TimelineStyler` observable environment object

* #92 Use timeline list row insets from the styler

* #92 remove sender view, move header into the styler views

* #92 Add timeline style option in settings

* #92 Add changelog

* #92 refactor some code duplications

* #92 Fix `TimelineStyle`targets

* #92 Fix `TimelineStyle` targets

* #92 Fix PR remarks

* #92 Fix inline PR comments

* #92 Fix UI tests

* #92 Rename bubbled to bubbles
2022-06-27 13:27:09 +03:00
ismailgulek
8a921d7825 Room screen: timeline message bubbles (#91)
* #34 Create `TimelineItemStylerView`

* #34 Add styler view into different type of cells

* #34 Use placeholder avatar image on room list

* #34 Add `isOutgoing` param to event based timeline item

* #34 Compute `isOutgoing` for timeline items

* #34 Update sender info view in timeline

* #34 Update mock timeline items

* #34 Rename `EventBasedTimelineView` to `EventBasedTimelineSenderView`

* #34 Change padding on timeline cells

* #34 Create `TimelineItemStylerView` to move content into a bubble if needed

* #34 Use styler view in all of the timeline item views

* #34 Make timestamp more readable on images

* #34 Little layout tweaks

* #34 Add changelog

* #34 Fix code smells

* #34 Set text colors on timeline items

* #34 Fix background color of the timeline

* #34 Fix PR remarks

* #34 Set background colors explicitly on remaining screens

* #34 Reduce min bubble width and make it a scaled metric

* #34 Refactor `PlaceholderAvatarImage` to accept a text only

* #34 Fix code smell

* #34 Fix further comments
2022-06-23 14:54:29 +03:00
Doug
0e4c80450d Update DesignTokens to 0.0.2 2022-06-22 14:13:54 +01:00
Doug
d6479613e4 #40: Update SplashScreen to match Element iOS. 2022-06-22 09:52:55 +01:00
ismailgulek
e9593630dc Room screen header (#86)
* #35 Create `ElementNavigationController` subclass

* #35 Add encryption icons

* #35 Add avatar and encryption badge image to the room screen view model

* #35 Create `RoomHeaderView` class

* #35 Replace room title with a RoomHeaderView instance in the toolbar

* #35 Add changelog

* #35 Introduce `UITestScreenIdentifier` and refactor ui tests

* #35 Fix old tests

* #35 add some tests for room screen

* #35 Use svgs instead of pngs

* #35 Fix PR remarks
2022-06-21 20:28:42 +03:00
ismailgulek
5f3a22e4e5 Minimal Settings screen UI (#85)
* #37 Remove sign out button from home screen

* #37 Move crash button visibility flag to BuildSettings, import BuildSettings from test targets

* #37 Add log out button into the settings screen

* #37 Add version into the settings screen

* #37 enhance bug report parameters

* #37 Remove sign out button from home screen

* #37 Move crash button visibility flag to BuildSettings, import BuildSettings from test targets

* #37 Add log out button into the settings screen

* #37 Add version into the settings screen

* #37 enhance bug report parameters

* #37 Add changelog

* #37 Fix code smells and PR remarks
2022-06-20 15:27:02 +03:00
ismailgulek
84a6ef13af Auto dismiss bug report when completed (#83)
* #76 Show success indicator on settings coordinator when bug report completed

* #76 Add changelog

* #76 remove unused method

* #76 Rename `errorIndicator`s to `statusIndicator`s
2022-06-20 13:06:29 +03:00
ismailgulek
0c6d4bd41f Add GH labels to bug reports (#84) 2022-06-17 15:54:45 +03:00
Doug
2f0fe9e1d6 #40: Add UserSessionStoreProtocol.
Only log out of the specific account.
Add tests for the keychain controller.
Expand test coverage.
PR comments
2022-06-16 10:58:39 +01:00
Doug
d3b7b6377d #40: Self review for PR 2022-06-16 10:58:39 +01:00
Doug
701a8a389e #40: Create UserSessionStore and update state machine for session restoration. 2022-06-16 10:58:39 +01:00
Doug
81df70c66d #40: Add OnboardingSplashScreen from EI.
Update SplashScreen for EXI
2022-06-16 10:58:39 +01:00
Doug
ec11e46f7d Use .element.accent instead of elementGreen colour asset. (#79)
Remove local copy of Element Green
2022-06-13 08:38:28 +01:00
Stefan Ceriu
6be74a0e56 Disable sentry event sending on debug builds 2022-06-10 14:18:37 +03:00
Doug
f3dca240a1 #43: Add the DesignKit package to the project.
* Add ElementTextFieldStyle and static style properties.
* Rename button styles, support sizes and simplify colour.
2022-06-09 14:44:46 +01:00
Doug
be7c0e2ac9 #26: Add filtering of rooms by name.
* Add searchable to home screen.
* search ignoring case and accents
* Move home screen room search filtering to the ViewState
* Use lazy filtering for search.

Co-authored-by: Matthew Hodgson <matthew@matrix.org>
Co-authored-by: Stefan Ceriu <stefanc@matrix.org>
2022-06-08 13:25:24 +01:00
Stefan Ceriu
7879374927 Fix incorrect user display name label color on dark mode 2022-06-08 13:59:25 +03:00
Stefan Ceriu
74427fd98e Disable sentry debug mode as it generates too much noise 2022-06-08 12:46:22 +03:00
ismailgulek
19a14b4583 Fix Info.plist crash on Mac (#72)
* #71 Use custom template for Info.plist

* Add changelog
2022-06-06 15:02:16 +03:00
ismailgulek
cecf9f9cf5 Rageshake Service (#70) 2022-06-06 12:38:07 +03:00
Stefan Ceriu
a049923f21 #66 - Rebuild the AppCoordinator on top of a SwiftState FSM 2022-06-02 13:23:35 +03:00
Stefan Ceriu
61d28aab1c Fixes #22 - Prevent timeline jumps while animating the composer keyboard 2022-05-31 16:16:01 +03:00
Stefan Ceriu
5e4f49d9ba Cleanup various animations 2022-05-31 16:16:01 +03:00
Stefan Ceriu
fc167f2593 Fix copyright file headers and project template 2022-05-31 16:16:01 +03:00
Stefan Ceriu
c04e3452ba #53 - Refactored various components:
- updated the authentication coordinator to use async await
- replaced the UserSession with a ClientProxy (similar to the RoomProxy)
- renamed `completion` to `callback` on the coordinators and view models
- renamed `viewModelResult` to `viewModelAction`
- introduced back UserSession as a user specific service container
2022-05-30 16:06:11 +03:00
Stefan Ceriu
0c3e2f4a6c vector-im/element-x-ios/issues/53 - Various tweaks following code review 2022-05-26 11:42:57 +03:00
Stefan Ceriu
c4480e4524 Fix various code smells as reported by Sonarcloud, fixed tests 2022-05-26 11:42:57 +03:00
Stefan Ceriu
46845c77d0 vector-im/element-x-ios/issues/53 - Adopt MainActors, dispatch heavy operations do detached tasks and ensure combine publisher call back on the right queue 2022-05-26 11:42:57 +03:00