Stefan Ceriu
0f0acc89d6
#1098 - Various changes following code review.
2021-10-13 11:26:27 +03:00
Stefan Ceriu
cf03af3629
#1098 - Fix performance issues on item list change. Rebuild the whole list instead of comparing changed items.
2021-10-13 11:26:27 +03:00
Stefan Ceriu
1fad621b17
#1098 - Avatar view model: stop requesting avatars for empty URIs.
2021-10-13 11:26:27 +03:00
Stefan Ceriu
56a7da7759
#1098 - Fixed iOS 15 issues.
2021-10-13 11:26:27 +03:00
Stefan Ceriu
3de15b914c
#1098 - Stopped relying on the SDK in the suggestionService and added unit and ui tests.
2021-10-13 11:26:27 +03:00
Stefan Ceriu
9b3e68a3db
#1098 - Working real user suggestion inside the main application.
2021-10-13 11:26:22 +03:00
Stefan Ceriu
109a4e7157
#1098 - Added user suggestions to the main app timeline.
2021-10-13 11:25:36 +03:00
Stefan Ceriu
7de24ab628
#1098 - Generated UserSuggestion from template, got initial UI working and automatically updating.
2021-10-13 11:24:46 +03:00
Stefan Ceriu
b499c20e16
vector-im/element-ios/issues/1098 - Fixed indentation in templates. Added UnitTests to the main RiotSwiftUI target.
2021-10-13 11:23:56 +03:00
Stefan Ceriu
347e24f451
vector-im/element-ios/issues/1098 - Fixed typo in template file name.
2021-10-13 11:23:55 +03:00
SBiOSoftWhare
f891cce4bb
Merge pull request #4960 from vector-im/steve/4734_master_tab_bar_refacto
...
Split view: Improve detail view management and add possibility to stack views on it
2021-10-11 17:23:20 +02:00
Doug
bd1982adee
Add FramePreferenceKey for use in ViewFrameReader.
2021-10-11 12:18:10 +01:00
SBiOSoftWhare
feef2baa95
NavigationStore: Update public method signature.
2021-10-08 17:15:14 +02:00
SBiOSoftWhare
3d75153bc1
Use NavigationRouterStore where needed.
2021-10-05 10:48:52 +02:00
David Langley
ef6fe71b12
Don't need to take modifiers as parameter to screenGroup. Fix example theming.
2021-09-24 17:21:33 +01:00
David Langley
80eea0633a
Address comments, show unencrypted rooms,
...
retain viewModel and services in ScreenSates so you can interact with Previews after the first state.
2021-09-23 23:57:54 +01:00
David Langley
c2db604489
Merge branch 'develop' of github.com:vector-im/element-ios into langleyd/4781_swiftui_template_example2
2021-09-23 12:31:33 +01:00
David Langley
8f6b9901f2
Add viewAction to state action.
2021-09-21 11:22:05 +01:00
David Langley
a2975e1a4f
Only display unencrypted rooms which we can use with the chat view.
2021-09-21 08:06:27 +01:00
David Langley
a020f1cabb
Merge branch 'langleyd/4781_swiftui_template_examples' of https://github.com/vector-im/element-ios into langleyd/4781_swiftui_template_example2
2021-09-20 17:28:16 +01:00
David Langley
71e0886ef4
Add counter example to show viewActions modifying the state.
2021-09-20 17:05:54 +01:00
David Langley
a83891e754
Fix Unit tests
2021-09-20 15:56:53 +01:00
David Langley
98078b3466
Merge branch 'develop' of https://github.com/vector-im/element-ios into langleyd/4781_swiftui_template_examples
2021-09-20 08:50:38 +01:00
David Langley
d12eedc7e0
Cleanup, documentation and ui tests.
2021-09-20 08:47:28 +01:00
David Langley
a16f4cd92b
Add Flow coordinator and hook up screens.
2021-09-17 10:46:40 +01:00
David Langley
50684fda0b
Improve scrolling behaviour and add name colors
2021-09-16 23:48:59 +01:00
David Langley
2e952a6298
Use dynamicMembers for StoreState for single source of truth. Fix bubble grouping and add send message function.
2021-09-16 22:09:32 +01:00
David Langley
d7ed0cd292
Merge branch 'langleyd/4781_swiftui_template_examples' of https://github.com/vector-im/element-ios into langleyd/4781_swiftui_template_example2
2021-09-15 17:32:19 +01:00
David Langley
3f32956776
parameter not used in ThemePublisher.configure
2021-09-15 17:12:56 +01:00
David Langley
ed82cec9f8
Allow defer in xcAwait. simplify sending state actions from a publisher. Fix tests.
2021-09-15 16:09:41 +01:00
David Langley
e1af8b6434
Improve StateStore documentation and naming.
2021-09-15 14:04:18 +01:00
David Langley
c16001a2d6
Introduce StateStore with bindings example for Chat example.
2021-09-15 11:47:59 +01:00
David Langley
3845d65f14
Add StateStoreViewModel and publisher extensions for convenienec.
2021-09-14 22:30:25 +01:00
David Langley
37c5b7e73b
Add StateStoreViewModel and publisher extensions for convenienec.
2021-09-14 22:28:25 +01:00
David Langley
d3e4ae956e
Update RiotSwiftUI symbols to triple slash documentation style with function annotations.
2021-09-13 11:40:38 +01:00
David Langley
9cd979a6b5
Fix Naming
...
Change userService name to templateUserProfileService for templating.
Remove test subclass from MockScreenTest
2021-09-13 11:40:38 +01:00
David Langley
8005a24caa
Add subviews for message and image
2021-09-13 11:39:42 +01:00
David Langley
65c7e5c661
Add chat example
2021-09-13 11:39:42 +01:00
David Langley
517d61b7ae
Update RiotSwiftUI symbols to triple slash documentation style with function annotations.
2021-09-13 11:36:33 +01:00
David Langley
79cb0b2995
Fix Naming
...
Change userService name to templateUserProfileService for templating.
Remove test subclass from MockScreenTest
2021-09-13 10:13:29 +01:00
David Langley
2d6d9796ea
move MockScreenTest to UI folder as should be excluded from Unit test target
2021-09-10 17:02:20 +01:00
David Langley
5d9dddbb8f
fix immutability
2021-09-10 16:56:35 +01:00
David Langley
e0a1832cca
fix example userId and avatarUrl
2021-09-10 16:55:11 +01:00
David Langley
7c6023fdd7
Add utility to run UI tests for Screen states, add screen states for template and finish unit test.
2021-09-10 16:43:31 +01:00
David Langley
fb203cce5e
Add configurable logger for RiotSwiftUI
2021-09-09 22:42:00 +01:00
David Langley
ce7f015d91
Update based on comments from Doug
2021-09-09 17:00:45 +01:00
David Langley
158ef08eec
UITests and Mock Screens
...
Adds the test targets for Unit and UI tests
Adds mock screen data and utilities to render each mock screen for previews/ui tests.
Changes Published property in the service to CurrentValueSubject. we don't need the synthesized aspect of Published and property wrappers cannot be included in protocols.
2021-09-09 16:23:00 +01:00
David Langley
7893fa99bd
Merge branch 'langleyd/4781_swiftui_template_examples' of https://github.com/vector-im/element-ios into langleyd/4781_swiftui_template_examples
2021-09-09 10:50:42 +01:00
David Langley
dc0347144a
Make reducer static, pass viewState directly to reducer, log reducer.
2021-09-09 10:50:39 +01:00
David Langley
273e07e3f9
Update RiotSwiftUI/Modules/Template/SimpleUserProfileExample/ViewModel/TemplateUserProfileViewModel.swift
...
Co-authored-by: manuroe <manuroe@users.noreply.github.com>
2021-09-09 10:34:25 +01:00
David Langley
dd191c07d1
Apply documentation suggestions from code review
...
Co-authored-by: manuroe <manuroe@users.noreply.github.com>
2021-09-09 10:31:41 +01:00
David Langley
d82120fbec
fix build
2021-09-08 17:56:51 +01:00
David Langley
23f236805f
Fix retain cycle
2021-09-08 16:37:56 +01:00
David Langley
5938fa5554
Extract presence listener setup out to own function.
2021-09-08 16:28:08 +01:00
David Langley
89bf79df7d
CoordinatorParamters, Type -> Protocol, remove MX Prefix.
2021-09-08 15:47:24 +01:00
David Langley
0a7beb6744
Add template unit tests and publisher utility.
2021-09-08 15:32:41 +01:00
David Langley
45758166a1
Fix ordering, add pragmas, fix visibility on a few functions, remove default param on state.
2021-09-08 11:43:57 +01:00
David Langley
cc671a4bee
Correct preview name and create template script
2021-09-08 00:00:34 +01:00
David Langley
82f61c65c2
Improve folder name
2021-09-07 23:04:52 +01:00
David Langley
7c91b23d61
Make naming of symbols consistent
2021-09-07 23:02:26 +01:00
David Langley
f9840f79ba
Remove unneeded protocol and methods on VectortHostingController
2021-09-07 22:49:11 +01:00
David Langley
c1f9e6ec4a
Add ViewActions and ViewModelActions for Coordinator
...
- also add Marks
2021-09-07 16:57:08 +01:00
David Langley
2b2275d0d7
Add Simple Template Example
...
- Add a simple Template example that shows a user profile with avatar, displayName and presence.
- ScreenCoordinator: closure based with less protocols and delegates.
- Reducer: Reducer function that manages all state modifications.
- SwiftUI View: Decomposes UI into appropriate sub components.
- Uses Theme and Dependency Management Infrastructure
2021-09-06 17:12:31 +01:00
David Langley
340ac5b3f6
Merge branch 'langleyd/4776_extract_swiftui' of https://github.com/vector-im/element-ios into langleyd/4781_swiftui_template_examples
2021-09-02 14:23:39 +01:00
David Langley
e984457941
Move complete room notification settings module to RiotSwiftUI and fix naming/directory structure.
2021-09-02 14:09:29 +01:00
David Langley
43ad395e8d
move full module and reorganize folders
2021-09-02 10:00:59 +01:00
David Langley
aacbb799a5
Fix filename typo
2021-09-02 09:43:54 +01:00
David Langley
7813cdd40a
Add simple example with profile header, avatar and name.
2021-09-02 09:37:37 +01:00
David Langley
23fdb7c2a2
Clean up and make an application target so that debug works in live preview.
2021-09-01 14:28:47 +01:00
David Langley
790301ccb6
Finish extraction
...
- Moves SwiftUI code out of Riot and into RiotSwiftUI which has no dependency on Matrix SDK.
- Git wasn't smart enough to see the file moves. Most feature function has remain unchanged. 1 change I did make was remove NotificationSettingsViewModel's dependence on MxPushRule, so that the view model could be moved into RiotSwiftUI.
- Add LocaleProvider to abstract VectorL10n's use of Matrix SDK language so it can be used in RiotSwiftUI.
- Split Theme into UKit/SwiftUI version to remove RiotSwiftUI's dependence on ThemeService and ThemeV1.
- Migrated from ThemeObserver to ThemePublisher. We push updates to ThemePublisher so that we can remove ThemeService as dependency.
- Add .DS_Store to .gitignore
2021-09-01 12:34:38 +01:00