public void OnContextCreated(ICefBrowser browser, ICefFrame frame, ICefV8Context context) { if (browsers.TryGetValue(browser.Identifier, out var browserController)) { browserController.OnContextCreated(frame, context); } }
public void Initialize(ICefBrowser browser, MessageClient client) { this.browser = browser; this.client = client; client.ProcessMessageReceived += ClientOnProcessMessageReceived; }
private void CallbackDone(PromiseResult promiseResult, ICefBrowser browser, long executionId) { var callbackResult = new CallbackResult <ICefValue> { ExecutionId = executionId, Success = promiseResult.Success }; if (promiseResult.Success) { callbackResult.Result = v8Serializer.Serialize(promiseResult.Result); } else if (!string.IsNullOrWhiteSpace(promiseResult.Error)) { callbackResult.Error = promiseResult.Error; } var response = new RpcResponse <ICefValue> { CallbackResult = callbackResult }; var msg = CefProcessMessage.Create(Messages.RpcResponseMessage); var serialized = v8Serializer.Serialize(response); msg.Arguments.SetValue(0, serialized); browser.SendProcessMessage(CefProcessId.Browser, msg); }
public void OnBrowserDestroyed(ICefBrowser browser) { if (browsers.TryGetValue(browser.Identifier, out var browserController)) { browsers.Remove(browser.Identifier); browserController.Dispose(); } }
bool ICefClient.OnProcessMessageReceived(ICefBrowser browser, CefProcessId sourceProcess, ICefProcessMessage message) { var args = new ProcessMessageReceivedArgs(browser, message); OnProcessMessageReceived(args); return(args.Handled); }
public BrowserController(ICefBrowser browser, PromiseService promiseService) { this.browser = browser; functionCallPromiseRegistry = new SavedValueFactory <Promise>(promiseService.CreatePromise); dynamicObjectPromiseRegistry = new SavedValueFactory <Promise>(promiseService.CreatePromise); objectSerializer.Serializers.Insert(0, new V8Serializer(promiseService, callbackRegistry)); objectSerializer.Deserializers.Insert(0, new V8Deserializer(functionCallPromiseRegistry)); }
public bool OnBeforeNavigation(ICefBrowser browser, ICefFrame frame, ICefRequest request, CefNavigationType navigation_type, bool isRedirect) { if (browsers.TryGetValue(browser.Identifier, out var browserController)) { browserController.OnBeforeNavigate(frame, request, navigation_type, isRedirect); } return(false); }
public bool OnProcessMessageReceived(ICefBrowser browser, CefProcessId sourceProcess, ICefProcessMessage message) { var handled = false; if (browsers.TryGetValue(browser.Identifier, out var browserController)) { handled = browserController.OnProcessMessage(message); } if (!handled) { var args = new ProcessMessageReceivedArgs(browser, message); ProcessMessageReceived?.Invoke(this, args); handled = args.Handled; } return(handled); }
public ProcessMessageReceivedArgs(ICefBrowser browser, ICefProcessMessage message) { Browser = browser; Message = message; }
public void OnBrowserCreated(ICefBrowser browser) { browsers.Add(browser.Identifier, new BrowserController(browser, promiseService)); }