diff options
author | danakj@chromium.org <danakj@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2012-10-31 18:33:24 +0000 |
---|---|---|
committer | danakj@chromium.org <danakj@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2012-10-31 18:33:24 +0000 |
commit | ceb36f7d5cec71407b265aba887cd64216d24731 (patch) | |
tree | ea977c72eb7882c1629a5c78f56b1a9e7e3e6b60 /ui/views/bubble/bubble_delegate.cc | |
parent | 80211f670f34191d80b875086aaf7b5b06a743d4 (diff) | |
download | chromium_src-ceb36f7d5cec71407b265aba887cd64216d24731.zip chromium_src-ceb36f7d5cec71407b265aba887cd64216d24731.tar.gz chromium_src-ceb36f7d5cec71407b265aba887cd64216d24731.tar.bz2 |
Add Vector2d classes that represent offsets, instead of using Point.
Previously Point served two purposes, to be a position in 2d space, and also
an offset from the origin. This introduces a Vector2d class to represent an
offset, allowing typesafety checks for geometric operations.
The following are now the case:
Point +/- Vector = Point
- A point plus/minus an offset gives you a point at a position offset by the
vector.
Vector +/- Vector = Vector
- Two offsets can be added together to make a new offset.
Point - Point = Vector
- Subtracting one point from another gives you the offset between the two
points.
We add some new methods to perform these operations:
Rect::OffsetFromOrigin() gives the offset between the position of the rect
and the origin.
Point::OffsetFromOrigin() gives the offset between the point and the origin.
PointAtOffsetFromOrigin(Vector2d) converts a Vector2d to a Point at the given
offset away from the origin.
Rect::Offset(), Point::Add(), and Point::Subtract() now receive a Vector2d
instead of a point.
BUG=147395
R=sky
Review URL: https://codereview.chromium.org/11269022
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@165198 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'ui/views/bubble/bubble_delegate.cc')
-rw-r--r-- | ui/views/bubble/bubble_delegate.cc | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/ui/views/bubble/bubble_delegate.cc b/ui/views/bubble/bubble_delegate.cc index eb47a90..f35e143 100644 --- a/ui/views/bubble/bubble_delegate.cc +++ b/ui/views/bubble/bubble_delegate.cc @@ -351,7 +351,8 @@ gfx::Rect BubbleDelegateView::GetBubbleBounds() { #if defined(OS_WIN) && !defined(USE_AURA) gfx::Rect BubbleDelegateView::GetBubbleClientBounds() const { gfx::Rect client_bounds(GetBubbleFrameView()->GetBoundsForClientView()); - client_bounds.Offset(border_widget_->GetWindowBoundsInScreen().origin()); + client_bounds.Offset( + border_widget_->GetWindowBoundsInScreen().OffsetFromOrigin()); return client_bounds; } #endif |