- Win: Improve redraw and scrolling performance (issue #360).

- Win: Fix CefBrowser::GetImage() and add "Get Image" example to cefclient (issue #377).
- Pass the list of dirty rectangles to CefRenderHandler::Paint(). (issue #415).

git-svn-id: https://chromiumembedded.googlecode.com/svn/trunk@368 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
This commit is contained in:
Marshall Greenblatt
2011-11-09 20:09:24 +00:00
parent 85ebe06965
commit 587eb7871d
17 changed files with 313 additions and 139 deletions

View File

@ -94,18 +94,22 @@ void CEF_CALLBACK render_handler_on_popup_size(
void CEF_CALLBACK render_handler_on_paint(struct _cef_render_handler_t* self,
cef_browser_t* browser, enum cef_paint_element_type_t type,
const cef_rect_t* dirtyRect, const void* buffer)
size_t dirtyRectCount, cef_rect_t const* dirtyRects, const void* buffer)
{
DCHECK(self);
DCHECK(browser);
DCHECK(dirtyRect);
DCHECK(dirtyRectCount > 0);
DCHECK(dirtyRects);
DCHECK(buffer);
if (!self || !browser || !dirtyRect || !buffer)
if (!self || !browser || dirtyRectCount == 0 || !dirtyRects || !buffer)
return;
CefRect rect(*dirtyRect);
CefRenderHandler::RectList rectList;
for (size_t i = 0; i < dirtyRectCount; ++i)
rectList.push_back(dirtyRects[i]);
return CefRenderHandlerCppToC::Get(self)->OnPaint(
CefBrowserCToCpp::Wrap(browser), type, rect, buffer);
CefBrowserCToCpp::Wrap(browser), type, rectList, buffer);
}
void CEF_CALLBACK render_handler_on_cursor_change(