void Load(IViewModel model) { model.PropertyChanged += (sender, args) => { }; _awesomiumContext.Post(state => { webView.Source = model.CreateUri(); webView.FocusView(); }, null); }
public GUI(Size size, IViewModel viewModel, SynchronizationContext awesomiumContext, DataSource dataSource) { _viewModel = viewModel; Size = size; _data = new Byte[Size.Width * 4 * Size.Height]; awesomiumContext.Post(state => { webView = WebCore.CreateWebView(Size.Width, Size.Height, WebViewType.Offscreen); webView.LoadingFrameFailed += webView_LoadingFrameFailed; webView.DocumentReady += WebViewOnDocumentReady; webView.IsTransparent = true; webView.CreateSurface += (s, e) => { _surface = new BitmapSurface(Size.Width, Size.Height); e.Surface = _surface; }; webView.WebSession.AddDataSource("gui", dataSource); webView.Source = viewModel.CreateUri(); webView.FocusView(); }, null); }