Stick floating eclipse windows on second screen with Mac OS 10.9 Mavericks

When working with eclipse, I'm used to have a floating window with the console and other views on my secondary monitor. Since the update to OSX 10.9 (Mavericks), I still can drag the floating window to the secondary screen, but it keeps popping back to the main monitor when e.g. changing the perspective - which is really annoying. This did not happen with Mac OS 10.8. Is there a way that the floating windows of eclipse stay on the secondary monitor?


Since Mac OS 10.9, the second screen is actually an own "space" and Mac OS seems to gather all windows of an application on the same space - somehow. But anyway. To switch back to the previous behaviour where the default space simply spans both screens, you can uncheck the box called "Displays have separate spaces" ("Monitore verwenden verschiedene Spaces" in German) in the "Mission Control" settings. After logging out and in again, the desktop and eclipse's floating windows behave like always again.


The best way to use multi-minitor views on OS X (Yosemite now, but presumably Mavericks previously) seems to be to create a new window (Window -> New Window) and arrange your views as needed.

You can place this new window on whichever screen/space you want, and it will behave independently of the main window. This means that if you switch perspectives in the main window, it will remain where it is. Unfortunately you can't link a change in perspective between the two windows as far as I can see.

Caveats:

  • Views which interact with the editor will open files in the secondary window, if that's where the view is open.
  • If you close your main window first when quitting, the secondary will open on its own and you will have to re-configure your main window. Advice: make sure you have saved your perspective layout for each screen. If you just cmd-Q the app, both windows will still open as you would expect.

I can see two ways to fix this from the point of view of Eclipse development in future:

  1. Include the correct screen for each open tool panel window in the perspective, so that they appear on the correct monitor, if available.
  2. Extend perspectives support to allow cross-window syncing, and specifying which window is the 'primary' for opening files.