<!--
Thanks for opening an issue! A few things to keep in mind:

- The issue tracker is only for bugs and feature requests.
- Before reporting a bug, please try reproducing your issue against
  the latest version of Electron.
- If you need general advice, join our Slack: http://atom-slack.herokuapp.com
-->

* Electron version: >= 1.8.2
* Operating system: Any macOS

### Feature request

Currently, the `titleBarStyle` option can only be passed an as option to the `BrowserWindow` constructor when initializing a new BrowserWindow to customize the behavior of the macOS title bar and traffic lights. This cannot be changed after the BrowserWindow been created.

Our team would like to be able to set the `titleBarStyle` on-the-fly after a BrowserWindow has been created. This functionality could be added to the BrowserWindow class as an instance method called, for instance, `setTitleBarStyle`. As an argument this method would accept the same values as set in the configuration in the constructor when creating a `new BrowserWindow`.

If this feature request sounds like a good idea we would like to contribute with the necessary code changes in a Pull Request. What do you think?

atom/browser/native_window.h
bool has_frame_ = true;
  
  bool transparent_ = false;
  
  extensions::SizeConstraints size_constraints_;
  
  bool enable_larger_than_screen_ = false;
  
  bool is_closed_ = false;
  
  
  double sheet_offset_x_ = 0.0;
  double sheet_offset_y_ = 0.0;
  
  
  double aspect_ratio_ = 0.0;
  gfx::Size aspect_ratio_extraSize_;
  
  NativeWindow* parent_ = nullptr;
  
  bool is_modal_ = false;
  
  NativeBrowserView* browser_view_ = nullptr;
  
  base::ObserverList<NativeWindowObserver> observers_;
  base::WeakPtrFactory<NativeWindow> weak_factory_;
  DISALLOW_COPY_AND_ASSIGN(NativeWindow);
};
class NativeWindowRelay