Browse Source

fix: fix hover state not clear bug when BrowserWindow is not resizable (#611) (#29800)

Co-authored-by: sssooonnnggg <[email protected]>
trop[bot] 3 years ago
parent
commit
fa683ef8b7
1 changed files with 7 additions and 0 deletions
  1. 7 0
      shell/browser/ui/views/frameless_view.cc

+ 7 - 0
shell/browser/ui/views/frameless_view.cc

@@ -38,6 +38,13 @@ int FramelessView::ResizingBorderHitTest(const gfx::Point& point) {
   bool can_ever_resize = frame_->widget_delegate()
                              ? frame_->widget_delegate()->CanResize()
                              : false;
+
+  // https://github.com/electron/electron/issues/611
+  // If window isn't resizable, we should always return HTCLIENT, otherwise the
+  // hover state of DOM will not be cleared probably.
+  if (!can_ever_resize)
+    return HTCLIENT;
+
   // Don't allow overlapping resize handles when the window is maximized or
   // fullscreen, as it can't be resized in those states.
   int resize_border = frame_->IsMaximized() || frame_->IsFullscreen()