fix: default offset when no drag regions (#27184)

Co-authored-by: Shelley Vohr <shelley.vohr@gmail.com>
This commit is contained in:
trop[bot]
2021-01-05 12:14:06 +09:00
committed by GitHub
parent 1bbf71c090
commit b5cfa03a63
2 changed files with 8 additions and 5 deletions

View File

@@ -294,11 +294,14 @@ void NativeBrowserViewMac::UpdateDraggableRegions(
draggable_regions_ = mojo::Clone(regions);
std::vector<gfx::Rect> drag_exclude_rects;
if (regions.empty()) {
drag_exclude_rects.emplace_back(0, 0, webViewWidth, webViewHeight);
if (draggable_regions_.empty()) {
const auto bounds = GetBounds();
drag_exclude_rects.emplace_back(bounds.x(), bounds.y(), webViewWidth,
webViewHeight);
} else {
drag_exclude_rects = CalculateNonDraggableRegions(
DraggableRegionsToSkRegion(regions), webViewWidth, webViewHeight);
DraggableRegionsToSkRegion(draggable_regions_), webViewWidth,
webViewHeight);
}
UpdateDraggableRegions(drag_exclude_rects);

View File

@@ -32,8 +32,8 @@ std::unique_ptr<SkRegion> DraggableRegionsToSkRegion(
auto sk_region = std::make_unique<SkRegion>();
for (const auto& region : regions) {
sk_region->op(
{region->bounds.x(), region->bounds.y(), region->bounds.right(),
region->bounds.bottom()},
SkIRect::MakeLTRB(region->bounds.x(), region->bounds.y(),
region->bounds.right(), region->bounds.bottom()),
region->draggable ? SkRegion::kUnion_Op : SkRegion::kDifference_Op);
}
return sk_region;