From 2cfa89e1cddbabcff18134d54d39d4970bb101ff Mon Sep 17 00:00:00 2001 From: JanEggers Date: Fri, 23 May 2014 23:02:25 +0200 Subject: [PATCH] made IsBrowserInitialized a Dependency Property --- CefSharp.Wpf/WebView.cs | 42 +++++++++++++++++++++++++++++++++++++++-- 1 file changed, 40 insertions(+), 2 deletions(-) diff --git a/CefSharp.Wpf/WebView.cs b/CefSharp.Wpf/WebView.cs index 376a745197..0143d92b13 100644 --- a/CefSharp.Wpf/WebView.cs +++ b/CefSharp.Wpf/WebView.cs @@ -42,7 +42,6 @@ public class WebView : ContentControl, IRenderWebBrowser, IWpfWebBrowser private readonly List disposables = new List(); public BrowserSettings BrowserSettings { get; set; } - public bool IsBrowserInitialized { get; private set; } public IJsDialogHandler JsDialogHandler { get; set; } public IKeyboardHandler KeyboardHandler { get; set; } public IRequestHandler RequestHandler { get; set; } @@ -149,6 +148,42 @@ public bool IsLoading #endregion IsLoading dependency property + #region IsBrowserInitialized dependency property + + public bool IsBrowserInitialized + { + get { return (bool)GetValue(IsBrowserInitializedProperty); } + set { SetValue(IsBrowserInitializedProperty, value); } + } + + public static readonly DependencyProperty IsBrowserInitializedProperty = + DependencyProperty.Register("IsBrowserInitialized", typeof(bool), typeof(WebView), new PropertyMetadata(false, OnIsBrowserInitializedChanged )); + + public event DependencyPropertyChangedEventHandler IsBrowserInitializedChanged; + + private static void OnIsBrowserInitializedChanged(DependencyObject d, DependencyPropertyChangedEventArgs e) + { + WebView owner = (WebView)d; + bool oldValue = (bool)e.OldValue; + bool newValue = (bool)e.NewValue; + + owner.OnIsBrowserInitializedChanged(oldValue, newValue); + + var handlers = owner.IsBrowserInitializedChanged; + + if (handlers != null) + { + handlers(owner, e); + } + } + + protected virtual void OnIsBrowserInitializedChanged(bool oldValue, bool newValue) + { + + } + + #endregion IsInitialized dependency property + #region Title dependency property public string Title @@ -884,7 +919,10 @@ private void OnMouseButton(MouseButtonEventArgs e) void IWebBrowserInternal.OnInitialized() { - //browserCore.OnInitialized(); + DoInUi(() => + { + SetCurrentValue(IsBrowserInitializedProperty, true); + }); } public void Load(string url)