• Home
  • History
  • Annotate
  • Raw
  • Download
  • only in /macosx-10.9.5/WebCore-7537.78.1/page/

Lines Matching refs:direction

58 FocusCandidate::FocusCandidate(Node* node, FocusDirection direction)
79 rect = virtualRectForAreaElementAndDirection(area, direction);
90 isOffscreenAfterScrolling = hasOffscreenRect(visibleNode, direction);
98 static RectsAlignment alignmentForRects(FocusDirection direction, const LayoutRect& curRect, const LayoutRect& targetRect, const LayoutSize& viewSize)
101 if (areRectsMoreThanFullScreenApart(direction, curRect, targetRect, viewSize))
104 if (areRectsFullyAligned(direction, curRect, targetRect))
107 if (areRectsPartiallyAligned(direction, curRect, targetRect))
113 static inline bool isHorizontalMove(FocusDirection direction)
115 return direction == FocusDirectionLeft || direction == FocusDirectionRight;
118 static inline LayoutUnit start(FocusDirection direction, const LayoutRect& rect)
120 return isHorizontalMove(direction) ? rect.y() : rect.x();
123 static inline LayoutUnit middle(FocusDirection direction, const LayoutRect& rect)
126 return isHorizontalMove(direction) ? center.y(): center.x();
129 static inline LayoutUnit end(FocusDirection direction, const LayoutRect& rect)
131 return isHorizontalMove(direction) ? rect.maxY() : rect.maxX();
141 static bool areRectsFullyAligned(FocusDirection direction, const LayoutRect& a, const LayoutRect& b)
145 switch (direction) {
170 aStart = start(direction, a);
171 bStart = start(direction, b);
173 LayoutUnit aMiddle = middle(direction, a);
174 LayoutUnit bMiddle = middle(direction, b);
176 aEnd = end(direction, a);
177 bEnd = end(direction, b);
213 static bool areRectsPartiallyAligned(FocusDirection direction, const LayoutRect& a, const LayoutRect& b)
215 LayoutUnit aStart = start(direction, a);
216 LayoutUnit bStart = start(direction, b);
217 LayoutUnit bMiddle = middle(direction, b);
218 LayoutUnit aEnd = end(direction, a);
219 LayoutUnit bEnd = end(direction, b);
241 static bool areRectsMoreThanFullScreenApart(FocusDirection direction, const LayoutRect& curRect, const LayoutRect& targetRect, const LayoutSize& viewSize)
243 ASSERT(isRectInDirection(direction, curRect, targetRect));
245 switch (direction) {
272 static bool isRectInDirection(FocusDirection direction, const LayoutRect& curRect, const LayoutRect& targetRect)
274 switch (direction) {
290 // document. In case it is, one can scroll in direction or take any different
292 bool hasOffscreenRect(Node* node, FocusDirection direction)
306 // If the container has overflow:hidden, we cannot scroll, so we do not pass direction
308 switch (direction) {
338 bool scrollInDirection(Frame* frame, FocusDirection direction)
342 if (frame && canScrollInDirection(frame->document(), direction)) {
345 switch (direction) {
369 bool scrollInDirection(Node* container, FocusDirection direction)
373 return scrollInDirection(toDocument(container)->frame(), direction);
378 if (canScrollInDirection(container, direction)) {
381 switch (direction) {
436 Node* scrollableEnclosingBoxOrParentFrameForNodeInDirection(FocusDirection direction, Node* node)
445 } while (parent && !canScrollInDirection(parent, direction) && !parent->isDocumentNode());
450 bool canScrollInDirection(const Node* container, FocusDirection direction)
454 return canScrollInDirection(toDocument(container)->frame(), direction);
459 switch (direction) {
474 bool canScrollInDirection(const Frame* frame, FocusDirection direction)
481 if ((direction == FocusDirectionLeft || direction == FocusDirectionRight) && ScrollbarAlwaysOff == horizontalMode)
483 if ((direction == FocusDirectionUp || direction == FocusDirectionDown) && ScrollbarAlwaysOff == verticalMode)
489 switch (direction) {
543 void entryAndExitPointsForDirection(FocusDirection direction, const LayoutRect& startingRect, const LayoutRect& potentialRect, LayoutPoint& exitPoint, LayoutPoint& entryPoint)
545 switch (direction) {
566 switch (direction) {
621 void distanceDataForNode(FocusDirection direction, const FocusCandidate& current, FocusCandidate& candidate)
624 if ((direction == FocusDirectionUp && current.rect.y() > candidate.rect.y()) || (direction == FocusDirectionDown && candidate.rect.y() > current.rect.y())) {
635 if (!isRectInDirection(direction, currentRect, nodeRect))
642 entryAndExitPointsForDirection(direction, currentRect, nodeRect, exitPoint, entryPoint);
644 switch (direction) {
677 candidate.alignment = alignmentForRects(direction, currentRect, nodeRect, viewSize);
680 bool canBeScrolledIntoView(FocusDirection direction, const FocusCandidate& candidate)
687 if (((direction == FocusDirectionLeft || direction == FocusDirectionRight) && parentNode->renderer()->style()->overflowX() == OHIDDEN)
688 || ((direction == FocusDirectionUp || direction == FocusDirectionDown) && parentNode->renderer()->style()->overflowY() == OHIDDEN))
692 return canScrollInDirection(parentNode, direction);
700 // edge depending on the direction of the navigation.
701 LayoutRect virtualRectForDirection(FocusDirection direction, const LayoutRect& startingRect, LayoutUnit width)
704 switch (direction) {
726 LayoutRect virtualRectForAreaElementAndDirection(HTMLAreaElement* area, FocusDirection direction)
732 LayoutRect rect = virtualRectForDirection(direction, rectToAbsoluteCoordinates(area->document()->frame(), area->computeRect(area->imageElement()->renderer())), 1);