| Index: content/browser/renderer_host/render_widget_host_view_mac.mm
|
| diff --git a/content/browser/renderer_host/render_widget_host_view_mac.mm b/content/browser/renderer_host/render_widget_host_view_mac.mm
|
| index 6fae1a31c5ada820818a167ba59b26a8a2c88725..c5b286aad1a40c71e1a466728ac4424186d468b7 100644
|
| --- a/content/browser/renderer_host/render_widget_host_view_mac.mm
|
| +++ b/content/browser/renderer_host/render_widget_host_view_mac.mm
|
| @@ -226,6 +226,7 @@ RenderWidgetHostViewMac::RenderWidgetHostViewMac(RenderWidgetHost* widget)
|
| : render_widget_host_(widget),
|
| about_to_validate_and_paint_(false),
|
| call_set_needs_display_in_rect_pending_(false),
|
| + last_frame_was_accelerated_(false),
|
| text_input_type_(ui::TEXT_INPUT_TYPE_NONE),
|
| is_loading_(false),
|
| is_hidden_(false),
|
| @@ -538,6 +539,8 @@ void RenderWidgetHostViewMac::ImeCompositionRangeChanged(
|
| void RenderWidgetHostViewMac::DidUpdateBackingStore(
|
| const gfx::Rect& scroll_rect, int scroll_dx, int scroll_dy,
|
| const std::vector<gfx::Rect>& copy_rects) {
|
| + last_frame_was_accelerated_ = false;
|
| +
|
| if (!is_hidden_) {
|
| std::vector<gfx::Rect> rects(copy_rects);
|
|
|
| @@ -876,6 +879,7 @@ void RenderWidgetHostViewMac::AcceleratedSurfaceBuffersSwapped(
|
| AcceleratedPluginView* view = ViewForPluginWindowHandle(window);
|
| DCHECK(view);
|
| if (view) {
|
| + last_frame_was_accelerated_ = true;
|
| plugin_container_manager_.SetSurfaceWasPaintedTo(window, surface_id);
|
|
|
| // The surface is hidden until its first paint, to not show gargabe.
|
| @@ -1738,8 +1742,7 @@ void RenderWidgetHostViewMac::SetTextInputActive(bool active) {
|
|
|
| const gfx::Rect damagedRect([self flipNSRectToRect:dirtyRect]);
|
|
|
| - if (renderWidgetHostView_->render_widget_host_->
|
| - is_accelerated_compositing_active()) {
|
| + if (renderWidgetHostView_->last_frame_was_accelerated_) {
|
| gfx::Rect gpuRect;
|
|
|
| gfx::PluginWindowHandle root_handle =
|
|
|