예제 #1
0
        public void Show(BrowserWindowConfigModel config)
        {
            Application.Invoke(() =>
            {
                var window = new Window(serviceProvider)
                {
                    Title = config.Title ?? Window.DefaultConfig.Title,
                    Size  = new Size(
                        config.Width ?? Window.DefaultConfig.Size.Width,
                        config.Height ?? Window.DefaultConfig.Size.Height),
                    MinSize = new Size(
                        config.MinWidth ?? Window.DefaultConfig.MinSize.Width,
                        config.MinHeight ?? Window.DefaultConfig.MinSize.Height),
                    MaxSize = new Size(
                        config.MaxWidth ?? Window.DefaultConfig.MaxSize.Width,
                        config.MaxHeight ?? Window.DefaultConfig.MaxSize.Height),
                    BackgroundColor       = config.BackgroundColor ?? Window.DefaultConfig.BackgroundColor,
                    CanResize             = config.CanResize ?? Window.DefaultConfig.CanResize,
                    UseBrowserTitle       = config.UseBrowserTitle ?? Window.DefaultConfig.UseBrowserTitle,
                    EnableScriptInterface = config.EnableScriptInterface ?? Window.DefaultConfig.EnableScriptInterface,
                    EnableDevTools        = config.EnableDevTools ?? Window.DefaultConfig.EnableDevTools,
                    Icon = parent.Icon,
                };

                WindowStore.Add(window);

                window.LoadUrl(config.Url);
                window.Show();
            });

            // TODO: somehow send events from this window back to webview
        }
예제 #2
0
        public void Show(BrowserWindowConfigModel config)
        {
            // TODO: BrowserWindowConfigModel cannot hold all possible information (like Icon and Assembly)
            // TODO: transfer some configs from parent window (e.g. ExternalHost)
            Application.Invoke(() =>
            {
                var window = windowFactory.CreateWindow(config.WindowConfig);
                window.LoadUrl(config.Url);
                window.Show();
            });

            // TODO: somehow send events from this window back to webview
        }