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

Unified Diff: ui/native_theme/native_theme.h

Issue 239093007: Update Windows UI on system color changes. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Sync and rebase again. Created 6 years, 8 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/native_theme/native_theme.h
diff --git a/ui/native_theme/native_theme.h b/ui/native_theme/native_theme.h
index aab923a933bf711c7473de4b7c2b94334f50b317..c34050466e99602bc3bcbb7545cf85130c297303 100644
--- a/ui/native_theme/native_theme.h
+++ b/ui/native_theme/native_theme.h
@@ -5,6 +5,7 @@
#ifndef UI_NATIVE_THEME_NATIVE_THEME_H_
#define UI_NATIVE_THEME_NATIVE_THEME_H_
+#include "base/observer_list.h"
#include "third_party/skia/include/core/SkColor.h"
#include "ui/gfx/native_widget_types.h"
#include "ui/native_theme/native_theme_export.h"
@@ -18,6 +19,8 @@ class Size;
namespace ui {
+class NativeThemeObserver;
+
// This class supports drawing UI controls (like buttons, text fields, lists,
// comboboxes, etc) that look like the native UI controls of the underlying
// platform, such as Windows or Linux. It also supplies default colors for
@@ -311,7 +314,14 @@ class NATIVE_THEME_EXPORT NativeTheme {
// function, returning the port's subclass.
static NativeTheme* instance();
+ // Add or remove observers to be notified when the native theme changes.
+ void AddObserver(NativeThemeObserver* observer);
+ void RemoveObserver(NativeThemeObserver* observer);
+
protected:
+ // Notify observers of native theme changes.
+ void NotifyObservers();
+
NativeTheme();
virtual ~NativeTheme();
@@ -319,6 +329,10 @@ class NATIVE_THEME_EXPORT NativeTheme {
unsigned int thumb_active_color_;
unsigned int track_color_;
+ private:
+ // Observers to notify when the native theme changes.
+ ObserverList<NativeThemeObserver> native_theme_observers_;
+
DISALLOW_COPY_AND_ASSIGN(NativeTheme);
};

Powered by Google App Engine
This is Rietveld 408576698