Chromium Code Reviews| Index: content/renderer/render_widget.cc |
| diff --git a/content/renderer/render_widget.cc b/content/renderer/render_widget.cc |
| index d4a55d6075564736399c4b010ae9cb21a701d9df..6cca40b11e63460c4dcc664b43906faebf3b6a5f 100644 |
| --- a/content/renderer/render_widget.cc |
| +++ b/content/renderer/render_widget.cc |
| @@ -406,12 +406,18 @@ void RenderWidget::Resize(const gfx::Size& new_size, |
| // Resize should have caused an invalidation of the entire view. |
| DCHECK(new_size.IsEmpty() || is_accelerated_compositing_active_ || |
| paint_aggregator_.HasPendingUpdate()); |
| - } else if (!RenderThreadImpl::current()->short_circuit_size_updates()) { |
|
piman
2013/05/14 22:19:43
I think you want to keep this check, as my underst
Xianzhu
2013/05/14 22:34:25
Done.
|
| + } else { |
| + resize_ack = NO_RESIZE_ACK; |
| + } |
| + |
| + if (new_size.IsEmpty() || physical_backing_size.IsEmpty()) { |
| + // For empty size or empty physical_backing_size, there is no next paint |
| + // (along with which to send the ack) until they are set to non-empty. |
| resize_ack = NO_RESIZE_ACK; |
| } |
| // Send the Resize_ACK flag once we paint again if requested. |
| - if (resize_ack == SEND_RESIZE_ACK && !new_size.IsEmpty()) |
| + if (resize_ack == SEND_RESIZE_ACK) |
| set_next_paint_is_resize_ack(); |
| if (fullscreen_change) |
| @@ -419,8 +425,7 @@ void RenderWidget::Resize(const gfx::Size& new_size, |
| // If a resize ack is requested and it isn't set-up, then no more resizes will |
| // come in and in general things will go wrong. |
| - DCHECK(resize_ack != SEND_RESIZE_ACK || new_size.IsEmpty() || |
| - next_paint_is_resize_ack()); |
| + DCHECK(resize_ack != SEND_RESIZE_ACK || next_paint_is_resize_ack()); |
| } |
| void RenderWidget::OnClose() { |