summaryrefslogtreecommitdiffstats
path: root/chrome
diff options
context:
space:
mode:
authorjeremy@chromium.org <jeremy@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2009-06-02 20:36:00 +0000
committerjeremy@chromium.org <jeremy@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2009-06-02 20:36:00 +0000
commit2490053bbcc9fa9c2001ace8cdbf7a9c977b8652 (patch)
treeb04bac6c393e1d8ce58574e6633692faaf8081f5 /chrome
parent0f379a544be452cf06276ee2e5494d4a2b372ec4 (diff)
downloadchromium_src-2490053bbcc9fa9c2001ace8cdbf7a9c977b8652.zip
chromium_src-2490053bbcc9fa9c2001ace8cdbf7a9c977b8652.tar.gz
chromium_src-2490053bbcc9fa9c2001ace8cdbf7a9c977b8652.tar.bz2
Display a tooltip when mousing over a tab title.
This allows a user to see the full page title. Review URL: http://codereview.chromium.org/118095 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@17429 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome')
-rw-r--r--chrome/browser/cocoa/tab_controller.h4
-rw-r--r--chrome/browser/cocoa/tab_controller.mm9
-rw-r--r--chrome/browser/cocoa/tab_controller_unittest.mm13
3 files changed, 26 insertions, 0 deletions
diff --git a/chrome/browser/cocoa/tab_controller.h b/chrome/browser/cocoa/tab_controller.h
index d7783b7..7795ec3 100644
--- a/chrome/browser/cocoa/tab_controller.h
+++ b/chrome/browser/cocoa/tab_controller.h
@@ -62,4 +62,8 @@
@end
+@interface TabController(TestingAPI)
+- (NSString *)toolTip;
+@end // TabController(TestingAPI)
+
#endif // CHROME_BROWSER_COCOA_TAB_CONTROLLER_H_
diff --git a/chrome/browser/cocoa/tab_controller.mm b/chrome/browser/cocoa/tab_controller.mm
index c5aae1a..94d1ca2 100644
--- a/chrome/browser/cocoa/tab_controller.mm
+++ b/chrome/browser/cocoa/tab_controller.mm
@@ -56,6 +56,11 @@
}
}
+- (void)setTitle:(NSString *)title {
+ [backgroundButton_ setToolTip:title];
+ [super setTitle:title];
+}
+
- (void)setSelected:(BOOL)selected {
if (selected_ != selected)
[self internalSetSelected:selected];
@@ -77,4 +82,8 @@
return iconView_;
}
+- (NSString *)toolTip {
+ return [backgroundButton_ toolTip];
+}
+
@end
diff --git a/chrome/browser/cocoa/tab_controller_unittest.mm b/chrome/browser/cocoa/tab_controller_unittest.mm
index 7d1228a..c6526be 100644
--- a/chrome/browser/cocoa/tab_controller_unittest.mm
+++ b/chrome/browser/cocoa/tab_controller_unittest.mm
@@ -107,6 +107,19 @@ TEST_F(TabControllerTest, APISelection) {
[[controller view] removeFromSuperview];
}
+// Tests that setting the title of a tab sets the tooltip as well.
+TEST_F(TabControllerTest, ToolTip) {
+ NSWindow* window = cocoa_helper_.window();
+
+ scoped_nsobject<TabController> controller([[TabController alloc] init]);
+ [[window contentView] addSubview:[controller view]];
+
+ EXPECT_TRUE([[controller toolTip] length] == 0);
+ NSString *tooltip_string = @"Some text to use as a tab title";
+ [controller setTitle:tooltip_string];
+ EXPECT_TRUE([tooltip_string isEqualToString:[controller toolTip]]);
+}
+
// Tests setting the |loading| property via code.
TEST_F(TabControllerTest, Loading) {
NSWindow* window = cocoa_helper_.window();