OLD | NEW |
1 /* | 1 /* |
2 * Copyright (C) 1999 Lars Knoll (knoll@kde.org) | 2 * Copyright (C) 1999 Lars Knoll (knoll@kde.org) |
3 * Copyright (C) 2004, 2005, 2006, 2007, 2008, 2009 Apple Inc. All rights reserv
ed. | 3 * Copyright (C) 2004, 2005, 2006, 2007, 2008, 2009 Apple Inc. All rights reserv
ed. |
4 * | 4 * |
5 * This library is free software; you can redistribute it and/or | 5 * This library is free software; you can redistribute it and/or |
6 * modify it under the terms of the GNU Library General Public | 6 * modify it under the terms of the GNU Library General Public |
7 * License as published by the Free Software Foundation; either | 7 * License as published by the Free Software Foundation; either |
8 * version 2 of the License, or (at your option) any later version. | 8 * version 2 of the License, or (at your option) any later version. |
9 * | 9 * |
10 * This library is distributed in the hope that it will be useful, | 10 * This library is distributed in the hope that it will be useful, |
(...skipping 303 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
314 if (hasOverflowClip()) | 314 if (hasOverflowClip()) |
315 transformState.move(scrolledContentOffset()); | 315 transformState.move(scrolledContentOffset()); |
316 // IsFixed flag is only applicable within this LayoutView. | 316 // IsFixed flag is only applicable within this LayoutView. |
317 mode &= ~IsFixed; | 317 mode &= ~IsFixed; |
318 } | 318 } |
319 | 319 |
320 if (ancestor == this) | 320 if (ancestor == this) |
321 return; | 321 return; |
322 | 322 |
323 if (mode & TraverseDocumentBoundaries) { | 323 if (mode & TraverseDocumentBoundaries) { |
324 if (LayoutPart* parentDocLayoutObject = frame()->ownerLayoutObject()) { | 324 LayoutPartItem parentDocLayoutItem = frame()->ownerLayoutItem(); |
| 325 if (!parentDocLayoutItem.isNull()) { |
325 if (!(mode & InputIsInFrameCoordinates)) { | 326 if (!(mode & InputIsInFrameCoordinates)) { |
326 transformState.move(-frame()->view()->scrollOffset()); | 327 transformState.move(-frame()->view()->scrollOffset()); |
327 } else { | 328 } else { |
328 // The flag applies to immediate LayoutView only. | 329 // The flag applies to immediate LayoutView only. |
329 mode &= ~InputIsInFrameCoordinates; | 330 mode &= ~InputIsInFrameCoordinates; |
330 } | 331 } |
331 | 332 |
332 transformState.move(parentDocLayoutObject->contentBoxOffset()); | 333 transformState.move(parentDocLayoutItem.contentBoxOffset()); |
333 | 334 |
334 parentDocLayoutObject->mapLocalToAncestor(ancestor, transformState,
mode); | 335 parentDocLayoutItem.mapLocalToAncestor(ancestor, transformState, mod
e); |
335 } | 336 } |
336 } | 337 } |
337 } | 338 } |
338 | 339 |
339 const LayoutObject* LayoutView::pushMappingToContainer(const LayoutBoxModelObjec
t* ancestorToStopAt, LayoutGeometryMap& geometryMap) const | 340 const LayoutObject* LayoutView::pushMappingToContainer(const LayoutBoxModelObjec
t* ancestorToStopAt, LayoutGeometryMap& geometryMap) const |
340 { | 341 { |
341 LayoutSize offsetForFixedPosition; | 342 LayoutSize offsetForFixedPosition; |
342 LayoutSize offset; | 343 LayoutSize offset; |
343 LayoutObject* container = nullptr; | 344 LayoutObject* container = nullptr; |
344 | 345 |
(...skipping 643 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
988 // of this override. All frame scrolling should be handled by | 989 // of this override. All frame scrolling should be handled by |
989 // ViewportScrollCallback. | 990 // ViewportScrollCallback. |
990 | 991 |
991 if (!frameView()) | 992 if (!frameView()) |
992 return ScrollResult(false, false, delta.width(), delta.height()); | 993 return ScrollResult(false, false, delta.width(), delta.height()); |
993 | 994 |
994 return frameView()->getScrollableArea()->userScroll(granularity, delta); | 995 return frameView()->getScrollableArea()->userScroll(granularity, delta); |
995 } | 996 } |
996 | 997 |
997 } // namespace blink | 998 } // namespace blink |
OLD | NEW |