Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(178)

Side by Side Diff: content/browser/web_contents/web_contents_impl.cc

Issue 11953054: Fix high-DPI on Windows to make use of DIP scaling in WebKit. (Closed) Base URL: http://git.chromium.org/chromium/src.git@master
Patch Set: Remove experimental changes to resource handling. Created 7 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
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
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
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
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
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698