| OLD | NEW |
| 1 // Copyright (c) 2013 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2013 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/gpu/render_widget_compositor.h" | 5 #include "content/renderer/gpu/render_widget_compositor.h" |
| 6 | 6 |
| 7 #include <limits> | 7 #include <limits> |
| 8 #include <string> | 8 #include <string> |
| 9 | 9 |
| 10 #include "base/command_line.h" | 10 #include "base/command_line.h" |
| (...skipping 155 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 166 CommandLine* cmd = CommandLine::ForCurrentProcess(); | 166 CommandLine* cmd = CommandLine::ForCurrentProcess(); |
| 167 | 167 |
| 168 cc::LayerTreeSettings settings; | 168 cc::LayerTreeSettings settings; |
| 169 | 169 |
| 170 // For web contents, layer transforms should scale up the contents of layers | 170 // For web contents, layer transforms should scale up the contents of layers |
| 171 // to keep content always crisp when possible. | 171 // to keep content always crisp when possible. |
| 172 settings.layer_transforms_should_scale_layer_contents = true; | 172 settings.layer_transforms_should_scale_layer_contents = true; |
| 173 | 173 |
| 174 settings.throttle_frame_production = | 174 settings.throttle_frame_production = |
| 175 !cmd->HasSwitch(switches::kDisableGpuVsync); | 175 !cmd->HasSwitch(switches::kDisableGpuVsync); |
| 176 settings.begin_frame_scheduling_enabled = | 176 #if defined(OS_ANDROID) || (defined(USE_AURA) && !defined(OS_CHROMEOS)) |
| 177 cmd->HasSwitch(switches::kEnableBeginFrameScheduling); | 177 settings.begin_frame_receiver = true; |
| 178 #elif defined(OS_MACOSX) |
| 179 // Mac only uses browser compositor when delegated renderer is used. |
| 180 if (cmd->HasSwitch(switches::kEnableDelegatedRenderer)) |
| 181 settings.begin_frame_receiver = true; |
| 182 #endif |
| 178 settings.main_frame_before_activation_enabled = | 183 settings.main_frame_before_activation_enabled = |
| 179 cmd->HasSwitch(cc::switches::kEnableMainFrameBeforeActivation) && | 184 cmd->HasSwitch(cc::switches::kEnableMainFrameBeforeActivation) && |
| 180 !cmd->HasSwitch(cc::switches::kDisableMainFrameBeforeActivation); | 185 !cmd->HasSwitch(cc::switches::kDisableMainFrameBeforeActivation); |
| 181 settings.main_frame_before_draw_enabled = | 186 settings.main_frame_before_draw_enabled = |
| 182 !cmd->HasSwitch(cc::switches::kDisableMainFrameBeforeDraw); | 187 !cmd->HasSwitch(cc::switches::kDisableMainFrameBeforeDraw); |
| 183 settings.report_overscroll_only_for_scrollable_axes = true; | 188 settings.report_overscroll_only_for_scrollable_axes = true; |
| 184 settings.accelerated_animation_enabled = | 189 settings.accelerated_animation_enabled = |
| 185 !cmd->HasSwitch(cc::switches::kDisableThreadedAnimation); | 190 !cmd->HasSwitch(cc::switches::kDisableThreadedAnimation); |
| 186 | 191 |
| 187 settings.default_tile_size = CalculateDefaultTileSize(); | 192 settings.default_tile_size = CalculateDefaultTileSize(); |
| (...skipping 641 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 829 widget_->OnSwapBuffersAborted(); | 834 widget_->OnSwapBuffersAborted(); |
| 830 } | 835 } |
| 831 | 836 |
| 832 void RenderWidgetCompositor::RateLimitSharedMainThreadContext() { | 837 void RenderWidgetCompositor::RateLimitSharedMainThreadContext() { |
| 833 cc::ContextProvider* provider = | 838 cc::ContextProvider* provider = |
| 834 RenderThreadImpl::current()->SharedMainThreadContextProvider().get(); | 839 RenderThreadImpl::current()->SharedMainThreadContextProvider().get(); |
| 835 provider->ContextGL()->RateLimitOffscreenContextCHROMIUM(); | 840 provider->ContextGL()->RateLimitOffscreenContextCHROMIUM(); |
| 836 } | 841 } |
| 837 | 842 |
| 838 } // namespace content | 843 } // namespace content |
| OLD | NEW |