Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(90)

Unified Diff: chrome/browser/ui/views/extensions/shell_window_views.cc

Issue 11028125: Remove legacy draggable region code and refactor to share common draggable region code (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Fix Created 8 years, 2 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: chrome/browser/ui/views/extensions/shell_window_views.cc
diff --git a/chrome/browser/ui/views/extensions/shell_window_views.cc b/chrome/browser/ui/views/extensions/shell_window_views.cc
index a2c16d089068dd4e9ecf952bc43e1b9745c347ad..94054b95f3c449f9188fb26639df1416f9d0acfc 100644
--- a/chrome/browser/ui/views/extensions/shell_window_views.cc
+++ b/chrome/browser/ui/views/extensions/shell_window_views.cc
@@ -628,52 +628,7 @@ void ShellWindowViews::UpdateDraggableRegions(
if (!frameless_)
return;
- SkRegion* draggable_region = new SkRegion;
-
- // By default, the whole window is non-draggable. We need to explicitly
- // include those draggable regions.
- for (std::vector<extensions::DraggableRegion>::const_iterator iter =
- regions.begin();
- iter != regions.end(); ++iter) {
- const extensions::DraggableRegion& region = *iter;
- draggable_region->op(
- region.bounds.x(),
- region.bounds.y(),
- region.bounds.right(),
- region.bounds.bottom(),
- region.draggable ? SkRegion::kUnion_Op : SkRegion::kDifference_Op);
- }
-
- draggable_region_.reset(draggable_region);
- OnViewWasResized();
-}
-
-void ShellWindowViews::UpdateLegacyDraggableRegions(
- const std::vector<extensions::DraggableRegion>& regions) {
- // Draggable region is not supported for non-frameless window.
- if (!frameless_)
- return;
-
- SkRegion* draggable_region = new SkRegion;
-
- // By default, the whole window is draggable.
- gfx::Rect bounds = GetBounds();
- draggable_region->op(0, 0, bounds.right(), bounds.bottom(),
- SkRegion::kUnion_Op);
-
- // Exclude those desinated as non-draggable.
- for (std::vector<extensions::DraggableRegion>::const_iterator iter =
- regions.begin();
- iter != regions.end(); ++iter) {
- const extensions::DraggableRegion& region = *iter;
- draggable_region->op(region.bounds.x(),
- region.bounds.y(),
- region.bounds.right(),
- region.bounds.bottom(),
- SkRegion::kDifference_Op);
- }
-
- draggable_region_.reset(draggable_region);
+ draggable_region_.reset(ShellWindow::RawDraggableRegionsToSkRegion(regions));
OnViewWasResized();
}
« no previous file with comments | « chrome/browser/ui/views/extensions/shell_window_views.h ('k') | chrome/common/extensions/draggable_region.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698