summaryrefslogtreecommitdiffstats
path: root/chrome/browser/renderer_host/render_widget_host_view_mac.h
diff options
context:
space:
mode:
authoravi@google.com <avi@google.com@0039d316-1c4b-4281-b951-d872f2087c98>2009-04-21 13:21:15 +0000
committeravi@google.com <avi@google.com@0039d316-1c4b-4281-b951-d872f2087c98>2009-04-21 13:21:15 +0000
commit0b08a278fc4fb9537962a75a4281622996d3e991 (patch)
tree1b23a2b9dc4242ed2600731eb673796fa1464afc /chrome/browser/renderer_host/render_widget_host_view_mac.h
parent3a78a8e8278cf6ac28ecb0ed59afbf540c288e48 (diff)
downloadchromium_src-0b08a278fc4fb9537962a75a4281622996d3e991.zip
chromium_src-0b08a278fc4fb9537962a75a4281622996d3e991.tar.gz
chromium_src-0b08a278fc4fb9537962a75a4281622996d3e991.tar.bz2
Rework the RWHV so that when it gets a paint message from the renderer it immediately paints. Also, implement the fix for updates done for the other platforms in http://codereview.chromium.org/66013 .
Review URL: http://codereview.chromium.org/89001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@14093 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/renderer_host/render_widget_host_view_mac.h')
-rw-r--r--chrome/browser/renderer_host/render_widget_host_view_mac.h33
1 files changed, 18 insertions, 15 deletions
diff --git a/chrome/browser/renderer_host/render_widget_host_view_mac.h b/chrome/browser/renderer_host/render_widget_host_view_mac.h
index ffa0a5d..4c1e266 100644
--- a/chrome/browser/renderer_host/render_widget_host_view_mac.h
+++ b/chrome/browser/renderer_host/render_widget_host_view_mac.h
@@ -55,10 +55,6 @@ class RenderWidgetHostViewMac : public RenderWidgetHostView {
explicit RenderWidgetHostViewMac(RenderWidgetHost* widget);
virtual ~RenderWidgetHostViewMac();
- RenderWidgetHost* render_widget_host() const { return render_widget_host_; }
-
- base::TimeTicks& whiteout_start_time() { return whiteout_start_time_; }
-
RenderWidgetHostViewCocoa* native_view() const { return cocoa_view_; }
// Implementation of RenderWidgetHostView:
@@ -89,6 +85,24 @@ class RenderWidgetHostViewMac : public RenderWidgetHostView {
void KillSelf();
+ // These member variables should be private, but the associated ObjC class
+ // needs access to them and can't be made a friend.
+
+ // The associated Model.
+ RenderWidgetHost* render_widget_host_;
+
+ // This is true when we are currently painting and thus should handle extra
+ // paint requests by expanding the invalid rect rather than actually painting.
+ bool about_to_validate_and_paint_;
+
+ // This is the rectangle which we'll paint.
+ NSRect invalid_rect_;
+
+ // The time at which this view started displaying white pixels as a result of
+ // not having anything to paint (empty backing store from renderer). This
+ // value returns true for is_null() if we are not recording whiteout times.
+ base::TimeTicks whiteout_start_time_;
+
private:
// Updates the display cursor to the current cursor if the cursor is over this
// render view.
@@ -98,15 +112,9 @@ class RenderWidgetHostViewMac : public RenderWidgetHostView {
// invoke it from the message loop.
void ShutdownHost();
- // Redraws the window asynchronously.
- void Redraw(const gfx::Rect& invalid_rect);
-
// The associated view.
RenderWidgetHostViewCocoa* cocoa_view_; // WEAK
- // The associated Model.
- RenderWidgetHost* render_widget_host_;
-
// The cursor for the page. This is passed up from the renderer.
WebCursor current_cursor_;
@@ -123,11 +131,6 @@ class RenderWidgetHostViewMac : public RenderWidgetHostView {
// Factory used to safely scope delayed calls to ShutdownHost().
ScopedRunnableMethodFactory<RenderWidgetHostViewMac> shutdown_factory_;
- // The time at which this view started displaying white pixels as a result of
- // not having anything to paint (empty backing store from renderer). This
- // value returns true for is_null() if we are not recording whiteout times.
- base::TimeTicks whiteout_start_time_;
-
DISALLOW_COPY_AND_ASSIGN(RenderWidgetHostViewMac);
};