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/browser/web_contents/web_contents_impl.h" | 5 #include "content/browser/web_contents/web_contents_impl.h" |
6 | 6 |
7 #include <utility> | 7 #include <utility> |
8 | 8 |
9 #include "base/command_line.h" | 9 #include "base/command_line.h" |
10 #include "base/metrics/histogram.h" | 10 #include "base/metrics/histogram.h" |
(...skipping 462 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
473 command_line.HasSwitch(switches::kEnableAcceleratedScrollableFrames); | 473 command_line.HasSwitch(switches::kEnableAcceleratedScrollableFrames); |
474 prefs.composited_scrolling_for_frames_enabled = | 474 prefs.composited_scrolling_for_frames_enabled = |
475 command_line.HasSwitch(switches::kEnableCompositedScrollingForFrames); | 475 command_line.HasSwitch(switches::kEnableCompositedScrollingForFrames); |
476 prefs.show_paint_rects = | 476 prefs.show_paint_rects = |
477 command_line.HasSwitch(switches::kShowPaintRects); | 477 command_line.HasSwitch(switches::kShowPaintRects); |
478 prefs.render_vsync_enabled = | 478 prefs.render_vsync_enabled = |
479 !command_line.HasSwitch(switches::kDisableGpuVsync); | 479 !command_line.HasSwitch(switches::kDisableGpuVsync); |
480 prefs.accelerated_compositing_enabled = | 480 prefs.accelerated_compositing_enabled = |
481 GpuProcessHost::gpu_enabled() && | 481 GpuProcessHost::gpu_enabled() && |
482 !command_line.HasSwitch(switches::kDisableAcceleratedCompositing); | 482 !command_line.HasSwitch(switches::kDisableAcceleratedCompositing); |
| 483 #if defined(OS_WIN) && defined(ENABLE_HIDPI) |
| 484 prefs.force_compositing_mode = true; |
| 485 #else |
483 prefs.force_compositing_mode = | 486 prefs.force_compositing_mode = |
484 command_line.HasSwitch(switches::kForceCompositingMode) && | 487 command_line.HasSwitch(switches::kForceCompositingMode) && |
485 !command_line.HasSwitch(switches::kDisableForceCompositingMode); | 488 !command_line.HasSwitch(switches::kDisableForceCompositingMode); |
| 489 #endif |
486 prefs.fixed_position_compositing_enabled = | 490 prefs.fixed_position_compositing_enabled = |
487 command_line.HasSwitch(switches::kEnableCompositingForFixedPosition); | 491 command_line.HasSwitch(switches::kEnableCompositingForFixedPosition); |
488 prefs.accelerated_2d_canvas_enabled = | 492 prefs.accelerated_2d_canvas_enabled = |
489 GpuProcessHost::gpu_enabled() && | 493 GpuProcessHost::gpu_enabled() && |
490 !command_line.HasSwitch(switches::kDisableAccelerated2dCanvas); | 494 !command_line.HasSwitch(switches::kDisableAccelerated2dCanvas); |
491 prefs.deferred_2d_canvas_enabled = | 495 prefs.deferred_2d_canvas_enabled = |
492 !command_line.HasSwitch(switches::kDisableDeferred2dCanvas); | 496 !command_line.HasSwitch(switches::kDisableDeferred2dCanvas); |
493 prefs.antialiased_2d_canvas_disabled = | 497 prefs.antialiased_2d_canvas_disabled = |
494 command_line.HasSwitch(switches::kDisable2dCanvasAntialiasing); | 498 command_line.HasSwitch(switches::kDisable2dCanvasAntialiasing); |
495 prefs.accelerated_painting_enabled = | 499 prefs.accelerated_painting_enabled = |
(...skipping 102 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
598 } | 602 } |
599 | 603 |
600 if (ChildProcessSecurityPolicyImpl::GetInstance()->HasWebUIBindings( | 604 if (ChildProcessSecurityPolicyImpl::GetInstance()->HasWebUIBindings( |
601 rvh->GetProcess()->GetID())) { | 605 rvh->GetProcess()->GetID())) { |
602 prefs.loads_images_automatically = true; | 606 prefs.loads_images_automatically = true; |
603 prefs.javascript_enabled = true; | 607 prefs.javascript_enabled = true; |
604 } | 608 } |
605 | 609 |
606 prefs.is_online = !net::NetworkChangeNotifier::IsOffline(); | 610 prefs.is_online = !net::NetworkChangeNotifier::IsOffline(); |
607 | 611 |
| 612 #if defined(OS_WIN) && defined(ENABLE_HIDPI) |
| 613 prefs.accelerated_compositing_enabled = true; |
| 614 prefs.accelerated_2d_canvas_enabled = true; |
| 615 #else |
608 // Force accelerated compositing and 2d canvas off for chrome:, about: and | 616 // Force accelerated compositing and 2d canvas off for chrome:, about: and |
609 // chrome-devtools: pages (unless it's specifically allowed). | 617 // chrome-devtools: pages (unless it's specifically allowed). |
610 if ((url.SchemeIs(chrome::kChromeDevToolsScheme) || | 618 if ((url.SchemeIs(chrome::kChromeDevToolsScheme) || |
611 url.SchemeIs(chrome::kChromeUIScheme) || | 619 url.SchemeIs(chrome::kChromeUIScheme) || |
612 (url.SchemeIs(chrome::kAboutScheme) && | 620 (url.SchemeIs(chrome::kAboutScheme) && |
613 url.spec() != chrome::kAboutBlankURL)) && | 621 url.spec() != chrome::kAboutBlankURL)) && |
614 !command_line.HasSwitch(switches::kAllowWebUICompositing)) { | 622 !command_line.HasSwitch(switches::kAllowWebUICompositing)) { |
615 prefs.accelerated_compositing_enabled = false; | 623 prefs.accelerated_compositing_enabled = false; |
616 prefs.accelerated_2d_canvas_enabled = false; | 624 prefs.accelerated_2d_canvas_enabled = false; |
617 } | 625 } |
618 | 626 #endif |
619 if (command_line.HasSwitch(switches::kDefaultTileWidth)) | 627 if (command_line.HasSwitch(switches::kDefaultTileWidth)) |
620 prefs.default_tile_width = | 628 prefs.default_tile_width = |
621 GetSwitchValueAsInt(command_line, switches::kDefaultTileWidth, 1); | 629 GetSwitchValueAsInt(command_line, switches::kDefaultTileWidth, 1); |
622 if (command_line.HasSwitch(switches::kDefaultTileHeight)) | 630 if (command_line.HasSwitch(switches::kDefaultTileHeight)) |
623 prefs.default_tile_height = | 631 prefs.default_tile_height = |
624 GetSwitchValueAsInt(command_line, switches::kDefaultTileHeight, 1); | 632 GetSwitchValueAsInt(command_line, switches::kDefaultTileHeight, 1); |
625 if (command_line.HasSwitch(switches::kMaxUntiledLayerWidth)) | 633 if (command_line.HasSwitch(switches::kMaxUntiledLayerWidth)) |
626 prefs.max_untiled_layer_width = | 634 prefs.max_untiled_layer_width = |
627 GetSwitchValueAsInt(command_line, switches::kMaxUntiledLayerWidth, 1); | 635 GetSwitchValueAsInt(command_line, switches::kMaxUntiledLayerWidth, 1); |
628 if (command_line.HasSwitch(switches::kMaxUntiledLayerHeight)) | 636 if (command_line.HasSwitch(switches::kMaxUntiledLayerHeight)) |
(...skipping 2772 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
3401 | 3409 |
3402 BrowserPluginGuest* WebContentsImpl::GetBrowserPluginGuest() { | 3410 BrowserPluginGuest* WebContentsImpl::GetBrowserPluginGuest() { |
3403 return browser_plugin_guest_.get(); | 3411 return browser_plugin_guest_.get(); |
3404 } | 3412 } |
3405 | 3413 |
3406 BrowserPluginEmbedder* WebContentsImpl::GetBrowserPluginEmbedder() { | 3414 BrowserPluginEmbedder* WebContentsImpl::GetBrowserPluginEmbedder() { |
3407 return browser_plugin_embedder_.get(); | 3415 return browser_plugin_embedder_.get(); |
3408 } | 3416 } |
3409 | 3417 |
3410 } // namespace content | 3418 } // namespace content |
OLD | NEW |