OLD | NEW |
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 1348 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1359 } | 1359 } |
1360 if (heightChanged) { | 1360 if (heightChanged) { |
1361 if (style->height().isFixed() && (style->top().isAuto() || style->bo
ttom().isAuto())) | 1361 if (style->height().isFixed() && (style->top().isAuto() || style->bo
ttom().isAuto())) |
1362 renderer->setNeedsPositionedMovementLayout(); | 1362 renderer->setNeedsPositionedMovementLayout(); |
1363 else | 1363 else |
1364 renderer->setNeedsLayout(); | 1364 renderer->setNeedsLayout(); |
1365 } | 1365 } |
1366 } | 1366 } |
1367 } | 1367 } |
1368 | 1368 |
| 1369 bool FrameView::shouldPlaceVerticalScrollbarOnLeft() const |
| 1370 { |
| 1371 // FIXME: Mainframe scrollbar placement should respect the embedding applica
tion RTL UI policy. |
| 1372 // See crbug.com/249860. |
| 1373 if (isMainFrame()) |
| 1374 return false; |
| 1375 |
| 1376 Document* document = m_frame->document(); |
| 1377 if (!document) |
| 1378 return false; |
| 1379 |
| 1380 // <body> inherits 'direction' from <html>, so it can safaly be used |
| 1381 // to dictate the frame vertical scrollbar placement. |
| 1382 if (!document->body() || !document->body()->renderer()) |
| 1383 return false; |
| 1384 |
| 1385 return document->body()->renderer()->style()->shouldPlaceBlockDirectionScrol
lbarOnLogicalLeft(); |
| 1386 } |
| 1387 |
1369 IntSize FrameView::scrollOffsetForFixedPosition() const | 1388 IntSize FrameView::scrollOffsetForFixedPosition() const |
1370 { | 1389 { |
1371 return toIntSize(clampScrollPosition(scrollPosition())); | 1390 return toIntSize(clampScrollPosition(scrollPosition())); |
1372 } | 1391 } |
1373 | 1392 |
1374 IntPoint FrameView::lastKnownMousePosition() const | 1393 IntPoint FrameView::lastKnownMousePosition() const |
1375 { | 1394 { |
1376 return m_frame->eventHandler().lastKnownMousePosition(); | 1395 return m_frame->eventHandler().lastKnownMousePosition(); |
1377 } | 1396 } |
1378 | 1397 |
(...skipping 1815 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
3194 void FrameView::willRemoveScrollbar(Scrollbar* scrollbar, ScrollbarOrientation o
rientation) | 3213 void FrameView::willRemoveScrollbar(Scrollbar* scrollbar, ScrollbarOrientation o
rientation) |
3195 { | 3214 { |
3196 ScrollableArea::willRemoveScrollbar(scrollbar, orientation); | 3215 ScrollableArea::willRemoveScrollbar(scrollbar, orientation); |
3197 if (AXObjectCache* cache = axObjectCache()) { | 3216 if (AXObjectCache* cache = axObjectCache()) { |
3198 cache->remove(scrollbar); | 3217 cache->remove(scrollbar); |
3199 cache->handleScrollbarUpdate(this); | 3218 cache->handleScrollbarUpdate(this); |
3200 } | 3219 } |
3201 } | 3220 } |
3202 | 3221 |
3203 } // namespace WebCore | 3222 } // namespace WebCore |
OLD | NEW |