diff options
author | avi@chromium.org <avi@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2009-07-23 16:35:56 +0000 |
---|---|---|
committer | avi@chromium.org <avi@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2009-07-23 16:35:56 +0000 |
commit | 426daf1af6c21115dcf338e1b845ca7f6f4d316b (patch) | |
tree | ae8bf57d83a23d35bc046565b4fbb766ba73592e | |
parent | 042d43e781c4df7ac89d28b3e5ddd095d63ccc7e (diff) | |
download | chromium_src-426daf1af6c21115dcf338e1b845ca7f6f4d316b.zip chromium_src-426daf1af6c21115dcf338e1b845ca7f6f4d316b.tar.gz chromium_src-426daf1af6c21115dcf338e1b845ca7f6f4d316b.tar.bz2 |
Propagate theme changes to the tabstrip.
BUG=http://crbug.com/17519
TEST=change themes; tabs should theme too
Review URL: http://codereview.chromium.org/159271
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@21393 0039d316-1c4b-4281-b951-d872f2087c98
-rw-r--r-- | chrome/browser/cocoa/browser_window_controller.mm | 2 | ||||
-rw-r--r-- | chrome/browser/cocoa/tab_strip_controller.h | 3 | ||||
-rw-r--r-- | chrome/browser/cocoa/tab_strip_controller.mm | 6 | ||||
-rw-r--r-- | chrome/browser/cocoa/tab_view.mm | 2 |
4 files changed, 12 insertions, 1 deletions
diff --git a/chrome/browser/cocoa/browser_window_controller.mm b/chrome/browser/cocoa/browser_window_controller.mm index be20f7e..ac8278e 100644 --- a/chrome/browser/cocoa/browser_window_controller.mm +++ b/chrome/browser/cocoa/browser_window_controller.mm @@ -834,6 +834,8 @@ willPositionSheet:(NSWindow*)sheet - (void)userChangedTheme { [self setTheme]; [self applyTheme]; + + [tabStripController_ userChangedTheme]; } // TODO(rohitrao, jrg): Move this logic out of BrowserWindowController? diff --git a/chrome/browser/cocoa/tab_strip_controller.h b/chrome/browser/cocoa/tab_strip_controller.h index dea418d..19bae7b 100644 --- a/chrome/browser/cocoa/tab_strip_controller.h +++ b/chrome/browser/cocoa/tab_strip_controller.h @@ -98,6 +98,9 @@ class ToolbarModel; // Force the tabs to rearrange themselves to reflect the current model - (void)layoutTabs; +// The user changed the theme. +- (void)userChangedTheme; + // Default height for tabs. + (CGFloat)defaultTabHeight; @end diff --git a/chrome/browser/cocoa/tab_strip_controller.mm b/chrome/browser/cocoa/tab_strip_controller.mm index 2d37e5b..90a1c5b 100644 --- a/chrome/browser/cocoa/tab_strip_controller.mm +++ b/chrome/browser/cocoa/tab_strip_controller.mm @@ -600,4 +600,10 @@ NSString* const kTabStripNumberOfTabsChanged = @"kTabStripNumberOfTabsChanged"; tabModel_->InsertTabContentsAt(index, contents, true, false); } +- (void)userChangedTheme { + for (TabController* tab in tabArray_.get()) { + [[tab view] setNeedsDisplay:YES]; + } +} + @end diff --git a/chrome/browser/cocoa/tab_view.mm b/chrome/browser/cocoa/tab_view.mm index 5474f88..a078fa4 100644 --- a/chrome/browser/cocoa/tab_view.mm +++ b/chrome/browser/cocoa/tab_view.mm @@ -458,7 +458,7 @@ static const double kDragStartDistance = 3.0; [path stroke]; [[NSGraphicsContext currentContext] restoreGraphicsState]; - GTMTheme *theme = [[self self] gtm_theme]; + GTMTheme *theme = [self gtm_theme]; if (!selected) { NSColor *windowColor = |