Prevent redraw of menu bar icons Yosemite

Update 2015-03-04: According to some updated release notes from the Bartender app (v1.2.32; emphasis mine):

Apple appear to have fixed the flickering item issue for multiple monitors in Yosemite with 10.10.3 Beta 2; but in doing so Bartender stopped working correctly. We have made changes to Bartender for 10.10.3 Beta 2 and anticipate it to now be working smoothly; if you see any issues with Bartender please do let us know.

So there may be an end to this problem in sight.


I'm sorry to say that, according to my own email exchange with their Advisors, Apple Engineering's official response is that this is by design:

This is normal behavior caused by transparency being turned off and on to differentiate between which display is active.

There are a few workarounds you can try.

— Adjust the settings in System Preferences —> Accessibility and enable reduce transparency.

— Disable displays have separate spaces.

— Enable Use Dark Menu Bar and Dock in System Preferences —> General.

Another Workaround with Bartender

In my experience, I also run Bartender to limit the number of active status bar icons. Since fewer icons have to redraw, it decreases the redraw delay when switching monitors. They still redraw, and it's still annoying, but the increased UI responsiveness helps me ignore it.

Troubleshooting Steps that Do Nothing

I performed the following steps with a Senior Apple Technical Advisor and Engineer during a support case for this same issue. None of these fixed the issue:

  • creating a new user (and thus a blank user profile)
  • going into safe mode (including with a new user account)
  • reinstalling the OS
  • resetting SMC and NVRAM
  • running Apple Hardware Test
  • running VGA dongle diagnostic tools

Detailed Problem Description

Videos of the behavior are posted here: https://flic.kr/s/aHsk5xxSb1

  • When either one or two external monitors is attached,
    • via HDMI, MiniDP>DP, or MiniDP>VGA
  • regardless of whether the lid is open or closed,
  • and Displays have separate Spaces is enabled,
  • one can click the desktop on any inactive desktop (the desktop with a grayed-out or muted menubar),
  • and that display's menubar's icons will begin redrawing,
    • which manifests as a jittering of icons (expressed as a shifting laterally and vertically),
    • a rearranging of icons (in the case where one has rearranged them manually by holding down the CMD key and dragging them),
    • and a brief de-antialiasing followed by a re-antialiasing (or dithering) of the icons.
  • This occurs with all icons in the right-hand side of the menubar,
    • but not those on the left (apple, and menu items),
    • and also excluding the sidebar icon.
  • The symptoms do not occur when transitioning from one external monitor to another.
  • The shifting of icons causes a functional delay between initiating the transition and using the application in the destination screen. (In my case, 3-5 seconds.)
    • The delay's timing appears related to the number of status bar icons you have.

Root Cause?

I expect that this is a software issue related to SystemUIServer or one of the underlying (private) UI libraries. It seems heavily related to antialiasing. Although Apple says this is expected behavior, I think many users would agree this is a bug introduced with Yosemite.


Apple seem to be well aware of this now. I filed a bug report on bugreport.apple.com and it was marked as a duplicate:

Duplicate of 17643875 (Open)

Given it's still open, hopefully we'll see a fix in some revision of Yosemite.

Otherwise, System Preferences —> Accessibility -> Displays have separate spaces (logout/login) by itself does the trick for me - but no menu bar on the second screen.