Index: chrome/browser/ui/cocoa/apps/native_app_window_cocoa_browsertest.mm |
diff --git a/chrome/browser/ui/cocoa/apps/native_app_window_cocoa_browsertest.mm b/chrome/browser/ui/cocoa/apps/native_app_window_cocoa_browsertest.mm |
index 3278955d0734f1ed0397680baefd6eef1ba9b8f2..c70728fb8cb184c9d2c30b0e16cebb7dc7e1f605 100644 |
--- a/chrome/browser/ui/cocoa/apps/native_app_window_cocoa_browsertest.mm |
+++ b/chrome/browser/ui/cocoa/apps/native_app_window_cocoa_browsertest.mm |
@@ -8,11 +8,14 @@ |
#import <Cocoa/Cocoa.h> |
-#include "base/mac/mac_util.h" |
-#include "base/mac/scoped_nsobject.h" |
-#include "base/mac/sdk_forward_declarations.h" |
+#import "base/mac/foundation_util.h" |
+#import "base/mac/mac_util.h" |
+#import "base/mac/scoped_nsobject.h" |
+#import "base/mac/scoped_objc_class_swizzler.h" |
tapted
2015/05/12 06:15:43
is this used?
jackhou1
2015/05/14 02:59:13
Nope, removed.
|
+#import "base/mac/sdk_forward_declarations.h" |
#include "chrome/browser/apps/app_browsertest_util.h" |
#include "chrome/browser/profiles/profile.h" |
+#import "chrome/browser/ui/cocoa/apps/scoped_fake_nswindow_main_status.h" |
#include "chrome/browser/ui/extensions/app_launch_params.h" |
#include "chrome/browser/ui/extensions/application_launch.h" |
#include "content/public/browser/notification_service.h" |
@@ -304,3 +307,31 @@ IN_PROC_BROWSER_TEST_F(NativeAppWindowCocoaBrowserTest, Controls) { |
IN_PROC_BROWSER_TEST_F(NativeAppWindowCocoaBrowserTest, ControlsFrameless) { |
TestControls(CreateTestAppWindow("{\"frame\": \"none\"}")); |
} |
+ |
+// Test that the colored frames have the correct color when active and inactive. |
+IN_PROC_BROWSER_TEST_F(NativeAppWindowCocoaBrowserTest, FrameColor) { |
+ extensions::AppWindow* app_window = CreateTestAppWindow( |
+ "{\"frame\": {\"color\": \"#FF0000\", \"inactiveColor\": \"#0000FF\"}}"); |
+ NSWindow* ns_window = app_window->GetNativeWindow(); |
+ // Disable color correction so we can read unmodified values from the bitmap. |
+ [ns_window setColorSpace:[NSColorSpace sRGBColorSpace]]; |
+ |
+ NSView* frame_view = [[ns_window contentView] superview]; |
+ NSRect bounds = [frame_view bounds]; |
+ NSBitmapImageRep* bitmap = |
+ [frame_view bitmapImageRepForCachingDisplayInRect:bounds]; |
+ |
+ [frame_view cacheDisplayInRect:bounds toBitmapImageRep:bitmap]; |
+ NSColor* color = [bitmap colorAtX:NSMidX(bounds) y:5]; |
+ EXPECT_EQ(0, [color redComponent]); |
+ EXPECT_EQ(0, [color greenComponent]); |
+ EXPECT_EQ(1, [color blueComponent]); |
+ |
+ ScopedFakeNSWindowMainStatus fake_main(ns_window); |
+ |
+ [frame_view cacheDisplayInRect:bounds toBitmapImageRep:bitmap]; |
+ color = [bitmap colorAtX:NSMidX(bounds) y:5]; |
+ EXPECT_EQ(1, [color redComponent]); |
+ EXPECT_EQ(0, [color greenComponent]); |
+ EXPECT_EQ(0, [color blueComponent]); |
+} |