Yosemite is definitely an improvement over Mavericks, but there are still some painfully obvious and annoying bugs that occur within certain apps.
One such example is the elongated "Open" and "Save" dialog boxes, which sometimes stretch all the way down so that the "Open," "Save," and "Cancel" buttons are either completely offscreen or obfuscated by the Dock.
If you don't know what I'm talking, just look at the example below, which happens in Google Chrome. I don't even need that much space, but thanks to the bug, I'm given it regardless. Hiding the Dock is a quick fix in this situation, but I've also experienced cases where the dialog box drops well below the bottom of the screen.
It's worth noting that the Mac OS X 10.10.2 update (to be released soon) should fix many of the bugs in Yosemite (including this one... hopefully). If you're not down for waiting though, we've got a trick that'll help you resize some of those unreasonably large dialog windows on Yosemite.
Using Terminal, you can change the sizes of the open and save dialog windows on a per-app basis. Below are the two commands you'll be using back to back, with "BundleID" being the placeholder for the specific app you'll be making changes to.
- defaults delete BundleID NSNavPanelExpandedSizeForOpenMode
- defaults delete BundleID NSNavPanelExpandedSizeForSaveMode
Before you enter any commands, you'll need to find the bundle identifier for the app in which you want to make changes. It's what you will be placing in the command to replace "BundleID."
I'll be making changes to Chrome's dialog windows, since it happens most frequently to me in this app, but the process will be the same for all other apps. First find the app, right-click on it, and select "Show Package Contents."
Go into the "Contents" folder and open "Info.plist" in TextEdit. Press CMD+F (find shortcut) and type in "CFBundleIdentifier," which will then appear highlighted in yellow. Beneath it you'll find the bundle ID, between <string> and </string>. Copy it.
Now that you have your bundle ID, replace "BundleID" in the two commands with it. Like I mentioned before, I'll be using Chrome's bundle ID, which is "com.google.Chrome":
- defaults delete com.google.Chrome NSNavPanelExpandedSizeForOpenMode
- defaults delete com.google.Chrome NSNavPanelExpandedSizeForSaveMode
(Note: the large spaces seen in the above two commands are actually just one space each; the lines stretch to fill the width of this article.)
After entering the commands, there should be a one or two second pause. Don't enter commands for the same app twice, as that will lead to an error.
Below you can see the difference in the dialog window after successfully executing the Terminal command.
Just as a warning, your dialog window might resize back to its enormous size if you manually resize them with your mouse after already entering the commands, so you'll need to re-enter them.
Yes, I know how frustrating that is, but for now it's the only fix we have, aside from just using the "Escape" and "Enter" keys instead. Hopefully, Apple puts out a Yosemite update sooner than later to iron out all of the issues in the current OS, including this one.