public void WebViewIsNotDisposedWhenUnloaded() { var view = new WebViewControl.WebView(); var disposed = false; view.Disposed += () => disposed = true; var window = new Window(); window.Title = CurrentTestName; window.Content = view; try { window.Show(); WaitFor(() => view.IsLoaded); window.Content = null; WaitFor(() => !view.IsLoaded); Assert.IsFalse(disposed); window.Content = view; window.Close(); WaitFor(() => !view.IsLoaded); Assert.IsTrue(disposed); } finally { window.Close(); } }
public async Task WebViewIsNotDisposedWhenUnloaded() { await Run(async() => { var taskCompletionSource = new TaskCompletionSource <bool>(); var view = new WebViewControl.WebView(); view.Disposed += delegate { taskCompletionSource.SetResult(true); }; var window = new Window { Title = CurrentTestName, Content = view }; try { window.Show(); window.Content = null; Assert.IsFalse(taskCompletionSource.Task.IsCompleted); window.Content = view; window.Close(); var disposed = await taskCompletionSource.Task; Assert.IsTrue(disposed); } finally { window.Close(); } }); }
public static nac.Forms.Form Browser(this nac.Forms.Form f) { // make a browser var browser = new WebViewControl.WebView(); browser.Initialized += (_sender, _args) => { System.Console.WriteLine("Web View Initialized"); // todo: change this to some kind of logging browser.LoadUrl("https://www.google.com"); }; f._Extend_AddRowToHost(browser, rowAutoHeight: false); return(f); }
public void WebViewIsDisposedWhenHostWindowIsNotShown() { var view = new WebViewControl.WebView(); var window = new Window(); window.Title = CurrentTestName; try { window.Content = view; var disposed = false; view.Disposed += () => disposed = true; window.Close(); Assert.IsTrue(disposed); } finally { window.Close(); } }
static void Main(string[] args) { var f = Avalonia.AppBuilder.Configure <nac.Forms.App>() .NewForm(); f.Text("Hello World!"); // make a browser var browser = new WebViewControl.WebView(); browser.Initialized += (_sender, _args) => { Console.WriteLine("Web View Initialized"); browser.LoadUrl("https://www.google.com"); }; f._Extend_AddRowToHost(browser, rowAutoHeight: false); f.Display(); }