Now that we have a supported platform list of >= 10.10 we can use the `[NSStatusItem button]` instead of the hacks and tricks we use currently.
shell/browser/ui/tray_icon.h
ALWAYS,    
    NEVER,     
    SELECTION  
  };
  virtual void SetHighlightMode(HighlightMode mode);
#if defined(OS_MACOSX)
  
  virtual void SetIgnoreDoubleClickEvents(bool ignore) = 0;
  virtual bool GetIgnoreDoubleClickEvents() = 0;
  
  virtual void SetTitle(const std::string& title) = 0;
  virtual std::string GetTitle() = 0;
#endif
  
  
  virtual void DisplayBalloon(ImageType icon,
                              const base::string16& title,
                              const base::string16& contents);
  
  virtual void PopUpContextMenu(const gfx::Point& pos,
                                AtomMenuModel* menu_model);
  
  virtual void SetContextMenu(AtomMenuModel* menu_model) = 0;
  
  virtual gfx::Rect GetBounds();
  void AddObserver(TrayIconObserver* obs) { observers_.AddObserver(obs); }
  void RemoveObserver(TrayIconObserver* obs) { observers_.RemoveObserver(obs); }