Crate cef_sys

source ·

Structs

  • Implement this structure to receive accessibility notification when accessibility events have been registered. The functions of this structure will be called on the UI thread.
  • Implement this structure to provide handler implementations. Methods will be called by the process and/or thread indicated.
  • Implement this structure to handle audio events.
  • Structure representing the audio parameters for setting up the audio handler.
  • Callback structure used for asynchronous continuation of authentication requests.
  • Represents a wall clock time in UTC. Values are not guaranteed to be monotonically non-decreasing and are subject to large amounts of skew. Time is stored internally as microseconds since the Windows epoch (1601).
  • Callback structure used to asynchronously continue a download.
  • Structure representing a binary value. Can be used on any process and thread.
  • Settings used when initializing a CefBoxLayout.
  • Structure used to represent the browser process aspects of a browser. The functions of this structure can only be called in the browser process. They may be called on any thread in that process unless otherwise indicated in the comments.
  • Structure used to implement browser process callbacks. The functions of this structure will be called on the browser process main thread unless otherwise indicated.
  • Browser initialization settings. Specify NULL or 0 to get the recommended default values. The consequences of using custom values may not be well tested. Many of these and other settings can also configured using command- line switches.
  • Structure used to represent a browser. When used in the browser process the functions of this structure may be called on any thread unless otherwise indicated in the comments. When used in the render process the functions of this structure may only be called on the main thread.
  • Implement this structure to handle BrowserView events. The functions of this structure will be called on the browser process UI thread unless otherwise indicated.
  • A View hosting a cef_browser_t instance. Methods must be called on the browser process UI thread unless otherwise indicated.
  • Generic callback structure used for asynchronous continuation.
  • Implement this structure to provide handler implementations.
  • Implement this structure to handle events related to commands. The functions of this structure will be called on the UI thread.
  • Structure used to create and/or parse command line arguments. Arguments with “–”, “-” and, on Windows, “/” prefixes are considered switches. Switches will always precede any arguments without switch prefixes. Switches can optionally have a value specified using the “=” delimiter (e.g. “-switch=value”). An argument of “–” will terminate switch parsing with all subsequent tokens, regardless of prefix, being interpreted as non-switch arguments. Switch names should be lowercase ASCII and will be converted to such if necessary. Switch values will retain the original case and UTF8 encoding. This structure can be used before cef_initialize() is called.
  • Generic callback structure used for asynchronous completion.
  • Structure representing IME composition underline information. This is a thin wrapper around Blink’s WebCompositionUnderline class and should be kept in sync with that.
  • Implement this structure to handle context menu events. The functions of this structure will be called on the UI thread.
  • Provides information about the context menu state. The functions of this structure can only be accessed on browser process the UI thread.
  • Implement this structure to filter cookies that may be sent or received from resource requests. The functions of this structure will be called on the IO thread unless otherwise indicated.
  • Structure used for managing cookies. The functions of this structure may be called on any thread unless otherwise indicated.
  • Cookie information.
  • Structure to implement for visiting cookie values. The functions of this structure will always be called on the UI thread.
  • Structure representing cursor information. |buffer| will be |size.width|*|size.height|*4 bytes in size and represents a BGRA image with an upper-left origin.
  • Structure to implement to be notified of asynchronous completion via cef_cookie_manager_t::delete_cookies().
  • Callback structure for cef_browser_host_t::AddDevToolsMessageObserver. The functions of this structure will be called on the browser process UI thread.
  • Implement this structure to handle dialog events. The functions of this structure will be called on the browser process UI thread.
  • Structure representing a dictionary value. Can be used on any process and thread.
  • Implement this structure to handle events related to browser display state. The functions of this structure will be called on the UI thread.
  • This structure typically, but not always, corresponds to a physical display connected to the system. A fake Display may exist on a headless system, or a Display may correspond to a remote, virtual display. All size and position values are in density independent pixel (DIP) coordinates unless otherwise indicated. Methods must be called on the browser process UI thread unless otherwise indicated.
  • Structure used to represent a DOM document. The functions of this structure should only be called on the render process main thread thread.
  • Structure used to represent a DOM node. The functions of this structure should only be called on the render process main thread.
  • Structure to implement for visiting the DOM. The functions of this structure will be called on the render process main thread.
  • Structure used to handle file downloads. The functions of this structure will called on the browser process UI thread.
  • Callback structure for cef_browser_host_t::DownloadImage. The functions of this structure will be called on the browser process UI thread.
  • Callback structure used to asynchronously cancel a download.
  • Structure used to represent a download item.
  • Structure used to represent drag data. The functions of this structure may be called on any thread.
  • Implement this structure to handle events related to dragging. The functions of this structure will be called on the UI thread.
  • Structure representing a draggable region.
  • Implement this structure to handle events related to browser extensions. The functions of this structure will be called on the UI thread. See cef_request_context_t::LoadExtension for information about extension loading.
  • Object representing an extension. Methods may be called on any thread unless otherwise indicated.
  • Callback structure for asynchronous continuation of file dialog requests.
  • Implement this structure to handle events related to find results. The functions of this structure will be called on the UI thread.
  • Implement this structure to handle events related to focus. The functions of this structure will be called on the UI thread.
  • Implement this structure to handle events related to cef_frame_t life span. The order of callbacks is:
  • Structure used to represent a frame in the browser window. When used in the browser process the functions of this structure may be called on any thread unless otherwise indicated in the comments. When used in the render process the functions of this structure may only be called on the main thread.
  • Callback structure used for asynchronous continuation of cef_extension_handler_t::GetExtensionResource.
  • Container for a single image represented at different scale factors. All image representations should be the same size in density independent pixel (DIP) units. For example, if the image at scale factor 1.0 is 100x100 pixels then the image at scale factor 2.0 should be 200x200 pixels – both images will display with a DIP size of 100x100 units. The functions of this structure can be called on any browser process thread.
  • Structure representing insets.
  • Callback structure used for asynchronous continuation of JavaScript dialog requests.
  • Implement this structure to handle events related to JavaScript dialogs. The functions of this structure will be called on the UI thread.
  • Structure representing keyboard event information.
  • Implement this structure to handle events related to keyboard input. The functions of this structure will be called on the UI thread.
  • Implement this structure to handle events related to browser life span. The functions of this structure will be called on the UI thread unless otherwise indicated.
  • Structure representing a list value. Can be used on any process and thread.
  • Implement this structure to handle events related to browser load status. The functions of this structure will be called on the browser process UI thread or render process main thread (TID_RENDERER).
  • Structure representing CefExecuteProcess arguments.
  • Callback structure used for asynchronous continuation of media access permission requests.
  • Implemented by the client to observe MediaRouter events and registered via cef_media_router_t::AddObserver. The functions of this structure will be called on the browser process UI thread.
  • Callback structure for cef_media_router_t::CreateRoute. The functions of this structure will be called on the browser process UI thread.
  • Represents the route between a media source and sink. Instances of this object are created via cef_media_router_t::CreateRoute and retrieved via cef_media_observer_t::OnRoutes. Contains the status and metadata of a routing operation. The functions of this structure may be called on any browser process thread unless otherwise indicated.
  • Supports discovery of and communication with media devices on the local network via the Cast and DIAL protocols. The functions of this structure may be called on any browser process thread unless otherwise indicated.
  • Callback structure for cef_media_sink_t::GetDeviceInfo. The functions of this structure will be called on the browser process UI thread.
  • Device information for a MediaSink object.
  • Represents a sink to which media can be routed. Instances of this object are retrieved via cef_media_observer_t::OnSinks. The functions of this structure may be called on any browser process thread unless otherwise indicated.
  • Represents a source from which media can be routed. Instances of this object are retrieved via cef_media_router_t::GetSource. The functions of this structure may be called on any browser process thread unless otherwise indicated.
  • Implement this structure to handle menu model events. The functions of this structure will be called on the browser process UI thread unless otherwise indicated.
  • Supports creation and modification of menus. 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. The functions of this structure can only be accessed on the browser process the UI thread.
  • Structure representing mouse event information.
  • Structure used to represent an entry in navigation history.
  • Callback structure for cef_browser_host_t::GetNavigationEntries. The functions of this structure will be called on the browser process UI thread.
  • Controller for an overlay that contains a contents View added via cef_window_t::AddOverlayView. Methods exposed by this controller should be called in preference to functions of the same name exposed by the contents View unless otherwise indicated. Methods must be called on the browser process UI thread unless otherwise indicated.
  • Implement this structure to handle Panel events. The functions of this structure will be called on the browser process UI thread unless otherwise indicated.
  • A Panel is a container in the views hierarchy that can contain other Views as children. Methods must be called on the browser process UI thread unless otherwise indicated.
  • Callback structure for cef_browser_host_t::PrintToPDF. The functions of this structure will be called on the browser process UI thread.
  • Structure representing PDF print settings. These values match the parameters supported by the DevTools Page.printToPDF function. See https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-printToPDF
  • Implement this structure to handle events related to permission requests. The functions of this structure will be called on the browser process UI thread.
  • Callback structure used for asynchronous continuation of permission prompts.
  • Structure representing a point.
  • Popup window features.
  • Structure used to represent a single element in the request post data. The functions of this structure may be called on any thread.
  • Structure used to represent post data for a web request. The functions of this structure may be called on any thread.
  • Manage access to preferences. Many built-in preferences are registered by Chromium. Custom preferences can be registered in cef_browser_process_handler_t::OnRegisterCustomPreferences.
  • Structure that manages custom preference registrations.
  • Callback structure for asynchronous continuation of print dialog requests.
  • Implement this structure to handle printing on Linux. Each browser will have only one print job in progress at a time. The functions of this structure will be called on the browser process UI thread.
  • Callback structure for asynchronous continuation of print job requests.
  • Structure representing print settings.
  • Structure representing a message. Can be used on any process and thread.
  • Structure representing a range.
  • Structure the client can implement to provide a custom stream reader. The functions of this structure may be called on any thread.
  • Structure representing a rectangle.
  • Generic callback structure used for managing the lifespan of a registration.
  • Implement this structure to handle events when window rendering is disabled. The functions of this structure will be called on the UI thread.
  • Structure used to implement render process callbacks. The functions of this structure will be called on the render process main thread (TID_RENDERER) unless otherwise indicated.
  • Request context initialization settings. Specify NULL or 0 to get the recommended default values.
  • A request context provides request handling for a set of related browser or URL request objects. A request context can be specified when creating a new browser via the cef_browser_host_t static factory functions or when creating a new URL request via the cef_urlrequest_t static factory functions. Browser objects with different request contexts will never be hosted in the same render process. Browser objects with the same request context may or may not be hosted in the same render process depending on the process model. Browser objects created indirectly via the JavaScript window.open function or targeted links will share the same render process and the same request context as the source browser. When running in single-process mode there is only a single render process (the main process) and so all browsers created in single-process mode will share the same request context. This will be the first request context passed into a cef_browser_host_t static factory function and all other request context objects will be ignored.
  • Implement this structure to handle events related to browser requests. The functions of this structure will be called on the thread indicated.
  • Structure used to represent a web request. The functions of this structure may be called on any thread.
  • Callback structure for cef_request_context_t::ResolveHost.
  • Structure used to implement a custom resource bundle structure. See CefSettings for additional options related to resource bundle loading. The functions of this structure may be called on multiple threads.
  • Structure used to implement a custom request handler structure. The functions of this structure will be called on the IO thread unless otherwise indicated.
  • Callback for asynchronous continuation of cef_resource_handler_t::read().
  • Implement this structure to handle events related to browser requests. The functions of this structure will be called on the IO thread unless otherwise indicated.
  • Callback for asynchronous continuation of cef_resource_handler_t::skip().
  • Implement this structure to filter resource response content. The functions of this structure will be called on the browser process IO thread.
  • Structure used to represent a web response. The functions of this structure may be called on any thread.
  • Callback structure used for continuation of custom context menu display.
  • Callback structure for cef_browser_host_t::RunFileDialog. The functions of this structure will be called on the browser process UI thread.
  • Callback structure used for continuation of custom quick menu display.
  • Structure that creates cef_resource_handler_t instances for handling scheme requests. The functions of this structure will always be called on the IO thread.
  • Structure that manages custom scheme registrations.
  • Screen information used when window rendering is disabled. This structure is passed as a parameter to CefRenderHandler::GetScreenInfo and should be filled in by the client.
  • Callback structure used to select a client certificate for authentication.
  • Structure to implement to be notified of asynchronous completion via cef_cookie_manager_t::set_cookie().
  • Initialization settings. Specify NULL or 0 to get the recommended default values. Many of these and other settings can also configured using command- line switches.
  • Structure that wraps platform-dependent share memory region mapping.
  • Structure representing a size.
  • Structure representing SSL information.
  • Structure representing the SSL information for a navigation entry.
  • Structure used to read data from a stream. The functions of this structure may be called on any thread.
  • Structure used to write data to a stream. The functions of this structure may be called on any thread.
  • Implement this structure to receive string values asynchronously.
  • CEF string type definitions. Whomever allocates |str| is responsible for providing an appropriate |dtor| implementation that will free the string in the same memory space. When reusing an existing string structure make sure to call |dtor| for the old value before assigning new |str| and |dtor| values. Static strings will have a NULL |dtor| value. Using the below functions if you want this managed for you.
  • Structure that asynchronously executes tasks on the associated thread. It is safe to call the functions of this structure on any thread.
  • Implement this structure for asynchronous task execution. If the task is posted successfully and if the associated message loop is still running then the execute() function will be called on the target thread. If the task fails to post then the task object may be destroyed on the source thread instead of the target thread. For this reason be cautious when performing work in the task object destructor.
  • Time information. Values should always be in UTC.
  • Structure representing touch event information.
  • URL component parts.
  • Structure that should be implemented to handle V8 accessor calls. Accessor identifiers are registered by calling cef_v8value_t::set_value(). The functions of this structure will be called on the thread associated with the V8 accessor.
  • Callback structure that is passed to cef_v8value_t::CreateArrayBuffer.
  • Structure representing a V8 context handle. V8 handles can only be accessed from the thread on which they are created. Valid threads for creating a V8 handle include the render process main thread (TID_RENDERER) and WebWorker threads. A task runner for posting tasks on the associated thread can be retrieved via the cef_v8context_t::get_task_runner() function.
  • Structure representing a V8 exception. The functions of this structure may be called on any render process thread.
  • Structure that should be implemented to handle V8 function calls. The functions of this structure will be called on the thread associated with the V8 function.
  • Structure that should be implemented to handle V8 interceptor calls. The functions of this structure will be called on the thread associated with the V8 interceptor. Interceptor’s named property handlers (with first argument of type CefString) are called when object is indexed by string. Indexed property handlers (with first argument of type int) are called when object is indexed by integer.
  • Structure representing a V8 stack frame handle. V8 handles can only be accessed from the thread on which they are created. Valid threads for creating a V8 handle include the render process main thread (TID_RENDERER) and WebWorker threads. A task runner for posting tasks on the associated thread can be retrieved via the cef_v8context_t::get_task_runner() function.
  • Structure representing a V8 stack trace handle. V8 handles can only be accessed from the thread on which they are created. Valid threads for creating a V8 handle include the render process main thread (TID_RENDERER) and WebWorker threads. A task runner for posting tasks on the associated thread can be retrieved via the cef_v8context_t::get_task_runner() function.
  • Structure representing a V8 value handle. V8 handles can only be accessed from the thread on which they are created. Valid threads for creating a V8 handle include the render process main thread (TID_RENDERER) and WebWorker threads. A task runner for posting tasks on the associated thread can be retrieved via the cef_v8context_t::get_task_runner() function.
  • Structure that wraps other data value types. Complex types (binary, dictionary and list) will be referenced but not owned by this object. Can be used on any process and thread.
  • Implement this structure to handle view events. All size and position values are in density independent pixels (DIP) unless otherwise indicated. The functions of this structure will be called on the browser process UI thread unless otherwise indicated.
  • A View is a rectangle within the views View hierarchy. It is the base structure for all Views. All size and position values are in density independent pixels (DIP) unless otherwise indicated. Methods must be called on the browser process UI thread unless otherwise indicated.
  • Implement this structure to handle window events. The functions of this structure will be called on the browser process UI thread unless otherwise indicated.
  • Class representing window information.
  • A Window is a top-level Window/widget in the Views hierarchy. By default it will have a non-client area with title bar, icon and buttons that supports moving and resizing. All size and position values are in density independent pixels (DIP) unless otherwise indicated. Methods must be called on the browser process UI thread unless otherwise indicated.
  • Structure the client can implement to provide a custom stream writer. The functions of this structure may be called on any thread.
  • Structure representing the issuer or subject field of an X.509 certificate.
  • Structure representing a X.509 certificate.
  • “Verb” of a drag-and-drop operation as negotiated between the source and destination. These constants match their equivalents in WebCore’s DragActions.h and should not be renumbered.

Enums

Functions

  • Retrieve the current system time.
  • Creates a new object that is not owned by any other object. The specified |data| will be copied.
  • Create a new browser using the window parameters specified by |windowInfo|. All values will be copied internally and the actual window (if any) will be created on the UI thread. If |request_context| is NULL the global request context will be used. This function can be called on any browser process thread and will not block. The optional |extra_info| parameter provides an opportunity to specify extra information specific to the created browser that will be passed to cef_render_process_handler_t::on_browser_created() in the render process.
  • Create a new browser using the window parameters specified by |windowInfo|. If |request_context| is NULL the global request context will be used. This function can only be called on the browser process UI thread. The optional |extra_info| parameter provides an opportunity to specify extra information specific to the created browser that will be passed to cef_render_process_handler_t::on_browser_created() in the render process.
  • Create a new BrowserView. The underlying cef_browser_t will not be created until this view is added to the views hierarchy. The optional |extra_info| parameter provides an opportunity to specify extra information specific to the created browser that will be passed to cef_render_process_handler_t::on_browser_created() in the render process.
  • Returns the BrowserView associated with |browser|.
  • Clear all scheme handler factories registered with the global request context. Returns false (0) on error. This function may be called on any thread in the browser process. Using this function is equivalent to calling cef_request_context_t::cef_request_context_get_global_context()->clear_schem e_handler_factories().
  • Create a new cef_command_line_t instance.
  • Returns the singleton global cef_command_line_t object. The returned object will be read-only.
  • Returns the global cookie manager. By default data will be stored at cef_settings_t.cache_path if specified or in memory otherwise. If |callback| is non-NULL it will be executed asnychronously on the UI thread after the manager’s storage has been initialized. Using this function is equivalent to calling cef_request_context_t::cef_request_context_get_global_context()->Get DefaultCookieManager().
  • Creates a new context object that shares storage with |other| and uses an optional |handler|.
  • Returns true (1) if called on the specified thread. Equivalent to using cef_task_runner_t::GetForThread(threadId)->belongs_to_current_thread().
  • Creates a new object that is not owned by any other object.
  • Convert |point| from pixel screen coordinates to DIP screen coordinates. This function is only used on Windows.
  • Convert |point| from DIP screen coordinates to pixel screen coordinates. This function is only used on Windows.
  • Convert |rect| from pixel screen coordinates to DIP screen coordinates. This function is only used on Windows.
  • Convert |rect| from DIP screen coordinates to pixel screen coordinates. This function is only used on Windows.
  • Returns all Displays. Mirrored displays are excluded; this function is intended to return distinct, usable displays.
  • Returns the total number of Displays. Mirrored displays are excluded; this function is intended to return the number of distinct, usable displays.
  • Returns the Display that most closely intersects |bounds|. Set |input_pixel_coords| to true (1) if |bounds| is in pixel screen coordinates instead of DIP screen coordinates.
  • Returns the Display nearest |point|. Set |input_pixel_coords| to true (1) if |point| is in pixel screen coordinates instead of DIP screen coordinates.
  • Returns the primary Display.
  • Perform a single iteration of CEF message loop processing. This function is provided for cases where the CEF message loop must be integrated into an existing application message loop. Use of this function is not recommended for most users; use either the cef_run_message_loop() function or cef_settings_t.multi_threaded_message_loop if possible. When using this function care must be taken to balance performance against excessive CPU usage. It is recommended to enable the cef_settings_t.external_message_pump option when using this function so that cef_browser_process_handler_t::on_schedule_message_pump_work() callbacks can facilitate the scheduling process. This function should only be called on the main application thread and only if cef_initialize() is called with a cef_settings_t.multi_threaded_message_loop value of false (0). This function will not block.
  • Create a new cef_drag_data_t object.
  • This function should be called from the application entry point function to execute a secondary process. It can be used to run secondary processes from the browser client executable (default behavior) or from a separate executable specified by the cef_settings_t.browser_subprocess_path value. If called for the browser process (identified by no “type” command-line value) it will return immediately with a value of -1. If called for a recognized secondary process it will block until the process should exit and then return the process exit code. The |application| parameter may be NULL. The |windows_sandbox_info| parameter is only used on Windows and may be NULL (see cef_sandbox_win.h for details).
  • Create a new cef_image_t. It will initially be NULL. Use the Add*() functions to add representations at different scale factors.
  • This function should be called on the main application thread to initialize the CEF browser process. The |application| parameter may be NULL. A return value of true (1) indicates that it succeeded and false (0) indicates that it failed. The |windows_sandbox_info| parameter is only used on Windows and may be NULL (see cef_sandbox_win.h for details).
  • Returns true (1) if the certificate status represents an error.
  • Creates a new object that is not owned by any other object.
  • Returns the MediaRouter object associated with the global request context. If |callback| is non-NULL it will be executed asnychronously on the UI thread after the manager’s storage has been initialized. Equivalent to calling cef_request_context_t::cef_request_context_get_global_context()->get _media_router().
  • Create a new MenuModel with the specified |delegate|.
  • Create a new Panel.
  • Create a new cef_post_data_t object.
  • Create a new cef_post_data_element_t object.
  • Post a task for delayed execution on the specified thread. Equivalent to using cef_task_runner_t::GetForThread(threadId)->PostDelayedTask(task, delay_ms).
  • Post a task for execution on the specified thread. Equivalent to using cef_task_runner_t::GetForThread(threadId)->PostTask(task).
  • Returns the global preference manager object.
  • Create a new cef_print_settings_t object.
  • Create a new cef_process_message_t object with the specified name.
  • Quit the CEF message loop that was started by calling cef_run_message_loop(). This function should only be called on the main application thread and only if cef_run_message_loop() was used.
  • Register a new V8 extension with the specified JavaScript extension code and handler. Functions implemented by the handler are prototyped using the keyword ‘native’. The calling of a native function is restricted to the scope in which the prototype of the native function is defined. This function may only be called on the render process main thread.
  • Register a scheme handler factory with the global request context. An NULL |domain_name| value for a standard scheme will cause the factory to match all domain names. The |domain_name| value will be ignored for non-standard schemes. If |scheme_name| is a built-in scheme and no handler is returned by |factory| then the built-in scheme handler factory will be called. If |scheme_name| is a custom scheme then you must also implement the cef_app_t::on_register_custom_schemes() function in all processes. This function may be called multiple times to change or remove the factory that matches the specified |scheme_name| and optional |domain_name|. Returns false (0) if an error occurs. This function may be called on any thread in the browser process. Using this function is equivalent to calling cef_reques t_context_t::cef_request_context_get_global_context()->register_scheme_handl er_factory().
  • Creates a new context object with the specified |settings| and optional |handler|.
  • Returns the global context object.
  • Create a new cef_request_t object.
  • Create a new cef_response_t object.
  • Run the CEF message loop. Use this function instead of an application- provided message loop to get the best balance between performance and CPU usage. This function should only be called on the main application thread and only if cef_initialize() is called with a cef_settings_t.multi_threaded_message_loop value of false (0). This function will block until a quit message is received by the system.
  • This function should be called on the main application thread to shut down the CEF browser process before the application exits.
  • Create a new cef_stream_reader_t object from data.
  • Create a new cef_stream_reader_t object from a file.
  • Create a new cef_stream_reader_t object from a custom handler.
  • Create a new cef_stream_writer_t object for a file.
  • Create a new cef_stream_writer_t object for a custom handler.
  • These functions convert an ASCII string, typically a hardcoded constant, to a Wide/UTF16 string. Use instead of the UTF8 conversion routines if you know the string is ASCII.
  • Allocate a new string map.
  • Append a new value at the end of the string list.
  • Clear the string list.
  • Creates a copy of an existing string list.
  • Free the string list.
  • Return the number of elements in the string list.
  • Retrieve the value at the specified zero-based string list index. Returns true (1) if the value was successfully retrieved.
  • Allocate a new string map.
  • Append a new key/value pair at the end of the string map. If the key exists, overwrite the existing value with a new value w/o changing the pair order.
  • Clear the string map.
  • Return the value assigned to the specified key.
  • Free the string map.
  • Return the key at the specified zero-based string map index.
  • Return the number of elements in the string map.
  • Return the value at the specified zero-based string map index.
  • Allocate a new string multimap.
  • Append a new key/value pair at the end of the string multimap.
  • Clear the string multimap.
  • Return the value_index-th value with the specified key.
  • Return the number of values with the specified key.
  • Free the string multimap.
  • Return the key at the specified zero-based string multimap index.
  • Return the number of elements in the string multimap.
  • Return the value at the specified zero-based string multimap index.
  • These functions allocate a new string structure. They must be freed by calling the associated free function.
  • These functions free the string structure allocated by the associated alloc function. Any string contents will first be cleared.
  • These functions convert utf16 string case using the current ICU locale. This may change the length of the string in some cases.
  • These functions clear string values. The structure itself is not freed.
  • These functions compare two string values with the same results as strcmp().
  • These functions set string values. If |copy| is true (1) the value will be copied instead of referenced. It is up to the user to properly manage the lifespan of references.
  • These functions convert between UTF-8, -16, and -32 strings. They are potentially slow so unnecessary conversions should be avoided. The best possible result will always be written to |output| with the boolean return value indicating whether the conversion is 100% valid.
  • Returns the task runner for the current thread. Only CEF threads will have task runners. An NULL reference will be returned if this function is called on an invalid thread.
  • Returns the task runner for the specified CEF thread.
  • Retrieve the delta in milliseconds between two time values. Returns true (1) on success and false (0) on failure.
  • Converts cef_basetime_t to cef_time_t. Returns true (1) on success and false (0) on failure.
  • Retrieve the current system time. Returns true (1) on success and false (0) on failure.
  • Converts cef_time_t to cef_basetime_t. Returns true (1) on success and false (0) on failure.
  • Converts cef_time_t to/from a double which is the number of seconds since epoch (Jan 1, 1970). Webkit uses this format to represent time. A value of 0 means “not initialized”. Returns true (1) on success and false (0) on failure.
  • Converts cef_time_t to/from time_t. Returns true (1) on success and false (0) on failure.
  • Returns the current (top) context object in the V8 context stack.
  • Returns the entered (bottom) context object in the V8 context stack.
  • Returns true (1) if V8 is currently inside a context.
  • Returns the stack trace for the currently active context. |frame_limit| is the maximum number of frames that will be captured.
  • Create a new cef_v8value_t object of type array with the specified |length|. If |length| is negative the returned array will have length 0. This function should only be called from within the scope of a cef_render_process_handler_t, cef_v8handler_t or cef_v8accessor_t callback, or in combination with calling enter() and exit() on a stored cef_v8context_t reference.
  • Create a new cef_v8value_t object of type ArrayBuffer which wraps the provided |buffer| of size |length| bytes. The ArrayBuffer is externalized, meaning that it does not own |buffer|. The caller is responsible for freeing |buffer| when requested via a call to cef_v8array_buffer_release_callback_t::ReleaseBuffer. This function should only be called from within the scope of a cef_render_process_handler_t, cef_v8handler_t or cef_v8accessor_t callback, or in combination with calling enter() and exit() on a stored cef_v8context_t reference.
  • Create a new cef_v8value_t object of type bool.
  • Create a new cef_v8value_t object of type Date. This function should only be called from within the scope of a cef_render_process_handler_t, cef_v8handler_t or cef_v8accessor_t callback, or in combination with calling enter() and exit() on a stored cef_v8context_t reference.
  • Create a new cef_v8value_t object of type double.
  • Create a new cef_v8value_t object of type function. This function should only be called from within the scope of a cef_render_process_handler_t, cef_v8handler_t or cef_v8accessor_t callback, or in combination with calling enter() and exit() on a stored cef_v8context_t reference.
  • Create a new cef_v8value_t object of type int.
  • Create a new cef_v8value_t object of type null.
  • Create a new cef_v8value_t object of type object with optional accessor and/or interceptor. This function should only be called from within the scope of a cef_render_process_handler_t, cef_v8handler_t or cef_v8accessor_t callback, or in combination with calling enter() and exit() on a stored cef_v8context_t reference.
  • Create a new cef_v8value_t object of type Promise. This function should only be called from within the scope of a cef_render_process_handler_t, cef_v8handler_t or cef_v8accessor_t callback, or in combination with calling enter() and exit() on a stored cef_v8context_t reference.
  • Create a new cef_v8value_t object of type string.
  • Create a new cef_v8value_t object of type unsigned int.
  • Create a new cef_v8value_t object of type undefined.
  • Creates a new object.
  • Create a new Window.

Type Aliases

  • Implement this structure to receive accessibility notification when accessibility events have been registered. The functions of this structure will be called on the UI thread.
  • Implement this structure to provide handler implementations. Methods will be called by the process and/or thread indicated.
  • Implement this structure to handle audio events.
  • Structure representing the audio parameters for setting up the audio handler.
  • Callback structure used for asynchronous continuation of authentication requests.
  • Represents a wall clock time in UTC. Values are not guaranteed to be monotonically non-decreasing and are subject to large amounts of skew. Time is stored internally as microseconds since the Windows epoch (1601).
  • Callback structure used to asynchronously continue a download.
  • Structure representing a binary value. Can be used on any process and thread.
  • Settings used when initializing a CefBoxLayout.
  • Structure used to represent the browser process aspects of a browser. The functions of this structure can only be called in the browser process. They may be called on any thread in that process unless otherwise indicated in the comments.
  • Structure used to implement browser process callbacks. The functions of this structure will be called on the browser process main thread unless otherwise indicated.
  • Browser initialization settings. Specify NULL or 0 to get the recommended default values. The consequences of using custom values may not be well tested. Many of these and other settings can also configured using command- line switches.
  • Structure used to represent a browser. When used in the browser process the functions of this structure may be called on any thread unless otherwise indicated in the comments. When used in the render process the functions of this structure may only be called on the main thread.
  • Implement this structure to handle BrowserView events. The functions of this structure will be called on the browser process UI thread unless otherwise indicated.
  • A View hosting a cef_browser_t instance. Methods must be called on the browser process UI thread unless otherwise indicated.
  • Generic callback structure used for asynchronous continuation.
  • Implement this structure to provide handler implementations.
  • Implement this structure to handle events related to commands. The functions of this structure will be called on the UI thread.
  • Structure used to create and/or parse command line arguments. Arguments with “–”, “-” and, on Windows, “/” prefixes are considered switches. Switches will always precede any arguments without switch prefixes. Switches can optionally have a value specified using the “=” delimiter (e.g. “-switch=value”). An argument of “–” will terminate switch parsing with all subsequent tokens, regardless of prefix, being interpreted as non-switch arguments. Switch names should be lowercase ASCII and will be converted to such if necessary. Switch values will retain the original case and UTF8 encoding. This structure can be used before cef_initialize() is called.
  • Generic callback structure used for asynchronous completion.
  • Structure representing IME composition underline information. This is a thin wrapper around Blink’s WebCompositionUnderline class and should be kept in sync with that.
  • Implement this structure to handle context menu events. The functions of this structure will be called on the UI thread.
  • Provides information about the context menu state. The functions of this structure can only be accessed on browser process the UI thread.
  • Implement this structure to filter cookies that may be sent or received from resource requests. The functions of this structure will be called on the IO thread unless otherwise indicated.
  • Structure used for managing cookies. The functions of this structure may be called on any thread unless otherwise indicated.
  • Cookie information.
  • Structure to implement for visiting cookie values. The functions of this structure will always be called on the UI thread.
  • Structure representing cursor information. |buffer| will be |size.width|*|size.height|*4 bytes in size and represents a BGRA image with an upper-left origin.
  • Structure to implement to be notified of asynchronous completion via cef_cookie_manager_t::delete_cookies().
  • Callback structure for cef_browser_host_t::AddDevToolsMessageObserver. The functions of this structure will be called on the browser process UI thread.
  • Implement this structure to handle dialog events. The functions of this structure will be called on the browser process UI thread.
  • Structure representing a dictionary value. Can be used on any process and thread.
  • Implement this structure to handle events related to browser display state. The functions of this structure will be called on the UI thread.
  • This structure typically, but not always, corresponds to a physical display connected to the system. A fake Display may exist on a headless system, or a Display may correspond to a remote, virtual display. All size and position values are in density independent pixel (DIP) coordinates unless otherwise indicated. Methods must be called on the browser process UI thread unless otherwise indicated.
  • Structure used to represent a DOM document. The functions of this structure should only be called on the render process main thread thread.
  • Structure used to represent a DOM node. The functions of this structure should only be called on the render process main thread.
  • Structure to implement for visiting the DOM. The functions of this structure will be called on the render process main thread.
  • Structure used to handle file downloads. The functions of this structure will called on the browser process UI thread.
  • Callback structure for cef_browser_host_t::DownloadImage. The functions of this structure will be called on the browser process UI thread.
  • Callback structure used to asynchronously cancel a download.
  • Structure used to represent a download item.
  • Structure used to represent drag data. The functions of this structure may be called on any thread.
  • Implement this structure to handle events related to dragging. The functions of this structure will be called on the UI thread.
  • Structure representing a draggable region.
  • Implement this structure to handle events related to browser extensions. The functions of this structure will be called on the UI thread. See cef_request_context_t::LoadExtension for information about extension loading.
  • Object representing an extension. Methods may be called on any thread unless otherwise indicated.
  • Callback structure for asynchronous continuation of file dialog requests.
  • Implement this structure to handle events related to find results. The functions of this structure will be called on the UI thread.
  • Implement this structure to handle events related to focus. The functions of this structure will be called on the UI thread.
  • Implement this structure to handle events related to cef_frame_t life span. The order of callbacks is:
  • Structure used to represent a frame in the browser window. When used in the browser process the functions of this structure may be called on any thread unless otherwise indicated in the comments. When used in the render process the functions of this structure may only be called on the main thread.
  • Callback structure used for asynchronous continuation of cef_extension_handler_t::GetExtensionResource.
  • Container for a single image represented at different scale factors. All image representations should be the same size in density independent pixel (DIP) units. For example, if the image at scale factor 1.0 is 100x100 pixels then the image at scale factor 2.0 should be 200x200 pixels – both images will display with a DIP size of 100x100 units. The functions of this structure can be called on any browser process thread.
  • Structure representing insets.
  • Callback structure used for asynchronous continuation of JavaScript dialog requests.
  • Implement this structure to handle events related to JavaScript dialogs. The functions of this structure will be called on the UI thread.
  • Structure representing keyboard event information.
  • Implement this structure to handle events related to keyboard input. The functions of this structure will be called on the UI thread.
  • Implement this structure to handle events related to browser life span. The functions of this structure will be called on the UI thread unless otherwise indicated.
  • Structure representing a list value. Can be used on any process and thread.
  • Implement this structure to handle events related to browser load status. The functions of this structure will be called on the browser process UI thread or render process main thread (TID_RENDERER).
  • Structure representing CefExecuteProcess arguments.
  • Callback structure used for asynchronous continuation of media access permission requests.
  • Implemented by the client to observe MediaRouter events and registered via cef_media_router_t::AddObserver. The functions of this structure will be called on the browser process UI thread.
  • Callback structure for cef_media_router_t::CreateRoute. The functions of this structure will be called on the browser process UI thread.
  • Represents the route between a media source and sink. Instances of this object are created via cef_media_router_t::CreateRoute and retrieved via cef_media_observer_t::OnRoutes. Contains the status and metadata of a routing operation. The functions of this structure may be called on any browser process thread unless otherwise indicated.
  • Supports discovery of and communication with media devices on the local network via the Cast and DIAL protocols. The functions of this structure may be called on any browser process thread unless otherwise indicated.
  • Callback structure for cef_media_sink_t::GetDeviceInfo. The functions of this structure will be called on the browser process UI thread.
  • Device information for a MediaSink object.
  • Represents a sink to which media can be routed. Instances of this object are retrieved via cef_media_observer_t::OnSinks. The functions of this structure may be called on any browser process thread unless otherwise indicated.
  • Represents a source from which media can be routed. Instances of this object are retrieved via cef_media_router_t::GetSource. The functions of this structure may be called on any browser process thread unless otherwise indicated.
  • Implement this structure to handle menu model events. The functions of this structure will be called on the browser process UI thread unless otherwise indicated.
  • Supports creation and modification of menus. 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. The functions of this structure can only be accessed on the browser process the UI thread.
  • Structure representing mouse event information.
  • Structure used to represent an entry in navigation history.
  • Callback structure for cef_browser_host_t::GetNavigationEntries. The functions of this structure will be called on the browser process UI thread.
  • Controller for an overlay that contains a contents View added via cef_window_t::AddOverlayView. Methods exposed by this controller should be called in preference to functions of the same name exposed by the contents View unless otherwise indicated. Methods must be called on the browser process UI thread unless otherwise indicated.
  • Implement this structure to handle Panel events. The functions of this structure will be called on the browser process UI thread unless otherwise indicated.
  • A Panel is a container in the views hierarchy that can contain other Views as children. Methods must be called on the browser process UI thread unless otherwise indicated.
  • Callback structure for cef_browser_host_t::PrintToPDF. The functions of this structure will be called on the browser process UI thread.
  • Structure representing PDF print settings. These values match the parameters supported by the DevTools Page.printToPDF function. See https://chromedevtools.github.io/devtools-protocol/tot/Page/#method-printToPDF
  • Implement this structure to handle events related to permission requests. The functions of this structure will be called on the browser process UI thread.
  • Callback structure used for asynchronous continuation of permission prompts.
  • Structure representing a point.
  • Popup window features.
  • Structure used to represent a single element in the request post data. The functions of this structure may be called on any thread.
  • Structure used to represent post data for a web request. The functions of this structure may be called on any thread.
  • Manage access to preferences. Many built-in preferences are registered by Chromium. Custom preferences can be registered in cef_browser_process_handler_t::OnRegisterCustomPreferences.
  • Structure that manages custom preference registrations.
  • Callback structure for asynchronous continuation of print dialog requests.
  • Implement this structure to handle printing on Linux. Each browser will have only one print job in progress at a time. The functions of this structure will be called on the browser process UI thread.
  • Callback structure for asynchronous continuation of print job requests.
  • Structure representing print settings.
  • Structure representing a message. Can be used on any process and thread.
  • Structure representing a range.
  • Structure the client can implement to provide a custom stream reader. The functions of this structure may be called on any thread.
  • Structure representing a rectangle.
  • Generic callback structure used for managing the lifespan of a registration.
  • Implement this structure to handle events when window rendering is disabled. The functions of this structure will be called on the UI thread.
  • Structure used to implement render process callbacks. The functions of this structure will be called on the render process main thread (TID_RENDERER) unless otherwise indicated.
  • Request context initialization settings. Specify NULL or 0 to get the recommended default values.
  • A request context provides request handling for a set of related browser or URL request objects. A request context can be specified when creating a new browser via the cef_browser_host_t static factory functions or when creating a new URL request via the cef_urlrequest_t static factory functions. Browser objects with different request contexts will never be hosted in the same render process. Browser objects with the same request context may or may not be hosted in the same render process depending on the process model. Browser objects created indirectly via the JavaScript window.open function or targeted links will share the same render process and the same request context as the source browser. When running in single-process mode there is only a single render process (the main process) and so all browsers created in single-process mode will share the same request context. This will be the first request context passed into a cef_browser_host_t static factory function and all other request context objects will be ignored.
  • Implement this structure to handle events related to browser requests. The functions of this structure will be called on the thread indicated.
  • Structure used to represent a web request. The functions of this structure may be called on any thread.
  • Callback structure for cef_request_context_t::ResolveHost.
  • Structure used to implement a custom resource bundle structure. See CefSettings for additional options related to resource bundle loading. The functions of this structure may be called on multiple threads.
  • Structure used to implement a custom request handler structure. The functions of this structure will be called on the IO thread unless otherwise indicated.
  • Callback for asynchronous continuation of cef_resource_handler_t::read().
  • Implement this structure to handle events related to browser requests. The functions of this structure will be called on the IO thread unless otherwise indicated.
  • Callback for asynchronous continuation of cef_resource_handler_t::skip().
  • Implement this structure to filter resource response content. The functions of this structure will be called on the browser process IO thread.
  • Structure used to represent a web response. The functions of this structure may be called on any thread.
  • Callback structure used for continuation of custom context menu display.
  • Callback structure for cef_browser_host_t::RunFileDialog. The functions of this structure will be called on the browser process UI thread.
  • Callback structure used for continuation of custom quick menu display.
  • Structure that creates cef_resource_handler_t instances for handling scheme requests. The functions of this structure will always be called on the IO thread.
  • Structure that manages custom scheme registrations.
  • Screen information used when window rendering is disabled. This structure is passed as a parameter to CefRenderHandler::GetScreenInfo and should be filled in by the client.
  • Callback structure used to select a client certificate for authentication.
  • Structure to implement to be notified of asynchronous completion via cef_cookie_manager_t::set_cookie().
  • Initialization settings. Specify NULL or 0 to get the recommended default values. Many of these and other settings can also configured using command- line switches.
  • Structure that wraps platform-dependent share memory region mapping.
  • Structure representing a size.
  • Structure representing SSL information.
  • Structure representing the SSL information for a navigation entry.
  • Structure used to read data from a stream. The functions of this structure may be called on any thread.
  • Structure used to write data to a stream. The functions of this structure may be called on any thread.
  • CEF string maps are a set of key/value string pairs.
  • CEF string maps are a set of key/value string pairs.
  • CEF string multimaps are a set of key/value string pairs. More than one value can be assigned to a single key.
  • It is sometimes necessary for the system to allocate string structures with the expectation that the user will free them. The userfree types act as a hint that the user is responsible for freeing the structure.
  • Implement this structure to receive string values asynchronously.
  • CEF string type definitions. Whomever allocates |str| is responsible for providing an appropriate |dtor| implementation that will free the string in the same memory space. When reusing an existing string structure make sure to call |dtor| for the old value before assigning new |str| and |dtor| values. Static strings will have a NULL |dtor| value. Using the below functions if you want this managed for you.
  • Structure that asynchronously executes tasks on the associated thread. It is safe to call the functions of this structure on any thread.
  • Implement this structure for asynchronous task execution. If the task is posted successfully and if the associated message loop is still running then the execute() function will be called on the target thread. If the task fails to post then the task object may be destroyed on the source thread instead of the target thread. For this reason be cautious when performing work in the task object destructor.
  • Time information. Values should always be in UTC.
  • Structure representing touch event information.
  • URL component parts.
  • Structure that should be implemented to handle V8 accessor calls. Accessor identifiers are registered by calling cef_v8value_t::set_value(). The functions of this structure will be called on the thread associated with the V8 accessor.
  • Callback structure that is passed to cef_v8value_t::CreateArrayBuffer.
  • Structure representing a V8 context handle. V8 handles can only be accessed from the thread on which they are created. Valid threads for creating a V8 handle include the render process main thread (TID_RENDERER) and WebWorker threads. A task runner for posting tasks on the associated thread can be retrieved via the cef_v8context_t::get_task_runner() function.
  • Structure representing a V8 exception. The functions of this structure may be called on any render process thread.
  • Structure that should be implemented to handle V8 function calls. The functions of this structure will be called on the thread associated with the V8 function.
  • Structure that should be implemented to handle V8 interceptor calls. The functions of this structure will be called on the thread associated with the V8 interceptor. Interceptor’s named property handlers (with first argument of type CefString) are called when object is indexed by string. Indexed property handlers (with first argument of type int) are called when object is indexed by integer.
  • Structure representing a V8 stack frame handle. V8 handles can only be accessed from the thread on which they are created. Valid threads for creating a V8 handle include the render process main thread (TID_RENDERER) and WebWorker threads. A task runner for posting tasks on the associated thread can be retrieved via the cef_v8context_t::get_task_runner() function.
  • Structure representing a V8 stack trace handle. V8 handles can only be accessed from the thread on which they are created. Valid threads for creating a V8 handle include the render process main thread (TID_RENDERER) and WebWorker threads. A task runner for posting tasks on the associated thread can be retrieved via the cef_v8context_t::get_task_runner() function.
  • Structure representing a V8 value handle. V8 handles can only be accessed from the thread on which they are created. Valid threads for creating a V8 handle include the render process main thread (TID_RENDERER) and WebWorker threads. A task runner for posting tasks on the associated thread can be retrieved via the cef_v8context_t::get_task_runner() function.
  • Structure that wraps other data value types. Complex types (binary, dictionary and list) will be referenced but not owned by this object. Can be used on any process and thread.
  • Implement this structure to handle view events. All size and position values are in density independent pixels (DIP) unless otherwise indicated. The functions of this structure will be called on the browser process UI thread unless otherwise indicated.
  • A View is a rectangle within the views View hierarchy. It is the base structure for all Views. All size and position values are in density independent pixels (DIP) unless otherwise indicated. Methods must be called on the browser process UI thread unless otherwise indicated.
  • Implement this structure to handle window events. The functions of this structure will be called on the browser process UI thread unless otherwise indicated.
  • Class representing window information.
  • A Window is a top-level Window/widget in the Views hierarchy. By default it will have a non-client area with title bar, icon and buttons that supports moving and resizing. All size and position values are in density independent pixels (DIP) unless otherwise indicated. Methods must be called on the browser process UI thread unless otherwise indicated.
  • Structure the client can implement to provide a custom stream writer. The functions of this structure may be called on any thread.
  • Structure representing the issuer or subject field of an X.509 certificate.
  • Structure representing a X.509 certificate.