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

Side by Side Diff: chrome/browser/ui/cocoa/tab_contents/tab_contents_controller.mm

Issue 469003006: Remove --disable-core-animation flag (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@erikchen_patch
Patch Set: Rebase Created 6 years, 4 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 #import "chrome/browser/ui/cocoa/tab_contents/tab_contents_controller.h" 5 #import "chrome/browser/ui/cocoa/tab_contents/tab_contents_controller.h"
6 6
7 #include <utility> 7 #include <utility>
8 8
9 #include "base/command_line.h"
10 #include "base/mac/scoped_cftyperef.h" 9 #include "base/mac/scoped_cftyperef.h"
11 #include "base/mac/scoped_nsobject.h" 10 #include "base/mac/scoped_nsobject.h"
12 #include "chrome/browser/devtools/devtools_window.h" 11 #include "chrome/browser/devtools/devtools_window.h"
13 #import "chrome/browser/themes/theme_properties.h" 12 #import "chrome/browser/themes/theme_properties.h"
14 #import "chrome/browser/themes/theme_service.h" 13 #import "chrome/browser/themes/theme_service.h"
15 #import "chrome/browser/ui/cocoa/themed_window.h" 14 #import "chrome/browser/ui/cocoa/themed_window.h"
16 #include "content/public/browser/render_view_host.h" 15 #include "content/public/browser/render_view_host.h"
17 #include "content/public/browser/render_widget_host_view.h" 16 #include "content/public/browser/render_widget_host_view.h"
18 #include "content/public/browser/web_contents.h" 17 #include "content/public/browser/web_contents.h"
19 #include "content/public/browser/web_contents_observer.h" 18 #include "content/public/browser/web_contents_observer.h"
20 #include "ui/base/cocoa/animation_utils.h" 19 #include "ui/base/cocoa/animation_utils.h"
21 #include "ui/base/ui_base_switches.h"
22 #include "ui/gfx/geometry/rect.h" 20 #include "ui/gfx/geometry/rect.h"
23 21
24 using content::WebContents; 22 using content::WebContents;
25 using content::WebContentsObserver; 23 using content::WebContentsObserver;
26 24
27 // FullscreenObserver is used by TabContentsController to monitor for the 25 // FullscreenObserver is used by TabContentsController to monitor for the
28 // showing/destruction of fullscreen render widgets. When notified, 26 // showing/destruction of fullscreen render widgets. When notified,
29 // TabContentsController will alter its child view hierarchy to either embed a 27 // TabContentsController will alter its child view hierarchy to either embed a
30 // fullscreen render widget view or restore the normal WebContentsView render 28 // fullscreen render widget view or restore the normal WebContentsView render
31 // view. The embedded fullscreen render widget will fill the user's screen in 29 // view. The embedded fullscreen render widget will fill the user's screen in
(...skipping 47 matching lines...) Expand 10 before | Expand all | Expand 10 after
79 } 77 }
80 78
81 - (NSColor*)computeBackgroundColor; 79 - (NSColor*)computeBackgroundColor;
82 @end 80 @end
83 81
84 @implementation TabContentsContainerView 82 @implementation TabContentsContainerView
85 83
86 - (id)initWithDelegate:(TabContentsController*)delegate { 84 - (id)initWithDelegate:(TabContentsController*)delegate {
87 if ((self = [super initWithFrame:NSZeroRect])) { 85 if ((self = [super initWithFrame:NSZeroRect])) {
88 delegate_ = delegate; 86 delegate_ = delegate;
89 if (!CommandLine::ForCurrentProcess()->HasSwitch( 87 ScopedCAActionDisabler disabler;
90 switches::kDisableCoreAnimation)) { 88 base::scoped_nsobject<CALayer> layer([[CALayer alloc] init]);
91 // TODO(ccameron): Remove the -drawRect: method once the 89 [layer setBackgroundColor:CGColorGetConstantColor(kCGColorWhite)];
92 // kDisableCoreAnimation switch is removed. 90 [self setLayer:layer];
93 ScopedCAActionDisabler disabler; 91 [self setWantsLayer:YES];
94 base::scoped_nsobject<CALayer> layer([[CALayer alloc] init]);
95 [layer setBackgroundColor:CGColorGetConstantColor(kCGColorWhite)];
96 [self setLayer:layer];
97 [self setWantsLayer:YES];
98 }
99 } 92 }
100 return self; 93 return self;
101 } 94 }
102 95
103 // Called by the delegate during dealloc to invalidate the pointer held by this 96 // Called by the delegate during dealloc to invalidate the pointer held by this
104 // view. 97 // view.
105 - (void)delegateDestroyed { 98 - (void)delegateDestroyed {
106 delegate_ = nil; 99 delegate_ = nil;
107 } 100 }
108 101
(...skipping 241 matching lines...) Expand 10 before | Expand all | Expand 10 after
350 } else { 343 } else {
351 rect.ClampToCenteredSize(gfx::Size( 344 rect.ClampToCenteredSize(gfx::Size(
352 static_cast<int>(x / captureSize.height()), rect.height())); 345 static_cast<int>(x / captureSize.height()), rect.height()));
353 } 346 }
354 } 347 }
355 348
356 return NSRectFromCGRect(rect.ToCGRect()); 349 return NSRectFromCGRect(rect.ToCGRect());
357 } 350 }
358 351
359 @end 352 @end
OLDNEW
« no previous file with comments | « chrome/browser/ui/cocoa/profiles/avatar_icon_controller.mm ('k') | chrome/chrome_tests_unit.gypi » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698