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

Side by Side Diff: third_party/WebKit/Source/core/frame/FrameView.cpp

Issue 1797623003: Fix premature termination of scroll animations while selecting text. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@2661
Patch Set: Created 4 years, 9 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 unified diff | Download patch
OLDNEW
1 /* 1 /*
2 * Copyright (C) 1998, 1999 Torben Weis <weis@kde.org> 2 * Copyright (C) 1998, 1999 Torben Weis <weis@kde.org>
3 * 1999 Lars Knoll <knoll@kde.org> 3 * 1999 Lars Knoll <knoll@kde.org>
4 * 1999 Antti Koivisto <koivisto@kde.org> 4 * 1999 Antti Koivisto <koivisto@kde.org>
5 * 2000 Dirk Mueller <mueller@kde.org> 5 * 2000 Dirk Mueller <mueller@kde.org>
6 * Copyright (C) 2004, 2005, 2006, 2007, 2008 Apple Inc. All rights reserved. 6 * Copyright (C) 2004, 2005, 2006, 2007, 2008 Apple Inc. All rights reserved.
7 * (C) 2006 Graham Dennis (graham.dennis@gmail.com) 7 * (C) 2006 Graham Dennis (graham.dennis@gmail.com)
8 * (C) 2006 Alexey Proskuryakov (ap@nypop.com) 8 * (C) 2006 Alexey Proskuryakov (ap@nypop.com)
9 * Copyright (C) 2009 Google Inc. All rights reserved. 9 * Copyright (C) 2009 Google Inc. All rights reserved.
10 * 10 *
(...skipping 3717 matching lines...) Expand 10 before | Expand all | Expand 10 after
3728 3728
3729 Widget* FrameView::widget() 3729 Widget* FrameView::widget()
3730 { 3730 {
3731 return this; 3731 return this;
3732 } 3732 }
3733 3733
3734 LayoutRect FrameView::scrollIntoView(const LayoutRect& rectInContent, const Scro llAlignment& alignX, const ScrollAlignment& alignY, ScrollType scrollType) 3734 LayoutRect FrameView::scrollIntoView(const LayoutRect& rectInContent, const Scro llAlignment& alignX, const ScrollAlignment& alignY, ScrollType scrollType)
3735 { 3735 {
3736 LayoutRect viewRect(visibleContentRect()); 3736 LayoutRect viewRect(visibleContentRect());
3737 LayoutRect exposeRect = ScrollAlignment::getRectToExpose(viewRect, rectInCon tent, alignX, alignY); 3737 LayoutRect exposeRect = ScrollAlignment::getRectToExpose(viewRect, rectInCon tent, alignX, alignY);
3738 3738 if (exposeRect != viewRect)
3739 double xOffset = exposeRect.x(); 3739 setScrollPosition(DoublePoint(exposeRect.x(), exposeRect.y()), scrollTyp e);
3740 double yOffset = exposeRect.y();
3741
3742 setScrollPosition(DoublePoint(xOffset, yOffset), scrollType);
3743 3740
3744 // Scrolling the FrameView cannot change the input rect's location relative to the document. 3741 // Scrolling the FrameView cannot change the input rect's location relative to the document.
3745 return rectInContent; 3742 return rectInContent;
3746 } 3743 }
3747 3744
3748 IntRect FrameView::scrollCornerRect() const 3745 IntRect FrameView::scrollCornerRect() const
3749 { 3746 {
3750 IntRect cornerRect; 3747 IntRect cornerRect;
3751 3748
3752 if (hasOverlayScrollbars()) 3749 if (hasOverlayScrollbars())
(...skipping 365 matching lines...) Expand 10 before | Expand all | Expand 10 after
4118 return m_hiddenForThrottling && m_crossOriginForThrottling; 4115 return m_hiddenForThrottling && m_crossOriginForThrottling;
4119 } 4116 }
4120 4117
4121 LayoutBox& FrameView::boxForScrollControlPaintInvalidation() const 4118 LayoutBox& FrameView::boxForScrollControlPaintInvalidation() const
4122 { 4119 {
4123 ASSERT(layoutView()); 4120 ASSERT(layoutView());
4124 return *layoutView(); 4121 return *layoutView();
4125 } 4122 }
4126 4123
4127 } // namespace blink 4124 } // namespace blink
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698