It isn't 1990 anymore, I want to multitask!
April 25, 2014 3:51 AM   Subscribe

On my Mac (OS X Mavericks), some fullscreen apps don't let me task switch away from them. AT ALL. Needless to say, this is ridiculously annoying. Is there a workaround?

For real. I've only seen this with some fullscreen games but this problem is so aggravating that often I don't even bother playing them.

It seems that these apps in particular take exclusive control of my whole keyboard/screen, preventing me from "escaping" them without quitting the app entirely. The following normal means of switching to another app most definitely do NOT work:
  • Cmd+Tab
  • "App overview" key (F3)
  • Launchpad key (F4)
  • Three-finger trackpad swipe
  • Ctrl+Arrow keys
  • Option+Cmd+Esc (this kills the app outright instead of bringing up the Force Quit menu)
Other system shortcuts work (volume/playback control keys, brightness, etc.) but nothing that actually switches out of the app, of course. Cmd+Q doesn't work either, either I have to quit the app manually or kill it with Option+Cmd+Esc.

What the heck can I do about this? For the record, here's a brief list of the guilty parties: FTL, Frozen Synapse, any Unity3D game.
posted by neckro23 to Technology (11 answers total) 3 users marked this as a favorite
 
I don't have the exact answer, but I do know that there is a difference between full-screen applications like Safari or Firefox that call OS specific functionality to reap those benefits, and with full screen games like the ones you are playing that use the same full-screen behaviors that have been around for decades now.
Pretty much all you can do is complain to the dev teams.
posted by oceanjesse at 3:55 AM on April 25, 2014


My solution is to just not run these apps fullscreen. I know FTL in particular will run in a windowed mode.
posted by Magnakai at 4:02 AM on April 25, 2014


Response by poster: Yeah, there seem to be three different ways that apps can switch to fullscreen in OSX:

1. The app expands to live on a virtual desktop (most "normal" apps do this)
2. No virtual desktop, the app just runs in a borderless window the size of the screen (most well-behaved games do this)
3. Annoying exclusive can't-switch-away mode, which is what I'm complaining about...

These games do have a windowed mode, of course, but this is a 13" Macbook so this means the game ends up with an effective screen real estate of something like 1200x700, which isn't really acceptable.
posted by neckro23 at 4:05 AM on April 25, 2014


Some games will do a "borderless windowed mode" which you can then set to the actual size of your screen.
posted by pharm at 4:40 AM on April 25, 2014


Perhaps install virtualization software like Parallels or VirtualBox, which is free. Install Mavericks in that and run your games within a VM.
posted by epo at 4:48 AM on April 25, 2014 [1 favorite]


Best answer: This is a known bug in SDL, which FTL and many other games use to manage drawing to the screen. The new SDL 2.0 version supports an option "SDL_WINDOW_FULLSCREEN_DESKTOP" which allows command-tab, and will soon integrate even better with OS X. But many games (including FTL, for example) are still stuck on SDL 1.2, since it takes some work to port to SDL 2.0.

Hopefully the FTL crew will eventually move to 2.0, since it may be the easiest way for them to get onto Android tablets. I guess you could use virtualization like epo recommends, but I suspect performance will be awful, and sound may be missing—not many people run OS X in virtualization, so it hasn't been highly optimized. If you're going to go the virtualization route, I'd use a Windows VM, assuming you have a spare Windows license sitting around.
posted by vasi at 7:29 AM on April 25, 2014 [3 favorites]


Response by poster: Actually, I did think of a similar workaround after posting -- I already have Crossover (Windows emulator, based on Wine) installed, so I can just run the Windows versions of those games. Not sure why I didn't think of that before. It's suboptimal because Crossover has some CPU overhead and there are minor glitches, but it's better than the previous state of affairs...

(Running a VM is a non-starter, since there's a really heavy virtualization overhead, plus the VM has no access to the GPU...)
posted by neckro23 at 8:41 AM on April 25, 2014


Best answer: Actually, the VM does have access to the GPU. In fact, I've had better luck running older Windows OpenGL games (like Tribes 2, WAYYYY less glitchy) under virtualization for whatever reason.

I, too, have been annoyed with this fullscreen behavior, but typically solve it by ... booting to Windows.
posted by destructive cactus at 9:02 AM on April 25, 2014 [1 favorite]


I'm with destructive cactus, virtualization probably won't have unacceptable overhead. Last I checked on my Mac, Civ IV even performs better in a Windows VM than natively on my Mac, wtf?
posted by vasi at 1:32 PM on April 25, 2014


Certain games can indeed run better under a Windows VM than natively in OS X, thanks to all-to-common poor optimization of the OS X version. This was my experience with Rogue Legacy, which notably is an SDL game. Modern virtualization software (Parallels, at least; I believe VMWare is similar) is actually very good in terms of overhead, although battery life is very noticeably affected. Of course, this is quite an expensive solution.
posted by Aiwen at 1:38 PM on April 25, 2014


Response by poster: Yeah, I'm more used to VirtualBox, which is not good for that sort of thing. I should probably give VMWare or something a shot.
posted by neckro23 at 4:43 PM on April 25, 2014


« Older My Camelbak is trying to kill me.   |   Blogs written by bookstore employees or librarians Newer »
This thread is closed to new comments.