summaryrefslogtreecommitdiffstats
path: root/chrome/browser
diff options
context:
space:
mode:
authormrossetti@chromium.org <mrossetti@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2009-11-20 22:35:58 +0000
committermrossetti@chromium.org <mrossetti@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2009-11-20 22:35:58 +0000
commit3f8ffe445f444fa958d149599deff8ad4be0062c (patch)
tree6036f0cd845813a5249bef42ae9b3f8c24031b42 /chrome/browser
parent4cef649bf7de71f02d08a709cd59c8cfd52c9702 (diff)
downloadchromium_src-3f8ffe445f444fa958d149599deff8ad4be0062c.zip
chromium_src-3f8ffe445f444fa958d149599deff8ad4be0062c.tar.gz
chromium_src-3f8ffe445f444fa958d149599deff8ad4be0062c.tar.bz2
Allow folders to be created with empty names.
BUG=28318 TEST=Bring up the Add Folder sheet by choosing Add Folder... from the contextual menu. The OK button should always be active. Click OK and a new, unnamed folder should be added. Review URL: http://codereview.chromium.org/414055 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@32693 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser')
-rw-r--r--chrome/browser/cocoa/bookmark_name_folder_controller.mm8
-rw-r--r--chrome/browser/cocoa/bookmark_name_folder_controller_unittest.mm21
2 files changed, 20 insertions, 9 deletions
diff --git a/chrome/browser/cocoa/bookmark_name_folder_controller.mm b/chrome/browser/cocoa/bookmark_name_folder_controller.mm
index ae5888b..f7aad05 100644
--- a/chrome/browser/cocoa/bookmark_name_folder_controller.mm
+++ b/chrome/browser/cocoa/bookmark_name_folder_controller.mm
@@ -35,13 +35,6 @@
- (void)awakeFromNib {
[nameField_ setStringValue:initialName_.get()];
- [self controlTextDidChange:nil];
-}
-
-// Called as a side-effect of being the delegate of the text field. Ensure the
-// OK button is only enabled when there is a valid name.
-- (void)controlTextDidChange:(NSNotification*)ignore {
- [okButton_ setEnabled:[[nameField_ stringValue] length]];
}
// TODO(jrg): consider NSModalSession.
@@ -88,7 +81,6 @@
- (void)setFolderName:(NSString*)name {
[nameField_ setStringValue:name];
- [self controlTextDidChange:nil];
}
- (NSButton*)okButton {
diff --git a/chrome/browser/cocoa/bookmark_name_folder_controller_unittest.mm b/chrome/browser/cocoa/bookmark_name_folder_controller_unittest.mm
index 47d06d3..6df1645 100644
--- a/chrome/browser/cocoa/bookmark_name_folder_controller_unittest.mm
+++ b/chrome/browser/cocoa/bookmark_name_folder_controller_unittest.mm
@@ -66,6 +66,25 @@ TEST_F(BookmarkNameFolderControllerTest, AddNewDefaultName) {
EXPECT_TRUE(parent->GetChild(0)->is_folder());
}
+// Make sure we are allowed to create a folder with an empty name.
+TEST_F(BookmarkNameFolderControllerTest, AddNewBlankName) {
+ BookmarkModel* model = helper_.profile()->GetBookmarkModel();
+ const BookmarkNode* parent = model->GetBookmarkBarNode();
+ EXPECT_EQ(0, parent->GetChildCount());
+
+ scoped_nsobject<BookmarkNameFolderController>
+ controller([[BookmarkNameFolderController alloc]
+ initWithParentWindow:test_window()
+ profile:helper_.profile()
+ node:NULL]);
+ [controller window]; // force nib load
+
+ // Change the name to blank, click OK.
+ [controller setFolderName:@""];
+ [controller ok:nil];
+ EXPECT_EQ(1, parent->GetChildCount());
+ EXPECT_TRUE(parent->GetChild(0)->is_folder());
+}
TEST_F(BookmarkNameFolderControllerTest, Rename) {
BookmarkModel* model = helper_.profile()->GetBookmarkModel();
@@ -113,5 +132,5 @@ TEST_F(BookmarkNameFolderControllerTest, EditAndConfirmOKButton) {
EXPECT_TRUE([[controller okButton] isEnabled]);
[controller setFolderName:@""];
- EXPECT_FALSE([[controller okButton] isEnabled]);
+ EXPECT_TRUE([[controller okButton] isEnabled]);
}