| OLD | NEW |
| 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 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 #include "content/renderer/render_widget.h" | 5 #include "content/renderer/render_widget.h" |
| 6 | 6 |
| 7 #include <utility> | 7 #include <utility> |
| 8 | 8 |
| 9 #include "base/auto_reset.h" | 9 #include "base/auto_reset.h" |
| 10 #include "base/bind.h" | 10 #include "base/bind.h" |
| (...skipping 806 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 817 } | 817 } |
| 818 | 818 |
| 819 void RenderWidget::DidCompletePageScaleAnimation() {} | 819 void RenderWidget::DidCompletePageScaleAnimation() {} |
| 820 | 820 |
| 821 void RenderWidget::DidCompleteSwapBuffers() { | 821 void RenderWidget::DidCompleteSwapBuffers() { |
| 822 TRACE_EVENT0("renderer", "RenderWidget::DidCompleteSwapBuffers"); | 822 TRACE_EVENT0("renderer", "RenderWidget::DidCompleteSwapBuffers"); |
| 823 | 823 |
| 824 // Notify subclasses threaded composited rendering was flushed to the screen. | 824 // Notify subclasses threaded composited rendering was flushed to the screen. |
| 825 DidFlushPaint(); | 825 DidFlushPaint(); |
| 826 | 826 |
| 827 if (!next_paint_flags_ && !need_update_rect_for_auto_resize_ && | 827 if (!next_paint_flags_ && !need_update_rect_for_auto_resize_) { |
| 828 !plugin_window_moves_.size()) { | |
| 829 return; | 828 return; |
| 830 } | 829 } |
| 831 | 830 |
| 832 ViewHostMsg_UpdateRect_Params params; | 831 ViewHostMsg_UpdateRect_Params params; |
| 833 params.view_size = size_; | 832 params.view_size = size_; |
| 834 params.plugin_window_moves.swap(plugin_window_moves_); | |
| 835 params.flags = next_paint_flags_; | 833 params.flags = next_paint_flags_; |
| 836 | 834 |
| 837 Send(new ViewHostMsg_UpdateRect(routing_id_, params)); | 835 Send(new ViewHostMsg_UpdateRect(routing_id_, params)); |
| 838 next_paint_flags_ = 0; | 836 next_paint_flags_ = 0; |
| 839 need_update_rect_for_auto_resize_ = false; | 837 need_update_rect_for_auto_resize_ = false; |
| 840 } | 838 } |
| 841 | 839 |
| 842 bool RenderWidget::ForOOPIF() const { | 840 bool RenderWidget::ForOOPIF() const { |
| 843 // TODO(simonhong): Remove this when we enable BeginFrame scheduling for | 841 // TODO(simonhong): Remove this when we enable BeginFrame scheduling for |
| 844 // OOPIF(crbug.com/471411). | 842 // OOPIF(crbug.com/471411). |
| (...skipping 1156 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2001 const blink::WebFloatSize& velocity) { | 1999 const blink::WebFloatSize& velocity) { |
| 2002 input_handler_->DidOverscrollFromBlink(unusedDelta, accumulatedRootOverScroll, | 2000 input_handler_->DidOverscrollFromBlink(unusedDelta, accumulatedRootOverScroll, |
| 2003 position, velocity); | 2001 position, velocity); |
| 2004 } | 2002 } |
| 2005 | 2003 |
| 2006 void RenderWidget::StartCompositor() { | 2004 void RenderWidget::StartCompositor() { |
| 2007 if (!is_hidden()) | 2005 if (!is_hidden()) |
| 2008 compositor_->setVisible(true); | 2006 compositor_->setVisible(true); |
| 2009 } | 2007 } |
| 2010 | 2008 |
| 2011 void RenderWidget::SchedulePluginMove(const WebPluginGeometry& move) { | |
| 2012 size_t i = 0; | |
| 2013 for (; i < plugin_window_moves_.size(); ++i) { | |
| 2014 if (plugin_window_moves_[i].window == move.window) { | |
| 2015 if (move.rects_valid) { | |
| 2016 plugin_window_moves_[i] = move; | |
| 2017 } else { | |
| 2018 plugin_window_moves_[i].visible = move.visible; | |
| 2019 } | |
| 2020 break; | |
| 2021 } | |
| 2022 } | |
| 2023 | |
| 2024 if (i == plugin_window_moves_.size()) | |
| 2025 plugin_window_moves_.push_back(move); | |
| 2026 } | |
| 2027 | |
| 2028 void RenderWidget::CleanupWindowInPluginMoves(gfx::PluginWindowHandle window) { | |
| 2029 for (WebPluginGeometryVector::iterator i = plugin_window_moves_.begin(); | |
| 2030 i != plugin_window_moves_.end(); ++i) { | |
| 2031 if (i->window == window) { | |
| 2032 plugin_window_moves_.erase(i); | |
| 2033 break; | |
| 2034 } | |
| 2035 } | |
| 2036 } | |
| 2037 | |
| 2038 | |
| 2039 RenderWidgetCompositor* RenderWidget::compositor() const { | 2009 RenderWidgetCompositor* RenderWidget::compositor() const { |
| 2040 return compositor_.get(); | 2010 return compositor_.get(); |
| 2041 } | 2011 } |
| 2042 | 2012 |
| 2043 void RenderWidget::SetHandlingInputEventForTesting(bool handling_input_event) { | 2013 void RenderWidget::SetHandlingInputEventForTesting(bool handling_input_event) { |
| 2044 input_handler_->set_handling_input_event(handling_input_event); | 2014 input_handler_->set_handling_input_event(handling_input_event); |
| 2045 } | 2015 } |
| 2046 | 2016 |
| 2047 bool RenderWidget::SendAckForMouseMoveFromDebugger() { | 2017 bool RenderWidget::SendAckForMouseMoveFromDebugger() { |
| 2048 return input_handler_->SendAckForMouseMoveFromDebugger(); | 2018 return input_handler_->SendAckForMouseMoveFromDebugger(); |
| (...skipping 135 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2184 } | 2154 } |
| 2185 | 2155 |
| 2186 float RenderWidget::GetOriginalDeviceScaleFactor() const { | 2156 float RenderWidget::GetOriginalDeviceScaleFactor() const { |
| 2187 return | 2157 return |
| 2188 screen_metrics_emulator_ ? | 2158 screen_metrics_emulator_ ? |
| 2189 screen_metrics_emulator_->original_screen_info().deviceScaleFactor : | 2159 screen_metrics_emulator_->original_screen_info().deviceScaleFactor : |
| 2190 device_scale_factor_; | 2160 device_scale_factor_; |
| 2191 } | 2161 } |
| 2192 | 2162 |
| 2193 } // namespace content | 2163 } // namespace content |
| OLD | NEW |