When I'm running several instances of the same app (might be Chrome separate windows, or several IntelliJ projects) in fullscreen mode, I can't navigate to concrete app using ⌘-Tab, it will just show one icon of the app but there are several running in the background.

Also there is no application specific shortcut to do so.

enter image description here

Is there a way to make ⌘-Tab show instances rather than global app icon?

  • 1
    It's not a separate instance, merely another window.
    – Tetsujin
    Commented May 21, 2015 at 8:32
  • 1
    Ok then how do i navigate to that another window with a shortcut? :) except mission control
    – vach
    Commented May 21, 2015 at 8:32
  • 1
    Its a separate chrome window i cant just pres ctrl + tab to switch to next tab. Only option so far i saw was mission control which sucks...
    – vach
    Commented May 21, 2015 at 8:33
  • 2
    I know about that shorcut :( and it works only for non full screan apps
    – vach
    Commented May 21, 2015 at 8:38
  • 1
    I tought this should be a common problem, as this affects any full screan app that can have few windows/instances i bet i'm not the only one needing to switch between them :) (maybe others just use mission control?)
    – vach
    Commented May 21, 2015 at 8:40

3 Answers 3


Unfortunately, there is no shortcut to switch between fullscreen windows of the same application.

You have two alternatives that are not ideal but enough:

  1. Shortcuts to switch between spaces/desktops or jump to a specific one

enter image description here

  1. Gestures to switch between spaces/desktops

enter image description here

To make this workflow work well, just put your fullscreen windows side by side.

  • 6
    thats what i do now :) tough it still involves trackpad but it is much easyer and faster now. still i dont really understand why mac does this, whats the point to tread several instances as one when purpose of command tab is to switch to what you need...
    – vach
    Commented May 21, 2015 at 14:41
  • In the upper image what keypresses do ^← and ^→ represent? Commented May 15, 2016 at 6:56
  • @hippietrail ^ represents Ctrl, so Ctrl+leftArrow, Ctrl+rightArrow. Commented Feb 7, 2017 at 15:50
  • It is worth noting that the Ctrl + Left Arrow and Ctrl + Right Arrow shortcuts to switch between spaces are enabled by default. Commented Feb 4, 2018 at 0:12

Apart from Mission Control, there also is the Dock.

When you click repeatedly it will cycle through the application's full screen spaces.

  • 2
    Oh thanks, i didnt know that, my dock is autohiding tough :) and i more tend to use keyboard than trackpad/mouse thus the question, but thanks for an answer :)
    – vach
    Commented May 21, 2015 at 14:39
  • did not know that. thx! Is there a way to discern on the Dock whether multiple windows exist? For non fullscreen there are multiple icons. But Fullscreen does not shown AFAICT. Commented Jun 14, 2015 at 20:56
  • Nothing out of the ordinary that I know of. A probably well known one is the 'Window' menu listing of multiple windows, as shown in the original post's screenshot, is mirrored in some applications (e.g. Safari), when the Dock icon is ctrl.-clicked, or right-clicked, or clicked and held.
    – Redarm
    Commented Feb 16, 2016 at 15:05
  • 2
    I've got an auto-hiding dock too, but I can see the dock from my second monitor... clicking on it doesn't seem to cycle through anything though.
    – Michael
    Commented Mar 28, 2016 at 18:57

If you know how to bind an applescript to keyboard shortcut/trackpad gesture, this is the answer for you.

The script is meant to be universal. It uses the most generalized terms to include as many scenarios as possible. I've tested on Finder, Script Editor, and Firefox. No errors.

However, it has caveats:

  1. The script only works when there's only one instance of an app. (BTW, it still says "several instances" in the text of OP.) It's possible to work multiple-instance into it, but that's a fight for another day.

  2. This script scrolls down the list of windows in Window menu. It in essence clicks the item right below the one with a check ("✓") mark. If the item with a "✓" is the last item, the script will instead click the first item under the last separator line. A script that goes backward in the reverse direction can be obtained be modifying this script. However, I do not see how the two can be combined into a single script.

  3. The try statement that produces an errorMessage is the most CPU-efficient way I know to produce the index of the separator. If you know a better way, please enlighten me.

The script:

tell application "System Events" to tell (first application process whose frontmost is true) to tell menu bar 1 to tell menu "Window"

    set cellingSeperator to last menu item whose value of attribute "AXEnabled" is false
    set checkedItem to first menu item whose value of attribute "AXMenuItemMarkChar" is "✓"

        set intentionalError to cellingSeperator as Unicode text
    on error errorMessage
        set firstItemIndex to (characters ((offset of "«class menI» " in errorMessage) + 13) through ((offset of " of" in errorMessage) - 1) of errorMessage as string as integer) + 1
    end try

    repeat with iterator from firstItemIndex to number of menu items
        if value of attribute "AXFrame" of menu item iterator is equal to value of attribute "AXFrame" of checkedItem then
            set clickItemIndex to iterator + 1
            exit repeat
        end if
    end repeat

    if clickItemIndex is greater than number of menu items then set clickItemIndex to firstItemIndex

    tell menu item clickItemIndex to perform action "AXPress"

end tell
  • Thanks, i'll try it sometime and maybe add the multiInstance part, but i'm new to mac and dont want to do something i dont know how to undo... This is offtop question but is there a way to backup my os as it is (like a vm) and then if i destroyed something i could recover it from backup... (i dont have the additional time machine thing) just external ssd bigger than my devices memory... Or any other options you may know of except backup?
    – vach
    Commented May 22, 2015 at 9:26
  • 1
    This works, but not so great for me (using Alfred workflows, running script on osascript). How would we modify this to work for a specific application? ("Atom" in my case). Maybe it takes a while for System Events to find the correct application etc? I'm not sure why it is slow.
    – mostruash
    Commented Jul 2, 2015 at 19:56
  • 1
    Will you provide a link to a good how-to for installing scripts like these? Thank you. Commented Aug 5, 2018 at 15:25

Not the answer you're looking for? Browse other questions tagged .