public void InitializeNoWallet()
        {
            // This relies on Global registered
            var message = new InitializeNoWalletTaskMessage();

            MessagingCenter.Send(message, "InitializeNoWalletTaskMessage");
        }
        public App(Action <IServiceCollection> configureOSServices)
        {
            InitializeComponent();

            var hostBuilder = MobileBlazorBindingsHost.CreateDefaultBuilder()
                              .ConfigureServices((hostContext, services) =>
            {
                services.AddBlazorHybrid();
                services.UseMicrosoftDependencyResolver();
                var resolver = Locator.CurrentMutable;
                resolver.InitializeSplat();
                resolver.InitializeReactiveUI();

                // shorthand for e.g.
                // services.AddTransient<IViewFor<SecondaryViewModel>, SecondaryPage>();

                resolver
                .RegisterView <MainPage, MainViewModel>()
                .RegisterView <WalletInfoPage, WalletInfoViewModel>()
                .RegisterView <TransactionDetailPage, TransactionViewModel>()
                .RegisterView <LandingPage, LandingViewModel>()
                .RegisterView <LoadWalletPage, LoadWalletViewModel>()
                .RegisterView <ReceivePage, ReceiveViewModel>()
                .RegisterView <AddressPage, AddressViewModel>()
                .RegisterView <RequestAmountModal, RequestAmountViewModel>()
                .RegisterView <SendAmountPage, SendAmountViewModel>()
                .RegisterView <FeeModal, FeeViewModel>()
                .RegisterView <CoinSelectModal, CoinListViewModel>()
                .RegisterView <CoinDetailModal, CoinViewModel>()
                .RegisterView <SendWhoPage, SendWhoViewModel>()
                .RegisterView <SentPage, SentViewModel>()
                .RegisterView <CoinJoinPage, CoinJoinViewModel>()
                .RegisterView <NewPasswordPage, NewPasswordViewModel>()
                .RegisterView <VerifyMnemonicPage, VerifyMnemonicViewModel>()
                .RegisterView <PasswordPromptModal, PasswordPromptViewModel>()
                .RegisterView <StartBackUpModal, StartBackUpViewModel>()
                .RegisterView <BackUpModal, BackUpViewModel>()
                .RegisterNavigationView(() => new NavigationView());

                configureOSServices?.Invoke(services);

                services.AddSingleton <Global, Global>();
            })
                              .UseWebRoot("wwwroot");

            hostBuilder.UseStaticFiles();


            _host = hostBuilder.Build();
            Container.UseMicrosoftDependencyResolver();

            // This relies on Global registered
            var message = new InitializeNoWalletTaskMessage();

            MessagingCenter.Send(message, "InitializeNoWalletTaskMessage");

            var page = WalletExists() ? (IViewModel) new MainViewModel() : new LandingViewModel();

            Locator
            .Current
            .GetService <IViewStackService>()
            .PushPage(page, null, true, false)
            .Subscribe();

            MainPage = Locator.Current.GetNavigationView();

            AppDomain.CurrentDomain.UnhandledException += CurrentDomain_UnhandledException;
            TaskScheduler.UnobservedTaskException      += TaskScheduler_UnobservedTaskException;

            //host.AddComponent<Main>(parent: MainPage);
        }
Beispiel #3
0
        public void InitializeNoWallet()
        {
            var message = new InitializeNoWalletTaskMessage();

            MessagingCenter.Send(message, "InitializeNoWalletTaskMessage");
        }