private Task RawInit(string path) { var loadTaskCompletionSource = new TaskCompletionSource<int>(); var cfxWindowInfo = new CfxWindowInfo(); cfxWindowInfo.SetAsWindowless(true); _CfxClient = new CfxClient(); var loadHandler = new CfxLoadHandler(); loadHandler.OnLoadEnd += (sender, args) => { _CfxBrowser = args.Browser; loadTaskCompletionSource.TrySetResult(0); }; _CfxClient.GetLoadHandler += (o, e) => e.SetReturnValue(loadHandler); var lifeSpanHandler = new CfxLifeSpanHandler(); _CfxClient.GetLifeSpanHandler += (o, e) => e.SetReturnValue(lifeSpanHandler); var renderHandler = new CfxRenderHandler(); _CfxClient.GetRenderHandler += (sender, e) => e.SetReturnValue(renderHandler); if (!CfxBrowserHost.CreateBrowser(cfxWindowInfo, _CfxClient, path, GetSettings(), null)) throw new Exception("Problem initializing CEF"); return loadTaskCompletionSource.Task; }
private void DebugClient_GetLifeSpanHandler(object sender, CfxGetLifeSpanHandlerEventArgs e) { var debugLifeSpan = new CfxLifeSpanHandler(); debugLifeSpan.OnAfterCreated += DebugLifeSpan_OnAfterCreated; debugLifeSpan.OnBeforeClose += DebugLifeSpan_OnBeforeClose; e.SetReturnValue(debugLifeSpan); }