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 <memory> | 7 #include <memory> |
8 #include <utility> | 8 #include <utility> |
9 | 9 |
10 #include "base/auto_reset.h" | 10 #include "base/auto_reset.h" |
(...skipping 924 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
935 bool RenderWidget::IsClosing() const { | 935 bool RenderWidget::IsClosing() const { |
936 return host_closing_; | 936 return host_closing_; |
937 } | 937 } |
938 | 938 |
939 void RenderWidget::RequestScheduleAnimation() { | 939 void RenderWidget::RequestScheduleAnimation() { |
940 scheduleAnimation(); | 940 scheduleAnimation(); |
941 } | 941 } |
942 | 942 |
943 void RenderWidget::UpdateVisualState() { | 943 void RenderWidget::UpdateVisualState() { |
944 GetWebWidget()->updateAllLifecyclePhases(); | 944 GetWebWidget()->updateAllLifecyclePhases(); |
| 945 GetWebWidget()->setSuppressFrameRequestsWorkaroundFor704763Only(false); |
945 | 946 |
946 if (time_to_first_active_paint_recorded_) | 947 if (time_to_first_active_paint_recorded_) |
947 return; | 948 return; |
948 | 949 |
949 RenderThreadImpl* render_thread_impl = RenderThreadImpl::current(); | 950 RenderThreadImpl* render_thread_impl = RenderThreadImpl::current(); |
950 if (!render_thread_impl->NeedsToRecordFirstActivePaint()) | 951 if (!render_thread_impl->NeedsToRecordFirstActivePaint()) |
951 return; | 952 return; |
952 | 953 |
953 time_to_first_active_paint_recorded_ = true; | 954 time_to_first_active_paint_recorded_ = true; |
954 base::TimeDelta sample = base::TimeTicks::Now() - was_shown_time_; | 955 base::TimeDelta sample = base::TimeTicks::Now() - was_shown_time_; |
955 UMA_HISTOGRAM_TIMES("PurgeAndSuspend.Experimental.TimeToFirstActivePaint", | 956 UMA_HISTOGRAM_TIMES("PurgeAndSuspend.Experimental.TimeToFirstActivePaint", |
956 sample); | 957 sample); |
957 } | 958 } |
958 | 959 |
959 void RenderWidget::WillBeginCompositorFrame() { | 960 void RenderWidget::WillBeginCompositorFrame() { |
960 TRACE_EVENT0("gpu", "RenderWidget::willBeginCompositorFrame"); | 961 TRACE_EVENT0("gpu", "RenderWidget::willBeginCompositorFrame"); |
961 | 962 |
| 963 GetWebWidget()->setSuppressFrameRequestsWorkaroundFor704763Only(true); |
| 964 |
962 // The UpdateTextInputState can result in further layout and possibly | 965 // The UpdateTextInputState can result in further layout and possibly |
963 // enable GPU acceleration so they need to be called before any painting | 966 // enable GPU acceleration so they need to be called before any painting |
964 // is done. | 967 // is done. |
965 UpdateTextInputState(); | 968 UpdateTextInputState(); |
966 UpdateSelectionBounds(); | 969 UpdateSelectionBounds(); |
967 | 970 |
968 for (auto& observer : render_frame_proxies_) | 971 for (auto& observer : render_frame_proxies_) |
969 observer.WillBeginCompositorFrame(); | 972 observer.WillBeginCompositorFrame(); |
970 } | 973 } |
971 | 974 |
(...skipping 1366 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2338 // browser side (https://crbug.com/669219). | 2341 // browser side (https://crbug.com/669219). |
2339 // If there is no WebFrameWidget, then there will be no | 2342 // If there is no WebFrameWidget, then there will be no |
2340 // InputMethodControllers for a WebLocalFrame. | 2343 // InputMethodControllers for a WebLocalFrame. |
2341 return nullptr; | 2344 return nullptr; |
2342 } | 2345 } |
2343 return static_cast<blink::WebFrameWidget*>(GetWebWidget()) | 2346 return static_cast<blink::WebFrameWidget*>(GetWebWidget()) |
2344 ->getActiveWebInputMethodController(); | 2347 ->getActiveWebInputMethodController(); |
2345 } | 2348 } |
2346 | 2349 |
2347 } // namespace content | 2350 } // namespace content |
OLD | NEW |