Ejemplo n.º 1
0
Archivo: Forms.cs Proyecto: hevey/maui
        static void SetupInit(
            IMauiContext mauiContext,
            UI.Xaml.Window mainWindow,
            IEnumerable <Assembly> rendererAssemblies = null,
            InitializationOptions?maybeOptions        = null)
        {
            MauiContext = mauiContext;
            Registrar.RegisterRendererToHandlerShim(RendererToHandlerShim.CreateShim);

            var accent = (WSolidColorBrush)Microsoft.UI.Xaml.Application.Current.Resources["SystemColorControlAccentBrush"];

            KnownColor.SetAccent(accent.ToColor());

            Device.SetIdiom(TargetIdiom.Tablet);
            Device.SetFlowDirection(mauiContext.GetFlowDirection());

            //TODO WINUI3
            //switch (Windows.System.Profile.AnalyticsInfo.VersionInfo.DeviceFamily)
            //{
            //	case "Windows.Desktop":
            //		if (Windows.UI.ViewManagement.UIViewSettings.GetForCurrentView().UserInteractionMode ==
            //			Windows.UI.ViewManagement.UserInteractionMode.Touch)
            //			Device.SetIdiom(TargetIdiom.Tablet);
            //		else
            //			Device.SetIdiom(TargetIdiom.Desktop);
            //		break;
            //	case "Windows.Mobile":
            //		Device.SetIdiom(TargetIdiom.Phone);
            //		break;
            //	case "Windows.Xbox":
            //		Device.SetIdiom(TargetIdiom.TV);
            //		break;
            //	default:
            //		Device.SetIdiom(TargetIdiom.Unsupported);
            //		break;
            //}

            ExpressionSearch.Default = new WindowsExpressionSearch();

            Registrar.ExtraAssemblies = rendererAssemblies?.ToArray();

            var platformServices = new WindowsPlatformServices();

            Device.PlatformServices    = platformServices;
            Device.PlatformInvalidator = platformServices;

            if (mainWindow != null)
            {
                MainWindow = mainWindow;

                //if (mainWindow is WindowsBasePage windowsPage)
                //{
                //	windowsPage.LoadApplication(windowsPage.CreateApplication());
                //	windowsPage.Activate();
                //}
            }

            IsInitialized = true;
        }
Ejemplo n.º 2
0
        static void SetupInit(
            IMauiContext mauiContext,
            UI.Xaml.Window mainWindow,
            IEnumerable <Assembly> rendererAssemblies = null,
            InitializationOptions?maybeOptions        = null)
        {
            MauiContext = mauiContext;
            Registrar.RegisterRendererToHandlerShim(RendererToHandlerShim.CreateShim);

            var accent = (WSolidColorBrush)Microsoft.UI.Xaml.Application.Current.Resources["SystemColorControlAccentBrush"];

            KnownColor.SetAccent(accent.ToColor());

            Device.SetFlowDirection(mauiContext.GetFlowDirection());

            ExpressionSearch.Default = new WindowsExpressionSearch();

            Registrar.ExtraAssemblies = rendererAssemblies?.ToArray();

            var platformServices = new WindowsPlatformServices();

            Device.PlatformServices = platformServices;

            if (mainWindow != null)
            {
                MainWindow = mainWindow;

                //if (mainWindow is WindowsBasePage windowsPage)
                //{
                //	windowsPage.LoadApplication(windowsPage.CreateApplication());
                //	windowsPage.Activate();
                //}
            }

            IsInitialized = true;
        }
Ejemplo n.º 3
0
        static void SetupInit(
            IMauiContext mauiContext,
            UI.Xaml.Window mainWindow,
            IEnumerable <Assembly> rendererAssemblies = null,
            InitializationOptions?maybeOptions        = null)
        {
            MauiContext = mauiContext;
            Registrar.RegisterRendererToHandlerShim(RendererToHandlerShim.CreateShim);

            var accent = (WSolidColorBrush)Microsoft.UI.Xaml.Application.Current.Resources["SystemColorControlAccentBrush"];

            KnownColor.SetAccent(accent.ToColor());

            if (!IsInitialized)
            {
                Log.Listeners.Add(new DelegateLogListener((c, m) => Debug.WriteLine(LogFormat, c, m)));
            }

            Device.SetIdiom(TargetIdiom.Tablet);
            Device.SetFlowDirection(mauiContext.GetFlowDirection());

            Device.SetFlags(s_flags);
            Device.Info = new WindowsDeviceInfo();

            //TODO WINUI3
            //// use field and not property to avoid exception in getter
            //if (Device.info != null)
            //{
            //	Device.info.Dispose();
            //	Device.info = null;
            //}
            //Device.Info = new WindowsDeviceInfo();

            //TODO WINUI3
            //switch (Windows.System.Profile.AnalyticsInfo.VersionInfo.DeviceFamily)
            //{
            //	case "Windows.Desktop":
            //		if (Windows.UI.ViewManagement.UIViewSettings.GetForCurrentView().UserInteractionMode ==
            //			Windows.UI.ViewManagement.UserInteractionMode.Touch)
            //			Device.SetIdiom(TargetIdiom.Tablet);
            //		else
            //			Device.SetIdiom(TargetIdiom.Desktop);
            //		break;
            //	case "Windows.Mobile":
            //		Device.SetIdiom(TargetIdiom.Phone);
            //		break;
            //	case "Windows.Xbox":
            //		Device.SetIdiom(TargetIdiom.TV);
            //		break;
            //	default:
            //		Device.SetIdiom(TargetIdiom.Unsupported);
            //		break;
            //}

            ExpressionSearch.Default = new WindowsExpressionSearch();

            Registrar.ExtraAssemblies = rendererAssemblies?.ToArray();

            var dispatcher = mainWindow?.DispatcherQueue ?? UI.Dispatching.DispatcherQueue.GetForCurrentThread();

            var platformServices = new WindowsPlatformServices(dispatcher);

            Device.PlatformServices    = platformServices;
            Device.PlatformInvalidator = platformServices;

            if (mainWindow != null)
            {
                MainWindow = mainWindow;

                //if (mainWindow is WindowsBasePage windowsPage)
                //{
                //	windowsPage.LoadApplication(windowsPage.CreateApplication());
                //	windowsPage.Activate();
                //}
            }

            IsInitialized = true;
        }