// Copyright (c) 2013 CEF Python, see the Authors file.
// All rights reserved. Licensed under BSD 3-clause license.
// Project website: https://github.com/cztomczak/cefpython
#include "common/cefpython_public_api.h"
#include "include/cef_render_handler.h"
class RenderHandler : public CefRenderHandler
{
public:
RenderHandler(){}
virtual ~RenderHandler(){}
bool GetRootScreenRect(CefRefPtr browser,
CefRect& rect) override;
bool GetViewRect(CefRefPtr browser,
CefRect& rect) override;
bool GetScreenPoint(CefRefPtr browser,
int viewX,
int viewY,
int& screenX,
int& screenY) override;
bool GetScreenInfo(CefRefPtr browser,
CefScreenInfo& screen_info) override;
void OnPopupShow(CefRefPtr browser,
bool show) override;
void OnPopupSize(CefRefPtr browser,
const CefRect& rect) override;
void OnPaint(CefRefPtr browser,
PaintElementType type,
const RectList& dirtyRects,
const void* buffer,
int width, int height) override;
void OnCursorChange(CefRefPtr browser,
CefCursorHandle cursor,
CursorType type,
const CefCursorInfo& custom_cursor_info
) override;
void OnScrollOffsetChanged(CefRefPtr browser,
double x,
double y) override;
bool StartDragging(CefRefPtr browser,
CefRefPtr drag_data,
cef_drag_operations_mask_t allowed_ops,
int x, int y) override;
void UpdateDragCursor(CefRefPtr browser,
cef_drag_operations_mask_t operation) override;
private:
IMPLEMENT_REFCOUNTING(RenderHandler);
};