summaryrefslogtreecommitdiffstats
path: root/chrome/common/render_messages_internal.h
diff options
context:
space:
mode:
authorrsesek@chromium.org <rsesek@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2009-12-18 15:52:54 +0000
committerrsesek@chromium.org <rsesek@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2009-12-18 15:52:54 +0000
commit9de65c8b3f17f28ff7edebb63f0922f5734bf55b (patch)
tree7ec8c5b258e930a9c1c1682f451fc877f640f780 /chrome/common/render_messages_internal.h
parentcd7bc4ed28abcb9a3652d4e3f6ffa2fe9f503aae (diff)
downloadchromium_src-9de65c8b3f17f28ff7edebb63f0922f5734bf55b.zip
chromium_src-9de65c8b3f17f28ff7edebb63f0922f5734bf55b.tar.gz
chromium_src-9de65c8b3f17f28ff7edebb63f0922f5734bf55b.tar.bz2
Revert 34951 - Combine ViewHostMsg_{Paint,Scroll}Rect into one IPC.
The combined IPC means that scrolling only requires one transport DIB instead of two. Previously, we'd use one in the ScrollRect IPC to pass up the pixels for the exposed region, and then we'd use a second one in the PaintRect IPC to pass up the pixels for the updated scroll bar rendering. Now all paints are done using a single transport DIB. Optimize RenderWidgetHostViewWin::OnPaint to only paint the damaged regions. This means calling GetUpdateRgn and GetRegionData to enumerate the list of damage rects. Then only those rects are copied from the backing store. The same optimization is not done for Linux or Mac yet. R=brettw BUG=29591 TEST=none Review URL: http://codereview.chromium.org/506013 TBR=darin@chromium.org Review URL: http://codereview.chromium.org/506075 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@34953 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/common/render_messages_internal.h')
-rw-r--r--chrome/common/render_messages_internal.h23
1 files changed, 16 insertions, 7 deletions
diff --git a/chrome/common/render_messages_internal.h b/chrome/common/render_messages_internal.h
index ca3e80b..3f9a1f1 100644
--- a/chrome/common/render_messages_internal.h
+++ b/chrome/common/render_messages_internal.h
@@ -128,6 +128,10 @@ IPC_BEGIN_MESSAGES(View)
// render view responds with a ViewHostMsg_Thumbnail.
IPC_MESSAGE_ROUTED0(ViewMsg_CaptureThumbnail)
+ // Tells the render view that a ViewHostMsg_PaintRect message was processed.
+ // This signals the render view that it can send another PaintRect message.
+ IPC_MESSAGE_ROUTED0(ViewMsg_PaintRect_ACK)
+
// Tells the render view to switch the CSS to print media type, renders every
// requested pages and switch back the CSS to display media type.
IPC_MESSAGE_ROUTED0(ViewMsg_PrintPages)
@@ -143,9 +147,9 @@ IPC_BEGIN_MESSAGES(View)
// JS garbage, not in purging irreplaceable objects.
IPC_MESSAGE_CONTROL0(ViewMsg_PurgeMemory)
- // Tells the render view that a ViewHostMsg_UpdateRect message was processed.
- // This signals the render view that it can send another UpdateRect message.
- IPC_MESSAGE_ROUTED0(ViewMsg_UpdateRect_ACK)
+ // Tells the render view that a ViewHostMsg_ScrollRect message was processed.
+ // This signals the render view that it can send another ScrollRect message.
+ IPC_MESSAGE_ROUTED0(ViewMsg_ScrollRect_ACK)
// Message payload includes:
// 1. A blob that should be cast to WebInputEvent
@@ -989,10 +993,15 @@ IPC_BEGIN_MESSAGES(ViewHost)
navigating to a POST again and we're going to
show the POST interstitial */ )
- // Sent to update part of the view. In response to this message, the host
- // generates a ViewMsg_UpdateRect_ACK message.
- IPC_MESSAGE_ROUTED1(ViewHostMsg_UpdateRect,
- ViewHostMsg_UpdateRect_Params)
+ // Sent to paint part of the view. In response to this message, the host
+ // generates a ViewMsg_PaintRect_ACK message.
+ IPC_MESSAGE_ROUTED1(ViewHostMsg_PaintRect,
+ ViewHostMsg_PaintRect_Params)
+
+ // Sent to scroll part of the view. In response to this message, the host
+ // generates a ViewMsg_ScrollRect_ACK message.
+ IPC_MESSAGE_ROUTED1(ViewHostMsg_ScrollRect,
+ ViewHostMsg_ScrollRect_Params)
// Acknowledges receipt of a ViewMsg_HandleInputEvent message.
// Payload is a WebInputEvent::Type which is the type of the event, followed