# Class TChromiumCore

Description
Hierarchy
Fields
Methods
Properties

## Unit

uCEFChromiumCore

## Declaration

`type TChromiumCore = class(TComponent, IChromiumEvents)`

## Description

Parent class of TChromium and TFMXChromium that puts together all browser procedures, functions, properties and events in one place. It has all you need to create, modify and destroy a web browser.

## Hierarchy

- TObject
- TPersistent
- TComponent
- TChromiumCore

## Overview

### Fields

| `FCompHandle: HWND;`
| `FHandler: ICefClient;`
| `FBrowsersCS: TCriticalSection;`
| `FBrowsers: TBrowserInfoList;`
| `FBrowserId: integer;`
| `FMultiBrowserMode: boolean;`
| `FReqContextHandler: ICefRequestContextHandler;`
| `FResourceRequestHandler: ICefResourceRequestHandler;`
| `FMediaObserver: ICefMediaObserver;`
| `FMediaObserverReg: ICefRegistration;`
| `FDevToolsMsgObserver: ICefDevToolsMessageObserver;`
| `FDevToolsMsgObserverReg: ICefRegistration;`
| `FSettingObserver: ICefSettingObserver;`
| `FSettingObserverReg: ICefRegistration;`
| `FPreferenceInfoList: TPreferenceInfoList;`
| `FPreferenceInfoCS: TCriticalSection;`
| `FDefaultUrl: ustring;`
| `FOptions: TChromiumOptions;`
| `FFontOptions: TChromiumFontOptions;`
| `FPDFPrintOptions: TPDFPrintOptions;`
| `FDefaultEncoding: ustring;`
| `FProxyType: integer;`
| `FProxyScheme: TCefProxyScheme;`
| `FProxyServer: ustring;`
| `FProxyPort: integer;`
| `FProxyUsername: ustring;`
| `FProxyPassword: ustring;`
| `FProxyScriptURL: ustring;`
| `FProxyByPassList: ustring;`
| `FMaxConnectionsPerProxy: integer;`
| `FUpdatePreferences: boolean;`
| `FCustomHeaderName: ustring;`
| `FCustomHeaderValue: ustring;`
| `FAddCustomHeader: boolean;`
| `FDoNotTrack: boolean;`
| `FSendReferrer: boolean;`
| `FHyperlinkAuditing: boolean;`
| `FAllowOutdatedPlugins: boolean;`
| `FAlwaysAuthorizePlugins: boolean;`
| `FAlwaysOpenPDFExternally: boolean;`
| `FSpellChecking: boolean;`
| `FSpellCheckerDicts: ustring;`
| `FZoomStep: byte;`
| `FZoomStepCS: TCriticalSection;`
| `FPrefsFileName: string;`
| `FIsOSR: boolean;`
| `FSafeSearch: boolean;`
| `FOffline: boolean;`
| `FYouTubeRestrict: integer;`
| `FPrintingEnabled: boolean;`
| `FWindowInfo: TCEFWindowInfoWrapper;`
| `FBrowserSettings: TCefBrowserSettings;`
| `FDevWindowInfo: TCEFWindowInfoWrapper;`
| `FDevBrowserSettings: TCefBrowserSettings;`
| `FDragOperations: TCefDragOperations;`
| `FDragDropManager: TCEFDragAndDropMgr;`
| `FDropTargetWnd: HWND;`
| `FDragAndDropInitialized: boolean;`
| `FWebRTCIPHandlingPolicy: TCefWebRTCHandlingPolicy;`
| `FWebRTCMultipleRoutes: TCefState;`
| `FWebRTCNonProxiedUDP: TCefState;`
| `FAcceptCookies: TCefCookiePref;`
| `FBlock3rdPartyCookies: boolean;`
| `FQuicAllowed: boolean;`
| `FJavascriptEnabled: boolean;`
| `FLoadImagesAutomatically: boolean;`
| `FCanFocus: boolean;`
| `FEnableFocusDelayMs: cardinal;`
| `FComponentID: integer;`
| `FDownloadBubble: TCefState;`
| `FHTTPSUpgrade: TCefState;`
| `FHSTSPolicyBypassList: ustring;`
| `FCredentialsService: TCefState;`
| `FAutofillCreditCard: TCefState;`
| `FAutofillProfile: TCefState;`
| `FAutofillSaveData: TCefState;`
| `FCanMakePayment: TCefState;`
| `FSearchSuggestEnabled: TCefState;`
| `FURLDataCollection: TCefState;`
| `FTryingToCloseBrowser: boolean;`
| `FStorageNotificationService: TCefState;`
| `FOldBrowserCompWndPrc: TFNWndProc;`
| `FOldRenderCompWndPrc: TFNWndProc;`
| `FBrowserCompStub: Pointer;`
| `FRenderCompStub: Pointer;`
| `FBrowserCompHWND: THandle;`
| `FRenderCompHWND: THandle;`
| `FOnProcessMessageReceived: TOnProcessMessageReceived;`
| `FOnLoadStart: TOnLoadStart;`
| `FOnLoadEnd: TOnLoadEnd;`
| `FOnLoadError: TOnLoadError;`
| `FOnLoadingStateChange: TOnLoadingStateChange;`
| `FOnTakeFocus: TOnTakeFocus;`
| `FOnSetFocus: TOnSetFocus;`
| `FOnGotFocus: TOnGotFocus;`
| `FOnBeforeContextMenu: TOnBeforeContextMenu;`
| `FOnRunContextMenu: TOnRunContextMenu;`
| `FOnContextMenuCommand: TOnContextMenuCommand;`
| `FOnContextMenuDismissed: TOnContextMenuDismissed;`
| `FOnRunQuickMenu: TOnRunQuickMenuEvent;`
| `FOnQuickMenuCommand: TOnQuickMenuCommandEvent;`
| `FOnQuickMenuDismissed: TOnQuickMenuDismissedEvent;`
| `FOnPreKeyEvent: TOnPreKeyEvent;`
| `FOnKeyEvent: TOnKeyEvent;`
| `FOnAddressChange: TOnAddressChange;`
| `FOnTitleChange: TOnTitleChange;`
| `FOnFavIconUrlChange: TOnFavIconUrlChange;`
| `FOnFullScreenModeChange: TOnFullScreenModeChange;`
| `FOnTooltip: TOnTooltip;`
| `FOnStatusMessage: TOnStatusMessage;`
| `FOnConsoleMessage: TOnConsoleMessage;`
| `FOnAutoResize: TOnAutoResize;`
| `FOnLoadingProgressChange: TOnLoadingProgressChange;`
| `FOnCursorChange: TOnCursorChange;`
| `FOnMediaAccessChange: TOnMediaAccessChange;`
| `FOnContentsBoundsChange: TOnContentsBoundsChange;`
| `FOnGetRootWindowScreenRect: TOnGetRootWindowScreenRect;`
| `FOnCanDownload: TOnCanDownloadEvent;`
| `FOnBeforeDownload: TOnBeforeDownload;`
| `FOnDownloadUpdated: TOnDownloadUpdated;`
| `FOnJsdialog: TOnJsdialog;`
| `FOnBeforeUnloadDialog: TOnBeforeUnloadDialog;`
| `FOnResetDialogState: TOnResetDialogState;`
| `FOnDialogClosed: TOnDialogClosed;`
| `FOnBeforePopup: TOnBeforePopup;`
| `FOnBeforePopupAborted: TOnBeforePopupAborted;`
| `FOnBeforeDevToolsPopup: TOnBeforeDevToolsPopup;`
| `FOnAfterCreated: TOnAfterCreated;`
| `FOnBeforeClose: TOnBeforeClose;`
| `FOnClose: TOnClose;`
| `FOnBeforeBrowse: TOnBeforeBrowse;`
| `FOnOpenUrlFromTab: TOnOpenUrlFromTab;`
| `FOnGetAuthCredentials: TOnGetAuthCredentials;`
| `FOnCertificateError: TOnCertificateError;`
| `FOnSelectClientCertificate: TOnSelectClientCertificate;`
| `FOnRenderViewReady: TOnRenderViewReady;`
| `FOnRenderProcessUnresponsive: TOnRenderProcessUnresponsive;`
| `FOnRenderProcessResponsive: TOnRenderProcessResponsive;`
| `FOnRenderProcessTerminated: TOnRenderProcessTerminated;`
| `FOnGetResourceRequestHandler_ReqHdlr: TOnGetResourceRequestHandler;`
| `FOnDocumentAvailableInMainFrame: TOnDocumentAvailableInMainFrame;`
| `FOnBeforeResourceLoad: TOnBeforeResourceLoad;`
| `FOnGetResourceHandler: TOnGetResourceHandler;`
| `FOnResourceRedirect: TOnResourceRedirect;`
| `FOnResourceResponse: TOnResourceResponse;`
| `FOnGetResourceResponseFilter: TOnGetResourceResponseFilter;`
| `FOnResourceLoadComplete: TOnResourceLoadComplete;`
| `FOnProtocolExecution: TOnProtocolExecution;`
| `FOnCanSendCookie: TOnCanSendCookie;`
| `FOnCanSaveCookie: TOnCanSaveCookie;`
| `FOnFileDialog: TOnFileDialog;`
| `FOnGetAccessibilityHandler: TOnGetAccessibilityHandler;`
| `FOnGetRootScreenRect: TOnGetRootScreenRect;`
| `FOnGetViewRect: TOnGetViewRect;`
| `FOnGetScreenPoint: TOnGetScreenPoint;`
| `FOnGetScreenInfo: TOnGetScreenInfo;`
| `FOnPopupShow: TOnPopupShow;`
| `FOnPopupSize: TOnPopupSize;`
| `FOnPaint: TOnPaint;`
| `FOnAcceleratedPaint: TOnAcceleratedPaint;`
| `FOnGetTouchHandleSize: TOnGetTouchHandleSize;`
| `FOnTouchHandleStateChanged: TOnTouchHandleStateChanged;`
| `FOnStartDragging: TOnStartDragging;`
| `FOnUpdateDragCursor: TOnUpdateDragCursor;`
| `FOnScrollOffsetChanged: TOnScrollOffsetChanged;`
| `FOnIMECompositionRangeChanged: TOnIMECompositionRangeChanged;`
| `FOnTextSelectionChanged: TOnTextSelectionChanged;`
| `FOnVirtualKeyboardRequested: TOnVirtualKeyboardRequested;`
| `FOnDragEnter: TOnDragEnter;`
| `FOnDraggableRegionsChanged: TOnDraggableRegionsChanged;`
| `FOnFindResult: TOnFindResult;`
| `FOnRequestContextInitialized: TOnRequestContextInitialized;`
| `FOnGetResourceRequestHandler_ReqCtxHdlr: TOnGetResourceRequestHandler;`
| `FOnSinks: TOnSinksEvent;`
| `FOnRoutes: TOnRoutesEvent;`
| `FOnRouteStateChanged: TOnRouteStateChangedEvent;`
| `FOnRouteMessageReceived: TOnRouteMessageReceivedEvent;`
| `FOnGetAudioParameters: TOnGetAudioParametersEvent;`
| `FOnAudioStreamStarted: TOnAudioStreamStartedEvent;`
| `FOnAudioStreamPacket: TOnAudioStreamPacketEvent;`
| `FOnAudioStreamStopped: TOnAudioStreamStoppedEvent;`
| `FOnAudioStreamError: TOnAudioStreamErrorEvent;`
| `FOnDevToolsMessage: TOnDevToolsMessageEvent;`
| `FOnDevToolsRawMessage: TOnDevToolsRawMessageEvent;`
| `FOnDevToolsMethodResult: TOnDevToolsMethodResultEvent;`
| `FOnDevToolsMethodRawResult: TOnDevToolsMethodRawResultEvent;`
| `FOnDevToolsEvent: TOnDevToolsEventEvent;`
| `FOnDevToolsRawEvent: TOnDevToolsEventRawEvent;`
| `FOnDevToolsAgentAttached: TOnDevToolsAgentAttachedEvent;`
| `FOnDevToolsAgentDetached: TOnDevToolsAgentDetachedEvent;`
| `FOnPrintStart: TOnPrintStartEvent;`
| `FOnPrintSettings: TOnPrintSettingsEvent;`
| `FOnPrintDialog: TOnPrintDialogEvent;`
| `FOnPrintJob: TOnPrintJobEvent;`
| `FOnPrintReset: TOnPrintResetEvent;`
| `FOnGetPDFPaperSize: TOnGetPDFPaperSizeEvent;`
| `FOnFrameCreated: TOnFrameCreated;`
| `FOnFrameDestroyed: TOnFrameDestroyed;`
| `FOnFrameAttached: TOnFrameAttached;`
| `FOnFrameDetached: TOnFrameDetached;`
| `FOnMainFrameChanged: TOnMainFrameChanged;`
| `FOnChromeCommand: TOnChromeCommandEvent;`
| `FOnIsChromeAppMenuItemVisible: TOnIsChromeAppMenuItemVisibleEvent;`
| `FOnIsChromeAppMenuItemEnabled: TOnIsChromeAppMenuItemEnabledEvent;`
| `FOnIsChromePageActionIconVisible: TOnIsChromePageActionIconVisibleEvent;`
| `FOnIsChromeToolbarButtonVisible: TOnIsChromeToolbarButtonVisibleEvent;`
| `FOnRequestMediaAccessPermission: TOnRequestMediaAccessPermissionEvent;`
| `FOnShowPermissionPrompt: TOnShowPermissionPromptEvent;`
| `FOnDismissPermissionPrompt: TOnDismissPermissionPromptEvent;`
| `FOnPreferenceChanged: TOnPreferenceChangedEvent;`
| `FOnSettingChanged: TOnSettingChangedEvent;`
| `FOnTextResultAvailable: TOnTextResultAvailableEvent;`
| `FOnPdfPrintFinished: TOnPdfPrintFinishedEvent;`
| `FOnPrefsAvailable: TOnPrefsAvailableEvent;`
| `FOnPrefsUpdated: TNotifyEvent;`
| `FOnCookiesDeleted: TOnCookiesDeletedEvent;`
| `FOnResolvedHostAvailable: TOnResolvedIPsAvailableEvent;`
| `FOnNavigationVisitorResultAvailable: TOnNavigationVisitorResultAvailableEvent;`
| `FOnDownloadImageFinished: TOnDownloadImageFinishedEvent;`
| `FOnCookiesFlushed: TNotifyEvent;`
| `FOnCertificateExceptionsCleared: TNotifyEvent;`
| `FOnHttpAuthCredentialsCleared: TNotifyEvent;`
| `FOnAllConnectionsClosed: TNotifyEvent;`
| `FOnHttpCacheCleared: TNotifyEvent;`
| `FOnExecuteTaskOnCefThread: TOnExecuteTaskOnCefThread;`
| `FOnCookiesVisited: TOnCookiesVisited;`
| `FOnCookieVisitorDestroyed: TOnCookieVisitorDestroyed;`
| `FOnCookieSet: TOnCookieSet;`
| `FOnZoomPctAvailable: TOnZoomPctAvailable;`
| `FOnMediaRouteCreateFinished: TOnMediaRouteCreateFinishedEvent;`
| `FOnMediaSinkDeviceInfo: TOnMediaSinkDeviceInfoEvent;`
| `FOnCanFocus: TNotifyEvent;`
| `FOnBrowserCompMsg: TOnCompMsgEvent;`
| `FOnRenderCompMsg: TOnCompMsgEvent;`

### Methods

| `function GetIsLoading: boolean;`
| `function GetMultithreadApp: boolean;`
| `function GetHasDocument: boolean;`
| `function GetHasView: boolean;`
| `function GetHasDevTools: boolean;`
| `function GetHasClientHandler: boolean;`
| `function GetHasBrowser: boolean;`
| `function GetCanGoBack: boolean;`
| `function GetCanGoForward: boolean;`
| `function GetDocumentURL: ustring;`
| `function GetZoomLevel: double;`
| `function GetZoomPct: double;`
| `function GetZoomStep: byte;`
| `function GetDefaultZoomLevel: double;`
| `function GetCanIncZoom: boolean;`
| `function GetCanDecZoom: boolean;`
| `function GetCanResetZoom: boolean;`
| `function GetIsPopUp: boolean;`
| `function GetWindowHandle: TCefWindowHandle;`
| `function GetOpenerWindowHandle: TCefWindowHandle;`
| `function GetOpenerIdentifier: Integer;`
| `function GetWindowlessFrameRate: integer;`
| `function GetFrameIsFocused: boolean;`
| `function GetInitialized: boolean;`
| `function GetVisibleNavigationEntry: ICefNavigationEntry;`
| `function GetRuntimeStyle: TCefRuntimeStyle;`
| `function GetHasValidMainFrame: boolean;`
| `function GetFrameCount: NativeUInt;`
| `function GetRequestContextCache: ustring;`
| `function GetRequestContextIsGlobal: boolean;`
| `function GetChromeColorSchemeMode: TCefColorVariant;`
| `function GetChromeColorSchemeColor: TCefColor;`
| `function GetChromeColorSchemeVariant: TCefColorVariant;`
| `function GetAudioMuted: boolean;`
| `function GetFullscreen: boolean;`
| `function GetIsRenderProcessUnresponsive: boolean;`
| `function GetParentFormHandle: TCefWindowHandle; virtual;`
| `function GetRequestContext: ICefRequestContext;`
| `function GetMediaRouter: ICefMediaRouter;`
| `function GetBrowser: ICefBrowser;`
| `function GetBrowserId: integer;`
| `function GetBrowserById(aID : integer) : ICefBrowser;`
| `function GetBrowserCount: integer;`
| `function GetBrowserIdByIndex(aIndex : integer) : integer;`
| `function GetComponentID: integer;`
| `function GetCefWindowInfo: TCefWindowInfo;`
| `function GetWindowInfoExStyle: DWORD;`
| `procedure SetDoNotTrack(aValue : boolean);`
| `procedure SetSendReferrer(aValue : boolean);`
| `procedure SetHyperlinkAuditing(aValue : boolean);`
| `procedure SetAllowOutdatedPlugins(aValue : boolean);`
| `procedure SetAlwaysAuthorizePlugins(aValue : boolean);`
| `procedure SetAlwaysOpenPDFExternally(aValue : boolean);`
| `procedure SetSpellChecking(aValue : boolean);`
| `procedure SetSpellCheckerDicts(const aValue : ustring);`
| `procedure SetWebRTCIPHandlingPolicy(aValue : TCefWebRTCHandlingPolicy);`
| `procedure SetWebRTCMultipleRoutes(aValue : TCefState);`
| `procedure SetWebRTCNonProxiedUDP(aValue : TCefState);`
| `procedure SetProxyType(aValue : integer);`
| `procedure SetProxyScheme(aValue : TCefProxyScheme);`
| `procedure SetProxyServer(const aValue : ustring);`
| `procedure SetProxyPort(aValue : integer);`
| `procedure SetProxyUsername(const aValue : ustring);`
| `procedure SetProxyPassword(const aValue : ustring);`
| `procedure SetProxyScriptURL(const aValue : ustring);`
| `procedure SetProxyByPassList(const aValue : ustring);`
| `procedure SetMaxConnectionsPerProxy(const aValue : integer);`
| `procedure SetCustomHeaderName(const aValue : ustring);`
| `procedure SetCustomHeaderValue(const aValue : ustring);`
| `procedure SetZoomLevel(const aValue : double);`
| `procedure SetZoomPct(const aValue : double);`
| `procedure SetZoomStep(aValue : byte);`
| `procedure SetWindowlessFrameRate(aValue : integer);`
| `procedure SetAudioMuted(aValue : boolean);`
| `procedure SetSafeSearch(aValue : boolean);`
| `procedure SetOffline(aValue : boolean);`
| `procedure SetYouTubeRestrict(aValue : integer);`
| `procedure SetPrintingEnabled(aValue : boolean);`
| `procedure SetAcceptCookies(const aValue : TCefCookiePref);`
| `procedure SetBlock3rdPartyCookies(const aValue : boolean);`
| `procedure SetMultiBrowserMode(aValue : boolean);`
| `procedure SetQuicAllowed(aValue : boolean);`
| `procedure SetJavascriptEnabled(aValue : boolean);`
| `procedure SetLoadImagesAutomatically(aValue : boolean);`
| `procedure SetDefaultUrl(const aValue : ustring);`
| `procedure SetRuntimeStyle(aValue : TCefRuntimeStyle);`
| `procedure SetWindowInfoExStyle(aValue : DWORD);`
| `function CreateBrowserHost(aWindowInfo : PCefWindowInfo; const aURL : ustring; const aSettings : PCefBrowserSettings; const aExtraInfo : ICefDictionaryValue; const aContext : ICefRequestContext): boolean;`
| `function CreateBrowserHostSync(aWindowInfo : PCefWindowInfo; const aURL : ustring; const aSettings : PCefBrowserSettings; const aExtraInfo : ICefDictionaryValue; const aContext : ICefRequestContext): Boolean;`
| `procedure DestroyAllBrowsers;`
| `procedure DestroyClientHandler;`
| `procedure DestroyReqContextHandler;`
| `procedure DestroyResourceRequestHandler;`
| `procedure DestroyMediaObserver;`
| `procedure DestroyDevToolsMsgObserver;`
| `procedure DestroySettingObserver;`
| `procedure DestroyPreferenceObserver;`
| `procedure DestroyAllHandlersAndObservers;`
| `procedure CreateResourceRequestHandler; virtual;`
| `procedure CreateMediaObserver; virtual;`
| `procedure CreateDevToolsMsgObserver; virtual;`
| `procedure CreateSettingObserver; virtual;`
| `procedure CreatePreferenceObserver; virtual;`
| `procedure CreateRequestContextHandler; virtual;`
| `procedure CreateOptionsClasses; virtual;`
| `procedure CreateSyncObjects; virtual;`
| `procedure CreateBrowserInfoList; virtual;`
| `procedure CreateWindowWithWndProc; virtual;`
| `procedure InitializeEvents;`
| `procedure InitializeSettings(var aSettings : TCefBrowserSettings);`
| `function UpdateProxyPrefs(const aBrowser: ICefBrowser) : boolean;`
| `function UpdatePreference(const aBrowser: ICefBrowser; const aName : ustring; aValue : boolean) : boolean; overload;`
| `function UpdatePreference(const aBrowser: ICefBrowser; const aName : ustring; aValue : integer) : boolean; overload;`
| `function UpdatePreference(const aBrowser: ICefBrowser; const aName : ustring; const aValue : double) : boolean; overload;`
| `function UpdatePreference(const aBrowser: ICefBrowser; const aName, aValue : ustring) : boolean; overload;`
| `function UpdatePreference(const aBrowser: ICefBrowser; const aName : ustring; const aValue : TStringList) : boolean; overload;`
| `function UpdateStringListPref(const aBrowser: ICefBrowser; const aName, aValue : ustring) : boolean;`
| `function ExecuteUpdateZoomStepTask(aInc : boolean) : boolean;`
| `function ExecuteUpdateZoomPctTask(aInc : boolean) : boolean;`
| `function ExecuteReadZoomTask: boolean;`
| `function ExecuteSetZoomPctTask(const aValue : double) : boolean;`
| `function ExecuteSetZoomLevelTask(const aValue : double) : boolean;`
| `function ExecuteSetZoomStepTask(aValue : byte) : boolean;`
| `function ExecuteBrowserNavigationTask(aTask : TCefBrowserNavigation) : boolean;`
| `procedure UpdateHostZoomLevel(const aValue : double);`
| `procedure UpdateHostZoomPct(const aValue : double);`
| `procedure DelayedDragging;`
| `procedure InitializeWindowInfo(aParentHandle : TCefWindowHandle; aParentRect : TRect; const aWindowName : ustring); virtual;`
| `procedure DefaultInitializeDevToolsWindowInfo(aDevToolsWnd: TCefWindowHandle; const aClientRect: TRect; const aWindowName: ustring);`
| `function AddBrowser(const aBrowser : ICefBrowser) : boolean;`
| `function RemoveBrowser(const aBrowser : ICefBrowser) : boolean;`
| `procedure SetBrowserIsClosing(aID : integer);`
| `procedure PrefsAvailableMsg(aResultOK : boolean);`
| `function SendCompMessage(aMsg : cardinal; aWParam : WPARAM = 0; aLParam : LPARAM = 0) : boolean;`
| `procedure ToMouseEvent(grfKeyState : Longint; pt : TPoint; var aMouseEvent : TCefMouseEvent);`
| `procedure WndProc(var aMessage: TMessage);`
| `procedure CreateStub(const aMethod : TWndMethod; var aStub : Pointer);`
| `procedure FreeAndNilStub(var aStub : pointer);`
| `function InstallCompWndProc(aWnd: THandle; aStub: Pointer): TFNWndProc;`
| `procedure RestoreCompWndProc(var aOldWnd: THandle; aNewWnd: THandle; var aProc: TFNWndProc);`
| `procedure CallOldCompWndProc(aProc: TFNWndProc; aWnd: THandle; var aMessage: TMessage);`
| `procedure BrowserCompWndProc(var aMessage: TMessage);`
| `procedure RenderCompWndProc(var aMessage: TMessage);`
| `procedure RestoreOldCompWndProc;`
| `function CopyDCToBitmapStream(aSrcDC : HDC; const aSrcRect : TRect; const aStream : TStream) : boolean;`
| `procedure DragDropManager_OnDragEnter(Sender: TObject; const aDragData : ICefDragData; grfKeyState: Longint; pt: TPoint; var dwEffect: Longint);`
| `procedure DragDropManager_OnDragOver(Sender: TObject; grfKeyState: Longint; pt: TPoint; var dwEffect: Longint);`
| `procedure DragDropManager_OnDragLeave(Sender: TObject);`
| `procedure DragDropManager_OnDrop(Sender: TObject; grfKeyState: Longint; pt: TPoint; var dwEffect: Longint);`
| `function doOnProcessMessageReceived(const browser: ICefBrowser; const frame: ICefFrame; sourceProcess: TCefProcessId; const aMessage: ICefProcessMessage): Boolean; virtual;`
| `procedure doOnLoadStart(const browser: ICefBrowser; const frame: ICefFrame; transitionType: TCefTransitionType); virtual;`
| `procedure doOnLoadEnd(const browser: ICefBrowser; const frame: ICefFrame; httpStatusCode: Integer); virtual;`
| `procedure doOnLoadError(const browser: ICefBrowser; const frame: ICefFrame; errorCode: TCefErrorCode; const errorText, failedUrl: ustring); virtual;`
| `procedure doOnLoadingStateChange(const browser: ICefBrowser; isLoading, canGoBack, canGoForward: Boolean); virtual;`
| `procedure doOnTakeFocus(const browser: ICefBrowser; next: Boolean); virtual;`
| `function doOnSetFocus(const browser: ICefBrowser; source: TCefFocusSource): Boolean; virtual;`
| `procedure doOnGotFocus(const browser: ICefBrowser); virtual;`
| `procedure doOnBeforeContextMenu(const browser: ICefBrowser; const frame: ICefFrame; const params: ICefContextMenuParams; const model: ICefMenuModel); virtual;`
| `function doRunContextMenu(const browser: ICefBrowser; const frame: ICefFrame; const params: ICefContextMenuParams; const model: ICefMenuModel; const callback: ICefRunContextMenuCallback): Boolean; virtual;`
| `function doOnContextMenuCommand(const browser: ICefBrowser; const frame: ICefFrame; const params: ICefContextMenuParams; commandId: Integer; eventFlags: TCefEventFlags): Boolean; virtual;`
| `procedure doOnContextMenuDismissed(const browser: ICefBrowser; const frame: ICefFrame); virtual;`
| `function doRunQuickMenu(const browser: ICefBrowser; const frame: ICefFrame; location: PCefPoint; size: PCefSize; edit_state_flags: TCefQuickMenuEditStateFlags; const callback: ICefRunQuickMenuCallback): boolean; virtual;`
| `function doOnQuickMenuCommand(const browser: ICefBrowser; const frame: ICefFrame; command_id: integer; event_flags: TCefEventFlags): boolean; virtual;`
| `procedure doOnQuickMenuDismissed(const browser: ICefBrowser; const frame: ICefFrame); virtual;`
| `function doOnPreKeyEvent(const browser: ICefBrowser; const event: PCefKeyEvent; osEvent: TCefEventHandle; out isKeyboardShortcut: Boolean): Boolean; virtual;`
| `function doOnKeyEvent(const browser: ICefBrowser; const event: PCefKeyEvent; osEvent: TCefEventHandle): Boolean; virtual;`
| `procedure doOnAddressChange(const browser: ICefBrowser; const frame: ICefFrame; const url: ustring); virtual;`
| `procedure doOnTitleChange(const browser: ICefBrowser; const title: ustring); virtual;`
| `procedure doOnFaviconUrlChange(const browser: ICefBrowser; const iconUrls: TStrings); virtual;`
| `procedure doOnFullScreenModeChange(const browser: ICefBrowser; fullscreen: Boolean); virtual;`
| `function doOnTooltip(const browser: ICefBrowser; var text: ustring): Boolean; virtual;`
| `procedure doOnStatusMessage(const browser: ICefBrowser; const value: ustring); virtual;`
| `function doOnConsoleMessage(const browser: ICefBrowser; level: TCefLogSeverity; const aMessage, source: ustring; line: Integer): Boolean; virtual;`
| `function doOnAutoResize(const browser: ICefBrowser; const new_size: PCefSize): Boolean; virtual;`
| `procedure doOnLoadingProgressChange(const browser: ICefBrowser; const progress: double); virtual;`
| `procedure doOnCursorChange(const browser: ICefBrowser; cursor_: TCefCursorHandle; cursorType: TCefCursorType; const customCursorInfo: PCefCursorInfo; var aResult : boolean); virtual;`
| `procedure doOnMediaAccessChange(const browser: ICefBrowser; has_video_access, has_audio_access: boolean); virtual;`
| `function doOnContentsBoundsChange(const browser: ICefBrowser; const new_bounds: PCefRect): Boolean; virtual;`
| `function doOnGetRootWindowScreenRect(const browser: ICefBrowser; rect_: PCefRect): Boolean; virtual;`
| `function doOnCanDownload(const browser: ICefBrowser; const url, request_method: ustring): boolean;`
| `function doOnBeforeDownload(const browser: ICefBrowser; const downloadItem: ICefDownloadItem; const suggestedName: ustring; const callback: ICefBeforeDownloadCallback): boolean; virtual;`
| `procedure doOnDownloadUpdated(const browser: ICefBrowser; const downloadItem: ICefDownloadItem; const callback: ICefDownloadItemCallback); virtual;`
| `function doOnJsdialog(const browser: ICefBrowser; const originUrl: ustring; dialogType: TCefJsDialogType; const messageText, defaultPromptText: ustring; const callback: ICefJsDialogCallback; out suppressMessage: Boolean): Boolean; virtual;`
| `function doOnBeforeUnloadDialog(const browser: ICefBrowser; const messageText: ustring; isReload: Boolean; const callback: ICefJsDialogCallback): Boolean; virtual;`
| `procedure doOnResetDialogState(const browser: ICefBrowser); virtual;`
| `procedure doOnDialogClosed(const browser: ICefBrowser); virtual;`

`function doOnBeforePopup(const browser: ICefBrowser; const frame: ICefFrame; popup_id: Integer; const targetUrl, targetFrameName: ustring; targetDisposition: TCefWindowOpenDisposition; userGesture: Boolean; const popupFeatures: TCefPopupFeatures; var windowInfo: TCefWindowInfo; var client: ICefClient; var settings: TCefBrowserSettings; var extra_info: ICefDictionaryValue; var noJavascriptAccess: Boolean): Boolean; virtual;`

| `procedure doOnBeforePopupAborted(const browser: ICefBrowser; popup_id: Integer); virtual;`
| `procedure doOnBeforeDevToolsPopup(const browser: ICefBrowser; var windowInfo: TCefWindowInfo; var client: ICefClient; var settings: TCefBrowserSettings; var extra_info: ICefDictionaryValue; var use_default_window: boolean); virtual;`
| `procedure doOnAfterCreated(const browser: ICefBrowser); virtual;`
| `procedure doOnBeforeClose(const browser: ICefBrowser); virtual;`
| `function doOnClose(const browser: ICefBrowser): Boolean; virtual;`
| `function doOnBeforeBrowse(const browser: ICefBrowser; const frame: ICefFrame; const request: ICefRequest; user_gesture, isRedirect: Boolean): Boolean; virtual;`
| `function doOnOpenUrlFromTab(const browser: ICefBrowser; const frame: ICefFrame; const targetUrl: ustring; targetDisposition: TCefWindowOpenDisposition; userGesture: Boolean): Boolean; virtual;`
| `procedure doGetResourceRequestHandler_ReqHdlr(const browser: ICefBrowser; const frame: ICefFrame; const request: ICefRequest; is_navigation, is_download: boolean; const request_initiator: ustring; var disable_default_handling: boolean; var aResourceRequestHandler : ICefResourceRequestHandler); virtual;`
| `function doOnGetAuthCredentials(const browser: ICefBrowser; const originUrl: ustring; isProxy: Boolean; const host: ustring; port: Integer; const realm, scheme: ustring; const callback: ICefAuthCallback): Boolean; virtual;`
| `function doOnCertificateError(const browser: ICefBrowser; certError: TCefErrorcode; const requestUrl: ustring; const sslInfo: ICefSslInfo; const callback: ICefCallback): Boolean; virtual;`
| `function doOnSelectClientCertificate(const browser: ICefBrowser; isProxy: boolean; const host: ustring; port: integer; certificatesCount: NativeUInt; const certificates: TCefX509CertificateArray; const callback: ICefSelectClientCertificateCallback): boolean; virtual;`
| `procedure doOnRenderViewReady(const browser: ICefBrowser); virtual;`
| `function doOnRenderProcessUnresponsive(const browser: ICefBrowser; const callback: ICefUnresponsiveProcessCallback): boolean; virtual;`
| `procedure doOnRenderProcessResponsive(const browser: ICefBrowser); virtual;`
| `procedure doOnRenderProcessTerminated(const browser: ICefBrowser; status: TCefTerminationStatus; error_code: integer; const error_string: ustring); virtual;`
| `procedure doOnDocumentAvailableInMainFrame(const browser: ICefBrowser); virtual;`
| `function doOnBeforeResourceLoad(const browser: ICefBrowser; const frame: ICefFrame; const request: ICefRequest; const callback: ICefCallback): TCefReturnValue; virtual;`
| `procedure doOnGetResourceHandler(const browser: ICefBrowser; const frame: ICefFrame; const request: ICefRequest; var aResourceHandler : ICefResourceHandler); virtual;`
| `procedure doOnResourceRedirect(const browser: ICefBrowser; const frame: ICefFrame; const request: ICefRequest; const response: ICefResponse; var newUrl: ustring); virtual;`
| `function doOnResourceResponse(const browser: ICefBrowser; const frame: ICefFrame; const request: ICefRequest; const response: ICefResponse): Boolean; virtual;`
| `procedure doOnGetResourceResponseFilter(const browser: ICefBrowser; const frame: ICefFrame; const request: ICefRequest; const response: ICefResponse; var aResponseFilter: ICefResponseFilter); virtual;`
| `procedure doOnResourceLoadComplete(const browser: ICefBrowser; const frame: ICefFrame; const request: ICefRequest; const response: ICefResponse; status: TCefUrlRequestStatus; receivedContentLength: Int64); virtual;`
| `procedure doOnProtocolExecution(const browser: ICefBrowser; const frame: ICefFrame; const request: ICefRequest; var allowOsExecution: Boolean); virtual;`
| `function doCanSendCookie(const browser: ICefBrowser; const frame: ICefFrame; const request: ICefRequest; const cookie: PCefCookie): boolean; virtual;`
| `function doCanSaveCookie(const browser: ICefBrowser; const frame: ICefFrame; const request: ICefRequest; const response: ICefResponse; const cookie: PCefCookie): boolean; virtual;`
| `function doOnFileDialog(const browser: ICefBrowser; mode: TCefFileDialogMode; const title, defaultFilePath: ustring; const acceptFilters, accept_extensions, accept_descriptions: TStrings; const callback: ICefFileDialogCallback): Boolean; virtual;`
| `procedure doOnGetAccessibilityHandler(var aAccessibilityHandler : ICefAccessibilityHandler); virtual;`
| `function doOnGetRootScreenRect(const browser: ICefBrowser; var rect: TCefRect): Boolean; virtual;`
| `procedure doOnGetViewRect(const browser: ICefBrowser; var rect: TCefRect); virtual;`
| `function doOnGetScreenPoint(const browser: ICefBrowser; viewX, viewY: Integer; var screenX, screenY: Integer): Boolean; virtual;`
| `function doOnGetScreenInfo(const browser: ICefBrowser; var screenInfo: TCefScreenInfo): Boolean; virtual;`
| `procedure doOnPopupShow(const browser: ICefBrowser; show: Boolean); virtual;`
| `procedure doOnPopupSize(const browser: ICefBrowser; const rect: PCefRect); virtual;`
| `procedure doOnPaint(const browser: ICefBrowser; type_: TCefPaintElementType; dirtyRectsCount: NativeUInt; const dirtyRects: PCefRectArray; const buffer: Pointer; width, height: Integer); virtual;`
| `procedure doOnAcceleratedPaint(const browser: ICefBrowser; type_: TCefPaintElementType; dirtyRectsCount: NativeUInt; const dirtyRects: PCefRectArray; const info: PCefAcceleratedPaintInfo); virtual;`
| `procedure doGetTouchHandleSize(const browser: ICefBrowser; orientation: TCefHorizontalAlignment; var size: TCefSize); virtual;`
| `procedure doOnTouchHandleStateChanged(const browser: ICefBrowser; const state: TCefTouchHandleState); virtual;`
| `function doOnStartDragging(const browser: ICefBrowser; const dragData: ICefDragData; allowedOps: TCefDragOperations; x, y: Integer): Boolean; virtual;`
| `procedure doOnUpdateDragCursor(const browser: ICefBrowser; operation: TCefDragOperation); virtual;`
| `procedure doOnScrollOffsetChanged(const browser: ICefBrowser; x, y: Double); virtual;`
| `procedure doOnIMECompositionRangeChanged(const browser: ICefBrowser; const selected_range: PCefRange; character_boundsCount: NativeUInt; const character_bounds: PCefRect); virtual;`
| `procedure doOnTextSelectionChanged(const browser: ICefBrowser; const selected_text: ustring; const selected_range: PCefRange); virtual;`
| `procedure doOnVirtualKeyboardRequested(const browser: ICefBrowser; input_mode: TCefTextInpuMode); virtual;`
| `function doOnDragEnter(const browser: ICefBrowser; const dragData: ICefDragData; mask: TCefDragOperations): Boolean; virtual;`
| `procedure doOnDraggableRegionsChanged(const browser: ICefBrowser; const frame: ICefFrame; regionsCount: NativeUInt; const regions: PCefDraggableRegionArray); virtual;`
| `procedure doOnFindResult(const browser: ICefBrowser; identifier, count: Integer; const selectionRect: PCefRect; activeMatchOrdinal: Integer; finalUpdate: Boolean); virtual;`
| `procedure doOnRequestContextInitialized(const request_context: ICefRequestContext); virtual;`
| `procedure doGetResourceRequestHandler_ReqCtxHdlr(const browser: ICefBrowser; const frame: ICefFrame; const request: ICefRequest; is_navigation, is_download: boolean; const request_initiator: ustring; var disable_default_handling: boolean; var aResourceRequestHandler : ICefResourceRequestHandler); virtual;`
| `procedure doOnSinks(const sinks: TCefMediaSinkArray); virtual;`
| `procedure doOnRoutes(const routes: TCefMediaRouteArray); virtual;`
| `procedure doOnRouteStateChanged(const route: ICefMediaRoute; state: TCefMediaRouteConnectionState); virtual;`
| `procedure doOnRouteMessageReceived(const route: ICefMediaRoute; const message_: ustring); virtual;`
| `procedure doOnGetAudioParameters(const browser: ICefBrowser; var params: TCefAudioParameters; var aResult: boolean); virtual;`
| `procedure doOnAudioStreamStarted(const browser: ICefBrowser; const params: TCefAudioParameters; channels: integer); virtual;`
| `procedure doOnAudioStreamPacket(const browser: ICefBrowser; const data : PPSingle; frames: integer; pts: int64); virtual;`
| `procedure doOnAudioStreamStopped(const browser: ICefBrowser); virtual;`
| `procedure doOnAudioStreamError(const browser: ICefBrowser; const message_: ustring); virtual;`
| `procedure doOnDevToolsMessage(const browser: ICefBrowser; const message_: Pointer; message_size: NativeUInt; var aHandled: boolean); virtual;`
| `procedure doOnDevToolsMethodResult(const browser: ICefBrowser; message_id: integer; success: boolean; const result: Pointer; result_size: NativeUInt); virtual;`
| `procedure doOnDevToolsEvent(const browser: ICefBrowser; const method: ustring; const params: Pointer; params_size: NativeUInt); virtual;`
| `procedure doOnDevToolsAgentAttached(const browser: ICefBrowser); virtual;`
| `procedure doOnDevToolsAgentDetached(const browser: ICefBrowser); virtual;`
| `procedure doOnPrintStart(const browser: ICefBrowser);`
| `procedure doOnPrintSettings(const browser: ICefBrowser; const settings: ICefPrintSettings; getDefaults: boolean);`
| `procedure doOnPrintDialog(const browser: ICefBrowser; hasSelection: boolean; const callback: ICefPrintDialogCallback; var aResult : boolean);`
| `procedure doOnPrintJob(const browser: ICefBrowser; const documentName, PDFFilePath: ustring; const callback: ICefPrintJobCallback; var aResult : boolean);`
| `procedure doOnPrintReset(const browser: ICefBrowser);`
| `procedure doOnGetPDFPaperSize(const browser: ICefBrowser; deviceUnitsPerInch: Integer; var aResult : TCefSize);`
| `procedure doOnFrameCreated(const browser: ICefBrowser; const frame: ICefFrame);`
| `procedure doOnFrameDestroyed(const browser: ICefBrowser; const frame: ICefFrame);`
| `procedure doOnFrameAttached(const browser: ICefBrowser; const frame: ICefFrame; reattached: boolean);`
| `procedure doOnFrameDetached(const browser: ICefBrowser; const frame: ICefFrame);`
| `procedure doOnMainFrameChanged(const browser: ICefBrowser; const old_frame, new_frame: ICefFrame);`
| `function doOnChromeCommand(const browser: ICefBrowser; command_id: integer; disposition: TCefWindowOpenDisposition): boolean;`
| `function doOnIsChromeAppMenuItemVisible(const browser: ICefBrowser; command_id: integer): boolean;`
| `function doOnIsChromeAppMenuItemEnabled(const browser: ICefBrowser; command_id: integer): boolean;`
| `function doOnIsChromePageActionIconVisible(icon_type: TCefChromePageActionIconType): boolean;`
| `function doOnIsChromeToolbarButtonVisible(button_type: TCefChromeToolbarButtonType): boolean;`
| `function doOnRequestMediaAccessPermission(const browser: ICefBrowser; const frame: ICefFrame; const requesting_origin: ustring; requested_permissions: cardinal; const callback: ICefMediaAccessCallback): boolean;`
| `function doOnShowPermissionPrompt(const browser: ICefBrowser; prompt_id: uint64; const requesting_origin: ustring; requested_permissions: cardinal; const callback: ICefPermissionPromptCallback): boolean;`
| `procedure doOnDismissPermissionPrompt(const browser: ICefBrowser; prompt_id: uint64; result: TCefPermissionRequestResult);`
| `procedure doOnPreferenceChanged(const name_: ustring);`
| `procedure doOnSettingChanged(const requesting_url, top_level_url : ustring; content_type: TCefContentSettingTypes);`
| `procedure GetSettings(var aSettings : TCefBrowserSettings);`
| `procedure doCookiesDeleted(numDeleted : integer); virtual;`
| `procedure doPdfPrintFinished(aResultOK : boolean); virtual;`
| `procedure doTextResultAvailable(const aText : ustring); virtual;`
| `procedure doUpdatePreferences(const aBrowser: ICefBrowser); virtual;`
| `procedure doUpdateOwnPreferences; virtual;`
| `function doSavePreferences: boolean; virtual;`
| `procedure doResolvedHostAvailable(result: TCefErrorCode; const resolvedIps: TStrings); virtual;`
| `function doNavigationVisitorResultAvailable(const entry: ICefNavigationEntry; current: Boolean; index, total: Integer) : boolean; virtual;`
| `procedure doDownloadImageFinished(const imageUrl: ustring; httpStatusCode: Integer; const image: ICefImage); virtual;`
| `procedure doOnCookiesStoreFlushed; virtual;`
| `procedure doCertificateExceptionsCleared; virtual;`
| `procedure doHttpAuthCredentialsCleared; virtual;`
| `procedure doAllConnectionsClosed; virtual;`
| `procedure doHttpCacheCleared; virtual;`
| `procedure doOnExecuteTaskOnCefThread(aTaskID : cardinal); virtual;`
| `procedure doOnCookiesVisited(const name_, value, domain, path: ustring; secure, httponly, hasExpires: Boolean; const creation, lastAccess, expires: TDateTime; count, total, aID : Integer; same_site : TCefCookieSameSite; priority : TCefCookiePriority; var aDeleteCookie, aResult : Boolean); virtual;`
| `procedure doOnCookieVisitorDestroyed(aID : integer); virtual;`
| `procedure doOnCookieSet(aSuccess : boolean; aID : integer); virtual;`
| `procedure doUpdateZoomStep(aInc : boolean); virtual;`
| `procedure doUpdateZoomPct(aInc : boolean); virtual;`
| `procedure doReadZoom; virtual;`
| `procedure doSetZoomLevel(const aValue : double); virtual;`
| `procedure doSetZoomPct(const aValue : double); virtual;`
| `procedure doSetZoomStep(aValue : byte); virtual;`
| `procedure doMediaRouteCreateFinished(result: TCefMediaRouterCreateResult; const error: ustring; const route: ICefMediaRoute); virtual;`
| `procedure doOnMediaSinkDeviceInfo(const ip_address: ustring; port: integer; const model_name: ustring); virtual;`
| `procedure doBrowserNavigation(aTask : TCefBrowserNavigation); virtual;`
| `procedure doSetAudioMuted(aValue : boolean); virtual;`
| `procedure doToggleAudioMuted; virtual;`
| `procedure doEnableFocus; virtual;`
| `function doTryCloseBrowser: boolean; virtual;`
| `procedure doAddPreferenceObserver(const name_ : ustring); virtual;`
| `function MustCreateAudioHandler: boolean; virtual;`
| `function MustCreateCommandHandler: boolean; virtual;`
| `function MustCreateDevToolsMessageObserver: boolean; virtual;`
| `function MustCreateSettingObserver: boolean; virtual;`
| `function MustCreateLoadHandler: boolean; virtual;`
| `function MustCreateFocusHandler: boolean; virtual;`
| `function MustCreateContextMenuHandler: boolean; virtual;`
| `function MustCreateDialogHandler: boolean; virtual;`
| `function MustCreateKeyboardHandler: boolean; virtual;`
| `function MustCreateDisplayHandler: boolean; virtual;`
| `function MustCreateDownloadHandler: boolean; virtual;`
| `function MustCreateJsDialogHandler: boolean; virtual;`
| `function MustCreateLifeSpanHandler: boolean; virtual;`
| `function MustCreateRenderHandler: boolean; virtual;`
| `function MustCreateRequestHandler: boolean; virtual;`
| `function MustCreateDragHandler: boolean; virtual;`
| `function MustCreateFindHandler: boolean; virtual;`
| `function MustCreateResourceRequestHandler: boolean; virtual;`
| `function MustCreateCookieAccessFilter: boolean; virtual;`
| `function MustCreateMediaObserver: boolean; virtual;`
| `function MustCreatePrintHandler: boolean; virtual;`
| `function MustCreateFrameHandler: boolean; virtual;`
| `function MustCreatePermissionHandler: boolean; virtual;`
| `constructor Create(AOwner: TComponent); override;`
| `destructor Destroy; override;`
| `procedure AfterConstruction; override;`
| `procedure BeforeDestruction; override;`
| `function CreateClientHandler(aIsOSR : boolean = True) : boolean; overload;`
| `function CreateClientHandler(var aClient : ICefClient; aIsOSR : boolean = True) : boolean; overload;`
| `procedure CloseBrowser(aForceClose : boolean);`
| `procedure CloseAllBrowsers;`
| `function TryCloseBrowser: boolean;`
| `function IsReadyToBeClosed: boolean;`
| `function SelectBrowser(aID : integer) : boolean;`
| `function IndexOfBrowserID(aID : integer) : integer;`
| `function ShareRequestContext(var aContext : ICefRequestContext; const aHandler : ICefRequestContextHandler = nil) : boolean;`
| `procedure InitializeDragAndDrop(const aDropTargetWnd : HWND);`
| `procedure ShutdownDragAndDrop;`
| `function SetNewBrowserParent(aNewParentHwnd : HWND) : boolean;`
| `function CreateBrowser(aParentHandle : TCefWindowHandle; aParentRect : TRect; const aWindowName : ustring = ''; const aContext : ICefRequestContext = nil; const aExtraInfo : ICefDictionaryValue = nil; aForceAsPopup : boolean = False) : boolean; overload; virtual;`
| `function CreateBrowser(const aURL : ustring; const aBrowserViewComp : TCEFBrowserViewComponent; const aContext : ICefRequestContext = nil; const aExtraInfo : ICefDictionaryValue = nil) : boolean; overload; virtual;`
| `procedure LoadURL(const aURL : ustring; const aFrameName : ustring = ''; const aFrameIdentifier : ustring = ''); overload;`
| `procedure LoadURL(const aURL : ustring; const aFrame : ICefFrame); overload;`
| `procedure LoadString(const aHTML : ustring; const aFrameName : ustring = ''; const aFrameIdentifier : ustring = ''); overload;`
| `procedure LoadString(const aHTML : ustring; const aFrame : ICefFrame); overload;`
| `procedure LoadResource(const aStream : TCustomMemoryStream; const aMimeType, aCharset : ustring; const aFrameName : ustring = ''; const aFrameIdentifier : ustring = ''); overload;`
| `procedure LoadResource(const aStream : TCustomMemoryStream; const aMimeType, aCharset : ustring; const aFrame : ICefFrame); overload;`
| `procedure LoadRequest(const aRequest: ICefRequest);`
| `procedure GoBack;`
| `procedure GoForward;`
| `procedure Reload;`
| `procedure ReloadIgnoreCache;`
| `procedure StopLoad;`
| `procedure StartDownload(const aURL : ustring);`
| `procedure DownloadImage(const imageUrl: ustring; isFavicon: Boolean; maxImageSize: cardinal; bypassCache: Boolean);`
| `procedure SimulateMouseWheel(aDeltaX, aDeltaY : integer);`

`procedure SimulateKeyEvent(type_: TSimulatedCefKeyEventType; modifiers: integer = CEF_MOUSETOUCH_EVENT_MODIFIERS_NONE; timestamp: single = 0; const text: ustring = ''; const unmodifiedtext: ustring = ''; const keyIdentifier: ustring = ''; const code: ustring = ''; const key: ustring = ''; windowsVirtualKeyCode: integer = 0; nativeVirtualKeyCode: integer = 0; autoRepeat: boolean = False; isKeypad: boolean = False; isSystemKey: boolean = False; location: TCefKeyLocation = CEF_KEYLOCATION_NONE; commands: TCefEditingCommand = ecNone);`

`procedure SimulateMouseEvent(type_: TCefSimulatedMouseEventType; x, y: single; modifiers: integer = CEF_MOUSETOUCH_EVENT_MODIFIERS_NONE; timestamp: single = 0; button: TCefSimulatedMouseButton = CEF_SIMULATEDMOUSEBUTTON_NONE; buttons: integer = CEF_PRESSED_MOUSE_BUTTONS_NONE; clickCount: integer = 0; force: single = 0; tangentialPressure: single = 0; tiltX: single = 0; tiltY: single = 0; twist: integer = 0; deltaX: single = 0; deltaY: single = 0; pointerType: TCefSimulatedPointerType = CEF_SIMULATEDPOINTERTYPE_MOUSE);`

| `procedure SimulateTouchEvent(type_: TCefSimulatedTouchEventType; var touchPoints: TCefSimulatedTouchPointArray; modifiers: integer = CEF_MOUSETOUCH_EVENT_MODIFIERS_NONE; timestamp: single = 0);`
| `procedure SimulateEditingCommand(command : TCefEditingCommand);`
| `function ClearCertificateExceptions(aClearImmediately : boolean = True) : boolean;`
| `function ClearHttpAuthCredentials(aClearImmediately : boolean = True) : boolean;`
| `function CloseAllConnections(aCloseImmediately : boolean = True) : boolean;`
| `function ClearHttpCache(aClearImmediately : boolean = True) : boolean;`
| `procedure RetrieveHTML(const aFrameName : ustring = ''; const aFrameIdentifier : ustring = ''); overload;`
| `procedure RetrieveHTML(const aFrame : ICefFrame); overload;`
| `procedure RetrieveText(const aFrameName : ustring = ''; const aFrameIdentifier : ustring = ''); overload;`
| `procedure RetrieveText(const aFrame : ICefFrame); overload;`
| `procedure GetNavigationEntries(currentOnly: Boolean);`
| `function GetFrameNames(var aFrameNames : TStrings) : boolean;`
| `function GetFrameIdentifiers(var aFrameIdentifiers : TStrings) : boolean;`
| `procedure ExecuteJavaScript(const aCode, aScriptURL : ustring; const aFrameName : ustring = ''; const aFrameIdentifier : ustring = ''; aStartLine : integer = 0); overload;`
| `procedure ExecuteJavaScript(const aCode, aScriptURL : ustring; const aFrame : ICefFrame; aStartLine : integer = 0); overload;`
| `procedure UpdatePreferences;`
| `procedure SavePreferences(const aFileName : string);`
| `procedure ResolveHost(const aURL : ustring);`
| `function IsSameBrowser(const aBrowser : ICefBrowser) : boolean;`
| `function ExecuteTaskOnCefThread(aCefThreadId : TCefThreadId; aTaskID : cardinal; aDelayMs : Int64 = 0) : boolean;`
| `procedure SetUserAgentOverride(const aUserAgent : ustring; const aAcceptLanguage : ustring = ''; const aPlatform : ustring = '');`
| `procedure ClearDataForOrigin(const aOrigin : ustring; aStorageTypes : TCefClearDataStorageTypes = cdstAll);`
| `procedure ClearCache;`
| `procedure ToggleAudioMuted;`
| `procedure AddPreferenceObserver(const name_: ustring);`
| `procedure RemovePreferenceObserver(const name_ : ustring);`
| `function DeleteCookies(const url : ustring = ''; const cookieName : ustring = ''; aDeleteImmediately : boolean = False) : boolean;`
| `function VisitAllCookies(aID : integer = 0) : boolean;`
| `function VisitURLCookies(const url : ustring; includeHttpOnly : boolean = False; aID : integer = 0) : boolean;`
| `function SetCookie(const url, name_, value, domain, path: ustring; secure, httponly, hasExpires: Boolean; const creation, lastAccess, expires: TDateTime; same_site : TCefCookieSameSite; priority : TCefCookiePriority; aSetImmediately : boolean = True; aID : integer = 0): Boolean;`
| `function FlushCookieStore(aFlushImmediately : boolean = True) : boolean;`
| `procedure ShowDevTools(const inspectElementAt: TPoint; aWindowInfo: PCefWindowInfo);`
| `procedure CloseDevTools; overload;`
| `procedure CloseDevTools(const aDevToolsWnd : TCefWindowHandle); overload;`
| `function SendDevToolsMessage(const message_: ustring): boolean;`
| `function ExecuteDevToolsMethod(message_id: integer; const method: ustring; const params: ICefDictionaryValue): Integer;`
| `function AddDevToolsMessageObserver(const observer: ICefDevToolsMessageObserver): ICefRegistration;`
| `function AddSettingObserver(const observer: ICefSettingObserver): ICefRegistration;`
| `procedure Find(const aSearchText : ustring; aForward, aMatchCase, aFindNext : Boolean);`
| `procedure StopFinding(aClearSelection : Boolean);`
| `procedure Print;`
| `procedure PrintToPDF(const aFilePath : ustring);`
| `procedure ClipboardCopy;`
| `procedure ClipboardPaste;`
| `procedure ClipboardPasteAndMatchStyle;`
| `procedure ClipboardCut;`
| `procedure ClipboardUndo;`
| `procedure ClipboardRedo;`
| `procedure ClipboardDel;`
| `procedure SelectAll;`
| `procedure IncZoomStep;`
| `procedure DecZoomStep;`
| `procedure IncZoomPct;`
| `procedure DecZoomPct;`
| `procedure ResetZoomStep;`
| `procedure ResetZoomLevel;`
| `procedure ResetZoomPct;`
| `procedure ReadZoom;`
| `procedure IncZoomCommand;`
| `procedure DecZoomCommand;`
| `procedure ResetZoomCommand;`
| `procedure WasResized;`
| `procedure WasHidden(hidden: Boolean);`
| `procedure NotifyScreenInfoChanged;`
| `procedure NotifyMoveOrResizeStarted;`
| `procedure Invalidate(type_: TCefPaintElementType = PET_VIEW);`
| `procedure ExitFullscreen(will_cause_resize: boolean);`
| `function CanExecuteChromeCommand(command_id: integer): boolean;`
| `procedure ExecuteChromeCommand(command_id: integer; disposition: TCefWindowOpenDisposition);`
| `procedure SendExternalBeginFrame;`
| `procedure SendKeyEvent(const event: PCefKeyEvent);`
| `procedure SendMouseClickEvent(const event: PCefMouseEvent; type_: TCefMouseButtonType; mouseUp: Boolean; clickCount: Integer);`
| `procedure SendMouseMoveEvent(const event: PCefMouseEvent; mouseLeave: Boolean);`
| `procedure SendMouseWheelEvent(const event: PCefMouseEvent; deltaX, deltaY: Integer);`
| `procedure SendTouchEvent(const event: PCefTouchEvent);`
| `procedure SendCaptureLostEvent;`
| `procedure SendProcessMessage(targetProcess: TCefProcessId; const ProcMessage: ICefProcessMessage; const aFrameName : ustring = ''; const aFrameIdentifier : ustring = ''); overload;`
| `procedure SendProcessMessage(targetProcess: TCefProcessId; const ProcMessage: ICefProcessMessage; const aFrame : ICefFrame); overload;`
| `function CreateUrlRequest(const request: ICefRequest; const client: ICefUrlrequestClient; const aFrameName : ustring = ''; const aFrameIdentifier : ustring = ''): ICefUrlRequest; overload;`
| `function CreateUrlRequest(const request: ICefRequest; const client: ICefUrlrequestClient; const aFrame : ICefFrame): ICefUrlRequest; overload;`
| `procedure SetFocus(focus: Boolean);`
| `procedure SetAccessibilityState(accessibilityState: TCefState);`
| `procedure DragTargetDragEnter(const dragData: ICefDragData; const event: PCefMouseEvent; allowedOps: TCefDragOperations);`
| `procedure DragTargetDragOver(const event: PCefMouseEvent; allowedOps: TCefDragOperations);`
| `procedure DragTargetDragLeave;`
| `procedure DragTargetDrop(const event: PCefMouseEvent);`
| `procedure DragSourceEndedAt(x, y: Integer; op: TCefDragOperation);`
| `procedure DragSourceSystemDragEnded;`
| `procedure IMESetComposition(const text: ustring; const underlines : TCefCompositionUnderlineDynArray; const replacement_range, selection_range : PCefRange);`
| `procedure IMECommitText(const text: ustring; const replacement_range : PCefRange; relative_cursor_pos : integer);`
| `procedure IMEFinishComposingText(keep_selection : boolean);`
| `procedure IMECancelComposition;`
| `procedure ReplaceMisspelling(const aWord : ustring);`
| `procedure AddWordToDictionary(const aWord : ustring);`
| `function AddObserver(const observer: ICefMediaObserver): ICefRegistration;`
| `function GetSource(const urn: ustring): ICefMediaSource;`
| `procedure NotifyCurrentSinks;`
| `procedure NotifyCurrentRoutes;`
| `procedure CreateRoute(const source: ICefMediaSource; const sink: ICefMediaSink);`
| `procedure GetDeviceInfo(const aMediaSink: ICefMediaSink);`
| `function GetWebsiteSetting(const requesting_url, top_level_url: ustring; content_type: TCefContentSettingTypes): ICefValue;`
| `procedure SetWebsiteSetting(const requesting_url, top_level_url: ustring; content_type: TCefContentSettingTypes; const value: ICefValue);`
| `function GetContentSetting(const requesting_url, top_level_url: ustring; content_type: TCefContentSettingTypes): TCefContentSettingValues;`
| `procedure SetContentSetting(const requesting_url, top_level_url: ustring; content_type: TCefContentSettingTypes; value: TCefContentSettingValues);`
| `procedure SetChromeColorScheme(variant: TCefColorVariant; user_color: TCefColor);`

### Properties

| `property ParentFormHandle : TCefWindowHandle read GetParentFormHandle;`
| `property DefaultUrl : ustring read FDefaultUrl write SetDefaultUrl;`
| `property Options : TChromiumOptions read FOptions write FOptions;`
| `property FontOptions : TChromiumFontOptions read FFontOptions write FFontOptions;`
| `property PDFPrintOptions : TPDFPrintOptions read FPDFPrintOptions write FPDFPrintOptions;`
| `property DefaultEncoding : ustring read FDefaultEncoding write FDefaultEncoding;`
| `property BrowserId : integer read GetBrowserId;`
| `property Browser : ICefBrowser read GetBrowser;`
| `property BrowserById[id: integer]: ICefBrowser read GetBrowserById;`
| `property BrowserCount : integer read GetBrowserCount;`
| `property BrowserIdByIndex[i: integer]: integer read GetBrowserIdByIndex;`
| `property CefClient : ICefClient read FHandler;`
| `property ReqContextHandler : ICefRequestContextHandler read FReqContextHandler;`
| `property ResourceRequestHandler : ICefResourceRequestHandler read FResourceRequestHandler;`
| `property CefWindowInfo : TCefWindowInfo read GetCefWindowInfo;`
| `property VisibleNavigationEntry : ICefNavigationEntry read GetVisibleNavigationEntry;`
| `property RuntimeStyle : TCefRuntimeStyle read GetRuntimeStyle write SetRuntimeStyle;`
| `property RequestContext : ICefRequestContext read GetRequestContext;`
| `property MediaRouter : ICefMediaRouter read GetMediaRouter;`
| `property MediaObserver : ICefMediaObserver read FMediaObserver;`
| `property MediaObserverReg : ICefRegistration read FMediaObserverReg;`
| `property DevToolsMsgObserver : ICefDevToolsMessageObserver read FDevToolsMsgObserver;`
| `property DevToolsMsgObserverReg : ICefRegistration read FDevToolsMsgObserverReg;`
| `property MultithreadApp : boolean read GetMultithreadApp;`
| `property IsLoading : boolean read GetIsLoading;`
| `property HasDocument : boolean read GetHasDocument;`
| `property HasView : boolean read GetHasView;`
| `property HasDevTools : boolean read GetHasDevTools;`
| `property HasClientHandler : boolean read GetHasClientHandler;`
| `property HasBrowser : boolean read GetHasBrowser;`
| `property CanGoBack : boolean read GetCanGoBack;`
| `property CanGoForward : boolean read GetCanGoForward;`
| `property IsPopUp : boolean read GetIsPopUp;`
| `property WindowHandle : TCefWindowHandle read GetWindowHandle;`
| `property OpenerWindowHandle : TCefWindowHandle read GetOpenerWindowHandle;`
| `property OpenerIdentifier : Integer read GetOpenerIdentifier;`
| `property BrowserHandle : THandle read FBrowserCompHWND;`
| `property RenderHandle : THandle read FRenderCompHWND;`
| `property FrameIsFocused : boolean read GetFrameIsFocused;`
| `property Initialized : boolean read GetInitialized;`
| `property RequestContextCache : ustring read GetRequestContextCache;`
| `property RequestContextIsGlobal : boolean read GetRequestContextIsGlobal;`
| `property ChromeColorSchemeMode : TCefColorVariant read GetChromeColorSchemeMode;`
| `property ChromeColorSchemeColor : TCefColor read GetChromeColorSchemeColor;`
| `property ChromeColorSchemeVariant : TCefColorVariant read GetChromeColorSchemeVariant;`
| `property DocumentURL : ustring read GetDocumentURL;`
| `property ZoomLevel : double read GetZoomLevel write SetZoomLevel;`
| `property DefaultZoomLevel : double read GetDefaultZoomLevel;`
| `property CanIncZoom : boolean read GetCanIncZoom;`
| `property CanDecZoom : boolean read GetCanDecZoom;`
| `property CanResetZoom : boolean read GetCanResetZoom;`
| `property ZoomPct : double read GetZoomPct write SetZoomPct;`
| `property ZoomStep : byte read GetZoomStep write SetZoomStep;`
| `property WindowlessFrameRate : integer read GetWindowlessFrameRate write SetWindowlessFrameRate;`
| `property CustomHeaderName : ustring read FCustomHeaderName write SetCustomHeaderName;`
| `property CustomHeaderValue : ustring read FCustomHeaderValue write SetCustomHeaderValue;`
| `property DoNotTrack : boolean read FDoNotTrack write SetDoNotTrack;`
| `property SendReferrer : boolean read FSendReferrer write SetSendReferrer;`
| `property HyperlinkAuditing : boolean read FHyperlinkAuditing write SetHyperlinkAuditing;`
| `property AllowOutdatedPlugins : boolean read FAllowOutdatedPlugins write SetAllowOutdatedPlugins;`
| `property AlwaysAuthorizePlugins : boolean read FAlwaysAuthorizePlugins write SetAlwaysAuthorizePlugins;`
| `property AlwaysOpenPDFExternally : boolean read FAlwaysOpenPDFExternally write SetAlwaysOpenPDFExternally;`
| `property SpellChecking : boolean read FSpellChecking write SetSpellChecking;`
| `property SpellCheckerDicts : ustring read FSpellCheckerDicts write SetSpellCheckerDicts;`
| `property HasValidMainFrame : boolean read GetHasValidMainFrame;`
| `property FrameCount : NativeUInt read GetFrameCount;`
| `property DragOperations : TCefDragOperations read FDragOperations write FDragOperations;`
| `property AudioMuted : boolean read GetAudioMuted write SetAudioMuted;`
| `property Fullscreen : boolean read GetFullscreen;`
| `property IsRenderProcessUnresponsive : boolean read GetIsRenderProcessUnresponsive;`
| `property SafeSearch : boolean read FSafeSearch write SetSafeSearch;`
| `property YouTubeRestrict : integer read FYouTubeRestrict write SetYouTubeRestrict;`
| `property PrintingEnabled : boolean read FPrintingEnabled write SetPrintingEnabled;`
| `property AcceptCookies : TCefCookiePref read FAcceptCookies write SetAcceptCookies;`
| `property Block3rdPartyCookies : boolean read FBlock3rdPartyCookies write SetBlock3rdPartyCookies;`
| `property MultiBrowserMode : boolean read FMultiBrowserMode write SetMultiBrowserMode;`
| `property DefaultWindowInfoExStyle : DWORD read GetWindowInfoExStyle write SetWindowInfoExStyle;`
| `property Offline : boolean read FOffline write SetOffline;`
| `property QuicAllowed : boolean read FQuicAllowed write SetQuicAllowed;`
| `property JavascriptEnabled : boolean read FJavascriptEnabled write SetJavascriptEnabled;`
| `property LoadImagesAutomatically : boolean read FLoadImagesAutomatically write SetLoadImagesAutomatically;`
| `property CanFocus : boolean read FCanFocus;`
| `property EnableFocusDelayMs : cardinal read FEnableFocusDelayMs write FEnableFocusDelayMs;`
| `property WebRTCIPHandlingPolicy : TCefWebRTCHandlingPolicy read FWebRTCIPHandlingPolicy write SetWebRTCIPHandlingPolicy;`
| `property WebRTCMultipleRoutes : TCefState read FWebRTCMultipleRoutes write SetWebRTCMultipleRoutes;`
| `property WebRTCNonproxiedUDP : TCefState read FWebRTCNonProxiedUDP write SetWebRTCNonProxiedUDP;`
| `property ProxyType : integer read FProxyType write SetProxyType;`
| `property ProxyScheme : TCefProxyScheme read FProxyScheme write SetProxyScheme;`
| `property ProxyServer : ustring read FProxyServer write SetProxyServer;`
| `property ProxyPort : integer read FProxyPort write SetProxyPort;`
| `property ProxyUsername : ustring read FProxyUsername write SetProxyUsername;`
| `property ProxyPassword : ustring read FProxyPassword write SetProxyPassword;`
| `property ProxyScriptURL : ustring read FProxyScriptURL write SetProxyScriptURL;`
| `property ProxyByPassList : ustring read FProxyByPassList write SetProxyByPassList;`
| `property MaxConnectionsPerProxy : integer read FMaxConnectionsPerProxy write SetMaxConnectionsPerProxy;`
| `property DownloadBubble : TCefState read FDownloadBubble write FDownloadBubble;`
| `property HTTPSUpgrade : TCefState read FHTTPSUpgrade write FHTTPSUpgrade;`
| `property HSTSPolicyBypassList : ustring read FHSTSPolicyBypassList write FHSTSPolicyBypassList;`
| `property CredentialsService : TCefState read FCredentialsService write FCredentialsService;`
| `property AutofillCreditCard : TCefState read FAutofillCreditCard write FAutofillCreditCard;`
| `property AutofillProfile : TCefState read FAutofillProfile write FAutofillProfile;`
| `property AutofillSaveData : TCefState read FAutofillSaveData write FAutofillSaveData;`
| `property CanMakePayment : TCefState read FCanMakePayment write FCanMakePayment;`
| `property SearchSuggestEnabled : TCefState read FSearchSuggestEnabled write FSearchSuggestEnabled;`
| `property URLDataCollection : TCefState read FURLDataCollection write FURLDataCollection;`
| `property StorageNotificationService : TCefState read FStorageNotificationService write FStorageNotificationService;`
| `property OnTextResultAvailable : TOnTextResultAvailableEvent read FOnTextResultAvailable write FOnTextResultAvailable;`
| `property OnPdfPrintFinished : TOnPdfPrintFinishedEvent read FOnPdfPrintFinished write FOnPdfPrintFinished;`
| `property OnPrefsAvailable : TOnPrefsAvailableEvent read FOnPrefsAvailable write FOnPrefsAvailable;`
| `property OnPrefsUpdated : TNotifyEvent read FOnPrefsUpdated write FOnPrefsUpdated;`
| `property OnCookiesDeleted : TOnCookiesDeletedEvent read FOnCookiesDeleted write FOnCookiesDeleted;`
| `property OnResolvedHostAvailable : TOnResolvedIPsAvailableEvent read FOnResolvedHostAvailable write FOnResolvedHostAvailable;`
| `property OnNavigationVisitorResultAvailable : TOnNavigationVisitorResultAvailableEvent read FOnNavigationVisitorResultAvailable write FOnNavigationVisitorResultAvailable;`
| `property OnDownloadImageFinished : TOnDownloadImageFinishedEvent read FOnDownloadImageFinished write FOnDownloadImageFinished;`
| `property OnCookiesFlushed : TNotifyEvent read FOnCookiesFlushed write FOnCookiesFlushed;`
| `property OnCertificateExceptionsCleared : TNotifyEvent read FOnCertificateExceptionsCleared write FOnCertificateExceptionsCleared;`
| `property OnHttpAuthCredentialsCleared : TNotifyEvent read FOnHttpAuthCredentialsCleared write FOnHttpAuthCredentialsCleared;`
| `property OnAllConnectionsClosed : TNotifyEvent read FOnAllConnectionsClosed write FOnAllConnectionsClosed;`
| `property OnHttpCacheCleared : TNotifyEvent read FOnHttpCacheCleared write FOnHttpCacheCleared;`
| `property OnExecuteTaskOnCefThread : TOnExecuteTaskOnCefThread read FOnExecuteTaskOnCefThread write FOnExecuteTaskOnCefThread;`
| `property OnCookiesVisited : TOnCookiesVisited read FOnCookiesVisited write FOnCookiesVisited;`
| `property OnCookieVisitorDestroyed : TOnCookieVisitorDestroyed read FOnCookieVisitorDestroyed write FOnCookieVisitorDestroyed;`
| `property OnCookieSet : TOnCookieSet read FOnCookieSet write FOnCookieSet;`
| `property OnZoomPctAvailable : TOnZoomPctAvailable read FOnZoomPctAvailable write FOnZoomPctAvailable;`
| `property OnMediaRouteCreateFinished : TOnMediaRouteCreateFinishedEvent read FOnMediaRouteCreateFinished write FOnMediaRouteCreateFinished;`
| `property OnMediaSinkDeviceInfo : TOnMediaSinkDeviceInfoEvent read FOnMediaSinkDeviceInfo write FOnMediaSinkDeviceInfo;`
| `property OnCanFocus : TNotifyEvent read FOnCanFocus write FOnCanFocus;`
| `property OnBrowserCompMsg : TOnCompMsgEvent read FOnBrowserCompMsg write FOnBrowserCompMsg;`
| `property OnRenderCompMsg : TOnCompMsgEvent read FOnRenderCompMsg write FOnRenderCompMsg;`
| `property OnProcessMessageReceived : TOnProcessMessageReceived read FOnProcessMessageReceived write FOnProcessMessageReceived;`
| `property OnLoadStart : TOnLoadStart read FOnLoadStart write FOnLoadStart;`
| `property OnLoadEnd : TOnLoadEnd read FOnLoadEnd write FOnLoadEnd;`
| `property OnLoadError : TOnLoadError read FOnLoadError write FOnLoadError;`
| `property OnLoadingStateChange : TOnLoadingStateChange read FOnLoadingStateChange write FOnLoadingStateChange;`
| `property OnTakeFocus : TOnTakeFocus read FOnTakeFocus write FOnTakeFocus;`
| `property OnSetFocus : TOnSetFocus read FOnSetFocus write FOnSetFocus;`
| `property OnGotFocus : TOnGotFocus read FOnGotFocus write FOnGotFocus;`
| `property OnBeforeContextMenu : TOnBeforeContextMenu read FOnBeforeContextMenu write FOnBeforeContextMenu;`
| `property OnRunContextMenu : TOnRunContextMenu read FOnRunContextMenu write FOnRunContextMenu;`
| `property OnContextMenuCommand : TOnContextMenuCommand read FOnContextMenuCommand write FOnContextMenuCommand;`
| `property OnContextMenuDismissed : TOnContextMenuDismissed read FOnContextMenuDismissed write FOnContextMenuDismissed;`
| `property OnRunQuickMenu : TOnRunQuickMenuEvent read FOnRunQuickMenu write FOnRunQuickMenu;`
| `property OnQuickMenuCommand : TOnQuickMenuCommandEvent read FOnQuickMenuCommand write FOnQuickMenuCommand;`
| `property OnQuickMenuDismissed : TOnQuickMenuDismissedEvent read FOnQuickMenuDismissed write FOnQuickMenuDismissed;`
| `property OnPreKeyEvent : TOnPreKeyEvent read FOnPreKeyEvent write FOnPreKeyEvent;`
| `property OnKeyEvent : TOnKeyEvent read FOnKeyEvent write FOnKeyEvent;`
| `property OnAddressChange : TOnAddressChange read FOnAddressChange write FOnAddressChange;`
| `property OnTitleChange : TOnTitleChange read FOnTitleChange write FOnTitleChange;`
| `property OnFavIconUrlChange : TOnFavIconUrlChange read FOnFavIconUrlChange write FOnFavIconUrlChange;`
| `property OnFullScreenModeChange : TOnFullScreenModeChange read FOnFullScreenModeChange write FOnFullScreenModeChange;`
| `property OnTooltip : TOnTooltip read FOnTooltip write FOnTooltip;`
| `property OnStatusMessage : TOnStatusMessage read FOnStatusMessage write FOnStatusMessage;`
| `property OnConsoleMessage : TOnConsoleMessage read FOnConsoleMessage write FOnConsoleMessage;`
| `property OnAutoResize : TOnAutoResize read FOnAutoResize write FOnAutoResize;`
| `property OnLoadingProgressChange : TOnLoadingProgressChange read FOnLoadingProgressChange write FOnLoadingProgressChange;`
| `property OnCursorChange : TOnCursorChange read FOnCursorChange write FOnCursorChange;`
| `property OnMediaAccessChange : TOnMediaAccessChange read FOnMediaAccessChange write FOnMediaAccessChange;`
| `property OnContentsBoundsChange : TOnContentsBoundsChange read FOnContentsBoundsChange write FOnContentsBoundsChange;`
| `property OnGetRootWindowScreenRect : TOnGetRootWindowScreenRect read FOnGetRootWindowScreenRect write FOnGetRootWindowScreenRect;`
| `property OnCanDownload : TOnCanDownloadEvent read FOnCanDownload write FOnCanDownload;`
| `property OnBeforeDownload : TOnBeforeDownload read FOnBeforeDownload write FOnBeforeDownload;`
| `property OnDownloadUpdated : TOnDownloadUpdated read FOnDownloadUpdated write FOnDownloadUpdated;`
| `property OnJsdialog : TOnJsdialog read FOnJsdialog write FOnJsdialog;`
| `property OnBeforeUnloadDialog : TOnBeforeUnloadDialog read FOnBeforeUnloadDialog write FOnBeforeUnloadDialog;`
| `property OnResetDialogState : TOnResetDialogState read FOnResetDialogState write FOnResetDialogState;`
| `property OnDialogClosed : TOnDialogClosed read FOnDialogClosed write FOnDialogClosed;`
| `property OnBeforePopup : TOnBeforePopup read FOnBeforePopup write FOnBeforePopup;`
| `property OnBeforePopupAborted : TOnBeforePopupAborted read FOnBeforePopupAborted write FOnBeforePopupAborted;`
| `property OnBeforeDevToolsPopup : TOnBeforeDevToolsPopup read FOnBeforeDevToolsPopup write FOnBeforeDevToolsPopup;`
| `property OnAfterCreated : TOnAfterCreated read FOnAfterCreated write FOnAfterCreated;`
| `property OnBeforeClose : TOnBeforeClose read FOnBeforeClose write FOnBeforeClose;`
| `property OnClose : TOnClose read FOnClose write FOnClose;`
| `property OnBeforeBrowse : TOnBeforeBrowse read FOnBeforeBrowse write FOnBeforeBrowse;`
| `property OnOpenUrlFromTab : TOnOpenUrlFromTab read FOnOpenUrlFromTab write FOnOpenUrlFromTab;`
| `property OnGetAuthCredentials : TOnGetAuthCredentials read FOnGetAuthCredentials write FOnGetAuthCredentials;`
| `property OnCertificateError : TOnCertificateError read FOnCertificateError write FOnCertificateError;`
| `property OnSelectClientCertificate : TOnSelectClientCertificate read FOnSelectClientCertificate write FOnSelectClientCertificate;`
| `property OnRenderViewReady : TOnRenderViewReady read FOnRenderViewReady write FOnRenderViewReady;`
| `property OnRenderProcessUnresponsive : TOnRenderProcessUnresponsive read FOnRenderProcessUnresponsive write FOnRenderProcessUnresponsive;`
| `property OnRenderProcessResponsive : TOnRenderProcessResponsive read FOnRenderProcessResponsive write FOnRenderProcessResponsive;`
| `property OnRenderProcessTerminated : TOnRenderProcessTerminated read FOnRenderProcessTerminated write FOnRenderProcessTerminated;`
| `property OnGetResourceRequestHandler_ReqHdlr : TOnGetResourceRequestHandler read FOnGetResourceRequestHandler_ReqHdlr write FOnGetResourceRequestHandler_ReqHdlr;`
| `property OnDocumentAvailableInMainFrame : TOnDocumentAvailableInMainFrame read FOnDocumentAvailableInMainFrame write FOnDocumentAvailableInMainFrame;`
| `property OnBeforeResourceLoad : TOnBeforeResourceLoad read FOnBeforeResourceLoad write FOnBeforeResourceLoad;`
| `property OnGetResourceHandler : TOnGetResourceHandler read FOnGetResourceHandler write FOnGetResourceHandler;`
| `property OnResourceRedirect : TOnResourceRedirect read FOnResourceRedirect write FOnResourceRedirect;`
| `property OnResourceResponse : TOnResourceResponse read FOnResourceResponse write FOnResourceResponse;`
| `property OnGetResourceResponseFilter : TOnGetResourceResponseFilter read FOnGetResourceResponseFilter write FOnGetResourceResponseFilter;`
| `property OnResourceLoadComplete : TOnResourceLoadComplete read FOnResourceLoadComplete write FOnResourceLoadComplete;`
| `property OnProtocolExecution : TOnProtocolExecution read FOnProtocolExecution write FOnProtocolExecution;`
| `property OnCanSendCookie : TOnCanSendCookie read FOnCanSendCookie write FOnCanSendCookie;`
| `property OnCanSaveCookie : TOnCanSaveCookie read FOnCanSaveCookie write FOnCanSaveCookie;`
| `property OnFileDialog : TOnFileDialog read FOnFileDialog write FOnFileDialog;`
| `property OnGetAccessibilityHandler : TOnGetAccessibilityHandler read FOnGetAccessibilityHandler write FOnGetAccessibilityHandler;`
| `property OnGetRootScreenRect : TOnGetRootScreenRect read FOnGetRootScreenRect write FOnGetRootScreenRect;`
| `property OnGetViewRect : TOnGetViewRect read FOnGetViewRect write FOnGetViewRect;`
| `property OnGetScreenPoint : TOnGetScreenPoint read FOnGetScreenPoint write FOnGetScreenPoint;`
| `property OnGetScreenInfo : TOnGetScreenInfo read FOnGetScreenInfo write FOnGetScreenInfo;`
| `property OnPopupShow : TOnPopupShow read FOnPopupShow write FOnPopupShow;`
| `property OnPopupSize : TOnPopupSize read FOnPopupSize write FOnPopupSize;`
| `property OnPaint : TOnPaint read FOnPaint write FOnPaint;`
| `property OnAcceleratedPaint : TOnAcceleratedPaint read FOnAcceleratedPaint write FOnAcceleratedPaint;`
| `property OnGetTouchHandleSize : TOnGetTouchHandleSize read FOnGetTouchHandleSize write FOnGetTouchHandleSize;`
| `property OnTouchHandleStateChanged : TOnTouchHandleStateChanged read FOnTouchHandleStateChanged write FOnTouchHandleStateChanged;`
| `property OnStartDragging : TOnStartDragging read FOnStartDragging write FOnStartDragging;`
| `property OnUpdateDragCursor : TOnUpdateDragCursor read FOnUpdateDragCursor write FOnUpdateDragCursor;`
| `property OnScrollOffsetChanged : TOnScrollOffsetChanged read FOnScrollOffsetChanged write FOnScrollOffsetChanged;`
| `property OnIMECompositionRangeChanged : TOnIMECompositionRangeChanged read FOnIMECompositionRangeChanged write FOnIMECompositionRangeChanged;`
| `property OnTextSelectionChanged : TOnTextSelectionChanged read FOnTextSelectionChanged write FOnTextSelectionChanged;`
| `property OnVirtualKeyboardRequested : TOnVirtualKeyboardRequested read FOnVirtualKeyboardRequested write FOnVirtualKeyboardRequested;`
| `property OnDragEnter : TOnDragEnter read FOnDragEnter write FOnDragEnter;`
| `property OnDraggableRegionsChanged : TOnDraggableRegionsChanged read FOnDraggableRegionsChanged write FOnDraggableRegionsChanged;`
| `property OnFindResult : TOnFindResult read FOnFindResult write FOnFindResult;`
| `property OnRequestContextInitialized : TOnRequestContextInitialized read FOnRequestContextInitialized write FOnRequestContextInitialized;`
| `property OnGetResourceRequestHandler_ReqCtxHdlr : TOnGetResourceRequestHandler read FOnGetResourceRequestHandler_ReqCtxHdlr write FOnGetResourceRequestHandler_ReqCtxHdlr;`
| `property OnSinks : TOnSinksEvent read FOnSinks write FOnSinks;`
| `property OnRoutes : TOnRoutesEvent read FOnRoutes write FOnRoutes;`
| `property OnRouteStateChanged : TOnRouteStateChangedEvent read FOnRouteStateChanged write FOnRouteStateChanged;`
| `property OnRouteMessageReceived : TOnRouteMessageReceivedEvent read FOnRouteMessageReceived write FOnRouteMessageReceived;`
| `property OnGetAudioParameters : TOnGetAudioParametersEvent read FOnGetAudioParameters write FOnGetAudioParameters;`
| `property OnAudioStreamStarted : TOnAudioStreamStartedEvent read FOnAudioStreamStarted write FOnAudioStreamStarted;`
| `property OnAudioStreamPacket : TOnAudioStreamPacketEvent read FOnAudioStreamPacket write FOnAudioStreamPacket;`
| `property OnAudioStreamStopped : TOnAudioStreamStoppedEvent read FOnAudioStreamStopped write FOnAudioStreamStopped;`
| `property OnAudioStreamError : TOnAudioStreamErrorEvent read FOnAudioStreamError write FOnAudioStreamError;`
| `property OnDevToolsMessage : TOnDevToolsMessageEvent read FOnDevToolsMessage write FOnDevToolsMessage;`
| `property OnDevToolsRawMessage : TOnDevToolsRawMessageEvent read FOnDevToolsRawMessage write FOnDevToolsRawMessage;`
| `property OnDevToolsMethodResult : TOnDevToolsMethodResultEvent read FOnDevToolsMethodResult write FOnDevToolsMethodResult;`
| `property OnDevToolsMethodRawResult : TOnDevToolsMethodRawResultEvent read FOnDevToolsMethodRawResult write FOnDevToolsMethodRawResult;`
| `property OnDevToolsEvent : TOnDevToolsEventEvent read FOnDevToolsEvent write FOnDevToolsEvent;`
| `property OnDevToolsRawEvent : TOnDevToolsEventRawEvent read FOnDevToolsRawEvent write FOnDevToolsRawEvent;`
| `property OnDevToolsAgentAttached : TOnDevToolsAgentAttachedEvent read FOnDevToolsAgentAttached write FOnDevToolsAgentAttached;`
| `property OnDevToolsAgentDetached : TOnDevToolsAgentDetachedEvent read FOnDevToolsAgentDetached write FOnDevToolsAgentDetached;`
| `property OnFrameCreated : TOnFrameCreated read FOnFrameCreated write FOnFrameCreated;`
| `property OnFrameDestroyed : TOnFrameDestroyed read FOnFrameDestroyed write FOnFrameDestroyed;`
| `property OnFrameAttached : TOnFrameAttached read FOnFrameAttached write FOnFrameAttached;`
| `property OnFrameDetached : TOnFrameDetached read FOnFrameDetached write FOnFrameDetached;`
| `property OnMainFrameChanged : TOnMainFrameChanged read FOnMainFrameChanged write FOnMainFrameChanged;`
| `property OnChromeCommand : TOnChromeCommandEvent read FOnChromeCommand write FOnChromeCommand;`
| `property OnIsChromeAppMenuItemVisible : TOnIsChromeAppMenuItemVisibleEvent read FOnIsChromeAppMenuItemVisible write FOnIsChromeAppMenuItemVisible;`
| `property OnIsChromeAppMenuItemEnabled : TOnIsChromeAppMenuItemEnabledEvent read FOnIsChromeAppMenuItemEnabled write FOnIsChromeAppMenuItemEnabled;`
| `property OnIsChromePageActionIconVisible : TOnIsChromePageActionIconVisibleEvent read FOnIsChromePageActionIconVisible write FOnIsChromePageActionIconVisible;`
| `property OnIsChromeToolbarButtonVisible : TOnIsChromeToolbarButtonVisibleEvent read FOnIsChromeToolbarButtonVisible write FOnIsChromeToolbarButtonVisible;`
| `property OnRequestMediaAccessPermission : TOnRequestMediaAccessPermissionEvent read FOnRequestMediaAccessPermission write FOnRequestMediaAccessPermission;`
| `property OnShowPermissionPrompt : TOnShowPermissionPromptEvent read FOnShowPermissionPrompt write FOnShowPermissionPrompt;`
| `property OnDismissPermissionPrompt : TOnDismissPermissionPromptEvent read FOnDismissPermissionPrompt write FOnDismissPermissionPrompt;`
| `property OnPreferenceChanged : TOnPreferenceChangedEvent read FOnPreferenceChanged write FOnPreferenceChanged;`
| `property OnSettingChanged : TOnSettingChangedEvent read FOnSettingChanged write FOnSettingChanged;`

## Description

### Fields

| `FCompHandle: HWND;`
This item has no description.

| `FHandler: ICefClient;`
This item has no description.

| `FBrowsersCS: TCriticalSection;`
This item has no description.

| `FBrowsers: TBrowserInfoList;`
This item has no description.

| `FBrowserId: integer;`
This item has no description.

| `FMultiBrowserMode: boolean;`
This item has no description.

| `FReqContextHandler: ICefRequestContextHandler;`
This item has no description.

| `FResourceRequestHandler: ICefResourceRequestHandler;`
This item has no description.

| `FMediaObserver: ICefMediaObserver;`
This item has no description.

| `FMediaObserverReg: ICefRegistration;`
This item has no description.

| `FDevToolsMsgObserver: ICefDevToolsMessageObserver;`
This item has no description.

| `FDevToolsMsgObserverReg: ICefRegistration;`
This item has no description.

| `FSettingObserver: ICefSettingObserver;`
This item has no description.

| `FSettingObserverReg: ICefRegistration;`
This item has no description.

| `FPreferenceInfoList: TPreferenceInfoList;`
This item has no description.

| `FPreferenceInfoCS: TCriticalSection;`
This item has no description.

| `FDefaultUrl: ustring;`
This item has no description.

| `FOptions: TChromiumOptions;`
This item has no description.

| `FFontOptions: TChromiumFontOptions;`
This item has no description.

| `FPDFPrintOptions: TPDFPrintOptions;`
This item has no description.

| `FDefaultEncoding: ustring;`
This item has no description.

| `FProxyType: integer;`
This item has no description.

| `FProxyScheme: TCefProxyScheme;`
This item has no description.

| `FProxyServer: ustring;`
This item has no description.

| `FProxyPort: integer;`
This item has no description.

| `FProxyUsername: ustring;`
This item has no description.

| `FProxyPassword: ustring;`
This item has no description.

| `FProxyScriptURL: ustring;`
This item has no description.

| `FProxyByPassList: ustring;`
This item has no description.

| `FMaxConnectionsPerProxy: integer;`
This item has no description.

| `FUpdatePreferences: boolean;`
This item has no description.

| `FCustomHeaderName: ustring;`
This item has no description.

| `FCustomHeaderValue: ustring;`
This item has no description.

| `FAddCustomHeader: boolean;`
This item has no description.

| `FDoNotTrack: boolean;`
This item has no description.

| `FSendReferrer: boolean;`
This item has no description.

| `FHyperlinkAuditing: boolean;`
This item has no description.

| `FAllowOutdatedPlugins: boolean;`
This item has no description.

| `FAlwaysAuthorizePlugins: boolean;`
This item has no description.

| `FAlwaysOpenPDFExternally: boolean;`
This item has no description.

| `FSpellChecking: boolean;`
This item has no description.

| `FSpellCheckerDicts: ustring;`
This item has no description.

| `FZoomStep: byte;`
This item has no description.

| `FZoomStepCS: TCriticalSection;`
This item has no description.

| `FPrefsFileName: string;`
This item has no description.

| `FIsOSR: boolean;`
This item has no description.

| `FSafeSearch: boolean;`
This item has no description.

| `FOffline: boolean;`
This item has no description.

| `FYouTubeRestrict: integer;`
This item has no description.

| `FPrintingEnabled: boolean;`
This item has no description.

| `FWindowInfo: TCEFWindowInfoWrapper;`
This item has no description.

| `FBrowserSettings: TCefBrowserSettings;`
This item has no description.

| `FDevWindowInfo: TCEFWindowInfoWrapper;`
This item has no description.

| `FDevBrowserSettings: TCefBrowserSettings;`
This item has no description.

| `FDragOperations: TCefDragOperations;`
This item has no description.

| `FDragDropManager: TCEFDragAndDropMgr;`
This item has no description.

| `FDropTargetWnd: HWND;`
This item has no description.

| `FDragAndDropInitialized: boolean;`
This item has no description.

| `FWebRTCIPHandlingPolicy: TCefWebRTCHandlingPolicy;`
This item has no description.

| `FWebRTCMultipleRoutes: TCefState;`
This item has no description.

| `FWebRTCNonProxiedUDP: TCefState;`
This item has no description.

| `FAcceptCookies: TCefCookiePref;`
This item has no description.

| `FBlock3rdPartyCookies: boolean;`
This item has no description.

| `FQuicAllowed: boolean;`
This item has no description.

| `FJavascriptEnabled: boolean;`
This item has no description.

| `FLoadImagesAutomatically: boolean;`
This item has no description.

| `FCanFocus: boolean;`
This item has no description.

| `FEnableFocusDelayMs: cardinal;`
This item has no description.

| `FComponentID: integer;`
This item has no description.

| `FDownloadBubble: TCefState;`
This item has no description.

| `FHTTPSUpgrade: TCefState;`
This item has no description.

| `FHSTSPolicyBypassList: ustring;`
This item has no description.

| `FCredentialsService: TCefState;`
This item has no description.

| `FAutofillCreditCard: TCefState;`
This item has no description.

| `FAutofillProfile: TCefState;`
This item has no description.

| `FAutofillSaveData: TCefState;`
This item has no description.

| `FCanMakePayment: TCefState;`
This item has no description.

| `FSearchSuggestEnabled: TCefState;`
This item has no description.

| `FURLDataCollection: TCefState;`
This item has no description.

| `FTryingToCloseBrowser: boolean;`
This item has no description.

| `FStorageNotificationService: TCefState;`
This item has no description.

| `FOldBrowserCompWndPrc: TFNWndProc;`
This item has no description.

| `FOldRenderCompWndPrc: TFNWndProc;`
This item has no description.

| `FBrowserCompStub: Pointer;`
This item has no description.

| `FRenderCompStub: Pointer;`
This item has no description.

| `FBrowserCompHWND: THandle;`
This item has no description.

| `FRenderCompHWND: THandle;`
This item has no description.

| `FOnProcessMessageReceived: TOnProcessMessageReceived;`
ICefClient

| `FOnLoadStart: TOnLoadStart;`
ICefLoadHandler

| `FOnLoadEnd: TOnLoadEnd;`
This item has no description.

| `FOnLoadError: TOnLoadError;`
This item has no description.

| `FOnLoadingStateChange: TOnLoadingStateChange;`
This item has no description.

| `FOnTakeFocus: TOnTakeFocus;`
ICefFocusHandler

| `FOnSetFocus: TOnSetFocus;`
This item has no description.

| `FOnGotFocus: TOnGotFocus;`
This item has no description.

| `FOnBeforeContextMenu: TOnBeforeContextMenu;`
ICefContextMenuHandler

| `FOnRunContextMenu: TOnRunContextMenu;`
This item has no description.

| `FOnContextMenuCommand: TOnContextMenuCommand;`
This item has no description.

| `FOnContextMenuDismissed: TOnContextMenuDismissed;`
This item has no description.

| `FOnRunQuickMenu: TOnRunQuickMenuEvent;`
This item has no description.

| `FOnQuickMenuCommand: TOnQuickMenuCommandEvent;`
This item has no description.

| `FOnQuickMenuDismissed: TOnQuickMenuDismissedEvent;`
This item has no description.

| `FOnPreKeyEvent: TOnPreKeyEvent;`
ICefKeyboardHandler

| `FOnKeyEvent: TOnKeyEvent;`
This item has no description.

| `FOnAddressChange: TOnAddressChange;`
ICefDisplayHandler

| `FOnTitleChange: TOnTitleChange;`
This item has no description.

| `FOnFavIconUrlChange: TOnFavIconUrlChange;`
This item has no description.

| `FOnFullScreenModeChange: TOnFullScreenModeChange;`
This item has no description.

| `FOnTooltip: TOnTooltip;`
This item has no description.

| `FOnStatusMessage: TOnStatusMessage;`
This item has no description.

| `FOnConsoleMessage: TOnConsoleMessage;`
This item has no description.

| `FOnAutoResize: TOnAutoResize;`
This item has no description.

| `FOnLoadingProgressChange: TOnLoadingProgressChange;`
This item has no description.

| `FOnCursorChange: TOnCursorChange;`
This item has no description.

| `FOnMediaAccessChange: TOnMediaAccessChange;`
This item has no description.

| `FOnContentsBoundsChange: TOnContentsBoundsChange;`
This item has no description.

| `FOnGetRootWindowScreenRect: TOnGetRootWindowScreenRect;`
This item has no description.

| `FOnCanDownload: TOnCanDownloadEvent;`
ICefDownloadHandler

| `FOnBeforeDownload: TOnBeforeDownload;`
This item has no description.

| `FOnDownloadUpdated: TOnDownloadUpdated;`
This item has no description.

| `FOnJsdialog: TOnJsdialog;`
ICefJsDialogHandler

| `FOnBeforeUnloadDialog: TOnBeforeUnloadDialog;`
This item has no description.

| `FOnResetDialogState: TOnResetDialogState;`
This item has no description.

| `FOnDialogClosed: TOnDialogClosed;`
This item has no description.

| `FOnBeforePopup: TOnBeforePopup;`
ICefLifeSpanHandler

| `FOnBeforePopupAborted: TOnBeforePopupAborted;`
This item has no description.

| `FOnBeforeDevToolsPopup: TOnBeforeDevToolsPopup;`
This item has no description.

| `FOnAfterCreated: TOnAfterCreated;`
This item has no description.

| `FOnBeforeClose: TOnBeforeClose;`
This item has no description.

| `FOnClose: TOnClose;`
This item has no description.

| `FOnBeforeBrowse: TOnBeforeBrowse;`
ICefRequestHandler

| `FOnOpenUrlFromTab: TOnOpenUrlFromTab;`
This item has no description.

| `FOnGetAuthCredentials: TOnGetAuthCredentials;`
This item has no description.

| `FOnCertificateError: TOnCertificateError;`
This item has no description.

| `FOnSelectClientCertificate: TOnSelectClientCertificate;`
This item has no description.

| `FOnRenderViewReady: TOnRenderViewReady;`
This item has no description.

| `FOnRenderProcessUnresponsive: TOnRenderProcessUnresponsive;`
This item has no description.

| `FOnRenderProcessResponsive: TOnRenderProcessResponsive;`
This item has no description.

| `FOnRenderProcessTerminated: TOnRenderProcessTerminated;`
This item has no description.

| `FOnGetResourceRequestHandler_ReqHdlr: TOnGetResourceRequestHandler;`
This item has no description.

| `FOnDocumentAvailableInMainFrame: TOnDocumentAvailableInMainFrame;`
This item has no description.

| `FOnBeforeResourceLoad: TOnBeforeResourceLoad;`
ICefResourceRequestHandler

| `FOnGetResourceHandler: TOnGetResourceHandler;`
This item has no description.

| `FOnResourceRedirect: TOnResourceRedirect;`
This item has no description.

| `FOnResourceResponse: TOnResourceResponse;`
This item has no description.

| `FOnGetResourceResponseFilter: TOnGetResourceResponseFilter;`
This item has no description.

| `FOnResourceLoadComplete: TOnResourceLoadComplete;`
This item has no description.

| `FOnProtocolExecution: TOnProtocolExecution;`
This item has no description.

| `FOnCanSendCookie: TOnCanSendCookie;`
ICefCookieAccessFilter

| `FOnCanSaveCookie: TOnCanSaveCookie;`
This item has no description.

| `FOnFileDialog: TOnFileDialog;`
ICefDialogHandler

| `FOnGetAccessibilityHandler: TOnGetAccessibilityHandler;`
ICefRenderHandler

| `FOnGetRootScreenRect: TOnGetRootScreenRect;`
This item has no description.

| `FOnGetViewRect: TOnGetViewRect;`
This item has no description.

| `FOnGetScreenPoint: TOnGetScreenPoint;`
This item has no description.

| `FOnGetScreenInfo: TOnGetScreenInfo;`
This item has no description.

| `FOnPopupShow: TOnPopupShow;`
This item has no description.

| `FOnPopupSize: TOnPopupSize;`
This item has no description.

| `FOnPaint: TOnPaint;`
This item has no description.

| `FOnAcceleratedPaint: TOnAcceleratedPaint;`
This item has no description.

| `FOnGetTouchHandleSize: TOnGetTouchHandleSize;`
This item has no description.

| `FOnTouchHandleStateChanged: TOnTouchHandleStateChanged;`
This item has no description.

| `FOnStartDragging: TOnStartDragging;`
This item has no description.

| `FOnUpdateDragCursor: TOnUpdateDragCursor;`
This item has no description.

| `FOnScrollOffsetChanged: TOnScrollOffsetChanged;`
This item has no description.

| `FOnIMECompositionRangeChanged: TOnIMECompositionRangeChanged;`
This item has no description.

| `FOnTextSelectionChanged: TOnTextSelectionChanged;`
This item has no description.

| `FOnVirtualKeyboardRequested: TOnVirtualKeyboardRequested;`
This item has no description.

| `FOnDragEnter: TOnDragEnter;`
ICefDragHandler

| `FOnDraggableRegionsChanged: TOnDraggableRegionsChanged;`
This item has no description.

| `FOnFindResult: TOnFindResult;`
ICefFindHandler

| `FOnRequestContextInitialized: TOnRequestContextInitialized;`
ICefRequestContextHandler

| `FOnGetResourceRequestHandler_ReqCtxHdlr: TOnGetResourceRequestHandler;`
This item has no description.

| `FOnSinks: TOnSinksEvent;`
ICefMediaObserver

| `FOnRoutes: TOnRoutesEvent;`
This item has no description.

| `FOnRouteStateChanged: TOnRouteStateChangedEvent;`
This item has no description.

| `FOnRouteMessageReceived: TOnRouteMessageReceivedEvent;`
This item has no description.

| `FOnGetAudioParameters: TOnGetAudioParametersEvent;`
ICefAudioHandler

| `FOnAudioStreamStarted: TOnAudioStreamStartedEvent;`
This item has no description.

| `FOnAudioStreamPacket: TOnAudioStreamPacketEvent;`
This item has no description.

| `FOnAudioStreamStopped: TOnAudioStreamStoppedEvent;`
This item has no description.

| `FOnAudioStreamError: TOnAudioStreamErrorEvent;`
This item has no description.

| `FOnDevToolsMessage: TOnDevToolsMessageEvent;`
ICefDevToolsMessageObserver

| `FOnDevToolsRawMessage: TOnDevToolsRawMessageEvent;`
This item has no description.

| `FOnDevToolsMethodResult: TOnDevToolsMethodResultEvent;`
This item has no description.

| `FOnDevToolsMethodRawResult: TOnDevToolsMethodRawResultEvent;`
This item has no description.

| `FOnDevToolsEvent: TOnDevToolsEventEvent;`
This item has no description.

| `FOnDevToolsRawEvent: TOnDevToolsEventRawEvent;`
This item has no description.

| `FOnDevToolsAgentAttached: TOnDevToolsAgentAttachedEvent;`
This item has no description.

| `FOnDevToolsAgentDetached: TOnDevToolsAgentDetachedEvent;`
This item has no description.

| `FOnPrintStart: TOnPrintStartEvent;`
ICefPrintHandler

| `FOnPrintSettings: TOnPrintSettingsEvent;`
This item has no description.

| `FOnPrintDialog: TOnPrintDialogEvent;`
This item has no description.

| `FOnPrintJob: TOnPrintJobEvent;`
This item has no description.

| `FOnPrintReset: TOnPrintResetEvent;`
This item has no description.

| `FOnGetPDFPaperSize: TOnGetPDFPaperSizeEvent;`
This item has no description.

| `FOnFrameCreated: TOnFrameCreated;`
ICefFrameHandler

| `FOnFrameDestroyed: TOnFrameDestroyed;`
This item has no description.

| `FOnFrameAttached: TOnFrameAttached;`
This item has no description.

| `FOnFrameDetached: TOnFrameDetached;`
This item has no description.

| `FOnMainFrameChanged: TOnMainFrameChanged;`
This item has no description.

| `FOnChromeCommand: TOnChromeCommandEvent;`
ICefCommandHandler

| `FOnIsChromeAppMenuItemVisible: TOnIsChromeAppMenuItemVisibleEvent;`
This item has no description.

| `FOnIsChromeAppMenuItemEnabled: TOnIsChromeAppMenuItemEnabledEvent;`
This item has no description.

| `FOnIsChromePageActionIconVisible: TOnIsChromePageActionIconVisibleEvent;`
This item has no description.

| `FOnIsChromeToolbarButtonVisible: TOnIsChromeToolbarButtonVisibleEvent;`
This item has no description.

| `FOnRequestMediaAccessPermission: TOnRequestMediaAccessPermissionEvent;`
ICefPermissionHandler

| `FOnShowPermissionPrompt: TOnShowPermissionPromptEvent;`
This item has no description.

| `FOnDismissPermissionPrompt: TOnDismissPermissionPromptEvent;`
This item has no description.

| `FOnPreferenceChanged: TOnPreferenceChangedEvent;`
ICefPreferenceObserver

| `FOnSettingChanged: TOnSettingChangedEvent;`
ICefSettingObserver

| `FOnTextResultAvailable: TOnTextResultAvailableEvent;`
Custom

| `FOnPdfPrintFinished: TOnPdfPrintFinishedEvent;`
This item has no description.

| `FOnPrefsAvailable: TOnPrefsAvailableEvent;`
This item has no description.

| `FOnPrefsUpdated: TNotifyEvent;`
This item has no description.

| `FOnCookiesDeleted: TOnCookiesDeletedEvent;`
This item has no description.

| `FOnResolvedHostAvailable: TOnResolvedIPsAvailableEvent;`
This item has no description.

| `FOnNavigationVisitorResultAvailable: TOnNavigationVisitorResultAvailableEvent;`
This item has no description.

| `FOnDownloadImageFinished: TOnDownloadImageFinishedEvent;`
This item has no description.

| `FOnCookiesFlushed: TNotifyEvent;`
This item has no description.

| `FOnCertificateExceptionsCleared: TNotifyEvent;`
This item has no description.

| `FOnHttpAuthCredentialsCleared: TNotifyEvent;`
This item has no description.

| `FOnAllConnectionsClosed: TNotifyEvent;`
This item has no description.

| `FOnHttpCacheCleared: TNotifyEvent;`
This item has no description.

| `FOnExecuteTaskOnCefThread: TOnExecuteTaskOnCefThread;`
This item has no description.

| `FOnCookiesVisited: TOnCookiesVisited;`
This item has no description.

| `FOnCookieVisitorDestroyed: TOnCookieVisitorDestroyed;`
This item has no description.

| `FOnCookieSet: TOnCookieSet;`
This item has no description.

| `FOnZoomPctAvailable: TOnZoomPctAvailable;`
This item has no description.

| `FOnMediaRouteCreateFinished: TOnMediaRouteCreateFinishedEvent;`
This item has no description.

| `FOnMediaSinkDeviceInfo: TOnMediaSinkDeviceInfoEvent;`
This item has no description.

| `FOnCanFocus: TNotifyEvent;`
This item has no description.

| `FOnBrowserCompMsg: TOnCompMsgEvent;`
This item has no description.

| `FOnRenderCompMsg: TOnCompMsgEvent;`
This item has no description.

### Methods

| `function GetIsLoading: boolean;`
This item has no description.

| `function GetMultithreadApp: boolean;`
This item has no description.

| `function GetHasDocument: boolean;`
This item has no description.

| `function GetHasView: boolean;`
This item has no description.

| `function GetHasDevTools: boolean;`
This item has no description.

| `function GetHasClientHandler: boolean;`
This item has no description.

| `function GetHasBrowser: boolean;`
This item has no description.

| `function GetCanGoBack: boolean;`
This item has no description.

| `function GetCanGoForward: boolean;`
This item has no description.

| `function GetDocumentURL: ustring;`
This item has no description.

| `function GetZoomLevel: double;`
This item has no description.

| `function GetZoomPct: double;`
This item has no description.

| `function GetZoomStep: byte;`
This item has no description.

| `function GetDefaultZoomLevel: double;`
This item has no description.

| `function GetCanIncZoom: boolean;`
This item has no description.

| `function GetCanDecZoom: boolean;`
This item has no description.

| `function GetCanResetZoom: boolean;`
This item has no description.

| `function GetIsPopUp: boolean;`
This item has no description.

| `function GetWindowHandle: TCefWindowHandle;`
This item has no description.

| `function GetOpenerWindowHandle: TCefWindowHandle;`
This item has no description.

| `function GetOpenerIdentifier: Integer;`
This item has no description.

| `function GetWindowlessFrameRate: integer;`
This item has no description.

| `function GetFrameIsFocused: boolean;`
This item has no description.

| `function GetInitialized: boolean;`
This item has no description.

| `function GetVisibleNavigationEntry: ICefNavigationEntry;`
This item has no description.

| `function GetRuntimeStyle: TCefRuntimeStyle;`
This item has no description.

| `function GetHasValidMainFrame: boolean;`
This item has no description.

| `function GetFrameCount: NativeUInt;`
This item has no description.

| `function GetRequestContextCache: ustring;`
This item has no description.

| `function GetRequestContextIsGlobal: boolean;`
This item has no description.

| `function GetChromeColorSchemeMode: TCefColorVariant;`
This item has no description.

| `function GetChromeColorSchemeColor: TCefColor;`
This item has no description.

| `function GetChromeColorSchemeVariant: TCefColorVariant;`
This item has no description.

| `function GetAudioMuted: boolean;`
This item has no description.

| `function GetFullscreen: boolean;`
This item has no description.

| `function GetIsRenderProcessUnresponsive: boolean;`
This item has no description.

| `function GetParentFormHandle: TCefWindowHandle; virtual;`
This item has no description.

| `function GetRequestContext: ICefRequestContext;`
This item has no description.

| `function GetMediaRouter: ICefMediaRouter;`
This item has no description.

| `function GetBrowser: ICefBrowser;`
This item has no description.

| `function GetBrowserId: integer;`
This item has no description.

| `function GetBrowserById(aID : integer) : ICefBrowser;`
This item has no description.

| `function GetBrowserCount: integer;`
This item has no description.

| `function GetBrowserIdByIndex(aIndex : integer) : integer;`
This item has no description.

| `function GetComponentID: integer;`
This item has no description.

| `function GetCefWindowInfo: TCefWindowInfo;`
This item has no description.

| `function GetWindowInfoExStyle: DWORD;`
This item has no description.

| `procedure SetDoNotTrack(aValue : boolean);`
This item has no description.

| `procedure SetSendReferrer(aValue : boolean);`
This item has no description.

| `procedure SetHyperlinkAuditing(aValue : boolean);`
This item has no description.

| `procedure SetAllowOutdatedPlugins(aValue : boolean);`
This item has no description.

| `procedure SetAlwaysAuthorizePlugins(aValue : boolean);`
This item has no description.

| `procedure SetAlwaysOpenPDFExternally(aValue : boolean);`
This item has no description.

| `procedure SetSpellChecking(aValue : boolean);`
This item has no description.

| `procedure SetSpellCheckerDicts(const aValue : ustring);`
This item has no description.

| `procedure SetWebRTCIPHandlingPolicy(aValue : TCefWebRTCHandlingPolicy);`
This item has no description.

| `procedure SetWebRTCMultipleRoutes(aValue : TCefState);`
This item has no description.

| `procedure SetWebRTCNonProxiedUDP(aValue : TCefState);`
This item has no description.

| `procedure SetProxyType(aValue : integer);`
This item has no description.

| `procedure SetProxyScheme(aValue : TCefProxyScheme);`
This item has no description.

| `procedure SetProxyServer(const aValue : ustring);`
This item has no description.

| `procedure SetProxyPort(aValue : integer);`
This item has no description.

| `procedure SetProxyUsername(const aValue : ustring);`
This item has no description.

| `procedure SetProxyPassword(const aValue : ustring);`
This item has no description.

| `procedure SetProxyScriptURL(const aValue : ustring);`
This item has no description.

| `procedure SetProxyByPassList(const aValue : ustring);`
This item has no description.

| `procedure SetMaxConnectionsPerProxy(const aValue : integer);`
This item has no description.

| `procedure SetCustomHeaderName(const aValue : ustring);`
This item has no description.

| `procedure SetCustomHeaderValue(const aValue : ustring);`
This item has no description.

| `procedure SetZoomLevel(const aValue : double);`
This item has no description.

| `procedure SetZoomPct(const aValue : double);`
This item has no description.

| `procedure SetZoomStep(aValue : byte);`
This item has no description.

| `procedure SetWindowlessFrameRate(aValue : integer);`
This item has no description.

| `procedure SetAudioMuted(aValue : boolean);`
This item has no description.

| `procedure SetSafeSearch(aValue : boolean);`
This item has no description.

| `procedure SetOffline(aValue : boolean);`
This item has no description.

| `procedure SetYouTubeRestrict(aValue : integer);`
This item has no description.

| `procedure SetPrintingEnabled(aValue : boolean);`
This item has no description.

| `procedure SetAcceptCookies(const aValue : TCefCookiePref);`
This item has no description.

| `procedure SetBlock3rdPartyCookies(const aValue : boolean);`
This item has no description.

| `procedure SetMultiBrowserMode(aValue : boolean);`
This item has no description.

| `procedure SetQuicAllowed(aValue : boolean);`
This item has no description.

| `procedure SetJavascriptEnabled(aValue : boolean);`
This item has no description.

| `procedure SetLoadImagesAutomatically(aValue : boolean);`
This item has no description.

| `procedure SetDefaultUrl(const aValue : ustring);`
This item has no description.

| `procedure SetRuntimeStyle(aValue : TCefRuntimeStyle);`
This item has no description.

| `procedure SetWindowInfoExStyle(aValue : DWORD);`
This item has no description.

| `function CreateBrowserHost(aWindowInfo : PCefWindowInfo; const aURL : ustring; const aSettings : PCefBrowserSettings; const aExtraInfo : ICefDictionaryValue; const aContext : ICefRequestContext): boolean;`
This item has no description.

| `function CreateBrowserHostSync(aWindowInfo : PCefWindowInfo; const aURL : ustring; const aSettings : PCefBrowserSettings; const aExtraInfo : ICefDictionaryValue; const aContext : ICefRequestContext): Boolean;`
This item has no description.

| `procedure DestroyAllBrowsers;`
This item has no description.

| `procedure DestroyClientHandler;`
This item has no description.

| `procedure DestroyReqContextHandler;`
This item has no description.

| `procedure DestroyResourceRequestHandler;`
This item has no description.

| `procedure DestroyMediaObserver;`
This item has no description.

| `procedure DestroyDevToolsMsgObserver;`
This item has no description.

| `procedure DestroySettingObserver;`
This item has no description.

| `procedure DestroyPreferenceObserver;`
This item has no description.

| `procedure DestroyAllHandlersAndObservers;`
This item has no description.

| `procedure CreateResourceRequestHandler; virtual;`
This item has no description.

| `procedure CreateMediaObserver; virtual;`
This item has no description.

| `procedure CreateDevToolsMsgObserver; virtual;`
This item has no description.

| `procedure CreateSettingObserver; virtual;`
This item has no description.

| `procedure CreatePreferenceObserver; virtual;`
This item has no description.

| `procedure CreateRequestContextHandler; virtual;`
This item has no description.

| `procedure CreateOptionsClasses; virtual;`
This item has no description.

| `procedure CreateSyncObjects; virtual;`
This item has no description.

| `procedure CreateBrowserInfoList; virtual;`
This item has no description.

| `procedure CreateWindowWithWndProc; virtual;`
This item has no description.

| `procedure InitializeEvents;`
This item has no description.

| `procedure InitializeSettings(var aSettings : TCefBrowserSettings);`
This item has no description.

| `function UpdateProxyPrefs(const aBrowser: ICefBrowser) : boolean;`
This item has no description.

| `function UpdatePreference(const aBrowser: ICefBrowser; const aName : ustring; aValue : boolean) : boolean; overload;`
This item has no description.

| `function UpdatePreference(const aBrowser: ICefBrowser; const aName : ustring; aValue : integer) : boolean; overload;`
This item has no description.

| `function UpdatePreference(const aBrowser: ICefBrowser; const aName : ustring; const aValue : double) : boolean; overload;`
This item has no description.

| `function UpdatePreference(const aBrowser: ICefBrowser; const aName, aValue : ustring) : boolean; overload;`
This item has no description.

| `function UpdatePreference(const aBrowser: ICefBrowser; const aName : ustring; const aValue : TStringList) : boolean; overload;`
This item has no description.

| `function UpdateStringListPref(const aBrowser: ICefBrowser; const aName, aValue : ustring) : boolean;`
This item has no description.

| `function ExecuteUpdateZoomStepTask(aInc : boolean) : boolean;`
This item has no description.

| `function ExecuteUpdateZoomPctTask(aInc : boolean) : boolean;`
This item has no description.

| `function ExecuteReadZoomTask: boolean;`
This item has no description.

| `function ExecuteSetZoomPctTask(const aValue : double) : boolean;`
This item has no description.

| `function ExecuteSetZoomLevelTask(const aValue : double) : boolean;`
This item has no description.

| `function ExecuteSetZoomStepTask(aValue : byte) : boolean;`
This item has no description.

| `function ExecuteBrowserNavigationTask(aTask : TCefBrowserNavigation) : boolean;`
This item has no description.

| `procedure UpdateHostZoomLevel(const aValue : double);`
This item has no description.

| `procedure UpdateHostZoomPct(const aValue : double);`
This item has no description.

| `procedure DelayedDragging;`
This item has no description.

| `procedure InitializeWindowInfo(aParentHandle : TCefWindowHandle; aParentRect : TRect; const aWindowName : ustring); virtual;`
This item has no description.

| `procedure DefaultInitializeDevToolsWindowInfo(aDevToolsWnd: TCefWindowHandle; const aClientRect: TRect; const aWindowName: ustring);`
This item has no description.

| `function AddBrowser(const aBrowser : ICefBrowser) : boolean;`
This item has no description.

| `function RemoveBrowser(const aBrowser : ICefBrowser) : boolean;`
This item has no description.

| `procedure SetBrowserIsClosing(aID : integer);`
This item has no description.

| `procedure PrefsAvailableMsg(aResultOK : boolean);`
This item has no description.

| `function SendCompMessage(aMsg : cardinal; aWParam : WPARAM = 0; aLParam : LPARAM = 0) : boolean;`
This item has no description.

| `procedure ToMouseEvent(grfKeyState : Longint; pt : TPoint; var aMouseEvent : TCefMouseEvent);`
This item has no description.

| `procedure WndProc(var aMessage: TMessage);`
This item has no description.

| `procedure CreateStub(const aMethod : TWndMethod; var aStub : Pointer);`
This item has no description.

| `procedure FreeAndNilStub(var aStub : pointer);`
This item has no description.

| `function InstallCompWndProc(aWnd: THandle; aStub: Pointer): TFNWndProc;`
This item has no description.

| `procedure RestoreCompWndProc(var aOldWnd: THandle; aNewWnd: THandle; var aProc: TFNWndProc);`
This item has no description.

| `procedure CallOldCompWndProc(aProc: TFNWndProc; aWnd: THandle; var aMessage: TMessage);`
This item has no description.

| `procedure BrowserCompWndProc(var aMessage: TMessage);`
This item has no description.

| `procedure RenderCompWndProc(var aMessage: TMessage);`
This item has no description.

| `procedure RestoreOldCompWndProc;`
This item has no description.

| `function CopyDCToBitmapStream(aSrcDC : HDC; const aSrcRect : TRect; const aStream : TStream) : boolean;`
This item has no description.

| `procedure DragDropManager_OnDragEnter(Sender: TObject; const aDragData : ICefDragData; grfKeyState: Longint; pt: TPoint; var dwEffect: Longint);`
This item has no description.

| `procedure DragDropManager_OnDragOver(Sender: TObject; grfKeyState: Longint; pt: TPoint; var dwEffect: Longint);`
This item has no description.

| `procedure DragDropManager_OnDragLeave(Sender: TObject);`
This item has no description.

| `procedure DragDropManager_OnDrop(Sender: TObject; grfKeyState: Longint; pt: TPoint; var dwEffect: Longint);`
This item has no description.

| `function doOnProcessMessageReceived(const browser: ICefBrowser; const frame: ICefFrame; sourceProcess: TCefProcessId; const aMessage: ICefProcessMessage): Boolean; virtual;`
ICefClient

| `procedure doOnLoadStart(const browser: ICefBrowser; const frame: ICefFrame; transitionType: TCefTransitionType); virtual;`
ICefLoadHandler

| `procedure doOnLoadEnd(const browser: ICefBrowser; const frame: ICefFrame; httpStatusCode: Integer); virtual;`
This item has no description.

| `procedure doOnLoadError(const browser: ICefBrowser; const frame: ICefFrame; errorCode: TCefErrorCode; const errorText, failedUrl: ustring); virtual;`
This item has no description.

| `procedure doOnLoadingStateChange(const browser: ICefBrowser; isLoading, canGoBack, canGoForward: Boolean); virtual;`
This item has no description. Showing description inherited from IChromiumEvents.doOnLoadingStateChange. ICefLoadHandler

| `procedure doOnTakeFocus(const browser: ICefBrowser; next: Boolean); virtual;`
ICefFocusHandler

| `function doOnSetFocus(const browser: ICefBrowser; source: TCefFocusSource): Boolean; virtual;`
This item has no description.

| `procedure doOnGotFocus(const browser: ICefBrowser); virtual;`
This item has no description.

| `procedure doOnBeforeContextMenu(const browser: ICefBrowser; const frame: ICefFrame; const params: ICefContextMenuParams; const model: ICefMenuModel); virtual;`
ICefContextMenuHandler

| `function doRunContextMenu(const browser: ICefBrowser; const frame: ICefFrame; const params: ICefContextMenuParams; const model: ICefMenuModel; const callback: ICefRunContextMenuCallback): Boolean; virtual;`
This item has no description.

| `function doOnContextMenuCommand(const browser: ICefBrowser; const frame: ICefFrame; const params: ICefContextMenuParams; commandId: Integer; eventFlags: TCefEventFlags): Boolean; virtual;`
This item has no description.

| `procedure doOnContextMenuDismissed(const browser: ICefBrowser; const frame: ICefFrame); virtual;`
This item has no description.

| `function doRunQuickMenu(const browser: ICefBrowser; const frame: ICefFrame; location: PCefPoint; size: PCefSize; edit_state_flags: TCefQuickMenuEditStateFlags; const callback: ICefRunQuickMenuCallback): boolean; virtual;`
This item has no description.

| `function doOnQuickMenuCommand(const browser: ICefBrowser; const frame: ICefFrame; command_id: integer; event_flags: TCefEventFlags): boolean; virtual;`
This item has no description.

| `procedure doOnQuickMenuDismissed(const browser: ICefBrowser; const frame: ICefFrame); virtual;`
This item has no description.

| `function doOnPreKeyEvent(const browser: ICefBrowser; const event: PCefKeyEvent; osEvent: TCefEventHandle; out isKeyboardShortcut: Boolean): Boolean; virtual;`
ICefKeyboardHandler

| `function doOnKeyEvent(const browser: ICefBrowser; const event: PCefKeyEvent; osEvent: TCefEventHandle): Boolean; virtual;`
This item has no description.

| `procedure doOnAddressChange(const browser: ICefBrowser; const frame: ICefFrame; const url: ustring); virtual;`
ICefDisplayHandler

| `procedure doOnTitleChange(const browser: ICefBrowser; const title: ustring); virtual;`
This item has no description.

| `procedure doOnFaviconUrlChange(const browser: ICefBrowser; const iconUrls: TStrings); virtual;`
This item has no description.

| `procedure doOnFullScreenModeChange(const browser: ICefBrowser; fullscreen: Boolean); virtual;`
This item has no description.

| `function doOnTooltip(const browser: ICefBrowser; var text: ustring): Boolean; virtual;`
This item has no description.

| `procedure doOnStatusMessage(const browser: ICefBrowser; const value: ustring); virtual;`
This item has no description.

| `function doOnConsoleMessage(const browser: ICefBrowser; level: TCefLogSeverity; const aMessage, source: ustring; line: Integer): Boolean; virtual;`
This item has no description.

| `function doOnAutoResize(const browser: ICefBrowser; const new_size: PCefSize): Boolean; virtual;`
This item has no description.

| `procedure doOnLoadingProgressChange(const browser: ICefBrowser; const progress: double); virtual;`
This item has no description.

| `procedure doOnCursorChange(const browser: ICefBrowser; cursor_: TCefCursorHandle; cursorType: TCefCursorType; const customCursorInfo: PCefCursorInfo; var aResult : boolean); virtual;`
This item has no description.

| `procedure doOnMediaAccessChange(const browser: ICefBrowser; has_video_access, has_audio_access: boolean); virtual;`
This item has no description.

| `function doOnContentsBoundsChange(const browser: ICefBrowser; const new_bounds: PCefRect): Boolean; virtual;`
This item has no description.

| `function doOnGetRootWindowScreenRect(const browser: ICefBrowser; rect_: PCefRect): Boolean; virtual;`
This item has no description.

| `function doOnCanDownload(const browser: ICefBrowser; const url, request_method: ustring): boolean;`
ICefDownloadHandler

| `function doOnBeforeDownload(const browser: ICefBrowser; const downloadItem: ICefDownloadItem; const suggestedName: ustring; const callback: ICefBeforeDownloadCallback): boolean; virtual;`
This item has no description.

| `procedure doOnDownloadUpdated(const browser: ICefBrowser; const downloadItem: ICefDownloadItem; const callback: ICefDownloadItemCallback); virtual;`
This item has no description.

| `function doOnJsdialog(const browser: ICefBrowser; const originUrl: ustring; dialogType: TCefJsDialogType; const messageText, defaultPromptText: ustring; const callback: ICefJsDialogCallback; out suppressMessage: Boolean): Boolean; virtual;`
ICefJsDialogHandler

| `function doOnBeforeUnloadDialog(const browser: ICefBrowser; const messageText: ustring; isReload: Boolean; const callback: ICefJsDialogCallback): Boolean; virtual;`
This item has no description.

| `procedure doOnResetDialogState(const browser: ICefBrowser); virtual;`
This item has no description.

| `procedure doOnDialogClosed(const browser: ICefBrowser); virtual;`
This item has no description.

`function doOnBeforePopup(const browser: ICefBrowser; const frame: ICefFrame; popup_id: Integer; const targetUrl, targetFrameName: ustring; targetDisposition: TCefWindowOpenDisposition; userGesture: Boolean; const popupFeatures: TCefPopupFeatures; var windowInfo: TCefWindowInfo; var client: ICefClient; var settings: TCefBrowserSettings; var extra_info: ICefDictionaryValue; var noJavascriptAccess: Boolean): Boolean; virtual;`

ICefLifeSpanHandler

| `procedure doOnBeforePopupAborted(const browser: ICefBrowser; popup_id: Integer); virtual;`
This item has no description.

| `procedure doOnBeforeDevToolsPopup(const browser: ICefBrowser; var windowInfo: TCefWindowInfo; var client: ICefClient; var settings: TCefBrowserSettings; var extra_info: ICefDictionaryValue; var use_default_window: boolean); virtual;`
This item has no description.

| `procedure doOnAfterCreated(const browser: ICefBrowser); virtual;`
This item has no description.

| `procedure doOnBeforeClose(const browser: ICefBrowser); virtual;`
This item has no description.

| `function doOnClose(const browser: ICefBrowser): Boolean; virtual;`
This item has no description.

| `function doOnBeforeBrowse(const browser: ICefBrowser; const frame: ICefFrame; const request: ICefRequest; user_gesture, isRedirect: Boolean): Boolean; virtual;`
ICefRequestHandler

| `function doOnOpenUrlFromTab(const browser: ICefBrowser; const frame: ICefFrame; const targetUrl: ustring; targetDisposition: TCefWindowOpenDisposition; userGesture: Boolean): Boolean; virtual;`
This item has no description.

| `procedure doGetResourceRequestHandler_ReqHdlr(const browser: ICefBrowser; const frame: ICefFrame; const request: ICefRequest; is_navigation, is_download: boolean; const request_initiator: ustring; var disable_default_handling: boolean; var aResourceRequestHandler : ICefResourceRequestHandler); virtual;`
This item has no description.

| `function doOnGetAuthCredentials(const browser: ICefBrowser; const originUrl: ustring; isProxy: Boolean; const host: ustring; port: Integer; const realm, scheme: ustring; const callback: ICefAuthCallback): Boolean; virtual;`
This item has no description.

| `function doOnCertificateError(const browser: ICefBrowser; certError: TCefErrorcode; const requestUrl: ustring; const sslInfo: ICefSslInfo; const callback: ICefCallback): Boolean; virtual;`
This item has no description.

| `function doOnSelectClientCertificate(const browser: ICefBrowser; isProxy: boolean; const host: ustring; port: integer; certificatesCount: NativeUInt; const certificates: TCefX509CertificateArray; const callback: ICefSelectClientCertificateCallback): boolean; virtual;`
This item has no description.

| `procedure doOnRenderViewReady(const browser: ICefBrowser); virtual;`
This item has no description.

| `function doOnRenderProcessUnresponsive(const browser: ICefBrowser; const callback: ICefUnresponsiveProcessCallback): boolean; virtual;`
This item has no description.

| `procedure doOnRenderProcessResponsive(const browser: ICefBrowser); virtual;`
This item has no description.

| `procedure doOnRenderProcessTerminated(const browser: ICefBrowser; status: TCefTerminationStatus; error_code: integer; const error_string: ustring); virtual;`
This item has no description.

| `procedure doOnDocumentAvailableInMainFrame(const browser: ICefBrowser); virtual;`
This item has no description.

| `function doOnBeforeResourceLoad(const browser: ICefBrowser; const frame: ICefFrame; const request: ICefRequest; const callback: ICefCallback): TCefReturnValue; virtual;`
ICefResourceRequestHandler

| `procedure doOnGetResourceHandler(const browser: ICefBrowser; const frame: ICefFrame; const request: ICefRequest; var aResourceHandler : ICefResourceHandler); virtual;`
This item has no description.

| `procedure doOnResourceRedirect(const browser: ICefBrowser; const frame: ICefFrame; const request: ICefRequest; const response: ICefResponse; var newUrl: ustring); virtual;`
This item has no description.

| `function doOnResourceResponse(const browser: ICefBrowser; const frame: ICefFrame; const request: ICefRequest; const response: ICefResponse): Boolean; virtual;`
This item has no description.

| `procedure doOnGetResourceResponseFilter(const browser: ICefBrowser; const frame: ICefFrame; const request: ICefRequest; const response: ICefResponse; var aResponseFilter: ICefResponseFilter); virtual;`
This item has no description.

| `procedure doOnResourceLoadComplete(const browser: ICefBrowser; const frame: ICefFrame; const request: ICefRequest; const response: ICefResponse; status: TCefUrlRequestStatus; receivedContentLength: Int64); virtual;`
This item has no description.

| `procedure doOnProtocolExecution(const browser: ICefBrowser; const frame: ICefFrame; const request: ICefRequest; var allowOsExecution: Boolean); virtual;`
This item has no description.

| `function doCanSendCookie(const browser: ICefBrowser; const frame: ICefFrame; const request: ICefRequest; const cookie: PCefCookie): boolean; virtual;`
ICefCookieAccessFilter

| `function doCanSaveCookie(const browser: ICefBrowser; const frame: ICefFrame; const request: ICefRequest; const response: ICefResponse; const cookie: PCefCookie): boolean; virtual;`
This item has no description.

| `function doOnFileDialog(const browser: ICefBrowser; mode: TCefFileDialogMode; const title, defaultFilePath: ustring; const acceptFilters, accept_extensions, accept_descriptions: TStrings; const callback: ICefFileDialogCallback): Boolean; virtual;`
ICefDialogHandler

| `procedure doOnGetAccessibilityHandler(var aAccessibilityHandler : ICefAccessibilityHandler); virtual;`
ICefRenderHandler

| `function doOnGetRootScreenRect(const browser: ICefBrowser; var rect: TCefRect): Boolean; virtual;`
This item has no description.

| `procedure doOnGetViewRect(const browser: ICefBrowser; var rect: TCefRect); virtual;`
This item has no description.

| `function doOnGetScreenPoint(const browser: ICefBrowser; viewX, viewY: Integer; var screenX, screenY: Integer): Boolean; virtual;`
This item has no description.

| `function doOnGetScreenInfo(const browser: ICefBrowser; var screenInfo: TCefScreenInfo): Boolean; virtual;`
This item has no description.

| `procedure doOnPopupShow(const browser: ICefBrowser; show: Boolean); virtual;`
This item has no description.

| `procedure doOnPopupSize(const browser: ICefBrowser; const rect: PCefRect); virtual;`
This item has no description.

| `procedure doOnPaint(const browser: ICefBrowser; type_: TCefPaintElementType; dirtyRectsCount: NativeUInt; const dirtyRects: PCefRectArray; const buffer: Pointer; width, height: Integer); virtual;`
This item has no description.

| `procedure doOnAcceleratedPaint(const browser: ICefBrowser; type_: TCefPaintElementType; dirtyRectsCount: NativeUInt; const dirtyRects: PCefRectArray; const info: PCefAcceleratedPaintInfo); virtual;`
This item has no description.

| `procedure doGetTouchHandleSize(const browser: ICefBrowser; orientation: TCefHorizontalAlignment; var size: TCefSize); virtual;`
This item has no description.

| `procedure doOnTouchHandleStateChanged(const browser: ICefBrowser; const state: TCefTouchHandleState); virtual;`
This item has no description.

| `function doOnStartDragging(const browser: ICefBrowser; const dragData: ICefDragData; allowedOps: TCefDragOperations; x, y: Integer): Boolean; virtual;`
This item has no description.

| `procedure doOnUpdateDragCursor(const browser: ICefBrowser; operation: TCefDragOperation); virtual;`
This item has no description.

| `procedure doOnScrollOffsetChanged(const browser: ICefBrowser; x, y: Double); virtual;`
This item has no description.

| `procedure doOnIMECompositionRangeChanged(const browser: ICefBrowser; const selected_range: PCefRange; character_boundsCount: NativeUInt; const character_bounds: PCefRect); virtual;`
This item has no description.

| `procedure doOnTextSelectionChanged(const browser: ICefBrowser; const selected_text: ustring; const selected_range: PCefRange); virtual;`
This item has no description.

| `procedure doOnVirtualKeyboardRequested(const browser: ICefBrowser; input_mode: TCefTextInpuMode); virtual;`
This item has no description.

| `function doOnDragEnter(const browser: ICefBrowser; const dragData: ICefDragData; mask: TCefDragOperations): Boolean; virtual;`
ICefDragHandler

| `procedure doOnDraggableRegionsChanged(const browser: ICefBrowser; const frame: ICefFrame; regionsCount: NativeUInt; const regions: PCefDraggableRegionArray); virtual;`
This item has no description.

| `procedure doOnFindResult(const browser: ICefBrowser; identifier, count: Integer; const selectionRect: PCefRect; activeMatchOrdinal: Integer; finalUpdate: Boolean); virtual;`
ICefFindHandler

| `procedure doOnRequestContextInitialized(const request_context: ICefRequestContext); virtual;`
ICefRequestContextHandler

| `procedure doGetResourceRequestHandler_ReqCtxHdlr(const browser: ICefBrowser; const frame: ICefFrame; const request: ICefRequest; is_navigation, is_download: boolean; const request_initiator: ustring; var disable_default_handling: boolean; var aResourceRequestHandler : ICefResourceRequestHandler); virtual;`
This item has no description.

| `procedure doOnSinks(const sinks: TCefMediaSinkArray); virtual;`
ICefMediaObserver

| `procedure doOnRoutes(const routes: TCefMediaRouteArray); virtual;`
This item has no description.

| `procedure doOnRouteStateChanged(const route: ICefMediaRoute; state: TCefMediaRouteConnectionState); virtual;`
This item has no description.

| `procedure doOnRouteMessageReceived(const route: ICefMediaRoute; const message_: ustring); virtual;`
This item has no description.

| `procedure doOnGetAudioParameters(const browser: ICefBrowser; var params: TCefAudioParameters; var aResult: boolean); virtual;`
ICefAudioHandler

| `procedure doOnAudioStreamStarted(const browser: ICefBrowser; const params: TCefAudioParameters; channels: integer); virtual;`
This item has no description.

| `procedure doOnAudioStreamPacket(const browser: ICefBrowser; const data : PPSingle; frames: integer; pts: int64); virtual;`
This item has no description.

| `procedure doOnAudioStreamStopped(const browser: ICefBrowser); virtual;`
This item has no description.

| `procedure doOnAudioStreamError(const browser: ICefBrowser; const message_: ustring); virtual;`
This item has no description.

| `procedure doOnDevToolsMessage(const browser: ICefBrowser; const message_: Pointer; message_size: NativeUInt; var aHandled: boolean); virtual;`
ICefDevToolsMessageObserver

| `procedure doOnDevToolsMethodResult(const browser: ICefBrowser; message_id: integer; success: boolean; const result: Pointer; result_size: NativeUInt); virtual;`
This item has no description.

| `procedure doOnDevToolsEvent(const browser: ICefBrowser; const method: ustring; const params: Pointer; params_size: NativeUInt); virtual;`
This item has no description.

| `procedure doOnDevToolsAgentAttached(const browser: ICefBrowser); virtual;`
This item has no description.

| `procedure doOnDevToolsAgentDetached(const browser: ICefBrowser); virtual;`
This item has no description.

| `procedure doOnPrintStart(const browser: ICefBrowser);`
ICefPrintHandler

| `procedure doOnPrintSettings(const browser: ICefBrowser; const settings: ICefPrintSettings; getDefaults: boolean);`
This item has no description.

| `procedure doOnPrintDialog(const browser: ICefBrowser; hasSelection: boolean; const callback: ICefPrintDialogCallback; var aResult : boolean);`
This item has no description.

| `procedure doOnPrintJob(const browser: ICefBrowser; const documentName, PDFFilePath: ustring; const callback: ICefPrintJobCallback; var aResult : boolean);`
This item has no description.

| `procedure doOnPrintReset(const browser: ICefBrowser);`
This item has no description.

| `procedure doOnGetPDFPaperSize(const browser: ICefBrowser; deviceUnitsPerInch: Integer; var aResult : TCefSize);`
This item has no description.

| `procedure doOnFrameCreated(const browser: ICefBrowser; const frame: ICefFrame);`
ICefFrameHandler

| `procedure doOnFrameDestroyed(const browser: ICefBrowser; const frame: ICefFrame);`
This item has no description.

| `procedure doOnFrameAttached(const browser: ICefBrowser; const frame: ICefFrame; reattached: boolean);`
This item has no description.

| `procedure doOnFrameDetached(const browser: ICefBrowser; const frame: ICefFrame);`
This item has no description.

| `procedure doOnMainFrameChanged(const browser: ICefBrowser; const old_frame, new_frame: ICefFrame);`
This item has no description.

| `function doOnChromeCommand(const browser: ICefBrowser; command_id: integer; disposition: TCefWindowOpenDisposition): boolean;`
ICefCommandHandler

| `function doOnIsChromeAppMenuItemVisible(const browser: ICefBrowser; command_id: integer): boolean;`
This item has no description.

| `function doOnIsChromeAppMenuItemEnabled(const browser: ICefBrowser; command_id: integer): boolean;`
This item has no description.

| `function doOnIsChromePageActionIconVisible(icon_type: TCefChromePageActionIconType): boolean;`
This item has no description.

| `function doOnIsChromeToolbarButtonVisible(button_type: TCefChromeToolbarButtonType): boolean;`
This item has no description.

| `function doOnRequestMediaAccessPermission(const browser: ICefBrowser; const frame: ICefFrame; const requesting_origin: ustring; requested_permissions: cardinal; const callback: ICefMediaAccessCallback): boolean;`
ICefPermissionHandler

| `function doOnShowPermissionPrompt(const browser: ICefBrowser; prompt_id: uint64; const requesting_origin: ustring; requested_permissions: cardinal; const callback: ICefPermissionPromptCallback): boolean;`
This item has no description.

| `procedure doOnDismissPermissionPrompt(const browser: ICefBrowser; prompt_id: uint64; result: TCefPermissionRequestResult);`
This item has no description.

| `procedure doOnPreferenceChanged(const name_: ustring);`
ICefPreferenceObserver

| `procedure doOnSettingChanged(const requesting_url, top_level_url : ustring; content_type: TCefContentSettingTypes);`
ICefSettingObserver

| `procedure GetSettings(var aSettings : TCefBrowserSettings);`
Custom

| `procedure doCookiesDeleted(numDeleted : integer); virtual;`
This item has no description. Showing description inherited from IChromiumEvents.doCookiesDeleted. Custom

| `procedure doPdfPrintFinished(aResultOK : boolean); virtual;`
This item has no description.

| `procedure doTextResultAvailable(const aText : ustring); virtual;`
This item has no description.

| `procedure doUpdatePreferences(const aBrowser: ICefBrowser); virtual;`
This item has no description.

| `procedure doUpdateOwnPreferences; virtual;`
This item has no description.

| `function doSavePreferences: boolean; virtual;`
This item has no description.

| `procedure doResolvedHostAvailable(result: TCefErrorCode; const resolvedIps: TStrings); virtual;`
This item has no description.

| `function doNavigationVisitorResultAvailable(const entry: ICefNavigationEntry; current: Boolean; index, total: Integer) : boolean; virtual;`
This item has no description.

| `procedure doDownloadImageFinished(const imageUrl: ustring; httpStatusCode: Integer; const image: ICefImage); virtual;`
This item has no description.

| `procedure doOnCookiesStoreFlushed; virtual;`
This item has no description.

| `procedure doCertificateExceptionsCleared; virtual;`
This item has no description.

| `procedure doHttpAuthCredentialsCleared; virtual;`
This item has no description.

| `procedure doAllConnectionsClosed; virtual;`
This item has no description.

| `procedure doHttpCacheCleared; virtual;`
This item has no description.

| `procedure doOnExecuteTaskOnCefThread(aTaskID : cardinal); virtual;`
This item has no description.

| `procedure doOnCookiesVisited(const name_, value, domain, path: ustring; secure, httponly, hasExpires: Boolean; const creation, lastAccess, expires: TDateTime; count, total, aID : Integer; same_site : TCefCookieSameSite; priority : TCefCookiePriority; var aDeleteCookie, aResult : Boolean); virtual;`
This item has no description.

| `procedure doOnCookieVisitorDestroyed(aID : integer); virtual;`
This item has no description.

| `procedure doOnCookieSet(aSuccess : boolean; aID : integer); virtual;`
This item has no description.

| `procedure doUpdateZoomStep(aInc : boolean); virtual;`
This item has no description.

| `procedure doUpdateZoomPct(aInc : boolean); virtual;`
This item has no description.

| `procedure doReadZoom; virtual;`
This item has no description.

| `procedure doSetZoomLevel(const aValue : double); virtual;`
This item has no description.

| `procedure doSetZoomPct(const aValue : double); virtual;`
This item has no description.

| `procedure doSetZoomStep(aValue : byte); virtual;`
This item has no description.

| `procedure doMediaRouteCreateFinished(result: TCefMediaRouterCreateResult; const error: ustring; const route: ICefMediaRoute); virtual;`
This item has no description.

| `procedure doOnMediaSinkDeviceInfo(const ip_address: ustring; port: integer; const model_name: ustring); virtual;`
This item has no description.

| `procedure doBrowserNavigation(aTask : TCefBrowserNavigation); virtual;`
This item has no description.

| `procedure doSetAudioMuted(aValue : boolean); virtual;`
This item has no description.

| `procedure doToggleAudioMuted; virtual;`
This item has no description.

| `procedure doEnableFocus; virtual;`
This item has no description.

| `function doTryCloseBrowser: boolean; virtual;`
This item has no description.

| `procedure doAddPreferenceObserver(const name_ : ustring); virtual;`
This item has no description.

| `function MustCreateAudioHandler: boolean; virtual;`
This item has no description.

| `function MustCreateCommandHandler: boolean; virtual;`
This item has no description.

| `function MustCreateDevToolsMessageObserver: boolean; virtual;`
This item has no description.

| `function MustCreateSettingObserver: boolean; virtual;`
This item has no description.

| `function MustCreateLoadHandler: boolean; virtual;`
This item has no description.

| `function MustCreateFocusHandler: boolean; virtual;`
This item has no description.

| `function MustCreateContextMenuHandler: boolean; virtual;`
This item has no description.

| `function MustCreateDialogHandler: boolean; virtual;`
This item has no description.

| `function MustCreateKeyboardHandler: boolean; virtual;`
This item has no description.

| `function MustCreateDisplayHandler: boolean; virtual;`
This item has no description.

| `function MustCreateDownloadHandler: boolean; virtual;`
This item has no description.

| `function MustCreateJsDialogHandler: boolean; virtual;`
This item has no description.

| `function MustCreateLifeSpanHandler: boolean; virtual;`
This item has no description.

| `function MustCreateRenderHandler: boolean; virtual;`
This item has no description.

| `function MustCreateRequestHandler: boolean; virtual;`
This item has no description.

| `function MustCreateDragHandler: boolean; virtual;`
This item has no description.

| `function MustCreateFindHandler: boolean; virtual;`
This item has no description.

| `function MustCreateResourceRequestHandler: boolean; virtual;`
This item has no description.

| `function MustCreateCookieAccessFilter: boolean; virtual;`
This item has no description.

| `function MustCreateMediaObserver: boolean; virtual;`
This item has no description.

| `function MustCreatePrintHandler: boolean; virtual;`
This item has no description.

| `function MustCreateFrameHandler: boolean; virtual;`
This item has no description.

| `function MustCreatePermissionHandler: boolean; virtual;`
This item has no description.

| `constructor Create(AOwner: TComponent); override;`
This item has no description.

| `destructor Destroy; override;`
This item has no description.

| `procedure AfterConstruction; override;`
This item has no description.

| `procedure BeforeDestruction; override;`
This item has no description.

| `function CreateClientHandler(aIsOSR : boolean = True) : boolean; overload;`
Used to create the client handler which will also create most of the browser handlers needed for the browser.

| `function CreateClientHandler(var aClient : ICefClient; aIsOSR : boolean = True) : boolean; overload;`
Used to create the client handler when a browser requests a new browser in a popup window or tab in the TChromiumCore.OnBeforePopup event.

| `procedure CloseBrowser(aForceClose : boolean);`

Request that the browser close. Closing a browser is a multi-stage process that may complete either synchronously or asynchronously, and involves events such as TChromiumCore.OnClose (Alloy style only), TChromiumCore.OnBeforeClose, and a top-level window close handler such as TCEFWindowComponent.OnCanClose (or platform-specific equivalent). In some cases a close request may be delayed or canceled by the user. Using TryCloseBrowser() instead of CloseBrowser() is recommended for most use cases. See TChromiumCore.OnClose documentation for detailed usage and examples.

If |aForceClose| is false (0) then JavaScript unload handlers, if any, may be fired and the close may be delayed or canceled by the user. If |aForceClose| is true (1) then the user will not be prompted and the close will proceed immediately (possibly asynchronously). If browser close is delayed and not canceled the default behavior is to call the top-level window close handler once the browser is ready to be closed. This default behavior can be changed for Alloy style browsers by implementing TChromiumCore.OnClose. IsReadyToBeClosed() can be used to detect mandatory browser close events when customizing close behavior on the browser process UI thread.

| `procedure CloseAllBrowsers;`
Calls CloseBrowser for all the browsers handled by this TChromiumCore instance.

| `function TryCloseBrowser: boolean;`

Helper for closing a browser. This is similar in behavior to CLoseBrowser(false) but returns a boolean to reflect the immediate close status. Call this function from a top-level window close handler such as TCEFWindowComponent.OnCanClose (or platform-specific equivalent) to request that the browser close, and return the result to indicate if the window close should proceed. Returns false (0) if the close will be delayed (JavaScript unload handlers triggered but still pending) or true (1) if the close will proceed immediately (possibly asynchronously). See CloseBrowser() documentation for additional usage information. This function must be called on the browser process UI thread.

| `function IsReadyToBeClosed: boolean;`

Returns true (1) if the browser is ready to be closed, meaning that the close has already been initiated and that JavaScript unload handlers have already executed or should be ignored. This can be used from a top-level window close handler such as TCEFWindowComponent.OnCanClose (or platform- specific equivalent) to distringuish between potentially cancelable browser close events (like the user clicking the top-level window close button before browser close has started) and mandatory browser close events (like JavaScript `window.close()` or after browser close has started in response to [Try]CloseBrowser()). Not completing the browser close for mandatory close events (when this function returns true (1)) will leave the browser in a partially closed state that interferes with proper functioning. See CloseBrowser() documentation for additional usage information. This function must be called on the browser process UI thread.

| `function SelectBrowser(aID : integer) : boolean;`
Select the browser with the aID identifier when TChromiumCore uses the multi-browser mode.

| `function IndexOfBrowserID(aID : integer) : integer;`
Returns the index in the browsers array of the browser with the aID identifier when TChromiumCore uses the multi-browser mode.

| `function ShareRequestContext(var aContext : ICefRequestContext; const aHandler : ICefRequestContextHandler = nil) : boolean;`
Creates a new request context in the aContext parameter that shares storage with the request context of the current browser and uses an optional handler.

| `procedure InitializeDragAndDrop(const aDropTargetWnd : HWND);`
Used with browsers in OSR mode to initialize drag and drop in Windows.

| `procedure ShutdownDragAndDrop;`
Used with browsers in OSR mode to shutdown drag and drop in Windows.

| `function SetNewBrowserParent(aNewParentHwnd : HWND) : boolean;`
Used to reparent the browser to a different TCEFWindowParent.

| `function CreateBrowser(aParentHandle : TCefWindowHandle; aParentRect : TRect; const aWindowName : ustring = ''; const aContext : ICefRequestContext = nil; const aExtraInfo : ICefDictionaryValue = nil; aForceAsPopup : boolean = False) : boolean; overload; virtual;`
Used to create the browser after the global request context has been initialized. You need to set all properties and events before calling this function because it will only create the internal handlers needed for those events and the property values will be used in the browser initialization. The browser will be fully initialized when the TChromiumCore.OnAfterCreated event is triggered.

| `function CreateBrowser(const aURL : ustring; const aBrowserViewComp : TCEFBrowserViewComponent; const aContext : ICefRequestContext = nil; const aExtraInfo : ICefDictionaryValue = nil) : boolean; overload; virtual;`
Used to create the browser after the global request context has been initialized. You need to set all properties and events before calling this function because it will only create the internal handlers needed for those events and the property values will be used in the browser initialization. The browser will be fully initialized when the TChromiumCore.OnAfterCreated event is triggered.

| `procedure LoadURL(const aURL : ustring; const aFrameName : ustring = ''; const aFrameIdentifier : ustring = ''); overload;`
Used to navigate to a URL in the specified frame or the main frame.

| `procedure LoadURL(const aURL : ustring; const aFrame : ICefFrame); overload;`
Used to navigate to a URL in the specified frame or the main frame.

| `procedure LoadString(const aHTML : ustring; const aFrameName : ustring = ''; const aFrameIdentifier : ustring = ''); overload;`
Used to load a DATA URI with the HTML string contents in the specified frame or the main frame.

| `procedure LoadString(const aHTML : ustring; const aFrame : ICefFrame); overload;`
Used to load a DATA URI with the HTML string contents in the specified frame or the main frame.

| `procedure LoadResource(const aStream : TCustomMemoryStream; const aMimeType, aCharset : ustring; const aFrameName : ustring = ''; const aFrameIdentifier : ustring = ''); overload;`
Used to load a DATA URI with the stream contents in the specified frame or the main frame. The DATA URI will be configured with the mime type and charset specified in the parameters.

| `procedure LoadResource(const aStream : TCustomMemoryStream; const aMimeType, aCharset : ustring; const aFrame : ICefFrame); overload;`
Used to load a DATA URI with the stream contents in the specified frame or the main frame. The DATA URI will be configured with the mime type and charset specified in the parameters.

| `procedure LoadRequest(const aRequest: ICefRequest);`
Load the request represented by the aRequest object. WARNING: This function will fail with bad IPC message reason INVALID_INITIATOR_ORIGIN (213) unless you first navigate to the request origin using some other mechanism (LoadURL, link click, etc).

| `procedure GoBack;`
Navigate backwards.

| `procedure GoForward;`
Navigate forwards.

| `procedure Reload;`
Reload the current page.

| `procedure ReloadIgnoreCache;`
Reload the current page ignoring any cached data.

| `procedure StopLoad;`
Stop loading the page.

| `procedure StartDownload(const aURL : ustring);`
Starts downloading a file in the specified URL.

| `procedure DownloadImage(const imageUrl: ustring; isFavicon: Boolean; maxImageSize: cardinal; bypassCache: Boolean);`
Starts downloading an image in the specified URL. Use the TChromiumCore.OnDownloadImageFinished event to receive the image.

| `procedure SimulateMouseWheel(aDeltaX, aDeltaY : integer);`
Calls ICefBrowserHost.SendMouseWheelEvent to simulate a simple mouse wheel event. Use TChromiumCore.SendMouseWheelEvent if you need to specify the mouse coordinates or the event flags.

`procedure SimulateKeyEvent(type_: TSimulatedCefKeyEventType; modifiers: integer = CEF_MOUSETOUCH_EVENT_MODIFIERS_NONE; timestamp: single = 0; const text: ustring = ''; const unmodifiedtext: ustring = ''; const keyIdentifier: ustring = ''; const code: ustring = ''; const key: ustring = ''; windowsVirtualKeyCode: integer = 0; nativeVirtualKeyCode: integer = 0; autoRepeat: boolean = False; isKeypad: boolean = False; isSystemKey: boolean = False; location: TCefKeyLocation = CEF_KEYLOCATION_NONE; commands: TCefEditingCommand = ecNone);`

Dispatches a key event to the page using the "Input.dispatchKeyEvent" DevTools method. The browser has to be focused before simulating any key event.

<see href="https://chromedevtools.github.io/devtools-protocol/1-3/Input/#method-dispatchKeyEvent">See the "Input.dispatchKeyEvent" DevTools method.)

###### Parameters

type_
  Type of the key event.
modifiers
  Bit field representing pressed modifier keys. Alt=1, Ctrl=2, Meta/Command=4, Shift=8.(default: 0).
timestamp
  Time at which the event occurred.
text
  Text as generated by processing a virtual key code with a keyboard layout. Not needed for for keyUp and rawKeyDown events.(default: "")
unmodifiedtext
  Text that would have been generated by the keyboard if no modifiers were pressed (except for shift). Useful for shortcut (accelerator) key handling.(default: "").
keyIdentifier
  Unique key identifier (e.g., 'U+0041').(default: "").
code
  Unique DOM defined string value for each physical key (e.g., 'KeyA').(default: "").
key
  Unique DOM defined string value describing the meaning of the key in the context of active modifiers, keyboard layout, etc (e.g., 'AltGr').(default: "").
windowsVirtualKeyCode
  Windows virtual key code.(default: 0).
nativeVirtualKeyCode
  Native virtual key code.(default: 0).
autoRepeat
  Whether the event was generated from auto repeat.(default: false).
isKeypad
  Whether the event was generated from the keypad.(default: false).
isSystemKey
  Whether the event was a system key event.(default: false).
location
  Whether the event was from the left or right side of the keyboard. 1=Left, 2=Right.(default: 0).
commands
  Editing commands to send with the key event (e.g., 'selectAll') (default: []). These are related to but not equal the command names used in document.execCommand and NSStandardKeyBindingResponding. See https://source.chromium.org/chromium/chromium/src/+/main:third_party/blink/renderer/core/editing/commands/editor_command_names.h for valid command names.

`procedure SimulateMouseEvent(type_: TCefSimulatedMouseEventType; x, y: single; modifiers: integer = CEF_MOUSETOUCH_EVENT_MODIFIERS_NONE; timestamp: single = 0; button: TCefSimulatedMouseButton = CEF_SIMULATEDMOUSEBUTTON_NONE; buttons: integer = CEF_PRESSED_MOUSE_BUTTONS_NONE; clickCount: integer = 0; force: single = 0; tangentialPressure: single = 0; tiltX: single = 0; tiltY: single = 0; twist: integer = 0; deltaX: single = 0; deltaY: single = 0; pointerType: TCefSimulatedPointerType = CEF_SIMULATEDPOINTERTYPE_MOUSE);`

Dispatches a key event to the page using the "Input.dispatchKeyEvent" DevTools method. The browser has to be focused before simulating any key event.

<see href="https://chromedevtools.github.io/devtools-protocol/1-3/Input/#method-dispatchKeyEvent">See the "Input.dispatchKeyEvent" DevTools method.)

###### Parameters

type_
  Type of the mouse event.
x
  X coordinate of the event relative to the main frame's viewport in CSS pixels.
y
  Y coordinate of the event relative to the main frame's viewport in CSS pixels. 0 refers to the top of the viewport and Y increases as it proceeds towards the bottom of the viewport.
modifiers
  Bit field representing pressed modifier keys. Alt=1, Ctrl=2, Meta/Command=4, Shift=8 (default: 0). See the CEF_MOUSETOUCH_EVENT_MODIFIERS_* constants.
timestamp
  Time at which the event occurred.
button
  Mouse button (default: "none").
buttons
  A number indicating which buttons are pressed on the mouse when a mouse event is triggered. Left=1, Right=2, Middle=4, Back=8, Forward=16, None=0.
clickCount
  Number of times the mouse button was clicked (default: 0).
force
  The normalized pressure, which has a range of [0,1] (default: 0).
tangentialPressure
  The normalized tangential pressure, which has a range of [-1,1] (default: 0).
tiltX
  The plane angle between the Y-Z plane and the plane containing both the stylus axis and the Y axis, in degrees of the range [-90,90], a positive tiltX is to the right (default: 0).
tiltY
  The plane angle between the X-Z plane and the plane containing both the stylus axis and the X axis, in degrees of the range [-90,90], a positive tiltY is towards the user (default: 0).
twist
  The clockwise rotation of a pen stylus around its own major axis, in degrees in the range [0,359] (default: 0).
deltaX
  X delta in CSS pixels for mouse wheel event (default: 0).
deltaY
  Y delta in CSS pixels for mouse wheel event (default: 0).
pointerType
  Pointer type (default: "mouse").

| `procedure SimulateTouchEvent(type_: TCefSimulatedTouchEventType; var touchPoints: TCefSimulatedTouchPointArray; modifiers: integer = CEF_MOUSETOUCH_EVENT_MODIFIERS_NONE; timestamp: single = 0);`

Dispatches a touch event to the page using the "Input.dispatchTouchEvent" DevTools method. The browser has to be focused before simulating any key event.

<see href="https://chromedevtools.github.io/devtools-protocol/tot/Input/#method-dispatchTouchEvent">See the "Input.dispatchTouchEvent" DevTools method.)

###### Parameters

type_
  Type of touch event.
touchPoints
  Array of touch points.
modifiers
  Bit field representing pressed modifier keys. Alt=1, Ctrl=2, Meta/Command=4, Shift=8.(default: 0). See the CEF_MOUSETOUCH_EVENT_MODIFIERS_* constants.
timestamp
  Time at which the event occurred.

| `procedure SimulateEditingCommand(command : TCefEditingCommand);`
Simulate editing commands using the "Input.dispatchKeyEvent" DevTools method. <see href="https://chromedevtools.github.io/devtools-protocol/1-3/Input/#method-dispatchKeyEvent">See the "Input.dispatchKeyEvent" DevTools method.) <see href="https://source.chromium.org/chromium/chromium/src/+/master:third_party/blink/renderer/core/editing/commands/editor_command_names.h">See the Chromium sources.)

| `function ClearCertificateExceptions(aClearImmediately : boolean = True) : boolean;`
Clears all certificate exceptions that were added as part of handling OnCertificateError. If you call this it is recommended that you also call CloseAllConnections() or you risk not being prompted again for server certificates if you reconnect quickly. If aClearImmediately is false then OnCertificateExceptionsCleared is triggered when the exceptions are cleared.

| `function ClearHttpAuthCredentials(aClearImmediately : boolean = True) : boolean;`
Clears all HTTP authentication credentials that were added as part of handling GetAuthCredentials. If |callback| is non-NULL it will be executed on the UI thread after completion. If aClearImmediately is false then OnHttpAuthCredentialsCleared is triggered when the credeintials are cleared.

| `function CloseAllConnections(aCloseImmediately : boolean = True) : boolean;`
Clears all active and idle connections that Chromium currently has. This is only recommended if you have released all other CEF objects but don't yet want to call cef_shutdown().

| `function ClearHttpCache(aClearImmediately : boolean = True) : boolean;`
Clears the HTTP cache. If aClearImmediately is false then OnHttpCacheCleared is triggered when the http cache is cleared.

| `procedure RetrieveHTML(const aFrameName : ustring = ''; const aFrameIdentifier : ustring = ''); overload;`
Retrieve all the HTML content from the specified frame or the main frame. Leave aFrameName empty to get the HTML source from the main frame. It uses a CefStringVisitor to get the HTML content asynchronously and the result will be received in the TChromiumCore.OnTextResultAvailable event.

| `procedure RetrieveHTML(const aFrame : ICefFrame); overload;`
Retrieve all the HTML content from the specified frame or the main frame. Set aFrame to nil to get the HTML source from the main frame. It uses a CefStringVisitor to get the HTML content asynchronously and the result will be received in the TChromiumCore.OnTextResultAvailable event.

| `procedure RetrieveText(const aFrameName : ustring = ''; const aFrameIdentifier : ustring = ''); overload;`
Retrieve all the text content from the specified frame or the main frame. Leave aFrameName empty to get the text from the main frame. It uses a CefStringVisitor to get the text asynchronously and the result will be received in the TChromiumCore.OnTextResultAvailable event.

| `procedure RetrieveText(const aFrame : ICefFrame); overload;`
Retrieve all the text content from the specified frame or the main frame. Set aFrame to nil to get the text from the main frame. It uses a CefStringVisitor to get the text asynchronously and the result will be received in the TChromiumCore.OnTextResultAvailable event.

| `procedure GetNavigationEntries(currentOnly: Boolean);`
Retrieve a snapshot of current navigation entries asynchronously. The TChromiumCore.OnNavigationVisitorResultAvailable event will be triggered for each navigation entry.

| `function GetFrameNames(var aFrameNames : TStrings) : boolean;`
Returns the names of all existing frames.

| `function GetFrameIdentifiers(var aFrameIdentifiers : TStrings) : boolean;`
Returns the identifiers of all existing frames.

| `procedure ExecuteJavaScript(const aCode, aScriptURL : ustring; const aFrameName : ustring = ''; const aFrameIdentifier : ustring = ''; aStartLine : integer = 0); overload;`

Execute a string of JavaScript code in the specified frame or the main frame.

###### Parameters

aCode
  JavaScript code.
aScriptURL
  The URL where the script in question can be found, if any. The renderer may request this URL to show the developer the source of the error.
aFrameName
  Name of the frame where the JavaScript code will be executed. This name is generated automatically by Chromium. See ICefBrowser.GetFrameNames.
aFrameIdentifier
  Identifier of the frame where the JavaScript code will be executed.
aStartLine
  The base line number to use for error reporting.

| `procedure ExecuteJavaScript(const aCode, aScriptURL : ustring; const aFrame : ICefFrame; aStartLine : integer = 0); overload;`

Execute a string of JavaScript code in the specified frame or the main frame.

###### Parameters

aCode
  JavaScript code.
aScriptURL
  The URL where the script in question can be found, if any. The renderer may request this URL to show the developer the source of the error.
aFrame
  Frame where the JavaScript code will be executed.
aStartLine
  The base line number to use for error reporting.

| `procedure UpdatePreferences;`
Used to update the browser preferences using the TChromiumCore property values asynchronously.

| `procedure SavePreferences(const aFileName : string);`
Save the browser preferences as a text file.

| `procedure ResolveHost(const aURL : ustring);`
Calls CefRequestContext.ResolveHost to resolve the domain in the URL parameter to a list of IP addresses. The result will be received in the TChromiumCore.OnResolvedHostAvailable event.

| `function IsSameBrowser(const aBrowser : ICefBrowser) : boolean;`
Used to check if the browser parameter is the same as the selected browser in TChromiumCore.

| `function ExecuteTaskOnCefThread(aCefThreadId : TCefThreadId; aTaskID : cardinal; aDelayMs : Int64 = 0) : boolean;`

Calling ExecuteTaskOnCefThread function will trigger the TChromiumCore.OnExecuteTaskOnCefThread event.

###### Parameters

aCefThreadId
  Indicates the CEF thread on which TChromiumCore.OnExecuteTaskOnCefThread will be executed.
aTaskID
  Custom ID used to identify the task that triggered the TChromiumCore.OnExecuteTaskOnCefThread event.
aDelayMs
  Optional delay in milliseconds to trigger the TChromiumCore.OnExecuteTaskOnCefThread event.

| `procedure SetUserAgentOverride(const aUserAgent : ustring; const aAcceptLanguage : ustring = ''; const aPlatform : ustring = '');`
This procedure calls the Emulation.setUserAgentOverride DevTools method to override the user agent string.

| `procedure ClearDataForOrigin(const aOrigin : ustring; aStorageTypes : TCefClearDataStorageTypes = cdstAll);`

This procedure calls the Storage.clearDataForOrigin DevTools method to clear the storage data for a given origin.

<see href="https://chromedevtools.github.io/devtools-protocol/tot/Storage/#method-clearDataForOrigin">See the documentation for the Storage.clearDataForOrigin DevTools method.)

<see href="https://chromedevtools.github.io/devtools-protocol/tot/Storage/#type-StorageType">See the documentation for the Storage.StorageType type.)

| `procedure ClearCache;`
This procedure calls the Network.clearBrowserCache DevTools method to clear the cache data.

| `procedure ToggleAudioMuted;`
Enable or disable the browser's audio.

| `procedure AddPreferenceObserver(const name_: ustring);`

Add an observer for preference changes. |name| is the name of the preference to observe. If |name| is NULL then all preferences will be observed. Observing all preferences has performance consequences and is not recommended outside of testing scenarios. The observer will remain registered until the returned Registration object is destroyed. This function must be called on the browser process UI thread.

<see href="https://bitbucket.org/chromiumembedded/cef/src/master/include/capi/cef_preference_capi.h">CEF source file: /include/capi/cef_preference_capi.h (cef_preference_manager_t))

| `procedure RemovePreferenceObserver(const name_ : ustring);`
Remove an observer for preference changes. <see href="https://bitbucket.org/chromiumembedded/cef/src/master/include/capi/cef_preference_capi.h">CEF source file: /include/capi/cef_preference_capi.h (cef_preference_manager_t))

| `function DeleteCookies(const url : ustring = ''; const cookieName : ustring = ''; aDeleteImmediately : boolean = False) : boolean;`
Used to delete cookies immediately or asynchronously. If aDeleteImmediately is false TChromiumCore.DeleteCookies triggers the TChromiumCore.OnCookiesDeleted event when the cookies are deleted.

| `function VisitAllCookies(aID : integer = 0) : boolean;`

TChromiumCore.VisitAllCookies triggers the TChromiumCore.OnCookiesVisited event for each cookie aID is an optional parameter to identify which VisitAllCookies call has triggered the OnCookiesVisited event.

TChromiumCore.OnCookiesVisited may not be triggered if the cookie store is empty but the TChromium.OnCookieVisitorDestroyed event will always be triggered to signal when the browser when the visit is over.

| `function VisitURLCookies(const url : ustring; includeHttpOnly : boolean = False; aID : integer = 0) : boolean;`

TChromiumCore.VisitURLCookies triggers the TChromiumCore.OnCookiesVisited event for each cookie aID is an optional parameter to identify which VisitURLCookies call has triggered the OnCookiesVisited event.

TChromiumCore.OnCookiesVisited may not be triggered if the cookie store is empty but the TChromium.OnCookieVisitorDestroyed event will always be triggered to signal when the browser when the visit is over.

| `function SetCookie(const url, name_, value, domain, path: ustring; secure, httponly, hasExpires: Boolean; const creation, lastAccess, expires: TDateTime; same_site : TCefCookieSameSite; priority : TCefCookiePriority; aSetImmediately : boolean = True; aID : integer = 0): Boolean;`
TChromiumCore.SetCookie triggers the TChromiumCore.OnCookieSet event when the cookie has been set aID is an optional parameter to identify which SetCookie call has triggered the OnCookieSet event.

| `function FlushCookieStore(aFlushImmediately : boolean = True) : boolean;`

Flush the backing store (if any) to disk.

###### Parameters

aFlushImmediately
  If aFlushImmediately is false the cookies will be flushed on the CEF UI thread and the OnCookiesFlushed event will be triggered.

###### Returns

Returns false (0) if cookies cannot be accessed.

| `procedure ShowDevTools(const inspectElementAt: TPoint; aWindowInfo: PCefWindowInfo);`
Open developer tools (DevTools) in its own browser. If inspectElementAt has a valid point with coordinates different than low(integer) then the element at the specified location will be inspected. If the DevTools browser is already open then it will be focused.

| `procedure CloseDevTools; overload;`
close the developer tools.

| `procedure CloseDevTools(const aDevToolsWnd : TCefWindowHandle); overload;`
close the developer tools.

| `function SendDevToolsMessage(const message_: ustring): boolean;`

Send a function call message over the DevTools protocol. |message_| must be a UTF8-encoded JSON dictionary that contains "id" (int), "function" (string) and "params" (dictionary, optional) values. See the DevTools protocol documentation at https://chromedevtools.github.io/devtools- protocol/ for details of supported functions and the expected "params" dictionary contents. |message_| will be copied if necessary. This function will return true (1) if called on the UI thread and the message was successfully submitted for validation, otherwise false (0). Validation will be applied asynchronously and any messages that fail due to formatting errors or missing parameters may be discarded without notification. Prefer ExecuteDevToolsMethod if a more structured approach to message formatting is desired.

Every valid function call will result in an asynchronous function result or error message that references the sent message "id". Event messages are received while notifications are enabled (for example, between function calls for "Page.enable" and "Page.disable"). All received messages will be delivered to the observer(s) registered with AddDevToolsMessageObserver. See ICefDevToolsMessageObserver.OnDevToolsMessage documentation for details of received message contents.

Usage of the SendDevToolsMessage, ExecuteDevToolsMethod and AddDevToolsMessageObserver functions does not require an active DevTools front-end or remote-debugging session. Other active DevTools sessions will continue to function independently. However, any modification of global browser state by one session may not be reflected in the UI of other sessions.

Communication with the DevTools front-end (when displayed) can be logged for development purposes by passing the `–devtools-protocol-log- file=<path>` command-line flag.

| `function ExecuteDevToolsMethod(message_id: integer; const method: ustring; const params: ICefDictionaryValue): Integer;`

Execute a function call over the DevTools protocol. This is a more structured version of SendDevToolsMessage. |message_id| is an incremental number that uniquely identifies the message (pass 0 to have the next number assigned automatically based on previous values). |function| is the function name. |params| are the function parameters, which may be NULL.

See the DevTools protocol documentation (linked above) for details of supported functions and the expected |params| dictionary contents. This function will return the assigned message ID if called on the UI thread and the message was successfully submitted for validation, otherwise 0.

See the SendDevToolsMessage documentation for additional usage information.

| `function AddDevToolsMessageObserver(const observer: ICefDevToolsMessageObserver): ICefRegistration;`
Add an observer for DevTools protocol messages (function results and events). The observer will remain registered until the returned Registration object is destroyed. See the SendDevToolsMessage documentation for additional usage information.

| `function AddSettingObserver(const observer: ICefSettingObserver): ICefRegistration;`
Add an observer for content and website setting changes. The observer will remain registered until the returned Registration object is destroyed. This function must be called on the browser process UI thread. <see href="https://bitbucket.org/chromiumembedded/cef/src/master/include/capi/cef_request_context_capi.h">CEF source file: /include/capi/cef_request_context_capi.h (cef_request_context_t))

| `procedure Find(const aSearchText : ustring; aForward, aMatchCase, aFindNext : Boolean);`

Search for |searchText|. |forward| indicates whether to search forward or backward within the page. |matchCase| indicates whether the search should be case-sensitive. |findNext| indicates whether this is the first request or a follow-up. The search will be restarted if |searchText| or |matchCase| change. The search will be stopped if |searchText| is NULL.

OnFindResult will be triggered to report find results.

| `procedure StopFinding(aClearSelection : Boolean);`
Cancel all searches that are currently going on.

| `procedure Print;`
Print the current browser contents.

| `procedure PrintToPDF(const aFilePath : ustring);`
Print the current browser contents to the PDF file specified by |path| and execute |callback| on completion. The caller is responsible for deleting |path| when done. For PDF printing to work on Linux you must implement the ICefPrintHandler.GetPdfPaperSize function. The TChromiumCore.OnPdfPrintFinished event will be triggered when the PDF file is created.

| `procedure ClipboardCopy;`
Execute copy on the focused frame.

| `procedure ClipboardPaste;`
Execute paste on the focused frame.

| `procedure ClipboardPasteAndMatchStyle;`
Execute paste and match style on the focused frame.

| `procedure ClipboardCut;`
Execute cut on the focused frame.

| `procedure ClipboardUndo;`
Execute undo on the focused frame.

| `procedure ClipboardRedo;`
Execute redo on the focused frame.

| `procedure ClipboardDel;`
Execute delete on the focused frame.

| `procedure SelectAll;`
Execute select all on the focused frame.

| `procedure IncZoomStep;`
Increase the zoom value. This procedure triggers the TChromium.OnZoomPctAvailable event with the new zoom value.

| `procedure DecZoomStep;`
Decrease the zoom value. This procedure triggers the TChromium.OnZoomPctAvailable event with the new zoom value.

| `procedure IncZoomPct;`
Increase the zoom value. This procedure triggers the TChromium.OnZoomPctAvailable event with the new zoom value.

| `procedure DecZoomPct;`
Decrease the zoom value. This procedure triggers the TChromium.OnZoomPctAvailable event with the new zoom value.

| `procedure ResetZoomStep;`
Reset the zoom value. This procedure triggers the TChromium.OnZoomPctAvailable event with the new zoom value.

| `procedure ResetZoomLevel;`
Reset the zoom value. This procedure triggers the TChromium.OnZoomPctAvailable event with the new zoom value.

| `procedure ResetZoomPct;`
Reset the zoom value. This procedure triggers the TChromium.OnZoomPctAvailable event with the new zoom value.

| `procedure ReadZoom;`
Read the zoom value. This procedure triggers the TChromium.OnZoomPctAvailable event with the zoom value.

| `procedure IncZoomCommand;`
Execute a zoom IN command in this browser. If called on the CEF UI thread the change will be applied immediately. Otherwise, the change will be applied asynchronously on the CEF UI thread.

| `procedure DecZoomCommand;`
Execute a zoom OUT command in this browser. If called on the CEF UI thread the change will be applied immediately. Otherwise, the change will be applied asynchronously on the CEF UI thread.

| `procedure ResetZoomCommand;`
Execute a zoom RESET command in this browser. If called on the CEF UI thread the change will be applied immediately. Otherwise, the change will be applied asynchronously on the CEF UI thread.

| `procedure WasResized;`
Notify the browser that the widget has been resized. The browser will first call ICefRenderHandler.GetViewRect to get the new size and then call ICefRenderHandler.OnPaint asynchronously with the updated regions. This function is only used when window rendering is disabled.

| `procedure WasHidden(hidden: Boolean);`
Notify the browser that it has been hidden or shown. Layouting and ICefRenderHandler.OnPaint notification will stop when the browser is hidden. This function is only used when window rendering is disabled.

| `procedure NotifyScreenInfoChanged;`

Notify the browser that screen information has changed. Updated information will be sent to the renderer process to configure screen size and position values used by CSS and JavaScript (window.deviceScaleFactor, window.screenX/Y, window.outerWidth/Height, etc.). For background see https://bitbucket.org/chromiumembedded/cef/wiki/GeneralUsage.md#markdown- header-coordinate-systems

This function is used with (a) windowless rendering and (b) windowed rendering with external (client-provided) root window.

With windowless rendering the browser will trigger TChromiumCore.OnGetScreenInfo, TChromiumCore.OnGetRootScreenRect and TChromiumCore.OnGetViewRect. This simulates moving or resizing the root window in the current display, moving the root window from one display to another, or changing the properties of the current display.

With windowed rendering the browser will trigger TChromiumCore.OnGetRootWindowScreenRect and use the associated display properties.

| `procedure NotifyMoveOrResizeStarted;`
Notify the browser that the window hosting it is about to be moved or resized. This function is only used on Windows and Linux.

| `procedure Invalidate(type_: TCefPaintElementType = PET_VIEW);`
Invalidate the view. The browser will call ICefRenderHandler.OnPaint asynchronously. This function is only used when window rendering is disabled.

| `procedure ExitFullscreen(will_cause_resize: boolean);`

Requests the renderer to exit browser fullscreen. In most cases exiting window fullscreen should also exit browser fullscreen. With Alloy style this function should be called in response to a user action such as clicking the green traffic light button on MacOS (ICefWindowDelegate.OnWindowFullscreenTransition callback) or pressing the "ESC" key (ICefKeyboardHandler.OnPreKeyEvent callback). With Chrome style these standard exit actions are handled internally but new/additional user actions can use this function. Set |will_cause_resize| to true (1) if exiting browser fullscreen will cause a view resize.

| `function CanExecuteChromeCommand(command_id: integer): boolean;`

Returns true (1) if a Chrome command is supported and enabled. Use the cef_id_for_command_id_name() function for version-safe mapping of command IDC names from cef_command_ids.h to version-specific numerical |command_id| values. This function can only be called on the UI thread. Only used with Chrome style.

See the IDC_* constants in uCEFConstants.pas for all the |command_id| values.

<see href="https://source.chromium.org/chromium/chromium/src/+/main:chrome/app/chrome_command_ids.h">The command_id values are also available in chrome/app/chrome_command_ids.h)

| `procedure ExecuteChromeCommand(command_id: integer; disposition: TCefWindowOpenDisposition);`

Returns true (1) if a Chrome command is supported and enabled. Use the cef_id_for_command_id_name() function for version-safe mapping of command IDC names from cef_command_ids.h to version-specific numerical |command_id| values. This function can only be called on the UI thread. Only used with Chrome style.

See the IDC_* constants in uCEFConstants.pas for all the |command_id| values.

<see href="https://source.chromium.org/chromium/chromium/src/+/main:chrome/app/chrome_command_ids.h">The command_id values are also available in chrome/app/chrome_command_ids.h)

| `procedure SendExternalBeginFrame;`
Issue a BeginFrame request to Chromium. Only valid when TCefWindowInfo.external_begin_frame_enabled is set to true (1).

| `procedure SendKeyEvent(const event: PCefKeyEvent);`
Send a key event to the browser.

| `procedure SendMouseClickEvent(const event: PCefMouseEvent; type_: TCefMouseButtonType; mouseUp: Boolean; clickCount: Integer);`
Send a mouse click event to the browser. The |x| and |y| coordinates are relative to the upper-left corner of the view.

| `procedure SendMouseMoveEvent(const event: PCefMouseEvent; mouseLeave: Boolean);`
Send a mouse move event to the browser. The |x| and |y| coordinates are relative to the upper-left corner of the view.

| `procedure SendMouseWheelEvent(const event: PCefMouseEvent; deltaX, deltaY: Integer);`
Send a mouse wheel event to the browser. The |x| and |y| coordinates are relative to the upper-left corner of the view. The |deltaX| and |deltaY| values represent the movement delta in the X and Y directions respectively. In order to scroll inside select popups with window rendering disabled ICefRenderHandler.GetScreenPoint should be implemented properly.

| `procedure SendTouchEvent(const event: PCefTouchEvent);`
Send a touch event to the browser for a windowless browser.

| `procedure SendCaptureLostEvent;`
Send a capture lost event to the browser.

| `procedure SendProcessMessage(targetProcess: TCefProcessId; const ProcMessage: ICefProcessMessage; const aFrameName : ustring = ''; const aFrameIdentifier : ustring = ''); overload;`
Send a message to the specified |targetProcess|. Ownership of the message contents will be transferred and the |ProcMessage| reference will be invalidated. Message delivery is not guaranteed in all cases (for example, if the browser is closing, navigating, or if the target process crashes). Send an ACK message back from the target process if confirmation is required.

| `procedure SendProcessMessage(targetProcess: TCefProcessId; const ProcMessage: ICefProcessMessage; const aFrame : ICefFrame); overload;`
Send a message to the specified |targetProcess|. Ownership of the message contents will be transferred and the |ProcMessage| reference will be invalidated. Message delivery is not guaranteed in all cases (for example, if the browser is closing, navigating, or if the target process crashes). Send an ACK message back from the target process if confirmation is required.

| `function CreateUrlRequest(const request: ICefRequest; const client: ICefUrlrequestClient; const aFrameName : ustring = ''; const aFrameIdentifier : ustring = ''): ICefUrlRequest; overload;`

Create a new URL request that will be treated as originating from this frame and the associated browser. Use TCustomCefUrlrequestClient.Create instead if you do not want the request to have this association, in which case it may be handled differently (see documentation on that function). A request created with this function may only originate from the browser process, and will behave as follows:

    - It may be intercepted by the client via CefResourceRequestHandler or
      CefSchemeHandlerFactory.
    - POST data may only contain a single element of type PDE_TYPE_FILE or
      PDE_TYPE_BYTES.

The |request| object will be marked as read-only after calling this function.

| `function CreateUrlRequest(const request: ICefRequest; const client: ICefUrlrequestClient; const aFrame : ICefFrame): ICefUrlRequest; overload;`

Create a new URL request that will be treated as originating from this frame and the associated browser. Use TCustomCefUrlrequestClient.Create instead if you do not want the request to have this association, in which case it may be handled differently (see documentation on that function). A request created with this function may only originate from the browser process, and will behave as follows:

    - It may be intercepted by the client via CefResourceRequestHandler or
      CefSchemeHandlerFactory.
    - POST data may only contain a single element of type PDE_TYPE_FILE or
      PDE_TYPE_BYTES.

The |request| object will be marked as read-only after calling this function.

| `procedure SetFocus(focus: Boolean);`
Set whether the browser is focused.

| `procedure SetAccessibilityState(accessibilityState: TCefState);`

Set accessibility state for all frames. |accessibility_state| may be default, enabled or disabled. If |accessibility_state| is STATE_DEFAULT then accessibility will be disabled by default and the state may be further controlled with the "force-renderer-accessibility" and "disable- renderer-accessibility" command-line switches. If |accessibility_state| is STATE_ENABLED then accessibility will be enabled. If |accessibility_state| is STATE_DISABLED then accessibility will be completely disabled.

For windowed browsers accessibility will be enabled in Complete mode (which corresponds to kAccessibilityModeComplete in Chromium). In this mode all platform accessibility objects will be created and managed by Chromium's internal implementation. The client needs only to detect the screen reader and call this function appropriately. For example, on macOS the client can handle the @"AXEnhancedUserStructure" accessibility attribute to detect VoiceOver state changes and on Windows the client can handle WM_GETOBJECT with OBJID_CLIENT to detect accessibility readers.

For windowless browsers accessibility will be enabled in TreeOnly mode (which corresponds to kAccessibilityModeWebContentsOnly in Chromium). In this mode renderer accessibility is enabled, the full tree is computed, and events are passed to CefAccessibiltyHandler, but platform accessibility objects are not created. The client may implement platform accessibility objects using CefAccessibiltyHandler callbacks if desired.

| `procedure DragTargetDragEnter(const dragData: ICefDragData; const event: PCefMouseEvent; allowedOps: TCefDragOperations);`

Call this function when the user drags the mouse into the web view (before calling DragTargetDragOver/DragTargetLeave/DragTargetDrop). |drag_data| should not contain file contents as this type of data is not allowed to be dragged into the web view. File contents can be removed using ICefDragData.ResetFileContents (for example, if |drag_data| comes from ICefRenderHandler.StartDragging). This function is only used when window rendering is disabled.

| `procedure DragTargetDragOver(const event: PCefMouseEvent; allowedOps: TCefDragOperations);`
Call this function each time the mouse is moved across the web view during a drag operation (after calling DragTargetDragEnter and before calling DragTargetDragLeave/DragTargetDrop). This function is only used when window rendering is disabled.

| `procedure DragTargetDragLeave;`
Call this function when the user drags the mouse out of the web view (after calling DragTargetDragEnter). This function is only used when window rendering is disabled.

| `procedure DragTargetDrop(const event: PCefMouseEvent);`
Call this function when the user completes the drag operation by dropping the object onto the web view (after calling DragTargetDragEnter). The object being dropped is |drag_data|, given as an argument to the previous DragTargetDragEnter call. This function is only used when window rendering is disabled.

| `procedure DragSourceEndedAt(x, y: Integer; op: TCefDragOperation);`

Call this function when the drag operation started by a ICefRenderHandler.StartDragging call has ended either in a drop or by being cancelled. |x| and |y| are mouse coordinates relative to the upper- left corner of the view. If the web view is both the drag source and the drag target then all DragTarget* functions should be called before DragSource* mthods. This function is only used when window rendering is disabled.

| `procedure DragSourceSystemDragEnded;`

Call this function when the drag operation started by a ICefRenderHandler.StartDragging call has completed. This function may be called immediately without first calling DragSourceEndedAt to cancel a drag operation. If the web view is both the drag source and the drag target then all DragTarget* functions should be called before DragSource* mthods. This function is only used when window rendering is disabled.

| `procedure IMESetComposition(const text: ustring; const underlines : TCefCompositionUnderlineDynArray; const replacement_range, selection_range : PCefRange);`

Begins a new composition or updates the existing composition. Blink has a special node (a composition node) that allows the input function to change text without affecting other DOM nodes. |text| is the optional text that will be inserted into the composition node. |underlines| is an optional set of ranges that will be underlined in the resulting text.

|replacement_range| is an optional range of the existing text that will be replaced. |selection_range| is an optional range of the resulting text that will be selected after insertion or replacement. The |replacement_range| value is only used on OS X.

This function may be called multiple times as the composition changes. When the client is done making changes the composition should either be canceled or completed. To cancel the composition call ImeCancelComposition. To complete the composition call either ImeCommitText or ImeFinishComposingText. Completion is usually signaled when:

    1. The client receives a WM_IME_COMPOSITION message with a GCS_RESULTSTR
       flag (on Windows), or;
    2. The client receives a "commit" signal of GtkIMContext (on Linux), or;
    3. insertText of NSTextInput is called (on Mac).

This function is only used when window rendering is disabled.

| `procedure IMECommitText(const text: ustring; const replacement_range : PCefRange; relative_cursor_pos : integer);`

Completes the existing composition by optionally inserting the specified |text| into the composition node. |replacement_range| is an optional range of the existing text that will be replaced. |relative_cursor_pos| is where the cursor will be positioned relative to the current cursor position. See comments on ImeSetComposition for usage. The |replacement_range| and |relative_cursor_pos| values are only used on OS X. This function is only used when window rendering is disabled.

| `procedure IMEFinishComposingText(keep_selection : boolean);`
Completes the existing composition by applying the current composition node contents. If |keep_selection| is false (0) the current selection, if any, will be discarded. See comments on ImeSetComposition for usage. This function is only used when window rendering is disabled.

| `procedure IMECancelComposition;`
Cancels the existing composition and discards the composition node contents without applying them. See comments on ImeSetComposition for usage. This function is only used when window rendering is disabled.

| `procedure ReplaceMisspelling(const aWord : ustring);`
If a misspelled word is currently selected in an editable node calling this function will replace it with the specified |word|.

| `procedure AddWordToDictionary(const aWord : ustring);`
Add the specified |word| to the spelling dictionary.

| `function AddObserver(const observer: ICefMediaObserver): ICefRegistration;`
Add an observer for MediaRouter events. The observer will remain registered until the returned Registration object is destroyed.

| `function GetSource(const urn: ustring): ICefMediaSource;`
Returns a MediaSource object for the specified media source URN. Supported URN schemes include "cast:" and "dial:", and will be already known by the client application (e.g. "cast:<appId>?clientId=<clientId>").

| `procedure NotifyCurrentSinks;`
Trigger an asynchronous call to ICefMediaObserver.OnSinks on all registered observers.

| `procedure NotifyCurrentRoutes;`
Trigger an asynchronous call to ICefMediaObserver.OnRoutes on all registered observers.

| `procedure CreateRoute(const source: ICefMediaSource; const sink: ICefMediaSink);`

Create a new route between |source| and |sink|. Source and sink must be valid, compatible (as reported by ICefMediaSink.IsCompatibleWith), and a route between them must not already exist. |callback| will be executed on success or failure. If route creation succeeds it will also trigger an asynchronous call to ICefMediaObserver.OnRoutes on all registered observers.

This procedure is asynchronous and the result, ICefMediaRoute and the error message will be available in the TChromium.OnMediaRouteCreateFinished event.

| `procedure GetDeviceInfo(const aMediaSink: ICefMediaSink);`
Asynchronously retrieves device info. This procedure will trigger OnMediaSinkDeviceInfo with the device info.

| `function GetWebsiteSetting(const requesting_url, top_level_url: ustring; content_type: TCefContentSettingTypes): ICefValue;`
Returns the current value for |content_type| that applies for the specified URLs. If both URLs are NULL the default value will be returned. Returns nullptr if no value is configured. Must be called on the browser process UI thread.

| `procedure SetWebsiteSetting(const requesting_url, top_level_url: ustring; content_type: TCefContentSettingTypes; const value: ICefValue);`

Sets the current value for |content_type| for the specified URLs in the default scope. If both URLs are NULL, and the context is not incognito, the default value will be set. Pass nullptr for |value| to remove the default value for this content type.

WARNING: Incorrect usage of this function may cause instability or security issues in Chromium. Make sure that you first understand the potential impact of any changes to |content_type| by reviewing the related source code in Chromium. For example, if you plan to modify CEF_CONTENT_SETTING_TYPE_POPUPS, first review and understand the usage of ContentSettingsType::POPUPS in Chromium: https://source.chromium.org/search?q=ContentSettingsType::POPUPS

| `function GetContentSetting(const requesting_url, top_level_url: ustring; content_type: TCefContentSettingTypes): TCefContentSettingValues;`
Returns the current value for |content_type| that applies for the specified URLs. If both URLs are NULL the default value will be returned. Returns CEF_CONTENT_SETTING_VALUE_DEFAULT if no value is configured. Must be called on the browser process UI thread.

| `procedure SetContentSetting(const requesting_url, top_level_url: ustring; content_type: TCefContentSettingTypes; value: TCefContentSettingValues);`

Sets the current value for |content_type| for the specified URLs in the default scope. If both URLs are NULL, and the context is not incognito, the default value will be set. Pass CEF_CONTENT_SETTING_VALUE_DEFAULT for |value| to use the default value for this content type.

WARNING: Incorrect usage of this function may cause instability or security issues in Chromium. Make sure that you first understand the potential impact of any changes to |content_type| by reviewing the related source code in Chromium. For example, if you plan to modify CEF_CONTENT_SETTING_TYPE_POPUPS, first review and understand the usage of ContentSettingsType::POPUPS in Chromium: https://source.chromium.org/search?q=ContentSettingsType::POPUPS

| `procedure SetChromeColorScheme(variant: TCefColorVariant; user_color: TCefColor);`
Sets the Chrome color scheme for all browsers that share this request context. |variant| values of SYSTEM, LIGHT and DARK change the underlying color mode (e.g. light vs dark). Other |variant| values determine how |user_color| will be applied in the current color mode. If |user_color| is transparent (0) the default color will be used.

### Properties

| `property ParentFormHandle : TCefWindowHandle read GetParentFormHandle;`
This item has no description.

| `property DefaultUrl : ustring read FDefaultUrl write SetDefaultUrl;`
First URL loaded by the browser after its creation.

| `property Options : TChromiumOptions read FOptions write FOptions;`
Properties used to fill the TCefBrowserSettings record which is used during the browser creation.

| `property FontOptions : TChromiumFontOptions read FFontOptions write FFontOptions;`
Font properties used to fill the TCefBrowserSettings record which is used during the browser creation.

| `property PDFPrintOptions : TPDFPrintOptions read FPDFPrintOptions write FPDFPrintOptions;`
Properties used to fill the TCefPdfPrintSettings record which is used in the TChromiumCore.PrintToPDF call.

| `property DefaultEncoding : ustring read FDefaultEncoding write FDefaultEncoding;`
Default encoding for Web content. If empty "ISO-8859-1" will be used. Also configurable using the "default-encoding" command-line switch. It's used during the browser creation.

| `property BrowserId : integer read GetBrowserId;`
Globally unique identifier for the seleted browser.

| `property Browser : ICefBrowser read GetBrowser;`
Returns a ICefBrowser instance of the selected browser.

| `property BrowserById[id: integer]: ICefBrowser read GetBrowserById;`
Returns a ICefBrowser instance of the browser with the specified id.

| `property BrowserCount : integer read GetBrowserCount;`
Returns the number of browsers in the browser array when the multi-browser mode is enabled.

| `property BrowserIdByIndex[i: integer]: integer read GetBrowserIdByIndex;`
Returns the identifier of the browser in the specified array position when the multi-browser mode is enabled.

| `property CefClient : ICefClient read FHandler;`
Returns the ICefClient instance used by the selected browser.

| `property ReqContextHandler : ICefRequestContextHandler read FReqContextHandler;`
Returns the ICefRequestContextHandler instance used in this browser.

| `property ResourceRequestHandler : ICefResourceRequestHandler read FResourceRequestHandler;`
Returns the ICefResourceRequestHandler instance used in this browser.

| `property CefWindowInfo : TCefWindowInfo read GetCefWindowInfo;`
Returns the TCefWindowInfo record used when the browser was created.

| `property VisibleNavigationEntry : ICefNavigationEntry read GetVisibleNavigationEntry;`
Returns the current visible navigation entry for this browser. This property can only be used on the CEF UI thread.

| `property RuntimeStyle : TCefRuntimeStyle read GetRuntimeStyle write SetRuntimeStyle;`
Returns the runtime style for this browser (ALLOY or CHROME). See TCefRuntimeStyle documentation for details. This property can only be read on the CEF UI thread.

| `property RequestContext : ICefRequestContext read GetRequestContext;`
Returns a ICefRequestContext instance used by the selected browser.

| `property MediaRouter : ICefMediaRouter read GetMediaRouter;`
Returns a ICefMediaRouter instance used by the selected browser.

| `property MediaObserver : ICefMediaObserver read FMediaObserver;`
Returns a ICefMediaObserver instance used by the selected browser.

| `property MediaObserverReg : ICefRegistration read FMediaObserverReg;`
Returns the ICefRegistration instance obtained when the default MediaObserver was added.

| `property DevToolsMsgObserver : ICefDevToolsMessageObserver read FDevToolsMsgObserver;`
Returns a ICefDevToolsMessageObserver instance used by the selected browser.

| `property DevToolsMsgObserverReg : ICefRegistration read FDevToolsMsgObserverReg;`
Returns the ICefRegistration instance obtained when the default DevToolsMessageObserver was added.

| `property MultithreadApp : boolean read GetMultithreadApp;`
Returns the value of GlobalCEFApp.MultiThreadedMessageLoop.

| `property IsLoading : boolean read GetIsLoading;`
Calls ICefBrowser.IsLoading and returns true if the browser is currently loading.

| `property HasDocument : boolean read GetHasDocument;`
Calls ICefBrowser.HasDocument and returns true if a document has been loaded in the browser.

| `property HasView : boolean read GetHasView;`
Calls ICefBrowserHost.HasView and returns true if this browser is wrapped in a ICefBrowserView.

| `property HasDevTools : boolean read GetHasDevTools;`
Calls ICefBrowserHost.HasDevTools and returns true if this browser currently has an associated DevTools browser.

| `property HasClientHandler : boolean read GetHasClientHandler;`
Returns true if ICefClient has a valid value.

| `property HasBrowser : boolean read GetHasBrowser;`
Returns true if this component has a valid selected browser.

| `property CanGoBack : boolean read GetCanGoBack;`
Calls ICefBrowser.CanGoBack and returns true if the browser can navigate back.

| `property CanGoForward : boolean read GetCanGoForward;`
Calls ICefBrowser.CanGoForward and returns true if the browser can navigate forward.

| `property IsPopUp : boolean read GetIsPopUp;`
Calls ICefBrowser.IsPopUp and returns true if the window is a popup window.

| `property WindowHandle : TCefWindowHandle read GetWindowHandle;`
Calls ICefBrowserHost.GetWindowHandle and returns the window handle for this browser.

| `property OpenerWindowHandle : TCefWindowHandle read GetOpenerWindowHandle;`
Calls ICefBrowserHost.GetOpenerWindowHandle and returns the window handle of the browser that opened this browser.

| `property OpenerIdentifier : Integer read GetOpenerIdentifier;`
Retrieve the unique identifier of the browser that opened this browser. Will return 0 for non-popup browsers.

| `property BrowserHandle : THandle read FBrowserCompHWND;`
Handle of one to the child controls created automatically by CEF to show the web contents.

| `property RenderHandle : THandle read FRenderCompHWND;`
Handle of one to the child controls created automatically by CEF to show the web contents.

| `property FrameIsFocused : boolean read GetFrameIsFocused;`
Returns true if ICefBrowser.FocusedFrame has a valid value.

| `property Initialized : boolean read GetInitialized;`
Returns true when the browser is fully initialized and it's not being closed.

| `property RequestContextCache : ustring read GetRequestContextCache;`
Returns the cache value in ICefRequestContext.CachePath.

| `property RequestContextIsGlobal : boolean read GetRequestContextIsGlobal;`
Calls ICefRequestContext.IsGlobal to check if the request context is the global context or it's independent.

| `property ChromeColorSchemeMode : TCefColorVariant read GetChromeColorSchemeMode;`
Returns the current Chrome color scheme mode (SYSTEM, LIGHT or DARK). Must be called on the browser process UI thread.

| `property ChromeColorSchemeColor : TCefColor read GetChromeColorSchemeColor;`
Returns the current Chrome color scheme color, or transparent (0) for the default color. Must be called on the browser process UI thread.

| `property ChromeColorSchemeVariant : TCefColorVariant read GetChromeColorSchemeVariant;`
Returns the current Chrome color scheme variant. Must be called on the browser process UI thread.

| `property DocumentURL : ustring read GetDocumentURL;`
Returns the URL of the main frame.

| `property ZoomLevel : double read GetZoomLevel write SetZoomLevel;`
Returns the current zoom value. This property is based on the CefBrowserHost.ZoomLevel value which can only be read in the CEF UI thread.

| `property DefaultZoomLevel : double read GetDefaultZoomLevel;`
Get the default zoom level. This value will be 0.0 by default but can be configured. This function can only be called on the UI thread.

| `property CanIncZoom : boolean read GetCanIncZoom;`
Returns true (1) if this browser can execute the zoom IN command. This function can only be called on the CEF UI thread.

| `property CanDecZoom : boolean read GetCanDecZoom;`
Returns true (1) if this browser can execute the zoom OUT command. This function can only be called on the CEF UI thread.

| `property CanResetZoom : boolean read GetCanResetZoom;`
Returns true (1) if this browser can execute the zoom RESET command. This function can only be called on the CEF UI thread.

| `property ZoomPct : double read GetZoomPct write SetZoomPct;`
Returns the current zoom value. This property is based on the CefBrowserHost.ZoomLevel value which can only be read in the CEF UI thread.

| `property ZoomStep : byte read GetZoomStep write SetZoomStep;`
Returns the current zoom value. This property is based on the CefBrowserHost.ZoomLevel value which can only be read in the CEF UI thread.

| `property WindowlessFrameRate : integer read GetWindowlessFrameRate write SetWindowlessFrameRate;`
Returns the maximum rate in frames per second (fps) that OnPaint will be called for a browser in OSR mode.

| `property CustomHeaderName : ustring read FCustomHeaderName write SetCustomHeaderName;`
Custom HTTP header name added to all requests.

| `property CustomHeaderValue : ustring read FCustomHeaderValue write SetCustomHeaderValue;`
Custom HTTP header value added to all requests.

| `property DoNotTrack : boolean read FDoNotTrack write SetDoNotTrack;`
Set to True if you want to send the DNT header.

| `property SendReferrer : boolean read FSendReferrer write SetSendReferrer;`
Set to True if you want to send the referer header.

| `property HyperlinkAuditing : boolean read FHyperlinkAuditing write SetHyperlinkAuditing;`
Enable hyperlink auditing.

| `property AllowOutdatedPlugins : boolean read FAllowOutdatedPlugins write SetAllowOutdatedPlugins;`
Allow using outdated plugins.

| `property AlwaysAuthorizePlugins : boolean read FAlwaysAuthorizePlugins write SetAlwaysAuthorizePlugins;`
Always authorize plugins.

| `property AlwaysOpenPDFExternally : boolean read FAlwaysOpenPDFExternally write SetAlwaysOpenPDFExternally;`
Always open PDF files externally.

| `property SpellChecking : boolean read FSpellChecking write SetSpellChecking;`
Set to True if you want to enable the spell checker.

| `property SpellCheckerDicts : ustring read FSpellCheckerDicts write SetSpellCheckerDicts;`
Comma delimited list of language codes used by the spell checker, for example "es-ES,en-US,fr-FR,de-DE,it-IT".

| `property HasValidMainFrame : boolean read GetHasValidMainFrame;`
Returns true if the main frame exists and it's valid.

| `property FrameCount : NativeUInt read GetFrameCount;`
Returns the number of frames that currently exist.

| `property DragOperations : TCefDragOperations read FDragOperations write FDragOperations;`
Returns the TcefDragOperation value used during drag and drop.

| `property AudioMuted : boolean read GetAudioMuted write SetAudioMuted;`
Returns true if the browser's audio is muted.

| `property Fullscreen : boolean read GetFullscreen;`
Returns true (1) if the renderer is currently in browser fullscreen. This differs from window fullscreen in that browser fullscreen is entered using the JavaScript Fullscreen API and modifies CSS attributes such as the ::backdrop pseudo-element and :fullscreen pseudo-structure. This property can only be called on the UI thread.

| `property IsRenderProcessUnresponsive : boolean read GetIsRenderProcessUnresponsive;`
Returns true (1) if the render process associated with this browser is currently unresponsive as indicated by a lack of input event processing for at least 15 seconds. To receive associated state change notifications and optionally handle an unresponsive render process implement ICefRequestHandler.OnRenderProcessUnresponsive. This property can only be read on the CEF UI thread.

| `property SafeSearch : boolean read FSafeSearch write SetSafeSearch;`
Forces the Google safesearch in the browser preferences.

| `property YouTubeRestrict : integer read FYouTubeRestrict write SetYouTubeRestrict;`
Forces the YouTube restrictions in the browser preferences.

| `property PrintingEnabled : boolean read FPrintingEnabled write SetPrintingEnabled;`
Enables printing in the browser preferences.

| `property AcceptCookies : TCefCookiePref read FAcceptCookies write SetAcceptCookies;`
Sets the cookies policy value in the browser preferences.

| `property Block3rdPartyCookies : boolean read FBlock3rdPartyCookies write SetBlock3rdPartyCookies;`
Blocks third party cookies in the browser preferences.

| `property MultiBrowserMode : boolean read FMultiBrowserMode write SetMultiBrowserMode;`
Enables the multi-browser mode that allows TChromiumCore to handle several browsers with one component. These browsers are usually the main browser, popup windows and new tabs.

| `property DefaultWindowInfoExStyle : DWORD read GetWindowInfoExStyle write SetWindowInfoExStyle;`
Default ExStyle value used to initialize the browser. A value of WS_EX_NOACTIVATE can be used as a workaround for some focus issues in CEF.

| `property Offline : boolean read FOffline write SetOffline;`
Uses the Network.emulateNetworkConditions DevTool method to set the browser in offline mode.

| `property QuicAllowed : boolean read FQuicAllowed write SetQuicAllowed;`
Enables the Quic protocol in the browser preferences.

| `property JavascriptEnabled : boolean read FJavascriptEnabled write SetJavascriptEnabled;`
Enables JavaScript in the browser preferences.

| `property LoadImagesAutomatically : boolean read FLoadImagesAutomatically write SetLoadImagesAutomatically;`
Enables automatic image loading in the browser preferences.

| `property CanFocus : boolean read FCanFocus;`
Indicates whether the browser can receive focus.

| `property EnableFocusDelayMs : cardinal read FEnableFocusDelayMs write FEnableFocusDelayMs;`
Delay in milliseconds to enable browser focus.

| `property WebRTCIPHandlingPolicy : TCefWebRTCHandlingPolicy read FWebRTCIPHandlingPolicy write SetWebRTCIPHandlingPolicy;`
WebRTC handling policy setting in the browser preferences.

| `property WebRTCMultipleRoutes : TCefState read FWebRTCMultipleRoutes write SetWebRTCMultipleRoutes;`
WebRTC multiple routes setting in the browser preferences.

| `property WebRTCNonproxiedUDP : TCefState read FWebRTCNonProxiedUDP write SetWebRTCNonProxiedUDP;`
WebRTC nonproxied UDP setting in the browser preferences.

| `property ProxyType : integer read FProxyType write SetProxyType;`

Proxy type: CEF_PROXYTYPE_DIRECT, CEF_PROXYTYPE_AUTODETECT, CEF_PROXYTYPE_SYSTEM, CEF_PROXYTYPE_FIXED_SERVERS or CEF_PROXYTYPE_PAC_SCRIPT.

If you use the proxy settings in GlobalCEFApp you will not be able to use the proxy properties in TChromiumCore.

<see href="https://www.chromium.org/developers/design-documents/network-settings/">See the Network Settings article.)

<see href="https://github.com/chromium/chromium/blob/main/net/docs/proxy.md"/">See the Proxy Support article.)

<see href="https://developer.chrome.com/docs/extensions/reference/api/proxy">See the chrome.proxy API article.)

| `property ProxyScheme : TCefProxyScheme read FProxyScheme write SetProxyScheme;`

Proxy scheme

If you use the proxy settings in GlobalCEFApp you will not be able to use the proxy properties in TChromiumCore.

<see href="https://www.chromium.org/developers/design-documents/network-settings/">See the Network Settings article.)

<see href="https://github.com/chromium/chromium/blob/main/net/docs/proxy.md"/">See the Proxy Support article.)

<see href="https://developer.chrome.com/docs/extensions/reference/api/proxy">See the chrome.proxy API article.)

| `property ProxyServer : ustring read FProxyServer write SetProxyServer;`

Proxy server address

If you use the proxy settings in GlobalCEFApp you will not be able to use the proxy properties in TChromiumCore.

<see href="https://www.chromium.org/developers/design-documents/network-settings/">See the Network Settings article.)

<see href="https://github.com/chromium/chromium/blob/main/net/docs/proxy.md"/">See the Proxy Support article.)

<see href="https://developer.chrome.com/docs/extensions/reference/api/proxy">See the chrome.proxy API article.)

| `property ProxyPort : integer read FProxyPort write SetProxyPort;`

Proxy server port

If you use the proxy settings in GlobalCEFApp you will not be able to use the proxy properties in TChromiumCore.

<see href="https://www.chromium.org/developers/design-documents/network-settings/">See the Network Settings article.)

<see href="https://github.com/chromium/chromium/blob/main/net/docs/proxy.md"/">See the Proxy Support article.)

<see href="https://developer.chrome.com/docs/extensions/reference/api/proxy">See the chrome.proxy API article.)

| `property ProxyUsername : ustring read FProxyUsername write SetProxyUsername;`

Proxy username

If you use the proxy settings in GlobalCEFApp you will not be able to use the proxy properties in TChromiumCore.

<see href="https://www.chromium.org/developers/design-documents/network-settings/">See the Network Settings article.)

<see href="https://github.com/chromium/chromium/blob/main/net/docs/proxy.md"/">See the Proxy Support article.)

<see href="https://developer.chrome.com/docs/extensions/reference/api/proxy">See the chrome.proxy API article.)

| `property ProxyPassword : ustring read FProxyPassword write SetProxyPassword;`

Proxy password

If you use the proxy settings in GlobalCEFApp you will not be able to use the proxy properties in TChromiumCore.

<see href="https://www.chromium.org/developers/design-documents/network-settings/">See the Network Settings article.)

<see href="https://github.com/chromium/chromium/blob/main/net/docs/proxy.md"/">See the Proxy Support article.)

<see href="https://developer.chrome.com/docs/extensions/reference/api/proxy">See the chrome.proxy API article.)

| `property ProxyScriptURL : ustring read FProxyScriptURL write SetProxyScriptURL;`

URL of the PAC script file.

If you use the proxy settings in GlobalCEFApp you will not be able to use the proxy properties in TChromiumCore.

<see href="https://www.chromium.org/developers/design-documents/network-settings/">See the Network Settings article.)

<see href="https://github.com/chromium/chromium/blob/main/net/docs/proxy.md"/">See the Proxy Support article.)

<see href="https://developer.chrome.com/docs/extensions/reference/api/proxy">See the chrome.proxy API article.)

| `property ProxyByPassList : ustring read FProxyByPassList write SetProxyByPassList;`

This tells chromium to bypass any specified proxy for the given semi-colon-separated list of hosts.

If you use the proxy settings in GlobalCEFApp you will not be able to use the proxy properties in TChromiumCore.

<see href="https://www.chromium.org/developers/design-documents/network-settings/">See the Network Settings article.)

<see href="https://github.com/chromium/chromium/blob/main/net/docs/proxy.md"/">See the Proxy Support article.)

<see href="https://developer.chrome.com/docs/extensions/reference/api/proxy">See the chrome.proxy API article.)

| `property MaxConnectionsPerProxy : integer read FMaxConnectionsPerProxy write SetMaxConnectionsPerProxy;`
Sets the maximum connections per proxy value in the browser preferences (experimental).

| `property DownloadBubble : TCefState read FDownloadBubble write FDownloadBubble;`
Enable the file download bubble when using Chrome style.

| `property HTTPSUpgrade : TCefState read FHTTPSUpgrade write FHTTPSUpgrade;`
Automatically upgrade to HTTPS connections.

| `property HSTSPolicyBypassList : ustring read FHSTSPolicyBypassList write FHSTSPolicyBypassList;`
List of comma-delimited single-label hostnames that will skip the check to possibly upgrade from http to https.

| `property CredentialsService : TCefState read FCredentialsService write FCredentialsService;`
This service shows a dialog to save the usernames and passwords in Chrome style.

| `property AutofillCreditCard : TCefState read FAutofillCreditCard write FAutofillCreditCard;`
Browser preference used to enable the autofill feature for credit card information. Disabling this property is a suggested workaround for some autofill crashes in Alloy style.

| `property AutofillProfile : TCefState read FAutofillProfile write FAutofillProfile;`
Browser preference used to enable the autofill feature for profile information. Disabling this property is a suggested workaround for some autofill crashes in Alloy style.

| `property AutofillSaveData : TCefState read FAutofillSaveData write FAutofillSaveData;`
Browser preference used to enable the autofill feature for saving data. Disabling this property is a suggested workaround for some autofill crashes in Alloy style.

| `property CanMakePayment : TCefState read FCanMakePayment write FCanMakePayment;`
Browser preference used to enable saving information about payments. Disabling this property is a suggested workaround for some autofill crashes in Alloy style.

| `property SearchSuggestEnabled : TCefState read FSearchSuggestEnabled write FSearchSuggestEnabled;`
Browser preference used to enable search suggestions. Disabling this property is a suggested workaround for some autofill crashes in Alloy style.

| `property URLDataCollection : TCefState read FURLDataCollection write FURLDataCollection;`
Browser preference used to enable url keyed anonymized data collection. Disabling this property is a suggested workaround for some autofill crashes in Alloy style.

| `property StorageNotificationService : TCefState read FStorageNotificationService write FStorageNotificationService;`
Used to disable the "Free up space to continue" notification for the current profile.

| `property OnTextResultAvailable : TOnTextResultAvailableEvent read FOnTextResultAvailable write FOnTextResultAvailable;`
Triggered after a TChromiumCore.RetrieveHTML or TChromiumCore.RetrieveText call with the HTML or text results.

| `property OnPdfPrintFinished : TOnPdfPrintFinishedEvent read FOnPdfPrintFinished write FOnPdfPrintFinished;`
Triggered after a TChromiumCore.PrintToPDF call when the PDF has been created.

| `property OnPrefsAvailable : TOnPrefsAvailableEvent read FOnPrefsAvailable write FOnPrefsAvailable;`
Triggered after a TChromiumCore.SavePreferences call when the preferences have been saved.

| `property OnPrefsUpdated : TNotifyEvent read FOnPrefsUpdated write FOnPrefsUpdated;`
Triggered when the browser preferences have been updated.

| `property OnCookiesDeleted : TOnCookiesDeletedEvent read FOnCookiesDeleted write FOnCookiesDeleted;`
Triggered after a TChromiumCore.DeleteCookies call when the cookies have been deleted.

| `property OnResolvedHostAvailable : TOnResolvedIPsAvailableEvent read FOnResolvedHostAvailable write FOnResolvedHostAvailable;`
Triggered after a TChromiumCore.ResolveHost call with the host information.

| `property OnNavigationVisitorResultAvailable : TOnNavigationVisitorResultAvailableEvent read FOnNavigationVisitorResultAvailable write FOnNavigationVisitorResultAvailable;`
Triggered after a TChromiumCore.GetNavigationEntries call with a navigation entry.

| `property OnDownloadImageFinished : TOnDownloadImageFinishedEvent read FOnDownloadImageFinished write FOnDownloadImageFinished;`
Triggered after a TChromiumCore.DownloadImage call when the download is complete.

| `property OnCookiesFlushed : TNotifyEvent read FOnCookiesFlushed write FOnCookiesFlushed;`
Triggered after a TChromiumCore.FlushCookieStore call when the cookies are flushed.

| `property OnCertificateExceptionsCleared : TNotifyEvent read FOnCertificateExceptionsCleared write FOnCertificateExceptionsCleared;`
Triggered after a TChromiumCore.ClearCertificateExceptions call when the exceptions are cleared.

| `property OnHttpAuthCredentialsCleared : TNotifyEvent read FOnHttpAuthCredentialsCleared write FOnHttpAuthCredentialsCleared;`
Triggered after a TChromiumCore.ClearHttpAuthCredentials call when the credentials are cleared.

| `property OnAllConnectionsClosed : TNotifyEvent read FOnAllConnectionsClosed write FOnAllConnectionsClosed;`
Triggered after a TChromiumCore.CloseAllConnections call when the connections are closed.

| `property OnHttpCacheCleared : TNotifyEvent read FOnHttpCacheCleared write FOnHttpCacheCleared;`
Triggered after a TChromiumCore.ClearHttpCache call when the http cache is cleared.

| `property OnExecuteTaskOnCefThread : TOnExecuteTaskOnCefThread read FOnExecuteTaskOnCefThread write FOnExecuteTaskOnCefThread;`
Triggered after a TChromiumCore.ExecuteTaskOnCefThread call in the context of the specified CEF thread.

| `property OnCookiesVisited : TOnCookiesVisited read FOnCookiesVisited write FOnCookiesVisited;`
Triggered after a TChromiumCore.VisitAllCookies call with cookie information.

| `property OnCookieVisitorDestroyed : TOnCookieVisitorDestroyed read FOnCookieVisitorDestroyed write FOnCookieVisitorDestroyed;`
Triggered after a TChromiumCore.VisitAllCookies call when the IcefCookieVisitor has been destroyed.

| `property OnCookieSet : TOnCookieSet read FOnCookieSet write FOnCookieSet;`
Triggered after a TChromiumCore.SetCookie call when the cookie has been set.

| `property OnZoomPctAvailable : TOnZoomPctAvailable read FOnZoomPctAvailable write FOnZoomPctAvailable;`
Triggered after a call to any of the procedures to increase, decrease or reset the zoom with the new zoom value.

| `property OnMediaRouteCreateFinished : TOnMediaRouteCreateFinishedEvent read FOnMediaRouteCreateFinished write FOnMediaRouteCreateFinished;`
Triggered after a TChromiumCore.CreateRoute call when the route is created.

| `property OnMediaSinkDeviceInfo : TOnMediaSinkDeviceInfoEvent read FOnMediaSinkDeviceInfo write FOnMediaSinkDeviceInfo;`
Triggered after a TChromiumCore.GetDeviceInfo call with the device info.

| `property OnCanFocus : TNotifyEvent read FOnCanFocus write FOnCanFocus;`
Triggered when the browser is capable of being focused.

| `property OnBrowserCompMsg : TOnCompMsgEvent read FOnBrowserCompMsg write FOnBrowserCompMsg;`
Triggered for all messages sent to the child controls created by CEF to show the web contents.

| `property OnRenderCompMsg : TOnCompMsgEvent read FOnRenderCompMsg write FOnRenderCompMsg;`
Triggered for all messages sent to the child controls created by CEF to show the web contents.

| `property OnProcessMessageReceived : TOnProcessMessageReceived read FOnProcessMessageReceived write FOnProcessMessageReceived;`
Called when a new message is received from a different process. Return true (1) if the message was handled or false (0) otherwise. It is safe to keep a reference to |message| outside of this callback. <see href="https://bitbucket.org/chromiumembedded/cef/src/master/include/capi/cef_client_capi.h">CEF source file: /include/capi/cef_client_capi.h (cef_client_t))

| `property OnLoadStart : TOnLoadStart read FOnLoadStart write FOnLoadStart;`

Called after a navigation has been committed and before the browser begins loading contents in the frame. The |frame| value will never be NULL – call the IsMain() function to check if this frame is the main frame. |transition_type| provides information about the source of the navigation and an accurate value is only available in the browser process. Multiple frames may be loading at the same time. Sub-frames may start or continue loading after the main frame load has ended. This function will not be called for same page navigations (fragments, history state, etc.) or for navigations that fail or are canceled before commit. For notification of overall browser load status use OnLoadingStateChange instead.

This event will be called on the browser process CEF UI thread.

<see href="https://bitbucket.org/chromiumembedded/cef/src/master/include/capi/cef_load_handler_capi.h">CEF source file: /include/capi/cef_load_handler_capi.h (cef_load_handler_t))

| `property OnLoadEnd : TOnLoadEnd read FOnLoadEnd write FOnLoadEnd;`

Called when the browser is done loading a frame. The |frame| value will never be NULL – call the IsMain() function to check if this frame is the main frame. Multiple frames may be loading at the same time. Sub-frames may start or continue loading after the main frame load has ended. This function will not be called for same page navigations (fragments, history state, etc.) or for navigations that fail or are canceled before commit. For notification of overall browser load status use OnLoadingStateChange instead.

This event will be called on the browser process CEF UI thread.

<see href="https://bitbucket.org/chromiumembedded/cef/src/master/include/capi/cef_load_handler_capi.h">CEF source file: /include/capi/cef_load_handler_capi.h (cef_load_handler_t))

| `property OnLoadError : TOnLoadError read FOnLoadError write FOnLoadError;`

Called when a navigation fails or is canceled. This function may be called by itself if before commit or in combination with OnLoadStart/OnLoadEnd if after commit. |errorCode| is the error code number, |errorText| is the error text and |failedUrl| is the URL that failed to load. See net\base\net_error_list.h for complete descriptions of the error codes.

This event will be called on the browser process CEF UI thread.

<see href="https://bitbucket.org/chromiumembedded/cef/src/master/include/capi/cef_load_handler_capi.h">CEF source file: /include/capi/cef_load_handler_capi.h (cef_load_handler_t))

| `property OnLoadingStateChange : TOnLoadingStateChange read FOnLoadingStateChange write FOnLoadingStateChange;`

Called when the loading state has changed. This callback will be executed twice – once when loading is initiated either programmatically or by user action, and once when loading is terminated due to completion, cancellation of failure. It will be called before any calls to OnLoadStart and after all calls to OnLoadError and/or OnLoadEnd.

This event will be called on the browser process CEF UI thread.

<see href="https://bitbucket.org/chromiumembedded/cef/src/master/include/capi/cef_load_handler_capi.h">CEF source file: /include/capi/cef_load_handler_capi.h (cef_load_handler_t))

| `property OnTakeFocus : TOnTakeFocus read FOnTakeFocus write FOnTakeFocus;`

Called when the browser component is about to loose focus. For instance, if focus was on the last HTML element and the user pressed the TAB key. |next| will be true (1) if the browser is giving focus to the next component and false (0) if the browser is giving focus to the previous component.

This event will be called on the browser process CEF UI thread.

<see href="https://bitbucket.org/chromiumembedded/cef/src/master/include/capi/cef_focus_handler_capi.h">CEF source file: /include/capi/cef_focus_handler_capi.h (cef_focus_handler_t))

| `property OnSetFocus : TOnSetFocus read FOnSetFocus write FOnSetFocus;`

Called when the browser component is requesting focus. |source| indicates where the focus request is originating from. Return false (0) to allow the focus to be set or true (1) to cancel setting the focus.

This event will be called on the browser process CEF UI thread.

<see href="https://bitbucket.org/chromiumembedded/cef/src/master/include/capi/cef_focus_handler_capi.h">CEF source file: /include/capi/cef_focus_handler_capi.h (cef_focus_handler_t))

| `property OnGotFocus : TOnGotFocus read FOnGotFocus write FOnGotFocus;`
Called when the browser component has received focus. This event will be called on the browser process CEF UI thread. <see href="https://bitbucket.org/chromiumembedded/cef/src/master/include/capi/cef_focus_handler_capi.h">CEF source file: /include/capi/cef_focus_handler_capi.h (cef_focus_handler_t))

| `property OnBeforeContextMenu : TOnBeforeContextMenu read FOnBeforeContextMenu write FOnBeforeContextMenu;`

Called before a context menu is displayed. |params| provides information about the context menu state. |model| initially contains the default context menu. The |model| can be cleared to show no context menu or modified to show a custom menu. Do not keep references to |params| or |model| outside of this callback.

This event will be called on the browser process CEF UI thread.

<see href="https://bitbucket.org/chromiumembedded/cef/src/master/include/capi/cef_context_menu_handler_capi.h">CEF source file: /include/capi/cef_context_menu_handler_capi.h (cef_context_menu_handler_t))

| `property OnRunContextMenu : TOnRunContextMenu read FOnRunContextMenu write FOnRunContextMenu;`

Called to allow custom display of the context menu. |params| provides information about the context menu state. |model| contains the context menu model resulting from OnBeforeContextMenu. For custom display return true (1) and execute |callback| either synchronously or asynchronously with the selected command ID. For default display return false (0). Do not keep references to |params| or |model| outside of this callback.

This event will be called on the browser process CEF UI thread.

<see href="https://bitbucket.org/chromiumembedded/cef/src/master/include/capi/cef_context_menu_handler_capi.h">CEF source file: /include/capi/cef_context_menu_handler_capi.h (cef_context_menu_handler_t))

| `property OnContextMenuCommand : TOnContextMenuCommand read FOnContextMenuCommand write FOnContextMenuCommand;`

Called to execute a command selected from the context menu. Return true (1) if the command was handled or false (0) for the default implementation. See cef_menu_id_t for the command ids that have default implementations. All user-defined command ids should be between MENU_ID_USER_FIRST and MENU_ID_USER_LAST. |params| will have the same values as what was passed to on_before_context_menu(). Do not keep a reference to |params| outside of this callback.

This event will be called on the browser process CEF UI thread.

<see href="https://bitbucket.org/chromiumembedded/cef/src/master/include/capi/cef_context_menu_handler_capi.h">CEF source file: /include/capi/cef_context_menu_handler_capi.h (cef_context_menu_handler_t))

| `property OnContextMenuDismissed : TOnContextMenuDismissed read FOnContextMenuDismissed write FOnContextMenuDismissed;`
Called when the context menu is dismissed irregardless of whether the menu was canceled or a command was selected. This event will be called on the browser process CEF UI thread. <see href="https://bitbucket.org/chromiumembedded/cef/src/master/include/capi/cef_context_menu_handler_capi.h">CEF source file: /include/capi/cef_context_menu_handler_capi.h (cef_context_menu_handler_t))

| `property OnRunQuickMenu : TOnRunQuickMenuEvent read FOnRunQuickMenu write FOnRunQuickMenu;`

Called to allow custom display of the quick menu for a windowless browser. |location| is the top left corner of the selected region. |size| is the size of the selected region. |edit_state_flags| is a combination of flags that represent the state of the quick menu. Return true (1) if the menu will be handled and execute |callback| either synchronously or asynchronously with the selected command ID. Return false (0) to cancel the menu.

This event will be called on the browser process CEF UI thread.

<see href="https://bitbucket.org/chromiumembedded/cef/src/master/include/capi/cef_context_menu_handler_capi.h">CEF source file: /include/capi/cef_context_menu_handler_capi.h (cef_context_menu_handler_t))

| `property OnQuickMenuCommand : TOnQuickMenuCommandEvent read FOnQuickMenuCommand write FOnQuickMenuCommand;`

Called to execute a command selected from the quick menu for a windowless browser. Return true (1) if the command was handled or false (0) for the default implementation. See cef_menu_id_t for command IDs that have default implementations.

This event will be called on the browser process CEF UI thread.

<see href="https://bitbucket.org/chromiumembedded/cef/src/master/include/capi/cef_context_menu_handler_capi.h">CEF source file: /include/capi/cef_context_menu_handler_capi.h (cef_context_menu_handler_t))

| `property OnQuickMenuDismissed : TOnQuickMenuDismissedEvent read FOnQuickMenuDismissed write FOnQuickMenuDismissed;`

Called when the quick menu for a windowless browser is dismissed irregardless of whether the menu was canceled or a command was selected.

This event will be called on the browser process CEF UI thread.

<see href="https://bitbucket.org/chromiumembedded/cef/src/master/include/capi/cef_context_menu_handler_capi.h">CEF source file: /include/capi/cef_context_menu_handler_capi.h (cef_context_menu_handler_t))

| `property OnPreKeyEvent : TOnPreKeyEvent read FOnPreKeyEvent write FOnPreKeyEvent;`

Called before a keyboard event is sent to the renderer. |event| contains information about the keyboard event. |os_event| is the operating system event message, if any. Return true (1) if the event was handled or false (0) otherwise. If the event will be handled in on_key_event() as a keyboard shortcut set |is_keyboard_shortcut| to true (1) and return false (0).

This event will be called on the browser process CEF UI thread.

<see href="https://bitbucket.org/chromiumembedded/cef/src/master/include/capi/cef_keyboard_handler_capi.h">CEF source file: /include/capi/cef_keyboard_handler_capi.h (cef_keyboard_handler_t))

| `property OnKeyEvent : TOnKeyEvent read FOnKeyEvent write FOnKeyEvent;`

Called after the renderer and JavaScript in the page has had a chance to handle the event. |event| contains information about the keyboard event. |os_event| is the operating system event message, if any. Return true (1) if the keyboard event was handled or false (0) otherwise.

This event will be called on the browser process CEF UI thread.

<see href="https://bitbucket.org/chromiumembedded/cef/src/master/include/capi/cef_keyboard_handler_capi.h">CEF source file: /include/capi/cef_keyboard_handler_capi.h (cef_keyboard_handler_t))

| `property OnAddressChange : TOnAddressChange read FOnAddressChange write FOnAddressChange;`
Called when a frame's address has changed. This event will be called on the browser process CEF UI thread. <see href="https://bitbucket.org/chromiumembedded/cef/src/master/include/capi/cef_display_handler_capi.h">CEF source file: /include/capi/cef_display_handler_capi.h (cef_display_handler_t))

| `property OnTitleChange : TOnTitleChange read FOnTitleChange write FOnTitleChange;`
Called when the page title changes. This event will be called on the browser process CEF UI thread. <see href="https://bitbucket.org/chromiumembedded/cef/src/master/include/capi/cef_display_handler_capi.h">CEF source file: /include/capi/cef_display_handler_capi.h (cef_display_handler_t))

| `property OnFavIconUrlChange : TOnFavIconUrlChange read FOnFavIconUrlChange write FOnFavIconUrlChange;`
Called when the page icon changes. This event will be called on the browser process CEF UI thread. <see href="https://bitbucket.org/chromiumembedded/cef/src/master/include/capi/cef_display_handler_capi.h">CEF source file: /include/capi/cef_display_handler_capi.h (cef_display_handler_t))

| `property OnFullScreenModeChange : TOnFullScreenModeChange read FOnFullScreenModeChange write FOnFullScreenModeChange;`

Called when web content in the page has toggled fullscreen mode. If |fullscreen| is true (1) the content will automatically be sized to fill the browser content area. If |fullscreen| is false (0) the content will automatically return to its original size and position. With Alloy style the client is responsible for triggering the fullscreen transition (for example, by calling ICefWindow.SetFullscreen when using Views). With Chrome style the fullscreen transition will be triggered automatically. The ICefWindowDelegate.OnWindowFullscreenTransition function will be called during the fullscreen transition for notification purposes.

This event will be called on the browser process CEF UI thread.

<see href="https://bitbucket.org/chromiumembedded/cef/src/master/include/capi/cef_display_handler_capi.h">CEF source file: /include/capi/cef_display_handler_capi.h (cef_display_handler_t))

| `property OnTooltip : TOnTooltip read FOnTooltip write FOnTooltip;`

Called when the browser is about to display a tooltip. |text| contains the text that will be displayed in the tooltip. To handle the display of the tooltip yourself return true (1). Otherwise, you can optionally modify |text| and then return false (0) to allow the browser to display the tooltip. When window rendering is disabled the application is responsible for drawing tooltips and the return value is ignored.

This event will be called on the browser process CEF UI thread.

<see href="https://bitbucket.org/chromiumembedded/cef/src/master/include/capi/cef_display_handler_capi.h">CEF source file: /include/capi/cef_display_handler_capi.h (cef_display_handler_t))

| `property OnStatusMessage : TOnStatusMessage read FOnStatusMessage write FOnStatusMessage;`
Called when the browser receives a status message. |value| contains the text that will be displayed in the status message. This event will be called on the browser process CEF UI thread. <see href="https://bitbucket.org/chromiumembedded/cef/src/master/include/capi/cef_display_handler_capi.h">CEF source file: /include/capi/cef_display_handler_capi.h (cef_display_handler_t))

| `property OnConsoleMessage : TOnConsoleMessage read FOnConsoleMessage write FOnConsoleMessage;`
Called to display a console message. Return true (1) to stop the message from being output to the console. This event will be called on the browser process CEF UI thread. <see href="https://bitbucket.org/chromiumembedded/cef/src/master/include/capi/cef_display_handler_capi.h">CEF source file: /include/capi/cef_display_handler_capi.h (cef_display_handler_t))

| `property OnAutoResize : TOnAutoResize read FOnAutoResize write FOnAutoResize;`

Called when auto-resize is enabled via cef_browser_host_t::SetAutoResizeEnabled and the contents have auto- resized. |new_size| will be the desired size in DIP coordinates. Return true (1) if the resize was handled or false (0) for default handling.

This event will be called on the browser process CEF UI thread.

<see href="https://bitbucket.org/chromiumembedded/cef/src/master/include/capi/cef_display_handler_capi.h">CEF source file: /include/capi/cef_display_handler_capi.h (cef_display_handler_t))

| `property OnLoadingProgressChange : TOnLoadingProgressChange read FOnLoadingProgressChange write FOnLoadingProgressChange;`
Called when the overall page loading progress has changed. |progress| ranges from 0.0 to 1.0. This event will be called on the browser process CEF UI thread. <see href="https://bitbucket.org/chromiumembedded/cef/src/master/include/capi/cef_display_handler_capi.h">CEF source file: /include/capi/cef_display_handler_capi.h (cef_display_handler_t))

| `property OnCursorChange : TOnCursorChange read FOnCursorChange write FOnCursorChange;`

Called when the browser's cursor has changed. If |type| is CT_CUSTOM then |custom_cursor_info| will be populated with the custom cursor information. Return true (1) if the cursor change was handled or false (0) for default handling.

This event will be called on the browser process CEF UI thread.

<see href="https://bitbucket.org/chromiumembedded/cef/src/master/include/capi/cef_display_handler_capi.h">CEF source file: /include/capi/cef_display_handler_capi.h (cef_display_handler_t))

| `property OnMediaAccessChange : TOnMediaAccessChange read FOnMediaAccessChange write FOnMediaAccessChange;`
Called when the browser's access to an audio and/or video source has changed. This event will be called on the browser process CEF UI thread. <see href="https://bitbucket.org/chromiumembedded/cef/src/master/include/capi/cef_display_handler_capi.h">CEF source file: /include/capi/cef_display_handler_capi.h (cef_display_handler_t))

| `property OnContentsBoundsChange : TOnContentsBoundsChange read FOnContentsBoundsChange write FOnContentsBoundsChange;`

Called when JavaScript is requesting new bounds via window.moveTo/By() or window.resizeTo/By(). |new_bounds| are in DIP screen coordinates.

With Views-hosted browsers |new_bounds| are the desired bounds for the containing cef_window_t and may be passed directly to ICefWindow.SetBounds. With external (client-provided) parent on macOS and Windows |new_bounds| are the desired frame bounds for the containing root window. With other non-Views browsers |new_bounds| are the desired bounds for the browser content only unless the client implements either ICefDisplayHandler.GetRootWindowScreenRect for windowed browsers or ICefRenderHandler.GetWindowScreenRect for windowless browsers. Clients may expand browser content bounds to window bounds using OS-specific or ICefDisplay functions.

Return true (1) if this function was handled or false (0) for default handling. Default move/resize behavior is only provided with Views-hosted Chrome style browsers.

This event will be called on the browser process CEF UI thread.

<see href="https://bitbucket.org/chromiumembedded/cef/src/master/include/capi/cef_display_handler_capi.h">CEF source file: /include/capi/cef_display_handler_capi.h (cef_display_handler_t))

| `property OnGetRootWindowScreenRect : TOnGetRootWindowScreenRect read FOnGetRootWindowScreenRect write FOnGetRootWindowScreenRect;`

Called to retrieve the external (client-provided) root window rectangle in screen DIP coordinates. Only called for windowed browsers on Windows and Linux. Return true (1) if the rectangle was provided. Return false (0) to use the root window bounds on Windows or the browser content bounds on Linux. For additional usage details see ICefBrowserHost.NotifyScreenInfoChanged.

This event will be called on the browser process CEF UI thread.

<see href="https://bitbucket.org/chromiumembedded/cef/src/master/include/capi/cef_display_handler_capi.h">CEF source file: /include/capi/cef_display_handler_capi.h (cef_display_handler_t))

| `property OnCanDownload : TOnCanDownloadEvent read FOnCanDownload write FOnCanDownload;`

Called before a download begins in response to a user-initiated action (e.g. alt + link click or link click that returns a `Content-Disposition: attachment` response from the server). |url| is the target download URL and |request_function| is the target function (GET, POST, etc). Return true (1) to proceed with the download or false (0) to cancel the download.

This event will be called on the browser process CEF UI thread.

<see href="https://bitbucket.org/chromiumembedded/cef/src/master/include/capi/cef_download_handler_capi.h">CEF source file: /include/capi/cef_download_handler_capi.h (cef_download_handler_t))

| `property OnBeforeDownload : TOnBeforeDownload read FOnBeforeDownload write FOnBeforeDownload;`

Called before a download begins. |suggested_name| is the suggested name for the download file. Set aResult to true (1) and execute |callback| either asynchronously or in this function to continue or cancel the download. Set aResult to false (0) to proceed with default handling (cancel with Alloy style, download shelf with Chrome style). Do not keep a reference to |download_item| outside of this function.

This event will be called on the browser process CEF UI thread.

<see href="https://bitbucket.org/chromiumembedded/cef/src/master/include/capi/cef_download_handler_capi.h">CEF source file: /include/capi/cef_download_handler_capi.h (cef_download_handler_t))

| `property OnDownloadUpdated : TOnDownloadUpdated read FOnDownloadUpdated write FOnDownloadUpdated;`

Called when a download's status or progress information has been updated. This may be called multiple times before and after OnBeforeDownload. Execute |callback| either asynchronously or in this function to cancel the download if desired. Do not keep a reference to |download_item| outside of this function.

This event will be called on the browser process CEF UI thread.

<see href="https://bitbucket.org/chromiumembedded/cef/src/master/include/capi/cef_download_handler_capi.h">CEF source file: /include/capi/cef_download_handler_capi.h (cef_download_handler_t))

| `property OnJsdialog : TOnJsdialog read FOnJsdialog write FOnJsdialog;`

Called to run a JavaScript dialog. If |origin_url| is non-NULL it can be passed to the CefFormatUrlForSecurityDisplay function to retrieve a secure and user-friendly display string. The |default_prompt_text| value will be specified for prompt dialogs only. Set |suppress_message| to true (1) and return false (0) to suppress the message (suppressing messages is preferable to immediately executing the callback as this is used to detect presumably malicious behavior like spamming alert messages in onbeforeunload). Set |suppress_message| to false (0) and return false (0) to use the default implementation (the default implementation will show one modal dialog at a time and suppress any additional dialog requests until the displayed dialog is dismissed). Return true (1) if the application will use a custom dialog or if the callback has been executed immediately. Custom dialogs may be either modal or modeless. If a custom dialog is used the application must execute |callback| once the custom dialog is dismissed.

This event will be called on the browser process CEF UI thread.

<see href="https://bitbucket.org/chromiumembedded/cef/src/master/include/capi/cef_jsdialog_handler_capi.h">CEF source file: /include/capi/cef_jsdialog_handler_capi.h (cef_jsdialog_handler_t))

| `property OnBeforeUnloadDialog : TOnBeforeUnloadDialog read FOnBeforeUnloadDialog write FOnBeforeUnloadDialog;`

Called to run a dialog asking the user if they want to leave a page. Return false (0) to use the default dialog implementation. Return true (1) if the application will use a custom dialog or if the callback has been executed immediately. Custom dialogs may be either modal or modeless. If a custom dialog is used the application must execute |callback| once the custom dialog is dismissed.

This event will be called on the browser process CEF UI thread.

<see href="https://bitbucket.org/chromiumembedded/cef/src/master/include/capi/cef_jsdialog_handler_capi.h">CEF source file: /include/capi/cef_jsdialog_handler_capi.h (cef_jsdialog_handler_t))

| `property OnResetDialogState : TOnResetDialogState read FOnResetDialogState write FOnResetDialogState;`

Called to cancel any pending dialogs and reset any saved dialog state. Will be called due to events like page navigation irregardless of whether any dialogs are currently pending.

This event will be called on the browser process CEF UI thread.

<see href="https://bitbucket.org/chromiumembedded/cef/src/master/include/capi/cef_jsdialog_handler_capi.h">CEF source file: /include/capi/cef_jsdialog_handler_capi.h (cef_jsdialog_handler_t))

| `property OnDialogClosed : TOnDialogClosed read FOnDialogClosed write FOnDialogClosed;`
Called when the dialog is closed. This event will be called on the browser process CEF UI thread. <see href="https://bitbucket.org/chromiumembedded/cef/src/master/include/capi/cef_jsdialog_handler_capi.h">CEF source file: /include/capi/cef_jsdialog_handler_capi.h (cef_jsdialog_handler_t))

| `property OnBeforePopup : TOnBeforePopup read FOnBeforePopup write FOnBeforePopup;`

Called on the UI thread before a new popup browser is created. The |browser| and |frame| values represent the source of the popup request (opener browser and frame). The |popup_id| value uniquely identifies the popup in the context of the opener browser. The |target_url| and |target_frame_name| values indicate where the popup browser should navigate and may be NULL if not specified with the request. The |target_disposition| value indicates where the user intended to open the popup (e.g. current tab, new tab, etc). The |user_gesture| value will be true (1) if the popup was opened via explicit user gesture (e.g. clicking a link) or false (0) if the popup opened automatically (e.g. via the DomContentLoaded event). The |popupFeatures| structure contains additional information about the requested popup window. To allow creation of the popup browser optionally modify |windowInfo|, |client|, |settings| and |no_javascript_access| and return false (0). To cancel creation of the popup browser return true (1). The |client| and |settings| values will default to the source browser's values. If the |no_javascript_access| value is set to false (0) the new browser will not be scriptable and may not be hosted in the same renderer process as the source browser. Any modifications to |windowInfo| will be ignored if the parent browser is wrapped in a ICefBrowserView. The |extra_info| parameter provides an opportunity to specify extra information specific to the created popup browser that will be passed to GlobalCEFApp.OnBrowserCreated in the render process.

If popup browser creation succeeds then OnAfterCreated will be called for the new popup browser. If popup browser creation fails, and if the opener browser has not yet been destroyed, then OnBeforePopupAborted will be called for the opener browser. See OnBeforePopupAborted documentation for additional details.

This event will be called on the browser process CEF UI thread.

<see href="https://bitbucket.org/chromiumembedded/cef/src/master/include/capi/cef_life_span_handler_capi.h">CEF source file: /include/capi/cef_life_span_handler_capi.h (cef_life_span_handler_t))

| `property OnBeforePopupAborted : TOnBeforePopupAborted read FOnBeforePopupAborted write FOnBeforePopupAborted;`

Called on the CEF UI thread if a new popup browser is aborted. This only occurs if the popup is allowed in OnBeforePopup and creation fails before OnAfterCreated is called for the new popup browser. The |browser| value is the source of the popup request (opener browser). The |popup_id| value uniquely identifies the popup in the context of the opener browser, and is the same value that was passed to OnBeforePopup.

Any client state associated with pending popups should be cleared in OnBeforePopupAborted, OnAfterCreated of the popup browser, or OnBeforeClose of the opener browser. OnBeforeClose of the opener browser may be called before this function in cases where the opener is closing during popup creation, in which case ICefBrowser.IsValid will return false (0) in this function.

This event will be called on the browser process CEF UI thread.

<see href="https://bitbucket.org/chromiumembedded/cef/src/master/include/capi/cef_life_span_handler_capi.h">CEF source file: /include/capi/cef_life_span_handler_capi.h (cef_life_span_handler_t))

| `property OnBeforeDevToolsPopup : TOnBeforeDevToolsPopup read FOnBeforeDevToolsPopup write FOnBeforeDevToolsPopup;`

Called on the CEF UI thread before a new DevTools popup browser is created. The |browser| value represents the source of the popup request. Optionally modify |windowInfo|, |client|, |settings| and |extra_info| values. The |client|, |settings| and |extra_info| values will default to the source browser's values. Any modifications to |windowInfo| will be ignored if the parent browser is Views-hosted (wrapped in a ICefBrowserView).

The |extra_info| parameter provides an opportunity to specify extra information specific to the created popup browser that will be passed to GlobalCEFApp.OnBrowserCreated in the render process. The existing |extra_info| object, if any, will be read-only but may be replaced with a new object.

Views-hosted source browsers will create Views-hosted DevTools popups unless |use_default_window| is set to to true (1). DevTools popups can be blocked by returning true (1) from ICefCommandHandler.OnChromeCommand for IDC_DEV_TOOLS. Only used with Chrome style.

This event will be called on the browser process CEF UI thread.

<see href="https://bitbucket.org/chromiumembedded/cef/src/master/include/capi/cef_life_span_handler_capi.h">CEF source file: /include/capi/cef_life_span_handler_capi.h (cef_life_span_handler_t))

| `property OnAfterCreated : TOnAfterCreated read FOnAfterCreated write FOnAfterCreated;`

Called after a new browser is created. It is now safe to begin performing actions with |browser|. ICefFrameHandler callbacks related to initial main frame creation will arrive before this callback. See ICefFrameHandler documentation for additional usage information.

This event will be called on the browser process CEF UI thread.

<see href="https://bitbucket.org/chromiumembedded/cef/src/master/include/capi/cef_life_span_handler_capi.h">CEF source file: /include/capi/cef_life_span_handler_capi.h (cef_life_span_handler_t))

| `property OnBeforeClose : TOnBeforeClose read FOnBeforeClose write FOnBeforeClose;`

Called just before a browser is destroyed. Release all references to the browser object and do not attempt to execute any functions on the browser object (other than IsValid, GetIdentifier or IsSame) after this callback returns. ICefFrameHandler callbacks related to final main frame destruction, and OnBeforePopupAborted callbacks for any pending popups, will arrive after this callback and ICefBrowser.IsValid will return false (0) at that time. Any in-progress network requests associated with |browser| will be aborted when the browser is destroyed, and ICefResourceRequestHandler callbacks related to those requests may still arrive on the IO thread after this callback. See ICefFrameHandler and DoClose() documentation for additional usage information.

This event will be called on the browser process CEF UI thread.

<see href="https://bitbucket.org/chromiumembedded/cef/src/master/include/capi/cef_life_span_handler_capi.h">CEF source file: /include/capi/cef_life_span_handler_capi.h (cef_life_span_handler_t))

| `property OnClose : TOnClose read FOnClose write FOnClose;`

Called when an Alloy style browser is ready to be closed, meaning that the close has already been initiated and that JavaScript unload handlers have already executed or should be ignored. This may result directly from a call to TChromiumCore.[Try]CloseBrowser() or indirectly if the browser's top-level parent window was created by CEF and the user attempts to close that window (by clicking the 'X', for example). TChromiumCore.OnClose will not be called if the browser's host window/view has already been destroyed (via parent window/view hierarchy tear-down, for example), as it is no longer possible to customize the close behavior at that point.

An application should handle top-level parent window close notifications by calling TChromiumCore.TryCloseBrowser() or TChromiumCore.CloseBrowser(false) instead of allowing the window to close immediately (see the examples below). This gives CEF an opportunity to process JavaScript unload handlers and optionally cancel the close before TChromiumCore.OnClose is called.

When windowed rendering is enabled CEF will create an internal child window/view to host the browser. In that case returning false (0) from TChromiumCore.OnClose will send the standard close notification to the browser's top- level parent window (e.g. WM_CLOSE on Windows, performClose: on OS X, "delete_event" on Linux or TCEFWindowComponent.OnCanClose callback from Views).

When windowed rendering is disabled there is no internal window/view and returning false (0) from TChromiumCore.OnClose will cause the browser object to be destroyed immediately.

If the browser's top-level parent window requires a non-standard close notification then send that notification from TChromiumCore.OnClose and return true (1). You are still required to complete the browser close as soon as possible (either by calling TChromiumCore.[Try]CloseBrowser() or by proceeding with window/view hierarchy tear-down), otherwise the browser will be left in a partially closed state that interferes with proper functioning. Top-level windows created on the browser process UI thread can alternately call TChromiumCore.IsReadyToBeClosed() in the close handler to check close status instead of relying on custom TChromiumCore.OnClose handling. See documentation on that function for additional details.

The TChromiumCore.OnBeforeClose event will be called after TChromiumCore.OnClose (if TChromiumCore.OnClose is called) and immediately before the browser object is destroyed. The application should only exit after TChromiumCore.OnBeforeClose has been called for all existing browsers.

The below examples describe what should happen during window close when the browser is parented to an application-provided top-level window.

Example 1: Using TChromiumCore.TryCloseBrowser(). This is recommended for clients using standard close handling and windows created on the browser process UI thread.

    1.  User clicks the window close button which sends a close notification
        to the application's top-level window.
    2.  Application's top-level window receives the close notification and
        calls TChromiumCore.TryCloseBrowser() (similar to calling TChromiumCore.CloseBrowser(false)).
        TChromiumCore.TryCloseBrowser() returns false so the client cancels the window
        close.
    3.  JavaScript 'onbeforeunload' handler executes and shows the close
        confirmation dialog (which can be overridden via TChromiumCore.OnBeforeUnloadDialog).
    4.  User approves the close.
    5.  JavaScript 'onunload' handler executes.
    6.  Application's TChromiumCore.OnClose handler is called and returns false (0) by
        default.
    7.  CEF sends a close notification to the application's top-level window
        (because TChromiumCore.OnClose returned false).
    8.  Application's top-level window receives the close notification and
        calls TryCloseBrowser(). TryCloseBrowser() returns true so the client
        allows the window close.
    9.  Application's top-level window is destroyed, triggering destruction
        of the child browser window.
    10. Application's TChromiumCore.OnBeforeClose handler is called and the browser object
        is destroyed.
    11. Application exits by calling TCefApplicationCore.QuitMessageLoop if no other browsers
        exist.

Example 2: Using TChromiumCore.CloseBrowser(false) and implementing the TChromiumCore.OnClose event. This is recommended for clients using non-standard close handling or windows that were not created on the browser process UI thread.

    1.  User clicks the window close button which sends a close notification
        to the application's top-level window.
    2.  Application's top-level window receives the close notification and:
        A. Calls ICefBrowserHost.CloseBrowser(false).
        B. Cancels the window close.
    3.  JavaScript 'onbeforeunload' handler executes and shows the close
        confirmation dialog (which can be overridden via TChromiumCore.OnBeforeUnloadDialog).
    4.  User approves the close.
    5.  JavaScript 'onunload' handler executes.
    6.  Application's TChromiumCore.OnClose handler is called. Application will:
        A. Set a flag to indicate that the next top-level window close attempt
           will be allowed.
        B. Return false.
    7.  CEF sends a close notification to the application's top-level window
        (because TChromiumCore.OnClose returned false).
    8.  Application's top-level window receives the close notification and
        allows the window to close based on the flag from #6A.
    9.  Application's top-level window is destroyed, triggering destruction
        of the child browser window.
    10. Application's TChromiumCore.OnBeforeClose handler is called and the browser object
        is destroyed.
    11. Application exits by calling TCefApplicationCore.QuitMessageLoop if no other browsers exist.

This event will be called on the browser process CEF UI thread.

<see href="https://bitbucket.org/chromiumembedded/cef/src/master/include/capi/cef_life_span_handler_capi.h">CEF source file: /include/capi/cef_life_span_handler_capi.h (cef_life_span_handler_t))

| `property OnBeforeBrowse : TOnBeforeBrowse read FOnBeforeBrowse write FOnBeforeBrowse;`

Called on the UI thread before browser navigation. Return true (1) to cancel the navigation or false (0) to allow the navigation to proceed. The |request| object cannot be modified in this callback.

TChromiumCore.OnLoadingStateChange will be called twice in all cases. If the navigation is allowed TChromiumCore.OnLoadStart and TChromiumCore.OnLoadEnd will be called. If the navigation is canceled TChromiumCore.OnLoadError will be called with an |errorCode| value of ERR_ABORTED. The |user_gesture| value will be true (1) if the browser navigated via explicit user gesture (e.g. clicking a link) or false (0) if it navigated automatically (e.g. via the DomContentLoaded event).

This event will be called on the browser process CEF UI thread.

<see href="https://bitbucket.org/chromiumembedded/cef/src/master/include/capi/cef_request_handler_capi.h">CEF source file: /include/capi/cef_request_handler_capi.h (cef_request_handler_t))

| `property OnOpenUrlFromTab : TOnOpenUrlFromTab read FOnOpenUrlFromTab write FOnOpenUrlFromTab;`

Called on the UI thread before OnBeforeBrowse in certain limited cases where navigating a new or different browser might be desirable. This includes user-initiated navigation that might open in a special way (e.g. links clicked via middle-click or ctrl + left-click) and certain types of cross-origin navigation initiated from the renderer process (e.g. navigating the top-level frame to/from a file URL). The |browser| and |frame| values represent the source of the navigation. The |target_disposition| value indicates where the user intended to navigate the browser based on standard Chromium behaviors (e.g. current tab, new tab, etc). The |user_gesture| value will be true (1) if the browser navigated via explicit user gesture (e.g. clicking a link) or false (0) if it navigated automatically (e.g. via the DomContentLoaded event). Return true (1) to cancel the navigation or false (0) to allow the navigation to proceed in the source browser's top-level frame.

This event will be called on the browser process CEF UI thread.

<see href="https://bitbucket.org/chromiumembedded/cef/src/master/include/capi/cef_request_handler_capi.h">CEF source file: /include/capi/cef_request_handler_capi.h (cef_request_handler_t))

| `property OnGetAuthCredentials : TOnGetAuthCredentials read FOnGetAuthCredentials write FOnGetAuthCredentials;`

Called on the IO thread when the browser needs credentials from the user. |origin_url| is the origin making this authentication request. |isProxy| indicates whether the host is a proxy server. |host| contains the hostname and |port| contains the port number. |realm| is the realm of the challenge and may be NULL. |scheme| is the authentication scheme used, such as "basic" or "digest", and will be NULL if the source of the request is an FTP server. Return true (1) to continue the request and call ICefAuthCallback.cont() either in this function or at a later time when the authentication information is available. Return false (0) to cancel the request immediately.

This event will be called on the browser process CEF IO thread.

<see href="https://bitbucket.org/chromiumembedded/cef/src/master/include/capi/cef_request_handler_capi.h">CEF source file: /include/capi/cef_request_handler_capi.h (cef_request_handler_t))

| `property OnCertificateError : TOnCertificateError read FOnCertificateError write FOnCertificateError;`

Called on the UI thread to handle requests for URLs with an invalid SSL certificate. Return true (1) and call ICefCallback functions either in this function or at a later time to continue or cancel the request. Return false (0) to cancel the request immediately. If TCefSettings.ignore_certificate_errors is set all invalid certificates will be accepted without calling this function.

This event will be called on the browser process CEF UI thread.

<see href="https://bitbucket.org/chromiumembedded/cef/src/master/include/capi/cef_request_handler_capi.h">CEF source file: /include/capi/cef_request_handler_capi.h (cef_request_handler_t))

| `property OnSelectClientCertificate : TOnSelectClientCertificate read FOnSelectClientCertificate write FOnSelectClientCertificate;`

Called on the UI thread when a client certificate is being requested for authentication. Return false (0) to use the default behavior. If the |certificates| list is not NULL the default behavior will be to display a dialog for certificate selection. If the |certificates| list is NULL then the default behavior will be not to show a dialog and it will continue without using any certificate. Return true (1) and call ICefSelectClientCertificateCallback.Select either in this function or at a later time to select a certificate. Do not call Select or call it with NULL to continue without using any certificate. |isProxy| indicates whether the host is an HTTPS proxy or the origin server. |host| and |port| contains the hostname and port of the SSL server. |certificates| is the list of certificates to choose from; this list has already been pruned by Chromium so that it only contains certificates from issuers that the server trusts.

This event will be called on the browser process CEF UI thread.

<see href="https://bitbucket.org/chromiumembedded/cef/src/master/include/capi/cef_request_handler_capi.h">CEF source file: /include/capi/cef_request_handler_capi.h (cef_request_handler_t))

| `property OnRenderViewReady : TOnRenderViewReady read FOnRenderViewReady write FOnRenderViewReady;`

Called on the browser process UI thread when the render view associated with |browser| is ready to receive/handle IPC messages in the render process.

This event will be called on the browser process CEF UI thread.

<see href="https://bitbucket.org/chromiumembedded/cef/src/master/include/capi/cef_request_handler_capi.h">CEF source file: /include/capi/cef_request_handler_capi.h (cef_request_handler_t))

| `property OnRenderProcessUnresponsive : TOnRenderProcessUnresponsive read FOnRenderProcessUnresponsive write FOnRenderProcessUnresponsive;`

Called on the browser process UI thread when the render process is unresponsive as indicated by a lack of input event processing for at least 15 seconds. Return false (0) for the default behavior which is to continue waiting with Alloy style or display of the "Page unresponsive" dialog with Chrome style. Return true (1) and don't execute the callback to continue waiting without display of the Chrome style dialog. Return true (1) and call ICefUnresponsiveProcessCallback.Wait either in this function or at a later time to reset the wait timer. In cases where you continue waiting there may be another call to this function if the process remains unresponsive. Return true (1) and call ICefUnresponsiveProcessCallback.Terminate either in this function or at a later time to terminate the unresponsive process, resulting in a call to OnRenderProcessTerminated. OnRenderProcessResponsive will be called if the process becomes responsive after this function is called. This functionality depends on the hang monitor which can be disabled by passing the `–disable-hang-monitor` command-line flag.

This event will be called on the browser process CEF UI thread.

<see href="https://bitbucket.org/chromiumembedded/cef/src/master/include/capi/cef_request_handler_capi.h">CEF source file: /include/capi/cef_request_handler_capi.h (cef_request_handler_t))

| `property OnRenderProcessResponsive : TOnRenderProcessResponsive read FOnRenderProcessResponsive write FOnRenderProcessResponsive;`

Called on the browser process UI thread when the render process becomes responsive after previously being unresponsive. See documentation on OnRenderProcessUnresponsive.

This event will be called on the browser process CEF UI thread.

<see href="https://bitbucket.org/chromiumembedded/cef/src/master/include/capi/cef_request_handler_capi.h">CEF source file: /include/capi/cef_request_handler_capi.h (cef_request_handler_t))

| `property OnRenderProcessTerminated : TOnRenderProcessTerminated read FOnRenderProcessTerminated write FOnRenderProcessTerminated;`

Called on the browser process UI thread when the render process terminates unexpectedly. |status| indicates how the process terminated. |error_code| and |error_string| represent the error that would be displayed in Chrome's "Aw, Snap!" view. Possible |error_code| values include TCefResultCode non-normal exit values and platform-specific crash values (for example, a Posix signal or Windows hardware exception).

This event will be called on the browser process CEF UI thread.

<see href="https://bitbucket.org/chromiumembedded/cef/src/master/include/capi/cef_request_handler_capi.h">CEF source file: /include/capi/cef_request_handler_capi.h (cef_request_handler_t))

| `property OnGetResourceRequestHandler_ReqHdlr : TOnGetResourceRequestHandler read FOnGetResourceRequestHandler_ReqHdlr write FOnGetResourceRequestHandler_ReqHdlr;`

Called on the browser process IO thread before a resource request is initiated. The |browser| and |frame| values represent the source of the request. |request| represents the request contents and cannot be modified in this callback. |is_navigation| will be true (1) if the resource request is a navigation. |is_download| will be true (1) if the resource request is a download. |request_initiator| is the origin (scheme + domain) of the page that initiated the request. Set |disable_default_handling| to true (1) to disable default handling of the request, in which case it will need to be handled via ICefResourceRequestHandler.GetResourceHandler or it will be canceled. To allow the resource load to proceed with default handling return NULL. To specify a handler for the resource return a ICefResourceRequestHandler object. If this callback returns NULL the same function will be called on the associated ICefRequestContextHandler, if any.

This event will be called on the browser process CEF IO thread.

<see href="https://bitbucket.org/chromiumembedded/cef/src/master/include/capi/cef_request_handler_capi.h">CEF source file: /include/capi/cef_request_handler_capi.h (cef_request_handler_t))

| `property OnDocumentAvailableInMainFrame : TOnDocumentAvailableInMainFrame read FOnDocumentAvailableInMainFrame write FOnDocumentAvailableInMainFrame;`
Called on the browser process UI thread when the window.document object of the main frame has been created. This event will be called on the browser process CEF UI thread. <see href="https://bitbucket.org/chromiumembedded/cef/src/master/include/capi/cef_request_handler_capi.h">CEF source file: /include/capi/cef_request_handler_capi.h (cef_request_handler_t))

| `property OnBeforeResourceLoad : TOnBeforeResourceLoad read FOnBeforeResourceLoad write FOnBeforeResourceLoad;`

Called on the IO thread before a resource request is loaded. The |browser| and |frame| values represent the source of the request, and may be NULL for requests originating from service workers or ICefUrlRequest. To redirect or change the resource load optionally modify |request|. Modification of the request URL will be treated as a redirect. Return RV_CONTINUE to continue the request immediately. Return RV_CONTINUE_ASYNC and call ICefCallback functions at a later time to continue or cancel the request asynchronously. Return RV_CANCEL to cancel the request immediately.

This event will be called on the browser process CEF IO thread.

<see href="https://bitbucket.org/chromiumembedded/cef/src/master/include/capi/cef_resource_request_handler_capi.h">CEF source file: /include/capi/cef_resource_request_handler_capi.h (cef_resource_request_handler_t))

| `property OnGetResourceHandler : TOnGetResourceHandler read FOnGetResourceHandler write FOnGetResourceHandler;`

Called on the IO thread before a resource is loaded. The |browser| and |frame| values represent the source of the request, and may be NULL for requests originating from service workers or ICefUrlRequest. To allow the resource to load using the default network loader return NULL. To specify a handler for the resource return a ICefResourceHandler object. The |request| object cannot not be modified in this callback.

This event will be called on the browser process CEF IO thread.

<see href="https://bitbucket.org/chromiumembedded/cef/src/master/include/capi/cef_resource_request_handler_capi.h">CEF source file: /include/capi/cef_resource_request_handler_capi.h (cef_resource_request_handler_t))

| `property OnResourceRedirect : TOnResourceRedirect read FOnResourceRedirect write FOnResourceRedirect;`

Called on the IO thread when a resource load is redirected. The |browser| and |frame| values represent the source of the request, and may be NULL for requests originating from service workers or ICefUrlRequest. The |request| parameter will contain the old URL and other request-related information. The |response| parameter will contain the response that resulted in the redirect. The |new_url| parameter will contain the new URL and can be changed if desired. The |request| and |response| objects cannot be modified in this callback.

This event will be called on the browser process CEF IO thread.

<see href="https://bitbucket.org/chromiumembedded/cef/src/master/include/capi/cef_resource_request_handler_capi.h">CEF source file: /include/capi/cef_resource_request_handler_capi.h (cef_resource_request_handler_t))

| `property OnResourceResponse : TOnResourceResponse read FOnResourceResponse write FOnResourceResponse;`

Called on the IO thread when a resource response is received. The |browser| and |frame| values represent the source of the request, and may be NULL for requests originating from service workers or ICefUrlRequest. To allow the resource load to proceed without modification return false (0). To redirect or retry the resource load optionally modify |request| and return true (1). Modification of the request URL will be treated as a redirect. Requests handled using the default network loader cannot be redirected in this callback. The |response| object cannot be modified in this callback.

WARNING: Redirecting using this function is deprecated. Use OnBeforeResourceLoad or GetResourceHandler to perform redirects.

This event will be called on the browser process CEF IO thread.

<see href="https://bitbucket.org/chromiumembedded/cef/src/master/include/capi/cef_resource_request_handler_capi.h">CEF source file: /include/capi/cef_resource_request_handler_capi.h (cef_resource_request_handler_t))

| `property OnGetResourceResponseFilter : TOnGetResourceResponseFilter read FOnGetResourceResponseFilter write FOnGetResourceResponseFilter;`

Called on the IO thread to optionally filter resource response content. The |browser| and |frame| values represent the source of the request, and may be NULL for requests originating from service workers or ICefUrlRequest. |request| and |response| represent the request and response respectively and cannot be modified in this callback.

This event will be called on the browser process CEF IO thread.

<see href="https://bitbucket.org/chromiumembedded/cef/src/master/include/capi/cef_resource_request_handler_capi.h">CEF source file: /include/capi/cef_resource_request_handler_capi.h (cef_resource_request_handler_t))

| `property OnResourceLoadComplete : TOnResourceLoadComplete read FOnResourceLoadComplete write FOnResourceLoadComplete;`

Called on the IO thread when a resource load has completed. The |browser| and |frame| values represent the source of the request, and may be NULL for requests originating from service workers or ICefUrlRequest. |request| and |response| represent the request and response respectively and cannot be modified in this callback. |status| indicates the load completion status. |received_content_length| is the number of response bytes actually read. This function will be called for all requests, including requests that are aborted due to CEF shutdown or destruction of the associated browser. In cases where the associated browser is destroyed this callback may arrive after the ICefLifeSpanHandler.OnBeforeClose callback for that browser. The ICefFrame.IsValid function can be used to test for this situation, and care should be taken not to call |browser| or |frame| functions that modify state (like LoadURL, SendProcessMessage, etc.) if the frame is invalid.

This event will be called on the browser process CEF IO thread.

<see href="https://bitbucket.org/chromiumembedded/cef/src/master/include/capi/cef_resource_request_handler_capi.h">CEF source file: /include/capi/cef_resource_request_handler_capi.h (cef_resource_request_handler_t))

| `property OnProtocolExecution : TOnProtocolExecution read FOnProtocolExecution write FOnProtocolExecution;`

Called on the IO thread to handle requests for URLs with an unknown protocol component. The |browser| and |frame| values represent the source of the request, and may be NULL for requests originating from service workers or ICefUrlRequest. |request| cannot be modified in this callback. Set |allow_os_execution| to true (1) to attempt execution via the registered OS protocol handler, if any. SECURITY WARNING: YOU SHOULD USE THIS METHOD TO ENFORCE RESTRICTIONS BASED ON SCHEME, HOST OR OTHER URL ANALYSIS BEFORE ALLOWING OS EXECUTION.

This event will be called on the browser process CEF IO thread.

<see href="https://bitbucket.org/chromiumembedded/cef/src/master/include/capi/cef_resource_request_handler_capi.h">CEF source file: /include/capi/cef_resource_request_handler_capi.h (cef_resource_request_handler_t))

| `property OnCanSendCookie : TOnCanSendCookie read FOnCanSendCookie write FOnCanSendCookie;`

Called on the IO thread before a resource request is sent. The |browser| and |frame| values represent the source of the request, and may be NULL for requests originating from service workers or ICefUrlRequest.

|request| cannot be modified in this callback. Return true (1) if the specified cookie can be sent with the request or false (0) otherwise.

This event will be called on the browser process CEF IO thread.

<see href="https://bitbucket.org/chromiumembedded/cef/src/master/include/capi/cef_resource_request_handler_capi.h">CEF source file: /include/capi/cef_resource_request_handler_capi.h (cef_cookie_access_filter_t))

| `property OnCanSaveCookie : TOnCanSaveCookie read FOnCanSaveCookie write FOnCanSaveCookie;`

Called on the IO thread after a resource response is received. The |browser| and |frame| values represent the source of the request, and may be NULL for requests originating from service workers or ICefUrlRequest.

|request| cannot be modified in this callback. Return true (1) if the specified cookie returned with the response can be saved or false (0) otherwise.

This event will be called on the browser process CEF IO thread.

<see href="https://bitbucket.org/chromiumembedded/cef/src/master/include/capi/cef_resource_request_handler_capi.h">CEF source file: /include/capi/cef_resource_request_handler_capi.h (cef_cookie_access_filter_t))

| `property OnFileDialog : TOnFileDialog read FOnFileDialog write FOnFileDialog;`

Called to run a file chooser dialog. |mode| represents the type of dialog to display. |title| to the title to be used for the dialog and may be NULL to show the default title ("Open" or "Save" depending on the mode).

|default_file_path| is the path with optional directory and/or file name component that should be initially selected in the dialog.

|accept_filters| are used to restrict the selectable file types and may be any combination of valid lower-cased MIME types (e.g. "text/*" or "image/*") and individual file extensions (e.g. ".txt" or ".png").

|accept_extensions| provides the semicolon-delimited expansion of MIME types to file extensions (if known, or NULL string otherwise).

|accept_descriptions| provides the descriptions for MIME types (if known, or NULL string otherwise). For example, the "image/*" mime type might have extensions ".png;.jpg;.bmp;..." and description "Image Files".

|accept_filters|, |accept_extensions| and |accept_descriptions| will all be the same size. To display a custom dialog return true (1) and execute |callback| either inline or at a later time. To display the default dialog return false (0). If this function returns false (0) it may be called an additional time for the same dialog (both before and after MIME type expansion).

This event will be called on the browser process CEF UI thread.

<see href="https://bitbucket.org/chromiumembedded/cef/src/master/include/capi/cef_dialog_handler_capi.h">CEF source file: /include/capi/cef_dialog_handler_capi.h (cef_dialog_handler_t))

| `property OnGetAccessibilityHandler : TOnGetAccessibilityHandler read FOnGetAccessibilityHandler write FOnGetAccessibilityHandler;`
Return the handler for accessibility notifications. If no handler is provided the default implementation will be used. This event will be called on the browser process CEF UI thread. <see href="https://bitbucket.org/chromiumembedded/cef/src/master/include/capi/cef_render_handler_capi.h">CEF source file: /include/capi/cef_render_handler_capi.h (cef_render_handler_t))

| `property OnGetRootScreenRect : TOnGetRootScreenRect read FOnGetRootScreenRect write FOnGetRootScreenRect;`

Called to retrieve the root window rectangle in screen DIP coordinates. Return true (1) if the rectangle was provided. If this function returns false (0) the rectangle from OnGetViewRect will be used.

This event will be called on the browser process CEF UI thread.

<see href="https://bitbucket.org/chromiumembedded/cef/src/master/include/capi/cef_render_handler_capi.h">CEF source file: /include/capi/cef_render_handler_capi.h (cef_render_handler_t))

| `property OnGetViewRect : TOnGetViewRect read FOnGetViewRect write FOnGetViewRect;`
Called to retrieve the view rectangle in screen DIP coordinates. This function must always provide a non-NULL rectangle. This event will be called on the browser process CEF UI thread. <see href="https://bitbucket.org/chromiumembedded/cef/src/master/include/capi/cef_render_handler_capi.h">CEF source file: /include/capi/cef_render_handler_capi.h (cef_render_handler_t))

| `property OnGetScreenPoint : TOnGetScreenPoint read FOnGetScreenPoint write FOnGetScreenPoint;`

Called to retrieve the translation from view DIP coordinates to screen coordinates. Windows/Linux should provide screen device (pixel) coordinates and MacOS should provide screen DIP coordinates. Return true (1) if the requested coordinates were provided.

This event will be called on the browser process CEF UI thread.

<see href="https://bitbucket.org/chromiumembedded/cef/src/master/include/capi/cef_render_handler_capi.h">CEF source file: /include/capi/cef_render_handler_capi.h (cef_render_handler_t))

| `property OnGetScreenInfo : TOnGetScreenInfo read FOnGetScreenInfo write FOnGetScreenInfo;`

Called to allow the client to fill in the TCefScreenInfo object with appropriate values. Return true (1) if the |screen_info| structure has been modified. If the screen info rectangle is left NULL the rectangle from OnGetViewRect will be used. If the rectangle is still NULL or invalid popups may not be drawn correctly.

This event will be called on the browser process CEF UI thread.

<see href="https://bitbucket.org/chromiumembedded/cef/src/master/include/capi/cef_render_handler_capi.h">CEF source file: /include/capi/cef_render_handler_capi.h (cef_render_handler_t))

| `property OnPopupShow : TOnPopupShow read FOnPopupShow write FOnPopupShow;`
Called when the browser wants to show or hide the popup widget. The popup should be shown if |show| is true (1) and hidden if |show| is false (0). This event will be called on the browser process CEF UI thread. <see href="https://bitbucket.org/chromiumembedded/cef/src/master/include/capi/cef_render_handler_capi.h">CEF source file: /include/capi/cef_render_handler_capi.h (cef_render_handler_t))

| `property OnPopupSize : TOnPopupSize read FOnPopupSize write FOnPopupSize;`
Called when the browser wants to move or resize the popup widget. |rect| contains the new location and size in view coordinates. This event will be called on the browser process CEF UI thread. <see href="https://bitbucket.org/chromiumembedded/cef/src/master/include/capi/cef_render_handler_capi.h">CEF source file: /include/capi/cef_render_handler_capi.h (cef_render_handler_t))

| `property OnPaint : TOnPaint read FOnPaint write FOnPaint;`

Called when an element should be painted. Pixel values passed to this function are scaled relative to view coordinates based on the value of TCefScreenInfo.device_scale_factor returned from OnGetScreenInfo. |type| indicates whether the element is the view or the popup widget. |buffer| contains the pixel data for the whole image. |dirtyRects| contains the set of rectangles in pixel coordinates that need to be repainted. |buffer| will be |width|*|height|*4 bytes in size and represents a BGRA image with an upper-left origin. This function is only called when TCefWindowInfo.shared_texture_enabled is set to false (0).

This event will be called on the browser process CEF UI thread.

<see href="https://bitbucket.org/chromiumembedded/cef/src/master/include/capi/cef_render_handler_capi.h">CEF source file: /include/capi/cef_render_handler_capi.h (cef_render_handler_t))

| `property OnAcceleratedPaint : TOnAcceleratedPaint read FOnAcceleratedPaint write FOnAcceleratedPaint;`

Called when an element has been rendered to the shared texture handle. |type| indicates whether the element is the view or the popup widget. |dirtyRects| contains the set of rectangles in pixel coordinates that need to be repainted. |info| contains the shared handle; on Windows it is a HANDLE to a texture that can be opened with D3D11 OpenSharedResource1 or D3D12 OpenSharedHandle, on macOS it is an IOSurface pointer that can be opened with Metal or OpenGL, and on Linux it contains several planes, each with an fd to the underlying system native buffer.

The underlying implementation uses a pool to deliver frames. As a result, the handle may differ every frame depending on how many frames are in- progress. The handle's resource cannot be cached and cannot be accessed outside of this callback. It should be reopened each time this callback is executed and the contents should be copied to a texture owned by the client application. The contents of |info| will be released back to the pool after this callback returns.

This event will be called on the browser process CEF UI thread.

<see href="https://bitbucket.org/chromiumembedded/cef/src/master/include/capi/cef_render_handler_capi.h">CEF source file: /include/capi/cef_render_handler_capi.h (cef_render_handler_t))

| `property OnGetTouchHandleSize : TOnGetTouchHandleSize read FOnGetTouchHandleSize write FOnGetTouchHandleSize;`
Called to retrieve the size of the touch handle for the specified |orientation|. This event will be called on the browser process CEF UI thread. <see href="https://bitbucket.org/chromiumembedded/cef/src/master/include/capi/cef_render_handler_capi.h">CEF source file: /include/capi/cef_render_handler_capi.h (cef_render_handler_t))

| `property OnTouchHandleStateChanged : TOnTouchHandleStateChanged read FOnTouchHandleStateChanged write FOnTouchHandleStateChanged;`
Called when touch handle state is updated. The client is responsible for rendering the touch handles. This event will be called on the browser process CEF UI thread. <see href="https://bitbucket.org/chromiumembedded/cef/src/master/include/capi/cef_render_handler_capi.h">CEF source file: /include/capi/cef_render_handler_capi.h (cef_render_handler_t))

| `property OnStartDragging : TOnStartDragging read FOnStartDragging write FOnStartDragging;`

Called when the user starts dragging content in the web view. Contextual information about the dragged content is supplied by |drag_data|. (|x|, |y|) is the drag start location in screen coordinates. OS APIs that run a system message loop may be used within the StartDragging call.

Return false (0) to abort the drag operation. Don't call any of ICefBrowserHost.DragSource*Ended* functions after returning false (0).

Return true (1) to handle the drag operation. Call ICefBrowserHost.DragSourceEndedAt and DragSourceSystemDragEnded either synchronously or asynchronously to inform the web view that the drag operation has ended.

This event will be called on the browser process CEF UI thread.

<see href="https://bitbucket.org/chromiumembedded/cef/src/master/include/capi/cef_render_handler_capi.h">CEF source file: /include/capi/cef_render_handler_capi.h (cef_render_handler_t))

| `property OnUpdateDragCursor : TOnUpdateDragCursor read FOnUpdateDragCursor write FOnUpdateDragCursor;`

Called when the web view wants to update the mouse cursor during a drag & drop operation. |operation| describes the allowed operation (none, move, copy, link).

This event will be called on the browser process CEF UI thread.

<see href="https://bitbucket.org/chromiumembedded/cef/src/master/include/capi/cef_render_handler_capi.h">CEF source file: /include/capi/cef_render_handler_capi.h (cef_render_handler_t))

| `property OnScrollOffsetChanged : TOnScrollOffsetChanged read FOnScrollOffsetChanged write FOnScrollOffsetChanged;`
Called when the scroll offset has changed. This event will be called on the browser process CEF UI thread. <see href="https://bitbucket.org/chromiumembedded/cef/src/master/include/capi/cef_render_handler_capi.h">CEF source file: /include/capi/cef_render_handler_capi.h (cef_render_handler_t))

| `property OnIMECompositionRangeChanged : TOnIMECompositionRangeChanged read FOnIMECompositionRangeChanged write FOnIMECompositionRangeChanged;`

Called when the IME composition range has changed. |selected_range| is the range of characters that have been selected. |character_bounds| is the bounds of each character in view coordinates.

This event will be called on the browser process CEF UI thread.

<see href="https://bitbucket.org/chromiumembedded/cef/src/master/include/capi/cef_render_handler_capi.h">CEF source file: /include/capi/cef_render_handler_capi.h (cef_render_handler_t))

| `property OnTextSelectionChanged : TOnTextSelectionChanged read FOnTextSelectionChanged write FOnTextSelectionChanged;`

Called when text selection has changed for the specified |browser|. |selected_text| is the currently selected text and |selected_range| is the character range.

This event will be called on the browser process CEF UI thread.

<see href="https://bitbucket.org/chromiumembedded/cef/src/master/include/capi/cef_render_handler_capi.h">CEF source file: /include/capi/cef_render_handler_capi.h (cef_render_handler_t))

| `property OnVirtualKeyboardRequested : TOnVirtualKeyboardRequested read FOnVirtualKeyboardRequested write FOnVirtualKeyboardRequested;`

Called when an on-screen keyboard should be shown or hidden for the specified |browser|. |input_mode| specifies what kind of keyboard should be opened. If |input_mode| is CEF_TEXT_INPUT_MODE_NONE, any existing keyboard for this browser should be hidden.

This event will be called on the browser process CEF UI thread.

<see href="https://bitbucket.org/chromiumembedded/cef/src/master/include/capi/cef_render_handler_capi.h">CEF source file: /include/capi/cef_render_handler_capi.h (cef_render_handler_t))

| `property OnDragEnter : TOnDragEnter read FOnDragEnter write FOnDragEnter;`

Called when an external drag event enters the browser window. |dragData| contains the drag event data and |mask| represents the type of drag operation. Return false (0) for default drag handling behavior or true (1) to cancel the drag event.

This event will be called on the browser process CEF UI thread.

<see href="https://bitbucket.org/chromiumembedded/cef/src/master/include/capi/cef_drag_handler_capi.h">CEF source file: /include/capi/cef_drag_handler_capi.h (cef_drag_handler_t))

| `property OnDraggableRegionsChanged : TOnDraggableRegionsChanged read FOnDraggableRegionsChanged write FOnDraggableRegionsChanged;`

Called whenever draggable regions for the browser window change. These can be specified using the '-webkit-app-region: drag/no-drag' CSS-property. If draggable regions are never defined in a document this function will also never be called. If the last draggable region is removed from a document this function will be called with an NULL vector.

This event will be called on the browser process CEF UI thread.

<see href="https://bitbucket.org/chromiumembedded/cef/src/master/include/capi/cef_drag_handler_capi.h">CEF source file: /include/capi/cef_drag_handler_capi.h (cef_drag_handler_t))

| `property OnFindResult : TOnFindResult read FOnFindResult write FOnFindResult;`

Called to report find results returned by ICefBrowserHost.find(). |identifer| is a unique incremental identifier for the currently active search, |count| is the number of matches currently identified, |selectionRect| is the location of where the match was found (in window coordinates), |activeMatchOrdinal| is the current position in the search results, and |finalUpdate| is true (1) if this is the last find notification.

This event will be called on the browser process CEF UI thread.

<see href="https://bitbucket.org/chromiumembedded/cef/src/master/include/capi/cef_find_handler_capi.h">CEF source file: /include/capi/cef_find_handler_capi.h (cef_find_handler_t))

| `property OnRequestContextInitialized : TOnRequestContextInitialized read FOnRequestContextInitialized write FOnRequestContextInitialized;`
Called on the browser process UI thread immediately after the request context has been initialized. This event will be called on the browser process CEF UI thread. <see href="https://bitbucket.org/chromiumembedded/cef/src/master/include/capi/cef_request_context_handler_capi.h">CEF source file: /include/capi/cef_request_context_handler_capi.h (cef_request_context_handler_t))

| `property OnGetResourceRequestHandler_ReqCtxHdlr : TOnGetResourceRequestHandler read FOnGetResourceRequestHandler_ReqCtxHdlr write FOnGetResourceRequestHandler_ReqCtxHdlr;`

Called on the browser process IO thread before a resource request is initiated. The |browser| and |frame| values represent the source of the request, and may be NULL for requests originating from service workers or ICefUrlRequest. |request| represents the request contents and cannot be modified in this callback. |is_navigation| will be true (1) if the resource request is a navigation. |is_download| will be true (1) if the resource request is a download. |request_initiator| is the origin (scheme + domain) of the page that initiated the request. Set |disable_default_handling| to true (1) to disable default handling of the request, in which case it will need to be handled via ICefResourceRequestHandler.GetResourceHandler or it will be canceled. To allow the resource load to proceed with default handling return NULL. To specify a handler for the resource return a ICefResourceRequestHandler object. This function will not be called if the client associated with |browser| returns a non-NULL value from ICefRequestHandler.GetResourceRequestHandler for the same request (identified by ICefRequest.GetIdentifier).

This event will be called on the browser process CEF IO thread.

<see href="https://bitbucket.org/chromiumembedded/cef/src/master/include/capi/cef_request_context_handler_capi.h">CEF source file: /include/capi/cef_request_context_handler_capi.h (cef_request_context_handler_t))

| `property OnSinks : TOnSinksEvent read FOnSinks write FOnSinks;`
The list of available media sinks has changed or ICefMediaRouter.NotifyCurrentSinks was called. This event will be called on the browser process CEF UI thread. <see href="https://bitbucket.org/chromiumembedded/cef/src/master/include/capi/cef_media_router_capi.h">CEF source file: /include/capi/cef_media_router_capi.h (cef_media_observer_t))

| `property OnRoutes : TOnRoutesEvent read FOnRoutes write FOnRoutes;`
The list of available media routes has changed or ICefMediaRouter.NotifyCurrentRoutes was called. This event will be called on the browser process CEF UI thread. <see href="https://bitbucket.org/chromiumembedded/cef/src/master/include/capi/cef_media_router_capi.h">CEF source file: /include/capi/cef_media_router_capi.h (cef_media_observer_t))

| `property OnRouteStateChanged : TOnRouteStateChangedEvent read FOnRouteStateChanged write FOnRouteStateChanged;`
The connection state of |route| has changed. This event will be called on the browser process CEF UI thread. <see href="https://bitbucket.org/chromiumembedded/cef/src/master/include/capi/cef_media_router_capi.h">CEF source file: /include/capi/cef_media_router_capi.h (cef_media_observer_t))

| `property OnRouteMessageReceived : TOnRouteMessageReceivedEvent read FOnRouteMessageReceived write FOnRouteMessageReceived;`
A message was recieved over |route|. |message| is only valid for the scope of this callback and should be copied if necessary. This event will be called on the browser process CEF UI thread. <see href="https://bitbucket.org/chromiumembedded/cef/src/master/include/capi/cef_media_router_capi.h">CEF source file: /include/capi/cef_media_router_capi.h (cef_media_observer_t))

| `property OnGetAudioParameters : TOnGetAudioParametersEvent read FOnGetAudioParameters write FOnGetAudioParameters;`

Called on the UI thread to allow configuration of audio stream parameters. Return true (1) to proceed with audio stream capture, or false (0) to cancel it. All members of |params| can optionally be configured here, but they are also pre-filled with some sensible defaults.

This event will be called on the browser process CEF UI thread.

<see href="https://bitbucket.org/chromiumembedded/cef/src/master/include/capi/cef_audio_handler_capi.h">CEF source file: /include/capi/cef_audio_handler_capi.h (cef_audio_handler_t))

| `property OnAudioStreamStarted : TOnAudioStreamStartedEvent read FOnAudioStreamStarted write FOnAudioStreamStarted;`

Called on a browser audio capture thread when the browser starts streaming audio. OnAudioStreamStopped will always be called after OnAudioStreamStarted; both functions may be called multiple times for the same browser. |params| contains the audio parameters like sample rate and channel layout. |channels| is the number of channels.

This event will be called on a browser audio capture thread.

<see href="https://bitbucket.org/chromiumembedded/cef/src/master/include/capi/cef_audio_handler_capi.h">CEF source file: /include/capi/cef_audio_handler_capi.h (cef_audio_handler_t))

| `property OnAudioStreamPacket : TOnAudioStreamPacketEvent read FOnAudioStreamPacket write FOnAudioStreamPacket;`

Called on the audio stream thread when a PCM packet is received for the stream. |data| is an array representing the raw PCM data as a floating point type, i.e. 4-byte value(s). |frames| is the number of frames in the PCM packet. |pts| is the presentation timestamp (in milliseconds since the Unix Epoch) and represents the time at which the decompressed packet should be presented to the user. Based on |frames| and the |channel_layout| value passed to OnAudioStreamStarted you can calculate the size of the |data| array in bytes.

This event will be called on a browser audio capture thread.

<see href="https://bitbucket.org/chromiumembedded/cef/src/master/include/capi/cef_audio_handler_capi.h">CEF source file: /include/capi/cef_audio_handler_capi.h (cef_audio_handler_t))

| `property OnAudioStreamStopped : TOnAudioStreamStoppedEvent read FOnAudioStreamStopped write FOnAudioStreamStopped;`

Called on the UI thread when the stream has stopped. OnAudioSteamStopped will always be called after OnAudioStreamStarted; both functions may be called multiple times for the same stream.

This event will be called on the browser process CEF UI thread.

<see href="https://bitbucket.org/chromiumembedded/cef/src/master/include/capi/cef_audio_handler_capi.h">CEF source file: /include/capi/cef_audio_handler_capi.h (cef_audio_handler_t))

| `property OnAudioStreamError : TOnAudioStreamErrorEvent read FOnAudioStreamError write FOnAudioStreamError;`

Called on the UI or audio stream thread when an error occurred. During the stream creation phase this callback will be called on the UI thread while in the capturing phase it will be called on the audio stream thread. The stream will be stopped immediately.

This event will be called on the browser process CEF UI thread or a browser audio capture thread.

<see href="https://bitbucket.org/chromiumembedded/cef/src/master/include/capi/cef_audio_handler_capi.h">CEF source file: /include/capi/cef_audio_handler_capi.h (cef_audio_handler_t))

| `property OnDevToolsMessage : TOnDevToolsMessageEvent read FOnDevToolsMessage write FOnDevToolsMessage;`

Method that will be called on receipt of a DevTools protocol message. |browser| is the originating browser instance. |message| is a UTF8-encoded JSON dictionary representing either a function result or an event.

|message| is only valid for the scope of this callback and should be copied if necessary. Return true (1) if the message was handled or false (0) if the message should be further processed and passed to the OnDevToolsMethodResult or OnDevToolsEvent functions as appropriate.

Method result dictionaries include an "id" (int) value that identifies the orginating function call sent from ICefBrowserHost.SendDevToolsMessage, and optionally either a "result" (dictionary) or "error" (dictionary) value. The "error" dictionary will contain "code" (int) and "message" (string) values. Event dictionaries include a "function" (string) value and optionally a "params" (dictionary) value. See the DevTools protocol documentation at https://chromedevtools.github.io/devtools-protocol/ for details of supported function calls and the expected "result" or "params" dictionary contents. JSON dictionaries can be parsed using the CefParseJSON function if desired, however be aware of performance considerations when parsing large messages (some of which may exceed 1MB in size).

This event will be called on the browser process CEF UI thread.

<see href="https://bitbucket.org/chromiumembedded/cef/src/master/include/capi/cef_devtools_message_observer_capi.h">CEF source file: /include/capi/cef_devtools_message_observer_capi.h (cef_dev_tools_message_observer_t))

| `property OnDevToolsRawMessage : TOnDevToolsRawMessageEvent read FOnDevToolsRawMessage write FOnDevToolsRawMessage;`

Method that will be called on receipt of a DevTools protocol message. |browser| is the originating browser instance. |message| is a UTF8-encoded JSON dictionary representing either a function result or an event.

|message| is only valid for the scope of this callback and should be copied if necessary. Return true (1) if the message was handled or false (0) if the message should be further processed and passed to the OnDevToolsMethodResult or OnDevToolsEvent functions as appropriate.

Method result dictionaries include an "id" (int) value that identifies the orginating function call sent from ICefBrowserHost.SendDevToolsMessage, and optionally either a "result" (dictionary) or "error" (dictionary) value. The "error" dictionary will contain "code" (int) and "message" (string) values. Event dictionaries include a "function" (string) value and optionally a "params" (dictionary) value. See the DevTools protocol documentation at https://chromedevtools.github.io/devtools-protocol/ for details of supported function calls and the expected "result" or "params" dictionary contents. JSON dictionaries can be parsed using the CefParseJSON function if desired, however be aware of performance considerations when parsing large messages (some of which may exceed 1MB in size).

This event will be called on the browser process CEF UI thread.

<see href="https://bitbucket.org/chromiumembedded/cef/src/master/include/capi/cef_devtools_message_observer_capi.h">CEF source file: /include/capi/cef_devtools_message_observer_capi.h (cef_dev_tools_message_observer_t))

| `property OnDevToolsMethodResult : TOnDevToolsMethodResultEvent read FOnDevToolsMethodResult write FOnDevToolsMethodResult;`

Method that will be called after attempted execution of a DevTools protocol function. |browser| is the originating browser instance.

|message_id| is the "id" value that identifies the originating function call message. If the function succeeded |success| will be true (1) and |result| will be the UTF8-encoded JSON "result" dictionary value (which may be NULL). If the function failed |success| will be false (0) and |result| will be the UTF8-encoded JSON "error" dictionary value. |result| is only valid for the scope of this callback and should be copied if necessary. See the OnDevToolsMessage documentation for additional details on |result| contents.

This event will be called on the browser process CEF UI thread.

<see href="https://bitbucket.org/chromiumembedded/cef/src/master/include/capi/cef_devtools_message_observer_capi.h">CEF source file: /include/capi/cef_devtools_message_observer_capi.h (cef_dev_tools_message_observer_t))

| `property OnDevToolsMethodRawResult : TOnDevToolsMethodRawResultEvent read FOnDevToolsMethodRawResult write FOnDevToolsMethodRawResult;`

Method that will be called after attempted execution of a DevTools protocol function. |browser| is the originating browser instance.

|message_id| is the "id" value that identifies the originating function call message. If the function succeeded |success| will be true (1) and |result| will be the UTF8-encoded JSON "result" dictionary value (which may be NULL). If the function failed |success| will be false (0) and |result| will be the UTF8-encoded JSON "error" dictionary value. |result| is only valid for the scope of this callback and should be copied if necessary. See the OnDevToolsMessage documentation for additional details on |result| contents.

This event will be called on the browser process CEF UI thread.

<see href="https://bitbucket.org/chromiumembedded/cef/src/master/include/capi/cef_devtools_message_observer_capi.h">CEF source file: /include/capi/cef_devtools_message_observer_capi.h (cef_dev_tools_message_observer_t))

| `property OnDevToolsEvent : TOnDevToolsEventEvent read FOnDevToolsEvent write FOnDevToolsEvent;`

Method that will be called on receipt of a DevTools protocol event. |browser| is the originating browser instance. |function| is the "function" value. |params| is the UTF8-encoded JSON "params" dictionary value (which may be NULL). |params| is only valid for the scope of this callback and should be copied if necessary. See the OnDevToolsMessage documentation for additional details on |params| contents.

This event will be called on the browser process CEF UI thread.

<see href="https://bitbucket.org/chromiumembedded/cef/src/master/include/capi/cef_devtools_message_observer_capi.h">CEF source file: /include/capi/cef_devtools_message_observer_capi.h (cef_dev_tools_message_observer_t))

| `property OnDevToolsRawEvent : TOnDevToolsEventRawEvent read FOnDevToolsRawEvent write FOnDevToolsRawEvent;`

Method that will be called on receipt of a DevTools protocol event. |browser| is the originating browser instance. |function| is the "function" value. |params| is the UTF8-encoded JSON "params" dictionary value (which may be NULL). |params| is only valid for the scope of this callback and should be copied if necessary. See the OnDevToolsMessage documentation for additional details on |params| contents.

This event will be called on the browser process CEF UI thread.

<see href="https://bitbucket.org/chromiumembedded/cef/src/master/include/capi/cef_devtools_message_observer_capi.h">CEF source file: /include/capi/cef_devtools_message_observer_capi.h (cef_dev_tools_message_observer_t))

| `property OnDevToolsAgentAttached : TOnDevToolsAgentAttachedEvent read FOnDevToolsAgentAttached write FOnDevToolsAgentAttached;`

Method that will be called when the DevTools agent has attached. |browser| is the originating browser instance. This will generally occur in response to the first message sent while the agent is detached.

This event will be called on the browser process CEF UI thread.

<see href="https://bitbucket.org/chromiumembedded/cef/src/master/include/capi/cef_devtools_message_observer_capi.h">CEF source file: /include/capi/cef_devtools_message_observer_capi.h (cef_dev_tools_message_observer_t))

| `property OnDevToolsAgentDetached : TOnDevToolsAgentDetachedEvent read FOnDevToolsAgentDetached write FOnDevToolsAgentDetached;`

Method that will be called when the DevTools agent has detached. |browser| is the originating browser instance. Any function results that were pending before the agent became detached will not be delivered, and any active event subscriptions will be canceled.

This event will be called on the browser process CEF UI thread.

<see href="https://bitbucket.org/chromiumembedded/cef/src/master/include/capi/cef_devtools_message_observer_capi.h">CEF source file: /include/capi/cef_devtools_message_observer_capi.h (cef_dev_tools_message_observer_t))

| `property OnFrameCreated : TOnFrameCreated read FOnFrameCreated write FOnFrameCreated;`

Called when a new frame is created. This will be the first notification that references |frame|. Any commands that require transport to the associated renderer process (LoadRequest, SendProcessMessage, GetSource, etc.) will be queued. The queued commands will be sent before OnFrameAttached or discarded before OnFrameDestroyed if the frame never attaches.

This event will be called on the browser process CEF UI thread.

<see href="https://bitbucket.org/chromiumembedded/cef/src/master/include/capi/cef_frame_handler_capi.h">CEF source file: /include/capi/cef_frame_handler_capi.h (cef_frame_handler_t))

| `property OnFrameDestroyed : TOnFrameDestroyed read FOnFrameDestroyed write FOnFrameDestroyed;`

Called when an existing frame is destroyed. This will be the last notification that references |frame| and ICefFrame.IsValid will return false (0) for |frame|. If called during browser destruction and after TChromiumCore.OnBeforeClose then ICefBrowser.IsValid will return false (0) for |browser|. Any queued commands that have not been sent will be discarded before this callback.

This event will be called on the browser process CEF UI thread.

<see href="https://bitbucket.org/chromiumembedded/cef/src/master/include/capi/cef_frame_handler_capi.h">CEF source file: /include/capi/cef_frame_handler_capi.h (cef_frame_handler_t))

| `property OnFrameAttached : TOnFrameAttached read FOnFrameAttached write FOnFrameAttached;`

Called when a frame can begin routing commands to/from the associated renderer process. |reattached| will be true (1) if the frame was re- attached after exiting the BackForwardCache or after encountering a recoverable connection error. Any queued commands will now have been dispatched. This function will not be called for temporary frames created during cross-origin navigation.

This event will be called on the browser process CEF UI thread.

<see href="https://bitbucket.org/chromiumembedded/cef/src/master/include/capi/cef_frame_handler_capi.h">CEF source file: /include/capi/cef_frame_handler_capi.h (cef_frame_handler_t))

| `property OnFrameDetached : TOnFrameDetached read FOnFrameDetached write FOnFrameDetached;`

Called when a frame loses its connection to the renderer process. This may occur when a frame is destroyed, enters the BackForwardCache, or encounters a rare connection error. In the case of frame destruction this call will be followed by a (potentially async) call to OnFrameDestroyed. If frame destruction is occuring synchronously then ICefFrame.IsValid will return false (0) for |frame|. If called during browser destruction and after TChromiumCore.OnBeforeClose then ICefBrowser.IsValid will return false (0) for |browser|. If, in the non-destruction case, the same frame later exits the BackForwardCache or recovers from a connection error then there will be a follow-up call to OnFrameAttached. This function will not be called for temporary frames created during cross- origin navigation.

This event will be called on the browser process CEF UI thread.

<see href="https://bitbucket.org/chromiumembedded/cef/src/master/include/capi/cef_frame_handler_capi.h">CEF source file: /include/capi/cef_frame_handler_capi.h (cef_frame_handler_t))

| `property OnMainFrameChanged : TOnMainFrameChanged read FOnMainFrameChanged write FOnMainFrameChanged;`

Called when the main frame changes due to (a) initial browser creation, (b) final browser destruction, (c) cross-origin navigation or (d) re- navigation after renderer process termination (due to crashes, etc). |old_frame| will be NULL and |new_frame| will be non-NULL when a main frame is assigned to |browser| for the first time. |old_frame| will be non-NULL and |new_frame| will be NULL when a main frame is removed from |browser| for the last time. Both |old_frame| and |new_frame| will be non- NULL for cross-origin navigations or re-navigation after renderer process termination. This function will be called after OnFrameCreated for |new_frame| and/or after OnFrameDestroyed for |old_frame|. If called during browser destruction and after TChromiumCore.OnBeforeClose then ICefBrowser.IsValid will return false (0) for |browser|.

This event will be called on the browser process CEF UI thread.

<see href="https://bitbucket.org/chromiumembedded/cef/src/master/include/capi/cef_frame_handler_capi.h">CEF source file: /include/capi/cef_frame_handler_capi.h (cef_frame_handler_t))

| `property OnChromeCommand : TOnChromeCommandEvent read FOnChromeCommand write FOnChromeCommand;`

Called to execute a Chrome command triggered via menu selection or keyboard shortcut. Use the cef_id_for_command_id_name() function for version-safe mapping of command IDC names from cef_command_ids.h to version-specific numerical |command_id| values. |disposition| provides information about the intended command target. Return true (1) if the command was handled or false (0) for the default implementation. For context menu commands this will be called after ICefContextMenuHandler.OnContextMenuCommand.

Only used with Chrome style.

This event will be called on the browser process CEF UI thread.

<see href="https://bitbucket.org/chromiumembedded/cef/src/master/include/capi/cef_command_handler_capi.h">CEF source file: /include/capi/cef_command_handler_capi.h (cef_command_handler_t))

| `property OnIsChromeAppMenuItemVisible : TOnIsChromeAppMenuItemVisibleEvent read FOnIsChromeAppMenuItemVisible write FOnIsChromeAppMenuItemVisible;`

Called to check if a Chrome app menu item should be visible. Use the cef_id_for_command_id_name() function for version-safe mapping of command IDC names from cef_command_ids.h to version-specific numerical |command_id| values. Only called for menu items that would be visible by default.

Only used with Chrome style.

This event will be called on the browser process CEF UI thread.

<see href="https://bitbucket.org/chromiumembedded/cef/src/master/include/capi/cef_command_handler_capi.h">CEF source file: /include/capi/cef_command_handler_capi.h (cef_command_handler_t))

| `property OnIsChromeAppMenuItemEnabled : TOnIsChromeAppMenuItemEnabledEvent read FOnIsChromeAppMenuItemEnabled write FOnIsChromeAppMenuItemEnabled;`

Called to check if a Chrome app menu item should be enabled. Use the cef_id_for_command_id_name() function for version-safe mapping of command IDC names from cef_command_ids.h to version-specific numerical |command_id| values. Only called for menu items that would be enabled by default.

Only used with Chrome style.

This event will be called on the browser process CEF UI thread.

<see href="https://bitbucket.org/chromiumembedded/cef/src/master/include/capi/cef_command_handler_capi.h">CEF source file: /include/capi/cef_command_handler_capi.h (cef_command_handler_t))

| `property OnIsChromePageActionIconVisible : TOnIsChromePageActionIconVisibleEvent read FOnIsChromePageActionIconVisible write FOnIsChromePageActionIconVisible;`

Called during browser creation to check if a Chrome page action icon should be visible. Only called for icons that would be visible by default.

Only used with Chrome style.

This event will be called on the browser process CEF UI thread.

<see href="https://bitbucket.org/chromiumembedded/cef/src/master/include/capi/cef_command_handler_capi.h">CEF source file: /include/capi/cef_command_handler_capi.h (cef_command_handler_t))

| `property OnIsChromeToolbarButtonVisible : TOnIsChromeToolbarButtonVisibleEvent read FOnIsChromeToolbarButtonVisible write FOnIsChromeToolbarButtonVisible;`

Called during browser creation to check if a Chrome toolbar button should be visible. Only called for buttons that would be visible by default.

Only used with Chrome style.

This event will be called on the browser process CEF UI thread.

<see href="https://bitbucket.org/chromiumembedded/cef/src/master/include/capi/cef_command_handler_capi.h">CEF source file: /include/capi/cef_command_handler_capi.h (cef_command_handler_t))

| `property OnRequestMediaAccessPermission : TOnRequestMediaAccessPermissionEvent read FOnRequestMediaAccessPermission write FOnRequestMediaAccessPermission;`

Called when a page requests permission to access media.

|requesting_origin| is the URL origin requesting permission.

|requested_permissions| is a combination of values from TCefMediaAccessPermissionTypes that represent the requested permissions.

Return true (1) and call ICefMediaAccessCallback functions either in this function or at a later time to continue or cancel the request.

Return false (0) to proceed with default handling. With Chrome style, default handling will display the permission request UI.

With Alloy style, default handling will deny the request. This function will not be called if the "–enable-media-stream" command-line switch is used to grant all permissions.

This event will be called on the browser process CEF UI thread.

<see href="https://bitbucket.org/chromiumembedded/cef/src/master/include/capi/cef_permission_handler_capi.h">CEF source file: /include/capi/cef_permission_handler_capi.h (cef_permission_handler_t))

| `property OnShowPermissionPrompt : TOnShowPermissionPromptEvent read FOnShowPermissionPrompt write FOnShowPermissionPrompt;`

Called when a page should show a permission prompt. |prompt_id| uniquely identifies the prompt. |requesting_origin| is the URL origin requesting permission. |requested_permissions| is a combination of values from TCefPermissionRequestTypes that represent the requested permissions.

Return true (1) and call ICefPermissionPromptCallback.Continue either in this function or at a later time to continue or cancel the request.

Return false (0) to proceed with default handling. With Chrome style, default handling will display the permission prompt UI. With Alloy style, default handling is CEF_PERMISSION_RESULT_IGNORE.

This event will be called on the browser process CEF UI thread.

<see href="https://bitbucket.org/chromiumembedded/cef/src/master/include/capi/cef_permission_handler_capi.h">CEF source file: /include/capi/cef_permission_handler_capi.h (cef_permission_handler_t))

| `property OnDismissPermissionPrompt : TOnDismissPermissionPromptEvent read FOnDismissPermissionPrompt write FOnDismissPermissionPrompt;`

Called when a permission prompt handled via OnShowPermissionPrompt is dismissed. |prompt_id| will match the value that was passed to OnShowPermissionPrompt. |result| will be the value passed to ICefPermissionPromptCallback.Continue or CEF_PERMISSION_RESULT_IGNORE if the dialog was dismissed for other reasons such as navigation, browser closure, etc. This function will not be called if OnShowPermissionPrompt returned false (0) for |prompt_id|.

This event will be called on the browser process CEF UI thread.

<see href="https://bitbucket.org/chromiumembedded/cef/src/master/include/capi/cef_permission_handler_capi.h">CEF source file: /include/capi/cef_permission_handler_capi.h (cef_permission_handler_t))

| `property OnPreferenceChanged : TOnPreferenceChangedEvent read FOnPreferenceChanged write FOnPreferenceChanged;`
Called when a preference has changed. The new value can be retrieved using ICefRequestContext.GetPreference. This event will be called on the browser process CEF UI thread. <see href="https://bitbucket.org/chromiumembedded/cef/src/master/include/capi/cef_preference_capi.h">CEF source file: /include/capi/cef_preference_capi.h (cef_preference_observer_t))

| `property OnSettingChanged : TOnSettingChangedEvent read FOnSettingChanged write FOnSettingChanged;`

Called when a content or website setting has changed. The new value can be retrieved using ICefRequestContext.GetContentSetting or ICefRequestContext.GetWebsiteSetting.

This event will be called on the browser process CEF UI thread.

<see href="https://bitbucket.org/chromiumembedded/cef/src/master/include/capi/cef_preference_capi.h">CEF source file: /include/capi/cef_preference_capi.h (cef_setting_observer_t))

Generated by PasDoc 0.17.0.snapshot.