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

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: Fix failing unit tests. 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 471 matching lines...) Expand 10 before | Expand all | Expand 10 after
482 command_line.HasSwitch(switches::kEnableAcceleratedScrollableFrames); 482 command_line.HasSwitch(switches::kEnableAcceleratedScrollableFrames);
483 prefs.composited_scrolling_for_frames_enabled = 483 prefs.composited_scrolling_for_frames_enabled =
484 command_line.HasSwitch(switches::kEnableCompositedScrollingForFrames); 484 command_line.HasSwitch(switches::kEnableCompositedScrollingForFrames);
485 prefs.show_paint_rects = 485 prefs.show_paint_rects =
486 command_line.HasSwitch(switches::kShowPaintRects); 486 command_line.HasSwitch(switches::kShowPaintRects);
487 prefs.render_vsync_enabled = 487 prefs.render_vsync_enabled =
488 !command_line.HasSwitch(switches::kDisableGpuVsync); 488 !command_line.HasSwitch(switches::kDisableGpuVsync);
489 prefs.accelerated_compositing_enabled = 489 prefs.accelerated_compositing_enabled =
490 GpuProcessHost::gpu_enabled() && 490 GpuProcessHost::gpu_enabled() &&
491 !command_line.HasSwitch(switches::kDisableAcceleratedCompositing); 491 !command_line.HasSwitch(switches::kDisableAcceleratedCompositing);
492 #if defined(OS_WIN) && defined(ENABLE_HIDPI)
493 prefs.force_compositing_mode = true;
494 #else
492 prefs.force_compositing_mode = 495 prefs.force_compositing_mode =
493 content::IsForceCompositingModeEnabled() && 496 content::IsForceCompositingModeEnabled() &&
494 !command_line.HasSwitch(switches::kDisableForceCompositingMode); 497 !command_line.HasSwitch(switches::kDisableForceCompositingMode);
498 #endif
495 prefs.fixed_position_compositing_enabled = 499 prefs.fixed_position_compositing_enabled =
496 command_line.HasSwitch(switches::kEnableCompositingForFixedPosition); 500 command_line.HasSwitch(switches::kEnableCompositingForFixedPosition);
497 prefs.accelerated_2d_canvas_enabled = 501 prefs.accelerated_2d_canvas_enabled =
498 GpuProcessHost::gpu_enabled() && 502 GpuProcessHost::gpu_enabled() &&
499 !command_line.HasSwitch(switches::kDisableAccelerated2dCanvas); 503 !command_line.HasSwitch(switches::kDisableAccelerated2dCanvas);
500 prefs.deferred_2d_canvas_enabled = 504 prefs.deferred_2d_canvas_enabled =
501 !command_line.HasSwitch(switches::kDisableDeferred2dCanvas); 505 !command_line.HasSwitch(switches::kDisableDeferred2dCanvas);
502 prefs.antialiased_2d_canvas_disabled = 506 prefs.antialiased_2d_canvas_disabled =
503 command_line.HasSwitch(switches::kDisable2dCanvasAntialiasing); 507 command_line.HasSwitch(switches::kDisable2dCanvasAntialiasing);
504 prefs.accelerated_painting_enabled = 508 prefs.accelerated_painting_enabled =
(...skipping 101 matching lines...) Expand 10 before | Expand all | Expand 10 after
606 } 610 }
607 611
608 if (ChildProcessSecurityPolicyImpl::GetInstance()->HasWebUIBindings( 612 if (ChildProcessSecurityPolicyImpl::GetInstance()->HasWebUIBindings(
609 rvh->GetProcess()->GetID())) { 613 rvh->GetProcess()->GetID())) {
610 prefs.loads_images_automatically = true; 614 prefs.loads_images_automatically = true;
611 prefs.javascript_enabled = true; 615 prefs.javascript_enabled = true;
612 } 616 }
613 617
614 prefs.is_online = !net::NetworkChangeNotifier::IsOffline(); 618 prefs.is_online = !net::NetworkChangeNotifier::IsOffline();
615 619
620 #if defined(OS_WIN) && defined(ENABLE_HIDPI)
621 prefs.accelerated_compositing_enabled = true;
622 prefs.accelerated_2d_canvas_enabled = true;
623 #else
616 // Force accelerated compositing and 2d canvas off for chrome: and about: 624 // Force accelerated compositing and 2d canvas off for chrome: and about:
617 // pages (unless it's specifically allowed). 625 // pages (unless it's specifically allowed).
618 if ((url.SchemeIs(chrome::kChromeUIScheme) || 626 if ((url.SchemeIs(chrome::kChromeUIScheme) ||
619 (url.SchemeIs(chrome::kAboutScheme) && 627 (url.SchemeIs(chrome::kAboutScheme) &&
620 url.spec() != chrome::kAboutBlankURL)) && 628 url.spec() != chrome::kAboutBlankURL)) &&
621 !command_line.HasSwitch(switches::kAllowWebUICompositing)) { 629 !command_line.HasSwitch(switches::kAllowWebUICompositing)) {
622 prefs.accelerated_compositing_enabled = false; 630 prefs.accelerated_compositing_enabled = false;
623 prefs.accelerated_2d_canvas_enabled = false; 631 prefs.accelerated_2d_canvas_enabled = false;
624 } 632 }
633 #endif
625 634
626 if (url.SchemeIs(chrome::kChromeDevToolsScheme)) 635 if (url.SchemeIs(chrome::kChromeDevToolsScheme))
627 prefs.show_fps_counter = false; 636 prefs.show_fps_counter = false;
628 637
629 if (command_line.HasSwitch(switches::kDefaultTileWidth)) 638 if (command_line.HasSwitch(switches::kDefaultTileWidth))
630 prefs.default_tile_width = 639 prefs.default_tile_width =
631 GetSwitchValueAsInt(command_line, switches::kDefaultTileWidth, 1); 640 GetSwitchValueAsInt(command_line, switches::kDefaultTileWidth, 1);
632 if (command_line.HasSwitch(switches::kDefaultTileHeight)) 641 if (command_line.HasSwitch(switches::kDefaultTileHeight))
633 prefs.default_tile_height = 642 prefs.default_tile_height =
634 GetSwitchValueAsInt(command_line, switches::kDefaultTileHeight, 1); 643 GetSwitchValueAsInt(command_line, switches::kDefaultTileHeight, 1);
(...skipping 2795 matching lines...) Expand 10 before | Expand all | Expand 10 after
3430 3439
3431 BrowserPluginGuest* WebContentsImpl::GetBrowserPluginGuest() { 3440 BrowserPluginGuest* WebContentsImpl::GetBrowserPluginGuest() {
3432 return browser_plugin_guest_.get(); 3441 return browser_plugin_guest_.get();
3433 } 3442 }
3434 3443
3435 BrowserPluginEmbedder* WebContentsImpl::GetBrowserPluginEmbedder() { 3444 BrowserPluginEmbedder* WebContentsImpl::GetBrowserPluginEmbedder() {
3436 return browser_plugin_embedder_.get(); 3445 return browser_plugin_embedder_.get();
3437 } 3446 }
3438 3447
3439 } // namespace content 3448 } // namespace content
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698