### Feature request

`customButtonsOnHover` fixes a lot of issues with drag and `pointer` styles, but my app currently uses `hidden-inset` so this setting changes the position of the buttons. I'd suggest `customButtonsOnHover` either be an option outside of `titleBarStyle` that respects `titleBarStyle`s values ('hiddenInset' or `hidden') or the addition of a `customButtonsOnHoverInset`.

As a separate note, the docs for `customButtonsOnHover` currently specify it's a Boolean type, but it's a string value.
shell/browser/native_window.h
void NotifyWindowWillResize(const gfx::Rect& new_bounds,
                              bool* prevent_default);
  void NotifyWindowResize();
  void NotifyWindowResized();
  void NotifyWindowWillMove(const gfx::Rect& new_bounds, bool* prevent_default);
  void NotifyWindowMoved();
  void NotifyWindowScrollTouchBegin();
  void NotifyWindowScrollTouchEnd();
  void NotifyWindowSwipe(const std::string& direction);
  void NotifyWindowRotateGesture(float rotation);
  void NotifyWindowSheetBegin();
  void NotifyWindowSheetEnd();
  void NotifyWindowEnterFullScreen();
  void NotifyWindowLeaveFullScreen();
  void NotifyWindowEnterHtmlFullScreen();
  void NotifyWindowLeaveHtmlFullScreen();
  void NotifyWindowAlwaysOnTopChanged();
  void NotifyWindowExecuteAppCommand(const std::string& command);
  void NotifyTouchBarItemInteraction(const std::string& item_id,
                                     const base::DictionaryValue& details);
  void NotifyNewWindowForTab();
  void NotifyWindowSystemContextMenu(int x, int y, bool* prevent_default);
#if defined(OS_WIN)
  void NotifyWindowMessage(UINT message, WPARAM w_param, LPARAM l_param);
#endif
  void AddObserver(NativeWindowObserver* obs) { observers_.AddObserver(obs); }
  void RemoveObserver(NativeWindowObserver* obs) {
    observers_.RemoveObserver(obs);
  }
  views::Widget* widget() const { return widget_.get(); }