OLD | NEW |
1 /* | 1 /* |
2 * Copyright (C) 1999 Lars Knoll (knoll@kde.org) | 2 * Copyright (C) 1999 Lars Knoll (knoll@kde.org) |
3 * (C) 2004-2005 Allan Sandfeld Jensen (kde@carewolf.com) | 3 * (C) 2004-2005 Allan Sandfeld Jensen (kde@carewolf.com) |
4 * Copyright (C) 2006, 2007 Nicholas Shanks (webkit@nickshanks.com) | 4 * Copyright (C) 2006, 2007 Nicholas Shanks (webkit@nickshanks.com) |
5 * Copyright (C) 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013 Apple Inc.
All rights reserved. | 5 * Copyright (C) 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013 Apple Inc.
All rights reserved. |
6 * Copyright (C) 2007 Alexey Proskuryakov <ap@webkit.org> | 6 * Copyright (C) 2007 Alexey Proskuryakov <ap@webkit.org> |
7 * Copyright (C) 2007, 2008 Eric Seidel <eric@webkit.org> | 7 * Copyright (C) 2007, 2008 Eric Seidel <eric@webkit.org> |
8 * Copyright (C) 2008, 2009 Torch Mobile Inc. All rights reserved. (http://www.t
orchmobile.com/) | 8 * Copyright (C) 2008, 2009 Torch Mobile Inc. All rights reserved. (http://www.t
orchmobile.com/) |
9 * Copyright (c) 2011, Code Aurora Forum. All rights reserved. | 9 * Copyright (c) 2011, Code Aurora Forum. All rights reserved. |
10 * Copyright (C) Research In Motion Limited 2011. All rights reserved. | 10 * Copyright (C) Research In Motion Limited 2011. All rights reserved. |
(...skipping 25 matching lines...) Expand all Loading... |
36 #include "core/dom/Element.h" | 36 #include "core/dom/Element.h" |
37 #include "core/frame/FrameView.h" | 37 #include "core/frame/FrameView.h" |
38 #include "core/frame/Settings.h" | 38 #include "core/frame/Settings.h" |
39 #include "core/html/HTMLIFrameElement.h" | 39 #include "core/html/HTMLIFrameElement.h" |
40 #include "core/html/HTMLInputElement.h" | 40 #include "core/html/HTMLInputElement.h" |
41 #include "core/html/HTMLPlugInElement.h" | 41 #include "core/html/HTMLPlugInElement.h" |
42 #include "core/html/HTMLTableCellElement.h" | 42 #include "core/html/HTMLTableCellElement.h" |
43 #include "core/html/HTMLTextAreaElement.h" | 43 #include "core/html/HTMLTextAreaElement.h" |
44 #include "core/layout/LayoutReplaced.h" | 44 #include "core/layout/LayoutReplaced.h" |
45 #include "core/layout/LayoutTheme.h" | 45 #include "core/layout/LayoutTheme.h" |
46 #include "core/style/GridPosition.h" | |
47 #include "core/style/ComputedStyle.h" | 46 #include "core/style/ComputedStyle.h" |
48 #include "core/style/ComputedStyleConstants.h" | 47 #include "core/style/ComputedStyleConstants.h" |
49 #include "core/svg/SVGSVGElement.h" | 48 #include "core/svg/SVGSVGElement.h" |
50 #include "platform/Length.h" | 49 #include "platform/Length.h" |
51 #include "platform/transforms/TransformOperations.h" | 50 #include "platform/transforms/TransformOperations.h" |
52 #include "wtf/Assertions.h" | 51 #include "wtf/Assertions.h" |
53 | 52 |
54 namespace blink { | 53 namespace blink { |
55 | 54 |
56 using namespace HTMLNames; | 55 using namespace HTMLNames; |
(...skipping 349 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
406 | 405 |
407 if (isHTMLTextAreaElement(element)) { | 406 if (isHTMLTextAreaElement(element)) { |
408 // Textarea considers overflow visible as auto. | 407 // Textarea considers overflow visible as auto. |
409 style.setOverflowX(style.overflowX() == OVISIBLE ? OAUTO : style.overflo
wX()); | 408 style.setOverflowX(style.overflowX() == OVISIBLE ? OAUTO : style.overflo
wX()); |
410 style.setOverflowY(style.overflowY() == OVISIBLE ? OAUTO : style.overflo
wY()); | 409 style.setOverflowY(style.overflowY() == OVISIBLE ? OAUTO : style.overflo
wY()); |
411 return; | 410 return; |
412 } | 411 } |
413 | 412 |
414 if (isHTMLPlugInElement(element)) { | 413 if (isHTMLPlugInElement(element)) { |
415 style.setRequiresAcceleratedCompositingForExternalReasons(toHTMLPlugInEl
ement(element).shouldAccelerate()); | 414 style.setRequiresAcceleratedCompositingForExternalReasons(toHTMLPlugInEl
ement(element).shouldAccelerate()); |
416 | |
417 // Plugins should get the standard replaced width/height instead of 'aut
o'. | |
418 // Replaced layoutObjects get this for free, and fallback content doesn'
t count. | |
419 if (toHTMLPlugInElement(element).usePlaceholderContent()) { | |
420 if (style.width().isAuto()) | |
421 style.setWidth(Length(LayoutReplaced::defaultWidth, Fixed)); | |
422 if (style.height().isAuto()) | |
423 style.setHeight(Length(LayoutReplaced::defaultHeight, Fixed)); | |
424 } | |
425 | |
426 return; | 415 return; |
427 } | 416 } |
428 } | 417 } |
429 | 418 |
430 void StyleAdjuster::adjustOverflow(ComputedStyle& style) | 419 void StyleAdjuster::adjustOverflow(ComputedStyle& style) |
431 { | 420 { |
432 ASSERT(style.overflowX() != OVISIBLE || style.overflowY() != OVISIBLE); | 421 ASSERT(style.overflowX() != OVISIBLE || style.overflowY() != OVISIBLE); |
433 | 422 |
434 if (style.display() == TABLE || style.display() == INLINE_TABLE) { | 423 if (style.display() == TABLE || style.display() == INLINE_TABLE) { |
435 // Tables only support overflow:hidden and overflow:visible and ignore a
nything else, | 424 // Tables only support overflow:hidden and overflow:visible and ignore a
nything else, |
(...skipping 59 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
495 if (style.writingMode() != TopToBottomWritingMode && (style.display() == BOX
|| style.display() == INLINE_BOX)) | 484 if (style.writingMode() != TopToBottomWritingMode && (style.display() == BOX
|| style.display() == INLINE_BOX)) |
496 style.setWritingMode(TopToBottomWritingMode); | 485 style.setWritingMode(TopToBottomWritingMode); |
497 | 486 |
498 if (parentStyle.isDisplayFlexibleOrGridBox()) { | 487 if (parentStyle.isDisplayFlexibleOrGridBox()) { |
499 style.setFloating(NoFloat); | 488 style.setFloating(NoFloat); |
500 style.setDisplay(equivalentBlockDisplay(style.display(), style.isFloatin
g(), !m_useQuirksModeStyles)); | 489 style.setDisplay(equivalentBlockDisplay(style.display(), style.isFloatin
g(), !m_useQuirksModeStyles)); |
501 } | 490 } |
502 } | 491 } |
503 | 492 |
504 } | 493 } |
OLD | NEW |