* Electron version: 1.4.12
* Operating system: OSX 10.11

If a BrowserWindow is created in full screen mode (fullScreen: true), but programmatically enters and exits kiosk mode (setKiosk(false)), I would expect the app to stay fullScreen at all times.  

This issue appears to be in **NativeWindowMac::SetKiosk(bool kiosk)**. It calls SetFullScreen(true) when entering kiosk and SetFullScreen(false) when leaving kiosk. It would be nice if a check was made to see if the window was already full screen and then just skip these calls. This would allow more graceful kiosking for full screen apps.  


atom/browser/native_window_mac.h
@class AtomNSWindowDelegate;
@class FullSizeContentView;
namespace atom {
class NativeWindowMac : public NativeWindow,
                        public content::RenderWidgetHost::InputEventObserver {
 public:
  NativeWindowMac(brightray::InspectableWebContents* inspectable_web_contents,
                  const mate::Dictionary& options,
                  NativeWindow* parent);
  ~NativeWindowMac() override;
  
  void Close() override;
  void CloseImmediately() override;
  void Focus(bool focus) override;
  bool IsFocused() override;
  void Show() override;
  void ShowInactive() override;
  void Hide() override;
  bool IsVisible() override;
  bool IsEnabled() override;
  void Maximize() override;
  void Unmaximize() override;
  bool IsMaximized() override;
  void Minimize() override;
  void Restore() override;
  bool IsMinimized() override;
  void SetFullScreen(bool fullscreen) override;
  bool IsFullscreen() const override;
  void SetBounds(const gfx::Rect& bounds, bool animate = false) override;
  gfx::Rect GetBounds() override;