OLD | NEW |
1 /* | 1 /* |
2 * Copyright (C) 1999 Lars Knoll (knoll@kde.org) | 2 * Copyright (C) 1999 Lars Knoll (knoll@kde.org) |
3 * (C) 1999 Antti Koivisto (koivisto@kde.org) | 3 * (C) 1999 Antti Koivisto (koivisto@kde.org) |
4 * (C) 2005 Allan Sandfeld Jensen (kde@carewolf.com) | 4 * (C) 2005 Allan Sandfeld Jensen (kde@carewolf.com) |
5 * (C) 2005, 2006 Samuel Weinig (sam.weinig@gmail.com) | 5 * (C) 2005, 2006 Samuel Weinig (sam.weinig@gmail.com) |
6 * Copyright (C) 2005, 2006, 2007, 2008, 2009, 2010 Apple Inc. All rights reserv
ed. | 6 * Copyright (C) 2005, 2006, 2007, 2008, 2009, 2010 Apple Inc. All rights reserv
ed. |
7 * Copyright (C) 2013 Adobe Systems Incorporated. All rights reserved. | 7 * Copyright (C) 2013 Adobe Systems Incorporated. All rights reserved. |
8 * | 8 * |
9 * This library is free software; you can redistribute it and/or | 9 * This library is free software; you can redistribute it and/or |
10 * modify it under the terms of the GNU Library General Public | 10 * modify it under the terms of the GNU Library General Public |
(...skipping 481 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
492 // Don't scroll to reveal an overflow layer that is restricted by the -w
ebkit-line-clamp property. | 492 // Don't scroll to reveal an overflow layer that is restricted by the -w
ebkit-line-clamp property. |
493 // This will prevent us from revealing text hidden by the slider in Safa
ri RSS. | 493 // This will prevent us from revealing text hidden by the slider in Safa
ri RSS. |
494 newRect = layer()->scrollableArea()->exposeRect(rect, alignX, alignY); | 494 newRect = layer()->scrollableArea()->exposeRect(rect, alignX, alignY); |
495 } else if (!parentBox && canBeProgramaticallyScrolled()) { | 495 } else if (!parentBox && canBeProgramaticallyScrolled()) { |
496 if (FrameView* frameView = this->frameView()) { | 496 if (FrameView* frameView = this->frameView()) { |
497 HTMLFrameOwnerElement* ownerElement = document().ownerElement(); | 497 HTMLFrameOwnerElement* ownerElement = document().ownerElement(); |
498 | 498 |
499 if (ownerElement && ownerElement->renderer()) { | 499 if (ownerElement && ownerElement->renderer()) { |
500 HTMLFrameElementBase* frameElementBase = isHTMLFrameElementBase(
*ownerElement) ? toHTMLFrameElementBase(ownerElement) : 0; | 500 HTMLFrameElementBase* frameElementBase = isHTMLFrameElementBase(
*ownerElement) ? toHTMLFrameElementBase(ownerElement) : 0; |
501 if (frameElementAndViewPermitScroll(frameElementBase, frameView)
) { | 501 if (frameElementAndViewPermitScroll(frameElementBase, frameView)
) { |
502 LayoutRect viewRect = frameView->visibleContentRect(); | 502 LayoutRect viewRect(frameView->visibleContentRect()); |
503 LayoutRect exposeRect = ScrollAlignment::getRectToExpose(vie
wRect, rect, alignX, alignY); | 503 LayoutRect exposeRect = ScrollAlignment::getRectToExpose(vie
wRect, rect, alignX, alignY); |
504 | 504 |
505 double xOffset = exposeRect.x(); | 505 double xOffset = exposeRect.x(); |
506 double yOffset = exposeRect.y(); | 506 double yOffset = exposeRect.y(); |
507 // Adjust offsets if they're outside of the allowable range. | 507 // Adjust offsets if they're outside of the allowable range. |
508 xOffset = std::max(0.0, std::min<double>(frameView->contents
Width(), xOffset)); | 508 xOffset = std::max(0.0, std::min<double>(frameView->contents
Width(), xOffset)); |
509 yOffset = std::max(0.0, std::min<double>(frameView->contents
Height(), yOffset)); | 509 yOffset = std::max(0.0, std::min<double>(frameView->contents
Height(), yOffset)); |
510 | 510 |
511 frameView->setScrollPosition(DoublePoint(xOffset, yOffset)); | 511 frameView->setScrollPosition(DoublePoint(xOffset, yOffset)); |
512 if (frameView->safeToPropagateScrollToParent()) { | 512 if (frameView->safeToPropagateScrollToParent()) { |
(...skipping 650 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1163 | 1163 |
1164 void LayoutBox::paintBoxDecorationBackground(const PaintInfo& paintInfo, const L
ayoutPoint& paintOffset) | 1164 void LayoutBox::paintBoxDecorationBackground(const PaintInfo& paintInfo, const L
ayoutPoint& paintOffset) |
1165 { | 1165 { |
1166 BoxPainter(*this).paintBoxDecorationBackground(paintInfo, paintOffset); | 1166 BoxPainter(*this).paintBoxDecorationBackground(paintInfo, paintOffset); |
1167 } | 1167 } |
1168 | 1168 |
1169 | 1169 |
1170 bool LayoutBox::getBackgroundPaintedExtent(LayoutRect& paintedExtent) | 1170 bool LayoutBox::getBackgroundPaintedExtent(LayoutRect& paintedExtent) |
1171 { | 1171 { |
1172 ASSERT(hasBackground()); | 1172 ASSERT(hasBackground()); |
1173 LayoutRect backgroundRect = enclosingIntRect(borderBoxRect()); | 1173 LayoutRect backgroundRect(enclosingIntRect(borderBoxRect())); |
1174 | 1174 |
1175 Color backgroundColor = resolveColor(CSSPropertyBackgroundColor); | 1175 Color backgroundColor = resolveColor(CSSPropertyBackgroundColor); |
1176 if (backgroundColor.alpha()) { | 1176 if (backgroundColor.alpha()) { |
1177 paintedExtent = backgroundRect; | 1177 paintedExtent = backgroundRect; |
1178 return true; | 1178 return true; |
1179 } | 1179 } |
1180 | 1180 |
1181 if (!style()->backgroundLayers().image() || style()->backgroundLayers().next
()) { | 1181 if (!style()->backgroundLayers().image() || style()->backgroundLayers().next
()) { |
1182 paintedExtent = backgroundRect; | 1182 paintedExtent = backgroundRect; |
1183 return true; | 1183 return true; |
(...skipping 3443 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
4627 } | 4627 } |
4628 | 4628 |
4629 void LayoutBox::invalidateDisplayItemClients(DisplayItemList* displayItemList) c
onst | 4629 void LayoutBox::invalidateDisplayItemClients(DisplayItemList* displayItemList) c
onst |
4630 { | 4630 { |
4631 LayoutBoxModelObject::invalidateDisplayItemClients(displayItemList); | 4631 LayoutBoxModelObject::invalidateDisplayItemClients(displayItemList); |
4632 if (LayerScrollableArea* area = scrollableArea()) | 4632 if (LayerScrollableArea* area = scrollableArea()) |
4633 displayItemList->invalidate(area->displayItemClient()); | 4633 displayItemList->invalidate(area->displayItemClient()); |
4634 } | 4634 } |
4635 | 4635 |
4636 } // namespace blink | 4636 } // namespace blink |
OLD | NEW |