### 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
virtual void SetEscapeTouchBarItem(gin_helper::PersistentDictionary item);
  
  virtual void SelectPreviousTab();
  virtual void SelectNextTab();
  virtual void MergeAllWindows();
  virtual void MoveTabToNewWindow();
  virtual void ToggleTabBar();
  virtual bool AddTabbedWindow(NativeWindow* window);
  
  virtual bool SetWindowButtonVisibility(bool visible);
  
  virtual void SetAutoHideMenuBar(bool auto_hide);
  virtual bool IsMenuBarAutoHide();
  virtual void SetMenuBarVisibility(bool visible);
  virtual bool IsMenuBarVisible();
  
  double GetAspectRatio();
  gfx::Size GetAspectRatioExtraSize();
  virtual void SetAspectRatio(double aspect_ratio, const gfx::Size& extra_size);
  
  virtual void PreviewFile(const std::string& path,
                           const std::string& display_name);
  virtual void CloseFilePreview();
  virtual void SetGTKDarkThemeEnabled(bool use_dark_theme) = 0;
  
  virtual gfx::Rect ContentBoundsToWindowBounds(
      const gfx::Rect& bounds) const = 0;
  virtual gfx::Rect WindowBoundsToContentBounds(
      const gfx::Rect& bounds) const = 0;
  base::WeakPtr<NativeWindow> GetWeakPtr() {