| 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 1525 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1536 } | 1536 } |
| 1537 | 1537 |
| 1538 // FIXME: We shouldn't be overriding start/-webkit-auto like this. Do it
in html.css instead. | 1538 // FIXME: We shouldn't be overriding start/-webkit-auto like this. Do it
in html.css instead. |
| 1539 // Table headers with a text-align of -webkit-auto will change the text-
align to center. | 1539 // Table headers with a text-align of -webkit-auto will change the text-
align to center. |
| 1540 if (e && e->hasTagName(thTag) && style->textAlign() == TASTART) | 1540 if (e && e->hasTagName(thTag) && style->textAlign() == TASTART) |
| 1541 style->setTextAlign(CENTER); | 1541 style->setTextAlign(CENTER); |
| 1542 | 1542 |
| 1543 if (e && e->hasTagName(legendTag)) | 1543 if (e && e->hasTagName(legendTag)) |
| 1544 style->setDisplay(BLOCK); | 1544 style->setDisplay(BLOCK); |
| 1545 | 1545 |
| 1546 // Per the spec, position 'static' and 'relative' in the top layer compu
te to 'absolute'. |
| 1547 if (e && e->isInTopLayer() && (style->position() == StaticPosition || st
yle->position() == RelativePosition)) |
| 1548 style->setPosition(AbsolutePosition); |
| 1549 |
| 1546 // Absolute/fixed positioned elements, floating elements and the documen
t element need block-like outside display. | 1550 // Absolute/fixed positioned elements, floating elements and the documen
t element need block-like outside display. |
| 1547 if (style->hasOutOfFlowPosition() || style->isFloating() || (e && e->doc
ument()->documentElement() == e)) | 1551 if (style->hasOutOfFlowPosition() || style->isFloating() || (e && e->doc
ument()->documentElement() == e)) |
| 1548 style->setDisplay(equivalentBlockDisplay(style->display(), style->is
Floating(), !document()->inQuirksMode())); | 1552 style->setDisplay(equivalentBlockDisplay(style->display(), style->is
Floating(), !document()->inQuirksMode())); |
| 1549 | 1553 |
| 1550 // FIXME: Don't support this mutation for pseudo styles like first-lette
r or first-line, since it's not completely | 1554 // FIXME: Don't support this mutation for pseudo styles like first-lette
r or first-line, since it's not completely |
| 1551 // clear how that should work. | 1555 // clear how that should work. |
| 1552 if (style->display() == INLINE && style->styleType() == NOPSEUDO && styl
e->writingMode() != parentStyle->writingMode()) | 1556 if (style->display() == INLINE && style->styleType() == NOPSEUDO && styl
e->writingMode() != parentStyle->writingMode()) |
| 1553 style->setDisplay(INLINE_BLOCK); | 1557 style->setDisplay(INLINE_BLOCK); |
| 1554 | 1558 |
| 1555 // After performing the display mutation, check table rows. We do not ho
nor position:relative or position:sticky on | 1559 // After performing the display mutation, check table rows. We do not ho
nor position:relative or position:sticky on |
| (...skipping 14 matching lines...) Expand all Loading... |
| 1570 // FIXME: Since we don't support block-flow on flexible boxes yet, disal
low setting | 1574 // FIXME: Since we don't support block-flow on flexible boxes yet, disal
low setting |
| 1571 // of block-flow to anything other than TopToBottomWritingMode. | 1575 // of block-flow to anything other than TopToBottomWritingMode. |
| 1572 // https://bugs.webkit.org/show_bug.cgi?id=46418 - Flexible box support. | 1576 // https://bugs.webkit.org/show_bug.cgi?id=46418 - Flexible box support. |
| 1573 if (style->writingMode() != TopToBottomWritingMode && (style->display()
== BOX || style->display() == INLINE_BOX)) | 1577 if (style->writingMode() != TopToBottomWritingMode && (style->display()
== BOX || style->display() == INLINE_BOX)) |
| 1574 style->setWritingMode(TopToBottomWritingMode); | 1578 style->setWritingMode(TopToBottomWritingMode); |
| 1575 | 1579 |
| 1576 if (isDisplayFlexibleBox(parentStyle->display()) || isDisplayGridBox(par
entStyle->display())) { | 1580 if (isDisplayFlexibleBox(parentStyle->display()) || isDisplayGridBox(par
entStyle->display())) { |
| 1577 style->setFloating(NoFloat); | 1581 style->setFloating(NoFloat); |
| 1578 style->setDisplay(equivalentBlockDisplay(style->display(), style->is
Floating(), !document()->inQuirksMode())); | 1582 style->setDisplay(equivalentBlockDisplay(style->display(), style->is
Floating(), !document()->inQuirksMode())); |
| 1579 } | 1583 } |
| 1580 | |
| 1581 // Per the spec, position 'static' and 'relative' in the top layer compu
te to 'absolute'. | |
| 1582 if (e && e->isInTopLayer() && (style->position() == StaticPosition || st
yle->position() == RelativePosition)) { | |
| 1583 style->setPosition(AbsolutePosition); | |
| 1584 style->setDisplay(BLOCK); | |
| 1585 } | |
| 1586 } | 1584 } |
| 1587 | 1585 |
| 1588 // Make sure our z-index value is only applied if the object is positioned. | 1586 // Make sure our z-index value is only applied if the object is positioned. |
| 1589 if (style->position() == StaticPosition && !isDisplayFlexibleBox(parentStyle
->display())) | 1587 if (style->position() == StaticPosition && !isDisplayFlexibleBox(parentStyle
->display())) |
| 1590 style->setHasAutoZIndex(); | 1588 style->setHasAutoZIndex(); |
| 1591 | 1589 |
| 1592 // Auto z-index becomes 0 for the root element and transparent objects. This
prevents | 1590 // Auto z-index becomes 0 for the root element and transparent objects. This
prevents |
| 1593 // cases where objects that should be blended as a single unit end up with a
non-transparent | 1591 // cases where objects that should be blended as a single unit end up with a
non-transparent |
| 1594 // object wedged in between them. Auto z-index also becomes 0 for objects th
at specify transforms/masks/reflections. | 1592 // object wedged in between them. Auto z-index also becomes 0 for objects th
at specify transforms/masks/reflections. |
| 1595 if (style->hasAutoZIndex() && ((e && e->document()->documentElement() == e) | 1593 if (style->hasAutoZIndex() && ((e && e->document()->documentElement() == e) |
| (...skipping 2145 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 3741 info.addMember(m_state, "state"); | 3739 info.addMember(m_state, "state"); |
| 3742 | 3740 |
| 3743 // FIXME: move this to a place where it would be called only once? | 3741 // FIXME: move this to a place where it would be called only once? |
| 3744 info.addMember(CSSDefaultStyleSheets::defaultStyle, "defaultStyle"); | 3742 info.addMember(CSSDefaultStyleSheets::defaultStyle, "defaultStyle"); |
| 3745 info.addMember(CSSDefaultStyleSheets::defaultQuirksStyle, "defaultQuirksStyl
e"); | 3743 info.addMember(CSSDefaultStyleSheets::defaultQuirksStyle, "defaultQuirksStyl
e"); |
| 3746 info.addMember(CSSDefaultStyleSheets::defaultPrintStyle, "defaultPrintStyle"
); | 3744 info.addMember(CSSDefaultStyleSheets::defaultPrintStyle, "defaultPrintStyle"
); |
| 3747 info.addMember(CSSDefaultStyleSheets::defaultViewSourceStyle, "defaultViewSo
urceStyle"); | 3745 info.addMember(CSSDefaultStyleSheets::defaultViewSourceStyle, "defaultViewSo
urceStyle"); |
| 3748 } | 3746 } |
| 3749 | 3747 |
| 3750 } // namespace WebCore | 3748 } // namespace WebCore |
| OLD | NEW |