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

Unified Diff: ui/message_center/cocoa/status_item_view.mm

Issue 564953002: Add support for dark theme in Mac Notification Center (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Fix compile. Created 6 years, 3 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 side-by-side diff with in-line comments
Download patch
Index: ui/message_center/cocoa/status_item_view.mm
diff --git a/ui/message_center/cocoa/status_item_view.mm b/ui/message_center/cocoa/status_item_view.mm
index 166de9fa3182a71a1050bb655c1df4ea0d3050a6..6e478f76401555e2631319809b3189e8fe39c5a8 100644
--- a/ui/message_center/cocoa/status_item_view.mm
+++ b/ui/message_center/cocoa/status_item_view.mm
@@ -7,6 +7,7 @@
#include <cmath>
#include "base/format_macros.h"
+#include "base/mac/sdk_forward_declarations.h"
#include "ui/base/resource/resource_bundle.h"
#include "ui/resources/grit/ui_resources.h"
@@ -148,19 +149,44 @@ const CGFloat kMargin = 5;
- (int)getTrayResourceId {
BOOL highlight = [self shouldHighlight];
BOOL hasUnreadItems = unreadCount_ > 0;
- int kResourceIds[2][2][2] = {
+ BOOL dark = NO;
+
+ Class nsAppearanceClass = NSClassFromString(@"NSAppearance");
dewittj 2014/09/15 17:32:37 I had to remove <CrNSObject> from this in order to
+ if ([self respondsToSelector:@selector(effectiveAppearance)] &&
+ [nsAppearanceClass
+ instancesRespondToSelector:@selector(appearanceNamed:)]) {
+ id<NSObject> darkAppearance =
+ [nsAppearanceClass appearanceNamed:NSAppearanceNameVibrantDark];
+ dark = [[self effectiveAppearance] isEqual:darkAppearance];
+ }
+
+ int kResourceIds[2][2][2][2] = {
{
- { IDR_TRAY_EMPTY, IDR_TRAY_EMPTY_PRESSED },
- { IDR_TRAY_ATTENTION, IDR_TRAY_ATTENTION_PRESSED },
+ {
+ { IDR_TRAY_EMPTY, IDR_TRAY_EMPTY_PRESSED },
+ { IDR_TRAY_ATTENTION, IDR_TRAY_ATTENTION_PRESSED },
+ },
+ {
+ { IDR_TRAY_DO_NOT_DISTURB_EMPTY,
+ IDR_TRAY_DO_NOT_DISTURB_EMPTY_PRESSED },
+ { IDR_TRAY_DO_NOT_DISTURB_ATTENTION,
+ IDR_TRAY_DO_NOT_DISTURB_ATTENTION_PRESSED },
+ },
},
{
- { IDR_TRAY_DO_NOT_DISTURB_EMPTY,
- IDR_TRAY_DO_NOT_DISTURB_EMPTY_PRESSED },
- { IDR_TRAY_DO_NOT_DISTURB_ATTENTION,
- IDR_TRAY_DO_NOT_DISTURB_ATTENTION_PRESSED },
- },
+ {
+ { IDR_DARK_TRAY_EMPTY, IDR_DARK_TRAY_EMPTY_PRESSED },
+ { IDR_DARK_TRAY_ATTENTION, IDR_DARK_TRAY_ATTENTION_PRESSED },
+ },
+ {
+ { IDR_DARK_TRAY_DO_NOT_DISTURB_EMPTY,
+ IDR_DARK_TRAY_DO_NOT_DISTURB_EMPTY_PRESSED },
+ { IDR_DARK_TRAY_DO_NOT_DISTURB_ATTENTION,
+ IDR_DARK_TRAY_DO_NOT_DISTURB_ATTENTION_PRESSED },
+ },
+ }
};
- return kResourceIds[quietMode_][hasUnreadItems][highlight];
+ return kResourceIds[dark][quietMode_][hasUnreadItems][highlight];
}
@end

Powered by Google App Engine
This is Rietveld 408576698