diff --git a/Documentation/Content/Migrate_from_0_6_to_version_1_0.md b/Documentation/Content/Migrate_from_0_6_to_version_1_0.md index 4a8aa0d1..fd2a5690 100644 --- a/Documentation/Content/Migrate_from_0_6_to_version_1_0.md +++ b/Documentation/Content/Migrate_from_0_6_to_version_1_0.md @@ -8,6 +8,11 @@ * `IHTMLBinding` has been renamed `IHtmlBinding` +* Updates on the ViewModel should now happen on the UI thread, since Neutronium is not redirecting them anymore.
+Practically, this means that you should ensure that any `INotifyPropertyChanged` events and ObservableCollection updates occurs on the UI threads: +you can use [WPF Dispatcher](https://msdn.microsoft.com/en-us/library/system.windows.threading.dispatcher(v=vs.110).aspx) `Invoke` or `BeginInvoke` methods.
+Neutronium ALWAYS will call ViewModel on the UI thread either when updating properties value or executing command. + ### Vue scripts * Using vue mixins diff --git a/Examples/Example.ChromiumFX.PackUri/MainWindow.xaml b/Examples/Example.ChromiumFX.PackUri/MainWindow.xaml index 1998cc02..06b526fa 100644 --- a/Examples/Example.ChromiumFX.PackUri/MainWindow.xaml +++ b/Examples/Example.ChromiumFX.PackUri/MainWindow.xaml @@ -3,7 +3,7 @@ xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:wpf="clr-namespace:Neutronium.WPF;assembly=Neutronium.WPF" x:Class="Example.ChromiumFX.PackUri.MainWindow" - Title="HTML5 vs WPF" Height="700" Width="1200"> + Title="Pack Uri example" Height="700" Width="1200"> diff --git a/WebBrowserEngine/ChromiumFX/HTMEngine.ChromiumFX/Session/ChromiumFXSession.cs b/WebBrowserEngine/ChromiumFX/HTMEngine.ChromiumFX/Session/ChromiumFXSession.cs index 7033a353..bb0e7152 100644 --- a/WebBrowserEngine/ChromiumFX/HTMEngine.ChromiumFX/Session/ChromiumFXSession.cs +++ b/WebBrowserEngine/ChromiumFX/HTMEngine.ChromiumFX/Session/ChromiumFXSession.cs @@ -46,6 +46,8 @@ private void ChromiumWebBrowser_OnBeforeCommandLineProcessing(CfxOnBeforeCommand private void ChromiumWebBrowser_OnBeforeCfxInitialize(OnBeforeCfxInitializeEventArgs e) { + CfxRuntime.EnableHighDpiSupport(); + var settings = e.Settings; _SettingsBuilder?.Invoke(settings);