It seems that Mac OS X has a tendency to leave some windows off-screen at times, especially when I disconnect an external monitor from my MacBook. What's the easiest way to move the window back on-screen when it's not possible to grab the title bar and drag it back onto the screen?

XvsXP.com recommends adjusting your screen resolution downward to have off-screen windows "snap back into view" and then adjust your screen resolution back to its original setting. In OS X 10.4 Tiger, I had a script that brought all off-screen windows back on-screen, but in my upgrades to Leopard and now Snow Leopard, I don't seem to have that script.

Any better solutions out there? What's your recommendation?

Configuration

  • Mac OS X 10.6.1 Snow Leopard
  • 13" MacBook Unibody
  • 2.4 GHz Intel Core 2 Duo
  • 4 GB 1067 MHz DDR3
link|improve this question

64% accept rate
You may want to check out a very similar question (331) superuser.com/questions/331/… – Chealion Oct 14 '09 at 17:19
feedback

14 Answers

This method seems to work: click on the Window menu, then click Zoom

link|improve this answer
1  
For the first time in months, I just ran into this problem with Parallels. Unfortunately, they don't have a zoom menu option under the Window menu. – Matthew Rankin Jan 15 '10 at 15:25
+1 If I could mark this as the answer, I would! thanks! – andy May 8 at 23:38
feedback

I had this problem with Parallels desktop 6 in OS X Lion, whereby the VM's actual window was hidden off-screen, and only visible in Mission control, and when you swiped between spaces.

So for those with the same problem, and hopefully this is applicable elsewhere: The solution is to right click on the Application's icon in the Dock, then go to the 'Options' menu item, and under 'Assign To' choose 'This Desktop'. That should move the app window back on to the current desktop. Still preferred the old spaces pref pane for this sort of thing - much faster.

Hope that helps those stumbling upon this post, with the same problem with Parallels (as I did)

link|improve this answer
feedback

Go to System Preferences --> Displays --> Detect Displays

It will force the system to rescan, and detect the missing monitor... That typically solves the problem when I run into it.

Also, if that doesn't work, and your system still believes that the monitor is connected try two things:

1 - If you have the cable still connected (but unconnected to a monitor), disconnect it. 2 - On the arrangement tab on the displays panel, try "Gather Windows". That should gather all the windows to the active / primary monitor.

link|improve this answer
I tried using Detect Displays and that didn't work. I didn't try the "Gather Windows" option, but I will next time. – Matthew Rankin Jan 15 '10 at 15:28
feedback

Have you tried using Expose? I believe the default binding is F11.

link|improve this answer
In my experience, engaging Exposé will show the window, but if you select it, it's still off screen. There's no way to change the position of the window from within the Exposé view. – Doug Harris Oct 14 '09 at 16:05
I tried Expose and that didn't work. As Doug said it still leaves the window off screen. – Matthew Rankin Jan 15 '10 at 15:27
feedback

Three ideas:

  • Cmd-F1 (or Cmd-fn-F1 if you've configured your macbook keyboard to use normal function keys) toggles your displays between mirror mode and extended desktop. A side effect is that windows get moved around somewhat unpredictably. This might move the missing window to somewhere visible. This likely requires the external monitor to be connected though.

  • Turn on Spaces, hit the hot key to displays the spaces overview and see if your missing window outline is visible there. If so, drag it to where you want it to be.

  • Quit the application and relaunch. Definitely a non-ideal solution and not practical if there's unsaved work.

link|improve this answer
Toggling between mirror mode and extended desktop didn't work. I decided to quit Parallels, which brought up a dialog box prior to quitting. With the dialog box up, I moved the Parallels window back on screen and then selected "Cancel" from the "Are you sure you want to quit?" dialog box. Still wish there were a better way. – Matthew Rankin Jan 15 '10 at 15:30
feedback

For extreme cases, like I'm encountering with Interface Builder, you can try re-connecting your second monitor, finding that missing window and then dragging it back to the primary display.

Now, to check your work, quit the program and then re-launch it ensure that all of the desired windows are living on your primary display.

Now, disconnect the second monitor - things should be ok.

link|improve this answer
feedback

I've found that deleting the offending reference items from Interface Builder's plist sometimes helps. I've even tried to set the window's position via AppleScript with no luck.

link|improve this answer
feedback

If you are willing to look at third party apps then Optimal Layout, an app I developed, offers keyboard commands for controlling and organizing app windows: http://most-advantageous.com/optimal-layout/

link|improve this answer
feedback

The position of the views are saved in the nib files themselves. The way I fixed this was to make a change to the View and then saved it. Shut down Interface Builder and started it again. My window and view where gathered back to the main screen. I have to say that I tried all the options before doing this. That is the Zoom, deleting the .plist from Library/Preferences, F8, Gather Windows... None of those worked. I hope this helps.

link|improve this answer
feedback

None of the above worked for me, but I managed a fix by changing: -System Preferences -Hardware -Displays

Then go to the 'arrangement' 'tab' and drag the external window on top of the internal one (instead of side-by-side).

link|improve this answer
feedback

The easiest way to solve this is by turning on Spaces and hitting the hotkey, usually F8, and dragging the windows around in that view. This was suggested above by another user (Doug Harris) as well.

link|improve this answer
feedback

On OSX Lion, all I had to do was right click the window in the system task bar tray, choose Hide, and then do the same and select Show and the window appeared.

link|improve this answer
You're confusing windows and applications. – Daniel Beck Nov 18 '11 at 14:57
feedback

Haven't read trough the whole tread but the easiest way I found was to change the resolution of the sceen: System preference -> Displays and then change resolution. This will force your computer to render the display again and reposition all open windows.

Then just switch it back to your original resolution settings and everything should be back in to place.

link|improve this answer
feedback

I had to plug my external monitor back in to move the app in question (RSA SecurID) back onto my laptop screen. I tried a variety of the other suggestions on this page. I'm on OS X Lion.

link|improve this answer
feedback

Your Answer

 
or
required, but never shown

Not the answer you're looking for? Browse other questions tagged or ask your own question.