Rename system_drag_exclude_areas => drag_exclude_rects
This commit is contained in:
parent
61160ff9e5
commit
377e6c3210
2 changed files with 13 additions and 21 deletions
|
@ -80,30 +80,24 @@ void BrowserWindow::UpdateDraggableRegions(
|
||||||
// Draggable regions is implemented by having the whole web view draggable
|
// Draggable regions is implemented by having the whole web view draggable
|
||||||
// (mouseDownCanMoveWindow) and overlaying regions that are not draggable.
|
// (mouseDownCanMoveWindow) and overlaying regions that are not draggable.
|
||||||
draggable_regions_ = regions;
|
draggable_regions_ = regions;
|
||||||
std::vector<gfx::Rect> system_drag_exclude_areas;
|
std::vector<gfx::Rect> drag_exclude_rects;
|
||||||
if (regions.empty()) {
|
if (regions.empty()) {
|
||||||
system_drag_exclude_areas.push_back(
|
drag_exclude_rects.push_back(gfx::Rect(0, 0, webViewWidth, webViewHeight));
|
||||||
gfx::Rect(0, 0, webViewWidth, webViewHeight));
|
|
||||||
} else {
|
} else {
|
||||||
system_drag_exclude_areas = CalculateNonDraggableRegions(
|
drag_exclude_rects = CalculateNonDraggableRegions(
|
||||||
DraggableRegionsToSkRegion(regions), webViewWidth, webViewHeight);
|
DraggableRegionsToSkRegion(regions), webViewWidth, webViewHeight);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (window_->browser_view())
|
if (window_->browser_view())
|
||||||
window_->browser_view()->UpdateDraggableRegions(system_drag_exclude_areas);
|
window_->browser_view()->UpdateDraggableRegions(drag_exclude_rects);
|
||||||
|
|
||||||
// Create and add a ControlRegionView for each region that needs to be
|
// Create and add a ControlRegionView for each region that needs to be
|
||||||
// excluded from the dragging.
|
// excluded from the dragging.
|
||||||
for (std::vector<gfx::Rect>::const_iterator iter =
|
for (const auto& rect : drag_exclude_rects) {
|
||||||
system_drag_exclude_areas.begin();
|
|
||||||
iter != system_drag_exclude_areas.end();
|
|
||||||
++iter) {
|
|
||||||
base::scoped_nsobject<NSView> controlRegion(
|
base::scoped_nsobject<NSView> controlRegion(
|
||||||
[[ControlRegionView alloc] initWithFrame:NSZeroRect]);
|
[[ControlRegionView alloc] initWithFrame:NSZeroRect]);
|
||||||
[controlRegion setFrame:NSMakeRect(iter->x(),
|
[controlRegion setFrame:NSMakeRect(rect.x(), webViewHeight - rect.bottom(),
|
||||||
webViewHeight - iter->bottom(),
|
rect.width(), rect.height())];
|
||||||
iter->width(),
|
|
||||||
iter->height())];
|
|
||||||
[webView addSubview:controlRegion];
|
[webView addSubview:controlRegion];
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -194,7 +194,7 @@ void NativeBrowserViewMac::SetBackgroundColor(SkColor color) {
|
||||||
}
|
}
|
||||||
|
|
||||||
void NativeBrowserViewMac::UpdateDraggableRegions(
|
void NativeBrowserViewMac::UpdateDraggableRegions(
|
||||||
const std::vector<gfx::Rect>& system_drag_exclude_areas) {
|
const std::vector<gfx::Rect>& drag_exclude_rects) {
|
||||||
NSView* webView = GetInspectableWebContentsView()->GetNativeView();
|
NSView* webView = GetInspectableWebContentsView()->GetNativeView();
|
||||||
|
|
||||||
NSInteger superViewHeight = NSHeight([webView.superview bounds]);
|
NSInteger superViewHeight = NSHeight([webView.superview bounds]);
|
||||||
|
@ -230,15 +230,13 @@ void NativeBrowserViewMac::UpdateDraggableRegions(
|
||||||
webViewHeight)];
|
webViewHeight)];
|
||||||
|
|
||||||
// Then, on top of that, add "exclusion zones"
|
// Then, on top of that, add "exclusion zones"
|
||||||
for (auto iter = system_drag_exclude_areas.begin();
|
for (const auto& rect : drag_exclude_rects) {
|
||||||
iter != system_drag_exclude_areas.end();
|
|
||||||
++iter) {
|
|
||||||
base::scoped_nsobject<NSView> controlRegion(
|
base::scoped_nsobject<NSView> controlRegion(
|
||||||
[[ExcludeDragRegionView alloc] initWithFrame:NSZeroRect]);
|
[[ExcludeDragRegionView alloc] initWithFrame:NSZeroRect]);
|
||||||
[controlRegion setFrame:NSMakeRect(iter->x() - webViewX,
|
[controlRegion setFrame:NSMakeRect(rect.x() - webViewX,
|
||||||
webViewHeight - iter->bottom() + webViewY,
|
webViewHeight - rect.bottom() + webViewY,
|
||||||
iter->width(),
|
rect.width(),
|
||||||
iter->height())];
|
rect.height())];
|
||||||
[dragRegion addSubview:controlRegion];
|
[dragRegion addSubview:controlRegion];
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue