diff --git a/chrome/app/nibs/en.lproj/BrowserWindow.xib b/chrome/app/nibs/en.lproj/BrowserWindow.xib
index a73b4894b505d36da4cb02bc1c6436358c5872f4..306c83d1d24aecd889e20737e2e2b32d4d437c21 100644
--- a/chrome/app/nibs/en.lproj/BrowserWindow.xib
+++ b/chrome/app/nibs/en.lproj/BrowserWindow.xib
@@ -8,8 +8,8 @@
 		<string key="IBDocument.HIToolboxVersion">353.00</string>
 		<object class="NSMutableArray" key="IBDocument.EditedObjectIDs">
 			<bool key="EncodedWithXMLCoder">YES</bool>
-			<integer value="56"/>
 			<integer value="1"/>
+			<integer value="56"/>
 		</object>
 		<object class="NSArray" key="IBDocument.PluginDependencies">
 			<bool key="EncodedWithXMLCoder">YES</bool>
@@ -36,7 +36,7 @@
 				<string key="NSClassName">NSApplication</string>
 			</object>
 			<object class="NSWindowTemplate" id="1005">
-				<int key="NSWindowStyleMask">4359</int>
+				<int key="NSWindowStyleMask">4367</int>
 				<int key="NSWindowBacking">2</int>
 				<string key="NSWindowRect">{{60, 229}, {750, 600}}</string>
 				<int key="NSWTFlags">536872960</int>
diff --git a/chrome/app/nibs/en.lproj/TabContents.xib b/chrome/app/nibs/en.lproj/TabContents.xib
index c985de42845a5c5b98bf252003f18b2e1376895e..cf88b9caaeccc1dbaaeaf3b23ebdd020750ba89e 100644
--- a/chrome/app/nibs/en.lproj/TabContents.xib
+++ b/chrome/app/nibs/en.lproj/TabContents.xib
@@ -2,9 +2,9 @@
 <archive type="com.apple.InterfaceBuilder3.Cocoa.XIB" version="7.03">
 	<data>
 		<int key="IBDocument.SystemTarget">1050</int>
-		<string key="IBDocument.SystemVersion">9G55</string>
+		<string key="IBDocument.SystemVersion">9J61</string>
 		<string key="IBDocument.InterfaceBuilderVersion">677</string>
-		<string key="IBDocument.AppKitVersion">949.43</string>
+		<string key="IBDocument.AppKitVersion">949.46</string>
 		<string key="IBDocument.HIToolboxVersion">353.00</string>
 		<object class="NSMutableArray" key="IBDocument.EditedObjectIDs">
 			<bool key="EncodedWithXMLCoder">YES</bool>
@@ -100,13 +100,6 @@
 							<bool key="NSTransparent">NO</bool>
 							<reference key="NSFillColor2" ref="524635398"/>
 						</object>
-						<object class="NSCustomView" id="995989345">
-							<reference key="NSNextResponder" ref="675542922"/>
-							<int key="NSvFlags">289</int>
-							<string key="NSFrame">{{465, 0}, {15, 15}}</string>
-							<reference key="NSSuperview" ref="675542922"/>
-							<string key="NSClassName">GrowBoxView</string>
-						</object>
 					</object>
 					<string key="NSFrameSize">{480, 360}</string>
 					<reference key="NSSuperview"/>
@@ -135,14 +128,6 @@
 					</object>
 					<int key="connectionID">169</int>
 				</object>
-				<object class="IBConnectionRecord">
-					<object class="IBOutletConnection" key="connection">
-						<string key="label">growBox_</string>
-						<reference key="source" ref="326691890"/>
-						<reference key="destination" ref="995989345"/>
-					</object>
-					<int key="connectionID">176</int>
-				</object>
 			</object>
 			<object class="IBMutableOrderedSet" key="objectRecords">
 				<object class="NSArray" key="orderedObjects">
@@ -183,7 +168,6 @@
 						<object class="NSMutableArray" key="children">
 							<bool key="EncodedWithXMLCoder">YES</bool>
 							<reference ref="753762894"/>
-							<reference ref="995989345"/>
 						</object>
 						<reference key="parent" ref="886393115"/>
 					</object>
@@ -201,11 +185,6 @@
 						</object>
 						<reference key="parent" ref="675542922"/>
 					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">175</int>
-						<reference key="object" ref="995989345"/>
-						<reference key="parent" ref="675542922"/>
-					</object>
 				</object>
 			</object>
 			<object class="NSMutableDictionary" key="flattenedProperties">
@@ -216,7 +195,6 @@
 					<string>-2.IBPluginDependency</string>
 					<string>-3.IBPluginDependency</string>
 					<string>164.IBPluginDependency</string>
-					<string>175.IBPluginDependency</string>
 					<string>93.IBEditorWindowLastContentRect</string>
 					<string>93.IBViewEditorWindowController.showingLayoutRectangles</string>
 					<string>93.IBWindowTemplateEditedContentRect</string>
@@ -232,10 +210,9 @@
 					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
 					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
 					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
-					<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
-					<string>{{769, 584}, {480, 360}}</string>
+					<string>{{769, 496}, {480, 360}}</string>
 					<boolean value="YES" id="5"/>
-					<string>{{769, 584}, {480, 360}}</string>
+					<string>{{769, 496}, {480, 360}}</string>
 					<reference ref="5"/>
 					<reference ref="5"/>
 					<string>{480, 360}</string>
diff --git a/chrome/browser/cocoa/browser_window_controller.mm b/chrome/browser/cocoa/browser_window_controller.mm
index 91a356f284a51aa1bc756be989fd33dbe6462e17..6a584021a1978c799754b599e428b09049d6cede 100644
--- a/chrome/browser/cocoa/browser_window_controller.mm
+++ b/chrome/browser/cocoa/browser_window_controller.mm
@@ -36,6 +36,20 @@ const int kWindowGradientHeight = 24;
 
 }
 
+@interface NSWindow (NSPrivateApis)
+// Note: These functions are private, use -[NSObject respondsToSelector:]
+// before calling them.
+
+- (void)setAutorecalculatesContentBorderThickness:(BOOL)b
+                                          forEdge:(NSRectEdge)e;
+- (void)setContentBorderThickness:(CGFloat)b forEdge:(NSRectEdge)e;
+
+- (void)setBottomCornerRounded:(BOOL)rounded;
+
+- (NSRect)_growBoxRect;
+@end
+
+
 @interface BrowserWindowController(Private)
 
 - (void)positionToolbar;
@@ -95,6 +109,11 @@ willPositionSheet:(NSWindow *)sheet
     // Retain it per the comment in the header.
     window_.reset([[self window] retain]);
 
+    // Sets the window to not have rounded corners, which prevents
+    // the resize control from being inset slightly and looking ugly.
+    if ([window_ respondsToSelector:@selector(setBottomCornerRounded:)])
+      [window_ setBottomCornerRounded:NO];
+
     // Since we don't have a standard resize control, Cocoa won't enable the
     // zoom (green) button on the titlebar for us. Grab it and enable it
     // manually. Note that when launched from XCode, the doesn't work for the
@@ -384,7 +403,17 @@ willPositionSheet:(NSWindow *)sheet
 // in the coordinate system of the content area of the currently selected tab.
 // |windowGrowBox| needs to be in the window's coordinate system.
 - (NSRect)selectedTabGrowBoxRect {
-  return [tabStripController_ selectedTabGrowBoxRect];
+  if (![window_ respondsToSelector:@selector(_growBoxRect)])
+    return NSZeroRect;
+
+  // Before we return a rect, we need to convert it from window coordinates
+  // to tab content area coordinates and flip the coordinate system.
+  NSRect growBoxRect =
+      [[self tabContentArea] convertRect:[window_ _growBoxRect] fromView:nil];
+  growBoxRect.origin.y =
+      [[self tabContentArea] frame].size.height - growBoxRect.size.height -
+      growBoxRect.origin.y;
+  return growBoxRect;
 }
 
 // Accept tabs from a BrowserWindowController with the same Profile.
@@ -630,17 +659,6 @@ willPositionSheet:(NSWindow *)sheet
 
 @end
 
-
-@interface NSWindow (NSPrivateApis)
-// Note: These functions are private, use -[NSObject respondsToSelector:]
-// before calling them.
-
-- (void)setAutorecalculatesContentBorderThickness:(BOOL)b
-                                          forEdge:(NSRectEdge)e;
-- (void)setContentBorderThickness:(CGFloat)b forEdge:(NSRectEdge)e;
-@end
-
-
 @implementation BrowserWindowController (Private)
 
 // Position |toolbarView_| below the tab strip, but not as a sibling. The
diff --git a/chrome/browser/cocoa/tab_contents_controller.h b/chrome/browser/cocoa/tab_contents_controller.h
index 123594b5aef0a7ec4e9b8b45513c6da437ab3b7f..0cd2e2cf112fc4041f4e352715f393f665283b41 100644
--- a/chrome/browser/cocoa/tab_contents_controller.h
+++ b/chrome/browser/cocoa/tab_contents_controller.h
@@ -7,8 +7,6 @@
 
 #include <Cocoa/Cocoa.h>
 
-@class GrowBoxView;
-
 class TabContents;
 class TabContentsCommandObserver;
 class TabStripModel;
@@ -22,7 +20,6 @@ class TabStripModel;
   TabContents* contents_;  // weak
 
   IBOutlet NSBox* contentsBox_;
-  IBOutlet GrowBoxView* growBox_;
 }
 
 // Create the contents of a tab represented by |contents| and loaded from the
@@ -43,10 +40,6 @@ class TabStripModel;
 // an entirely new tab contents object.
 - (void)tabDidChange:(TabContents*)updatedContents;
 
-// Return the rect, in WebKit coordinates (flipped), of the window's grow box
-// in the coordinate system of the content area of this tab.
-- (NSRect)growBoxRect;
-
 @end
 
 #endif  // CHROME_BROWSER_COCOA_TAB_CONTENTS_CONTROLLER_H_
diff --git a/chrome/browser/cocoa/tab_contents_controller.mm b/chrome/browser/cocoa/tab_contents_controller.mm
index 8898a87ae4cf98b6487a1368649fd61a152d9468..a51796d8f35c7b2aed3eabf95070b2fbc7c3d416 100644
--- a/chrome/browser/cocoa/tab_contents_controller.mm
+++ b/chrome/browser/cocoa/tab_contents_controller.mm
@@ -58,29 +58,4 @@
   }
 }
 
-// Return the rect, in WebKit coordinates (flipped), of the window's grow box
-// in the coordinate system of the content area of this tab.
-- (NSRect)growBoxRect {
-  NSRect localGrowBox = NSMakeRect(0, 0, 0, 0);
-  NSView* contentView = contents_->GetNativeView();
-  if (contentView) {
-    // For the rect, we start with the grow box view which is a sibling of
-    // the content view's containing box. It's in the coordinate system of
-    // the controller view.
-    localGrowBox = [growBox_ frame];
-    // The scrollbar assumes that the resizer goes all the way down to the
-    // bottom corner, so we ignore any y offset to the rect itself and use the
-    // entire bottom corner.
-    localGrowBox.origin.y = 0;
-    // Convert to the content view's coordinates.
-    localGrowBox = [contentView convertRect:localGrowBox
-                                   fromView:[self view]];
-    // Flip the rect in view coordinates
-    localGrowBox.origin.y =
-        [contentView frame].size.height - localGrowBox.origin.y -
-            localGrowBox.size.height;
-  }
-  return localGrowBox;
-}
-
 @end
diff --git a/chrome/browser/cocoa/tab_strip_controller.h b/chrome/browser/cocoa/tab_strip_controller.h
index 600476844d5d8ad23e867ec74628d6d25085e5d2..dea418de44e4e871276ff49545630588f8dac576 100644
--- a/chrome/browser/cocoa/tab_strip_controller.h
+++ b/chrome/browser/cocoa/tab_strip_controller.h
@@ -54,7 +54,7 @@ class ToolbarModel;
   CGFloat placeholderStretchiness_; // Vertical force shown by streching tab.
   // Frame targets for all the current views.
   // target frames are used because repeated requests to [NSView animator].
-  // aren't coalesced, so we store frames to avoid redundant calls.  
+  // aren't coalesced, so we store frames to avoid redundant calls.
   scoped_nsobject<NSMutableDictionary> targetFrames_;
   NSRect newTabTargetFrame_;
 }
@@ -68,10 +68,6 @@ class ToolbarModel;
         switchView:(NSView*)switchView
              model:(TabStripModel*)model;
 
-// Return the rect, in WebKit coordinates (flipped), of the window's grow box
-// in the coordinate system of the content area of the currently selected tab.
-- (NSRect)selectedTabGrowBoxRect;
-
 // Return the view for the currently selected tab.
 - (NSView *)selectedTabView;
 
diff --git a/chrome/browser/cocoa/tab_strip_controller.mm b/chrome/browser/cocoa/tab_strip_controller.mm
index eae1bbbd159e575fc04f8604c7eae128bb10a057..0bf6a5947ada024ecdb3986a08a43c38c2b3c1cd 100644
--- a/chrome/browser/cocoa/tab_strip_controller.mm
+++ b/chrome/browser/cocoa/tab_strip_controller.mm
@@ -579,21 +579,4 @@ NSString* const kTabStripNumberOfTabsChanged = @"kTabStripNumberOfTabsChanged";
   tabModel_->InsertTabContentsAt(index, contents, true, false);
 }
 
-// Return the rect, in WebKit coordinates (flipped), of the window's grow box
-// in the coordinate system of the content area of the currently selected tab.
-- (NSRect)selectedTabGrowBoxRect {
-  int selectedIndex = tabModel_->selected_index();
-  if (selectedIndex == TabStripModel::kNoTab) {
-    // When the window is initially being constructed, there may be no currently
-    // selected tab, so pick the first one. If there aren't any, just bail with
-    // an empty rect.
-    selectedIndex = 0;
-  }
-  TabContentsController* selectedController =
-      [tabContentsArray_ objectAtIndex:selectedIndex];
-  if (!selectedController)
-    return NSZeroRect;
-  return [selectedController growBoxRect];
-}
-
 @end
diff --git a/chrome/browser/cocoa/tab_strip_controller_unittest.mm b/chrome/browser/cocoa/tab_strip_controller_unittest.mm
index 7470bb9570ec52c79a0bd0396e75f834a6b084a2..71eeba582bc2f6ff0c3c9a1b5ee67539288ff287 100644
--- a/chrome/browser/cocoa/tab_strip_controller_unittest.mm
+++ b/chrome/browser/cocoa/tab_strip_controller_unittest.mm
@@ -96,11 +96,6 @@ class TabStripControllerTest : public testing::Test {
   scoped_nsobject<NSView> tab_strip_;
 };
 
-TEST_F(TabStripControllerTest, GrowBox) {
-  // TODO(pinkerton): Creating a TabContents crashes an unrelated test, even
-  // if you don't do anything with it. http://crbug.com/10899
-}
-
 // Test adding and removing tabs and making sure that views get added to
 // the tab strip.
 TEST_F(TabStripControllerTest, AddRemoveTabs) {
@@ -127,7 +122,7 @@ TEST_F(TabStripControllerTest, RearrangeTabs) {
   // if you don't do anything with it. http://crbug.com/10899
 }
 
-// Test that changing the number of tabs broadcasts a 
+// Test that changing the number of tabs broadcasts a
 // kTabStripNumberOfTabsChanged notifiction.
 TEST_F(TabStripControllerTest, Notifications) {
   // TODO(pinkerton): Creating a TabContents crashes an unrelated test, even