reactiveui / ReactiveUI

An advanced, composable, functional reactive model-view-viewmodel framework for all .NET platforms that is inspired by functional reactive programming. ReactiveUI allows you to abstract mutable state away from your user interfaces, express the idea around a feature in one readable place and improve the testability of your application.
https://www.reactiveui.net
MIT License
8.06k stars 1.12k forks source link

feature: Add Shell navigation Support for Xamarin.Forms #2304

Closed RLittlesII closed 3 years ago

RLittlesII commented 4 years ago

Is your feature request related to a problem? Please describe.

This is a request for Xamarin.Forms Shell Support.

Describe the solution you'd like

ReactiveUI to support Xamarin.Forms Shell as opposed to the current INavigation interface. This will introduce an entirely new paragadim into ReactiveUI for navigation and make the current RoutingState obsolete in Shell applications. The new Shell navigation will be specific to the Xamarin.Forms platform.

Describe alternatives you've considered

None. There is a perfectly convenient routing system in Xamarin Forms that ReactiveUI supports. But it doesn't support Shell. Currently you have to choose between Xamarin.Forms Shell or ReactiveUI Routing. The current ReactiveUI routing system will not support shell out of the box.

NOTE

There is currently some work the Xamarin.Forms team is doing to support MVVM with Shell. Last I was told that work is being tracked here https://github.com/xamarin/Xamarin.Forms/issues/5166

Describe suggestions on how to achieve the feature

An abstraction over the Shell to make it less static and more in line with MVVM patterns. Not sure the specifics of what this looks like.

Additional context

The Xamarin.Forms Shell approach is a Page => Page approach. ReactiveUI has been actively trying to move to the ViewModel based navigation. These two concepts are not congruent with each other, this doesn't mean they won't work together. This simply means that we will have to work to address concerns in our approach to get the most value.

open-collective-bot[bot] commented 4 years ago

Hey @RLittlesII :wave:,

Thank you for contributing to our project financially. We will handle your issue with priority support. To make sure we don't forget how special you are, we added a priority label to your issue.

Thank you again for contributing :tada:!

github-actions[bot] commented 2 years ago

This issue has been automatically locked since there has not been any recent activity after it was closed. Please open a new issue for related bugs.