diff --git a/macosx/Controller.h b/macosx/Controller.h
index 78761e8bb..b1fc8cda2 100644
--- a/macosx/Controller.h
+++ b/macosx/Controller.h
@@ -70,6 +70,7 @@
IBOutlet BarButton * fNoFilterButton, * fPauseFilterButton,
* fSeedFilterButton, * fDownloadFilterButton;
IBOutlet NSSearchField * fSearchFilterField;
+ IBOutlet NSButton * fHideFilterButton;
IBOutlet NSMenuItem * fNextInfoTabItem, * fPrevInfoTabItem;
diff --git a/macosx/Controller.m b/macosx/Controller.m
index 2e3fc4ebc..6597c9afd 100644
--- a/macosx/Controller.m
+++ b/macosx/Controller.m
@@ -142,6 +142,8 @@ static void sleepCallBack(void * controller, io_service_t y,
//set up filter bar
NSView * contentView = [fWindow contentView];
+ [fHideFilterButton setToolTip: @"Hide Filter Bar"];
+ [fFilterBar setHidden: YES];
fFilterBarVisible = NO;
NSRect filterBarFrame = [fFilterBar frame];
@@ -155,6 +157,9 @@ static void sleepCallBack(void * controller, io_service_t y,
//set up status bar
fStatusBarVisible = NO;
+ [fShowFilterButton setToolTip: @"Show Filter Bar"];
+ [fStatusBar setHidden: YES];
+
NSRect statusBarFrame = [fStatusBar frame];
statusBarFrame.size.width = [fWindow frame].size.width;
[fStatusBar setFrame: statusBarFrame];
@@ -1546,6 +1551,9 @@ static void sleepCallBack(void * controller, io_service_t y,
if (show == fStatusBarVisible)
return;
+ if (show)
+ [fStatusBar setHidden: NO];
+
NSRect frame = [fWindow frame];
float heightChange = [fStatusBar frame].size.height;
if (!show)
@@ -1578,6 +1586,9 @@ static void sleepCallBack(void * controller, io_service_t y,
minSize.height += heightChange;
[fWindow setContentMinSize: minSize];
+ if (!show)
+ [fStatusBar setHidden: YES];
+
//reset tracking rects for filter buttons
[fNoFilterButton resetBounds: nil];
[fSeedFilterButton resetBounds: nil];
@@ -1603,6 +1614,9 @@ static void sleepCallBack(void * controller, io_service_t y,
if (show == fFilterBarVisible)
return;
+ if (show)
+ [fFilterBar setHidden: NO];
+
NSRect frame = [fWindow frame];
float heightChange = [fFilterBar frame].size.height;
if (!show)
@@ -1630,10 +1644,8 @@ static void sleepCallBack(void * controller, io_service_t y,
minSize.height += heightChange;
[fWindow setContentMinSize: minSize];
- //enable/disable search field
- [fSearchFilterField setEnabled: show];
if (!show)
- [fWindow makeFirstResponder: fTableView];
+ [fFilterBar setHidden: YES];
//enable show filter button in status bar
[fShowFilterButton setEnabled: !show];
diff --git a/macosx/English.lproj/MainMenu.nib/classes.nib b/macosx/English.lproj/MainMenu.nib/classes.nib
index 3d0dc3db2..754ff556e 100644
--- a/macosx/English.lproj/MainMenu.nib/classes.nib
+++ b/macosx/English.lproj/MainMenu.nib/classes.nib
@@ -45,6 +45,7 @@
fDownloadMenu = NSMenu;
fDownloadNoLimitItem = NSMenuItem;
fFilterBar = ImageBackgroundView;
+ fHideFilterButton = NSButton;
fNameSortItem = NSMenuItem;
fNextInfoTabItem = NSMenuItem;
fNoFilterButton = BarButton;
diff --git a/macosx/English.lproj/MainMenu.nib/info.nib b/macosx/English.lproj/MainMenu.nib/info.nib
index a64bf8b9f..771dba69b 100644
--- a/macosx/English.lproj/MainMenu.nib/info.nib
+++ b/macosx/English.lproj/MainMenu.nib/info.nib
@@ -9,9 +9,9 @@
1041
344 478 208 99 0 0 1152 842
1480
- 310 355 420 63 0 0 1152 842
+ 366 546 420 63 0 0 1152 842
1603
- 337 544 477 67 0 0 1152 842
+ 311 415 477 67 0 0 1152 842
29
9 780 451 44 0 0 1152 842
456
diff --git a/macosx/English.lproj/MainMenu.nib/keyedobjects.nib b/macosx/English.lproj/MainMenu.nib/keyedobjects.nib
index 92fb261d7..fbe887944 100644
Binary files a/macosx/English.lproj/MainMenu.nib/keyedobjects.nib and b/macosx/English.lproj/MainMenu.nib/keyedobjects.nib differ