element-hq / element-hq/element-ios

Create a root coordinator per legacy screen flows

Open
#3,597 0 comments 0 reactions 0 assignees View on GitHub
A-Developer-Experience A-Navigation
Dominant language
Swift
Stars
1.8k
Forks
544
PR merge metrics
PR metrics pending

Description

At the beginning we can create several root coordinators to handle screen flows in ObjC. Navigation between detail screens in these flows can be called from view controllers directly but the root view controllers should delegate navigation to the coordinator. We can create a root coordinator for:
- [x] split view
- [ ] tab bar: `TabBarCoordinator` exists,
- [ ] continue to migrate navigation code from `TabBarController` to `TabBarCoordinator`
- [ ] remove navigation to authentication, settings and so on when they are migrated to coordinator. They should be managed from other places.
- [ ] Unified search
- [ ] RoomViewController presentation (`showRoomDetails`)
- [ ] Contact details (`showContactDetails`)
- [ ] Show group detail (`showGroupDetails`)
- [ ] Show settings
- [ ] every root view controller from the tab bar
- [ ] home
- [ ] favorites
- [ ] people
- [ ] rooms
- [ ] groups
- [ ] settings
- [ ] room, look at Tchap [RoomCoordinator](https://github.com/dinsic-pim/tchap-ios/blob/develop/Tchap/Modules/Room/RoomCoordinator.swift)
- [ ] room settings
- [ ] authentication
...

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.