Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(320)

Side by Side Diff: chrome/browser/renderer_host/render_widget_host.h

Issue 66013: Fix problems correctly invalidating/repainting when our updated paint rect fo... (Closed) Base URL: svn://chrome-svn/chrome/trunk/src/
Patch Set: '' Created 11 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « no previous file | chrome/browser/renderer_host/render_widget_host.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2009 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2009 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #ifndef CHROME_BROWSER_RENDERER_HOST_RENDER_WIDGET_HOST_H_ 5 #ifndef CHROME_BROWSER_RENDERER_HOST_RENDER_WIDGET_HOST_H_
6 #define CHROME_BROWSER_RENDERER_HOST_RENDER_WIDGET_HOST_H_ 6 #define CHROME_BROWSER_RENDERER_HOST_RENDER_WIDGET_HOST_H_
7 7
8 #include <queue> 8 #include <queue>
9 #include <vector> 9 #include <vector>
10 10
(...skipping 339 matching lines...) Expand 10 before | Expand all | Expand 10 after
350 350
351 // Set if we are waiting for a repaint ack for the view. 351 // Set if we are waiting for a repaint ack for the view.
352 bool repaint_ack_pending_; 352 bool repaint_ack_pending_;
353 353
354 // True when waiting for RESIZE_ACK. 354 // True when waiting for RESIZE_ACK.
355 bool resize_ack_pending_; 355 bool resize_ack_pending_;
356 356
357 // The current size of the RenderWidget. 357 // The current size of the RenderWidget.
358 gfx::Size current_size_; 358 gfx::Size current_size_;
359 359
360 // If true, then we should not ask our view to repaint when our backingstore
361 // is updated.
362 bool suppress_view_updating_;
363
364 // True if a mouse move event was sent to the render view and we are waiting 360 // True if a mouse move event was sent to the render view and we are waiting
365 // for a corresponding ViewHostMsg_HandleInputEvent_ACK message. 361 // for a corresponding ViewHostMsg_HandleInputEvent_ACK message.
366 bool mouse_move_pending_; 362 bool mouse_move_pending_;
367 363
368 // The next mouse move event to send (only non-null while mouse_move_pending_ 364 // The next mouse move event to send (only non-null while mouse_move_pending_
369 // is true). 365 // is true).
370 scoped_ptr<WebKit::WebMouseEvent> next_mouse_move_; 366 scoped_ptr<WebKit::WebMouseEvent> next_mouse_move_;
371 367
372 // The time when an input event was sent to the RenderWidget. 368 // The time when an input event was sent to the RenderWidget.
373 base::TimeTicks input_event_start_time_; 369 base::TimeTicks input_event_start_time_;
(...skipping 10 matching lines...) Expand all
384 // The following value indicates a time in the future when we would consider 380 // The following value indicates a time in the future when we would consider
385 // the renderer hung if it does not generate an appropriate response message. 381 // the renderer hung if it does not generate an appropriate response message.
386 base::Time time_when_considered_hung_; 382 base::Time time_when_considered_hung_;
387 383
388 // This timer runs to check if time_when_considered_hung_ has past. 384 // This timer runs to check if time_when_considered_hung_ has past.
389 base::OneShotTimer<RenderWidgetHost> hung_renderer_timer_; 385 base::OneShotTimer<RenderWidgetHost> hung_renderer_timer_;
390 386
391 // Optional observer that listens for notifications of painting. 387 // Optional observer that listens for notifications of painting.
392 scoped_ptr<PaintObserver> paint_observer_; 388 scoped_ptr<PaintObserver> paint_observer_;
393 389
390 // Flag to detect recurive calls to GetBackingStore().
391 bool in_get_backing_store_;
392
394 // Set when we call DidPaintRect/DidScrollRect on the view. 393 // Set when we call DidPaintRect/DidScrollRect on the view.
395 bool view_being_painted_; 394 bool view_being_painted_;
396 395
397 // Used for UMA histogram logging to measure the time for a repaint view 396 // Used for UMA histogram logging to measure the time for a repaint view
398 // operation to finish. 397 // operation to finish.
399 base::TimeTicks repaint_start_time_; 398 base::TimeTicks repaint_start_time_;
400 399
401 // Queue of keyboard events that we need to track. 400 // Queue of keyboard events that we need to track.
402 typedef std::queue<NativeWebKeyboardEvent> KeyQueue; 401 typedef std::queue<NativeWebKeyboardEvent> KeyQueue;
403 402
404 // A queue of keyboard events. We can't trust data from the renderer so we 403 // A queue of keyboard events. We can't trust data from the renderer so we
405 // stuff key events into a queue and pop them out on ACK, feeding our copy 404 // stuff key events into a queue and pop them out on ACK, feeding our copy
406 // back to whatever unhandled handler instead of the returned version. 405 // back to whatever unhandled handler instead of the returned version.
407 KeyQueue key_queue_; 406 KeyQueue key_queue_;
408 407
409 // Set when we update the text direction of the selected input element. 408 // Set when we update the text direction of the selected input element.
410 bool text_direction_updated_; 409 bool text_direction_updated_;
411 WebTextDirection text_direction_; 410 WebTextDirection text_direction_;
412 411
413 // Set when we cancel updating the text direction. 412 // Set when we cancel updating the text direction.
414 // This flag also ignores succeeding update requests until we call 413 // This flag also ignores succeeding update requests until we call
415 // NotifyTextDirection(). 414 // NotifyTextDirection().
416 bool text_direction_canceled_; 415 bool text_direction_canceled_;
417 416
418 DISALLOW_COPY_AND_ASSIGN(RenderWidgetHost); 417 DISALLOW_COPY_AND_ASSIGN(RenderWidgetHost);
419 }; 418 };
420 419
421 #endif // CHROME_BROWSER_RENDERER_HOST_RENDER_WIDGET_HOST_H_ 420 #endif // CHROME_BROWSER_RENDERER_HOST_RENDER_WIDGET_HOST_H_
OLDNEW
« no previous file with comments | « no previous file | chrome/browser/renderer_host/render_widget_host.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698