Skip to content

Commit

Permalink
fix: draggable regions in BrowserViews are independent (#31198)
Browse files Browse the repository at this point in the history
Co-authored-by: Shelley Vohr <shelley.vohr@gmail.com>
  • Loading branch information
trop[bot] and codebytere committed Sep 30, 2021
1 parent 097fd4c commit 6fbd50a
Showing 1 changed file with 7 additions and 5 deletions.
12 changes: 7 additions & 5 deletions shell/browser/api/electron_api_browser_window_mac.mm
Expand Up @@ -39,10 +39,7 @@

void BrowserWindow::UpdateDraggableRegions(
const std::vector<mojom::DraggableRegionPtr>& regions) {
if (window_->has_frame())
return;

if (!web_contents())
if (window_->has_frame() || !web_contents())
return;

// All ControlRegionViews should be added as children of the WebContentsView,
Expand Down Expand Up @@ -78,8 +75,13 @@
DraggableRegionsToSkRegion(regions), webViewWidth, webViewHeight);
}

// Draggable regions on BrowserViews are independent from those of
// BrowserWindows, so if a BrowserView with different draggable regions than
// the BrowserWindow it belongs to is superimposed on top of that window, the
// draggable regions of the BrowserView take precedence over those of the
// BrowserWindow.
for (NativeBrowserView* view : window_->browser_views()) {
view->UpdateDraggableRegions(drag_exclude_rects);
view->UpdateDraggableRegions(view->GetDraggableRegions());
}

// Create and add a ControlRegionView for each region that needs to be
Expand Down

0 comments on commit 6fbd50a

Please sign in to comment.