Skip to content

Latest commit

 

History

History
211 lines (148 loc) · 5.68 KB

File metadata and controls

211 lines (148 loc) · 5.68 KB

API categories | API index

RenderHandler (interface)

Implement this interface to handle events when window rendering is disabled (off-screen rendering). The methods of this class will be called on the UI thread.

In order to create windowless browsers the ApplicationSettings.windowless_rendering_enabled value must be set to true.

Callbacks not implemented yet:

  • GetScreenInfo()

Off-screen rendering examples:

Table of contents:

Callbacks

GetRootScreenRect

Parameter Type
browser Browser
out rect list
Return bool

Called to retrieve the root window rectangle in screen coordinates. Return true if the rectangle was provided.

GetViewRect

Parameter Type
browser Browser
out rect list
Return bool

Called to retrieve the view rectangle which is relative to screen coordinates. Return true if the rectangle was provided.

The rect list should contain 4 elements: [x, y, width, height].

GetScreenRect

Parameter Type
browser Browser
out rect list
Return bool

Called to retrieve the simulated screen rectangle. Return true if the rectangle was provided.

The rect list should contain 4 elements: [x, y, width, height].

GetScreenPoint

Parameter Type
browser Browser
viewX int
viewY int
out screenCoordinates list
Return bool

Called to retrieve the translation from view coordinates to actual screen coordinates. Return true if the screen coordinates were provided.

The screenCoordinates list should contain 2 elements: [x, y].

OnPopupShow

Parameter Type
browser Browser
show bool
Return void

Called when the browser wants to show or hide the popup widget. The popup should be shown if |show| is true and hidden if |show| is false.

OnPopupSize

Parameter Type
browser Browser
rect list
Return void

Called when the browser wants to move or resize the popup widget. |rect| contains the new location and size.

The rect list should contain 4 elements: [x, y, width, height].

OnPaint

Parameter Type
browser Browser
paintElementType int
out dirtyRects list
buffer PaintBuffer
width int
height int
Return void

Called when an element should be painted. Pixel values passed to this method are scaled relative to view coordinates based on the value of CefScreenInfo.device_scale_factor returned from GetScreenInfo. |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.

paintElementType constants in the cefpython module:

  • PET_VIEW
  • PET_POPUP

dirtyRects is a list of rects: [[x, y, width, height], [..]]

OnCursorChange

Parameter Type
browser Browser
cursor CursorHandle
Return void

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.

CursorHandle is an int pointer.

OnScrollOffsetChanged

Parameter Type
browser Browser
Return void

Called when the scroll offset has changed.

StartDragging

Parameter Type
browser Browser
drag_data DragData
allowed_ops int
x int
y int
Return void

Description from upstream CEF:

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 to abort the drag operation. Don't call any of CefBrowserHost::DragSourceEnded methods after returning false.

Return true to handle the drag operation. Call CefBrowserHost::DragSourceEndedAt and DragSourceSystemDragEnded either synchronously or asynchronously to inform the web view that the drag operation has ended.

UpdateDragCursor

Parameter Type
browser Browser
operation int
Return void

Description from upstream CEF:

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).

See Browser.DragSourceEndedAt for a list of values for the operation enum.