using CefSharp.OutOfProcess.Model; using System; using System.Threading.Tasks; namespace CefSharp.OutOfProcess { /// /// Send messages to the Remote Host (Browser process) /// public interface IOutOfProcessClientRpc { /// /// Close Browser /// /// browser Id /// Task Task CloseBrowser(int browserId); /// /// Send DevTools message /// /// browser Id /// /// Task Task SendDevToolsMessage(int browserId, string message); /// /// Close the Browser Process (host) /// /// Task Task CloseHost(); /// /// Create a new browser within the Browser Process /// /// parent Hwnd /// start url /// browser id /// Task Task CreateBrowser(IntPtr parentHwnd, string url, int browserId); /// /// Notify the browser that the window hosting it is about to be moved or resized. /// This will dismiss any existing popups (dropdowns). /// /// browser Id void NotifyMoveOrResizeStarted(int browserId); /// /// Set whether the browser is focused. /// /// browser id /// set focus void SetFocus(int browserId, bool focus); /// /// Set the value associated with preference name. If value is null the /// preference will be restored to its default value. If setting the preference /// fails then will be populated /// with a detailed description of the problem. /// Preferences set via the command-line usually cannot be modified. /// /// The browser id. /// The preference name /// The preference value Task SetRequestContextPreferenceAsync(int browserId, string name, object value); } }