Comments (10)
Cool! Unfortunately I can't say "looking forward to the result", as our current project has decided to go a different direction and I don't typically have the time for my own projects (especially not now with the pandemic), but I still think it'll be a great feature to have and something I can see myself using if ever I need to do something similar again.
from sextant.
Hey @RLittlesII π,
Thanks for backing our project. 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.
Thanks again for backing us π!
from sextant.
I recently cleaned up and pushed RxUI.Plugins.Popup which extends the PopupPage
with IViewFor
.
Next step is to wrap the IPopupNavigation
to make it work cleanly with Rg.Plugins.Popup.
from sextant.
I'm currently also working on an implementation for this within our own project. Not sure whether it's going to make the cut for the project-release, but at this point I have a fully observable IPopupViewStackService
implementation that works the same as Sextant's view stack service (it re-uses much of the code), including view resolution. I'll discuss this within the team, as may be this code can be made available for inclusion into the project.
from sextant.
So I've been allowed to share my code here. Although I, unfortunately, do not have the time to merge this with Sextant's code itself. Or possibly better still (to not create unnecessary project dependencies), create a separate library for it, I thought sharing what I have here might be a good step towards making this a reality.
from sextant.
@AlexanderMelchers Thank you for the suggestion. I have rolled something like this myself in the past. I am not sure when I will be able to get to this feature. It's getting closer to the top of my list.
The way you approached it is similar to the way I have in the past. What I am thinking is to still have a single interface that can be injected, but it would implement the popup interface as well. That way there is only one stack service to inject that surfaces all my API concerns. This would probably be Forms specific.
Side Note: I would change all Observable.FromEventPattern
to Observable.FromEvent
there is a sizeable performance difference between them.
from sextant.
Hi @RLittlesII,
Does that mean that Sextant would support pop-ups without dependency on the Rg.Plugin.Popup? Because one of my concerns would be to create a hard dependency on this package, which for most cases would, of course, be superfluous to have in their app. Though I like the idea of a single view-stack, one of the reasons I did end up splitting the pop-up one off is that it has different dependencies. Now I know, of course, you could link out the package in cases where you're not actually using pop-ups. But there are cases where this is not possible (including debug builds). Also, it puts additional maintenance-load on a project, which I think might also be undesirable.
I actually came across you other plug-in as well, which is what inspired me to write the one posted here, since, from what I could tell, that one does not do any stack-management, which is something I did want for our implementation. Anyway, feel free to use it in any way you like. Just thought it be a shame to let it go entirely to waste.
Thanks for the tip on FromEvent
versus FromEventPattern
, by the way. Will keep an eye open for that ;)
from sextant.
I would like to create a Sextant.RgPopup package that explicitly brings Rg.Plugins.Popup into Sextant and handles some of the boilerplate code to get it up and running.
ReactiveUI.Plugins.Popup was a bridge to get me closer to implementing this feature. I ran into an issue with namespacing on NuGet. It wasn't mean to do any stack management in Sextant, hence the ReactiveUI namespace. All of this is part of a large goal to make Sextant stand alone if possible in future releases.
I don't have proposed implementation details as this feature isn't actively being worked on. It is in my pipeline. I have some ReactiveUI work that is currently a bit more pressing than this, as it has a larger target audience.
You're welcome for the tip. I want everyone's code to be performant!
from sextant.
Hello,
I have a question regarding the usage of Sextant.Plugin.Popup. Donβt know if this is the right place to ask though :). Whatever, I tried to find sample or documentation regarding the setup of the IPopupViewStackService and its usage. Do you have such information or tutorials ?
Thanks in advance !
from sextant.
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.
from sextant.
Related Issues (20)
- [BUG] When binding received parameter in ContentPage from INavigable ViewModel exception is thrown that cannot access UI control from another thread HOT 4
- [BUG] Splat.DryIoc UseDryIocDependencyResolver throws NullReferenceException in ViewStackServiceBase ctor HOT 2
- feature: Deep Linking HOT 4
- feature: Add navigation for AvaloniaUI HOT 2
- feature: Master Detail Support For Xamarin Forms HOT 5
- [BUG] Sextant sample navigation crashes with Android.Util.AndroidRuntimeException: 'Animators may only be run on Looper threads' HOT 8
- [BUG] PopRootAndTick in ViewStackServiceBase leaves behind the wrong viewmodel HOT 9
- [BUG] navigationService.PopPage does not trigger WhenNavigatedTo HOT 5
- feature: Provide a destruction hook for when the VM/view is going to be popped HOT 2
- [BUG] Can't build UWP HOT 13
- feature: Provide a way to detect when navigation to a view-model is completed, even if no navigation-parameter is being passed HOT 4
- feature: Provide an initialization hook for when the VM/view is going to be added to the stack/pushed HOT 1
- [BUG] Allow ViewModelFactory to resolve Views with contracts HOT 4
- [BUG] WhenNavigatedFrom not being called HOT 2
- feature: Consolidate Extension Methods for Navigation Registration HOT 5
- Apps With a Splash Page? HOT 6
- feature: Add support for Avalonia HOT 3
- [BUG] When calling Locator.CurrentMutable.RegisterNotificationView get exception HOT 7
- [BUG] PushModal does not allways show View HOT 6
- feature: help with winui 3 support HOT 3
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
π Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. πππ
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google β€οΈ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from sextant.