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) 2001 Dirk Mueller (mueller@kde.org) | 4 * (C) 2001 Dirk Mueller (mueller@kde.org) |
5 * (C) 2006 Alexey Proskuryakov (ap@webkit.org) | 5 * (C) 2006 Alexey Proskuryakov (ap@webkit.org) |
6 * Copyright (C) 2004, 2005, 2006, 2007, 2008, 2009, 2011, 2012 Apple Inc. All r
ights reserved. | 6 * Copyright (C) 2004, 2005, 2006, 2007, 2008, 2009, 2011, 2012 Apple Inc. All r
ights reserved. |
7 * Copyright (C) 2008, 2009 Torch Mobile Inc. All rights reserved. (http://www.t
orchmobile.com/) | 7 * Copyright (C) 2008, 2009 Torch Mobile Inc. All rights reserved. (http://www.t
orchmobile.com/) |
8 * Copyright (C) 2008, 2009, 2011, 2012 Google Inc. All rights reserved. | 8 * Copyright (C) 2008, 2009, 2011, 2012 Google Inc. All rights reserved. |
9 * Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies) | 9 * Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies) |
10 * Copyright (C) Research In Motion Limited 2010-2011. All rights reserved. | 10 * Copyright (C) Research In Motion Limited 2010-2011. All rights reserved. |
(...skipping 1749 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1760 unscheduleStyleRecalc(); | 1760 unscheduleStyleRecalc(); |
1761 | 1761 |
1762 // FIXME: SVG <use> element can schedule a recalc in the middle of an al
ready running one. | 1762 // FIXME: SVG <use> element can schedule a recalc in the middle of an al
ready running one. |
1763 // See StyleSheetCollections::updateActiveStyleSheets. | 1763 // See StyleSheetCollections::updateActiveStyleSheets. |
1764 if (m_styleSheetCollections->needsUpdateActiveStylesheetsOnStyleRecalc()
) | 1764 if (m_styleSheetCollections->needsUpdateActiveStylesheetsOnStyleRecalc()
) |
1765 setNeedsStyleRecalc(); | 1765 setNeedsStyleRecalc(); |
1766 | 1766 |
1767 m_inStyleRecalc = false; | 1767 m_inStyleRecalc = false; |
1768 | 1768 |
1769 // Pseudo element removal and similar may only work with these flags sti
ll set. Reset them after the style recalc. | 1769 // Pseudo element removal and similar may only work with these flags sti
ll set. Reset them after the style recalc. |
1770 if (m_styleResolver) | 1770 if (m_styleResolver) { |
1771 m_styleSheetCollections->resetCSSFeatureFlags(m_styleResolver->ruleF
eatureSet()); | 1771 m_styleSheetCollections->resetCSSFeatureFlags(m_styleResolver->ruleF
eatureSet()); |
| 1772 m_styleResolver->clearStyleSharingList(); |
| 1773 } |
1772 | 1774 |
1773 if (frameView) { | 1775 if (frameView) { |
1774 frameView->resumeScheduledEvents(); | 1776 frameView->resumeScheduledEvents(); |
1775 frameView->endDeferredRepaints(); | 1777 frameView->endDeferredRepaints(); |
1776 } | 1778 } |
1777 } | 1779 } |
1778 | 1780 |
1779 STYLE_STATS_PRINT(); | 1781 STYLE_STATS_PRINT(); |
1780 STYLE_STATS_CLEAR(); | 1782 STYLE_STATS_CLEAR(); |
1781 | 1783 |
(...skipping 265 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2047 setRenderer(0); | 2049 setRenderer(0); |
2048 | 2050 |
2049 m_hoverNode = 0; | 2051 m_hoverNode = 0; |
2050 m_focusedElement = 0; | 2052 m_focusedElement = 0; |
2051 m_activeElement = 0; | 2053 m_activeElement = 0; |
2052 | 2054 |
2053 ContainerNode::detach(context); | 2055 ContainerNode::detach(context); |
2054 | 2056 |
2055 unscheduleStyleRecalc(); | 2057 unscheduleStyleRecalc(); |
2056 | 2058 |
| 2059 clearStyleResolver(); |
| 2060 |
2057 if (render) | 2061 if (render) |
2058 render->destroy(); | 2062 render->destroy(); |
2059 | 2063 |
2060 if (m_touchEventTargets && m_touchEventTargets->size() && parentDocument()) | 2064 if (m_touchEventTargets && m_touchEventTargets->size() && parentDocument()) |
2061 parentDocument()->didRemoveEventTargetNode(this); | 2065 parentDocument()->didRemoveEventTargetNode(this); |
2062 | 2066 |
2063 // This is required, as our Frame might delete itself as soon as it detaches | 2067 // This is required, as our Frame might delete itself as soon as it detaches |
2064 // us. However, this violates Node::detach() semantics, as it's never | 2068 // us. However, this violates Node::detach() semantics, as it's never |
2065 // possible to re-attach. Eventually Document::detach() should be renamed, | 2069 // possible to re-attach. Eventually Document::detach() should be renamed, |
2066 // or this setting of the frame to 0 could be made explicit in each of the | 2070 // or this setting of the frame to 0 could be made explicit in each of the |
(...skipping 3378 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
5445 { | 5449 { |
5446 return DocumentLifecycleNotifier::create(this); | 5450 return DocumentLifecycleNotifier::create(this); |
5447 } | 5451 } |
5448 | 5452 |
5449 DocumentLifecycleNotifier* Document::lifecycleNotifier() | 5453 DocumentLifecycleNotifier* Document::lifecycleNotifier() |
5450 { | 5454 { |
5451 return static_cast<DocumentLifecycleNotifier*>(ScriptExecutionContext::lifec
ycleNotifier()); | 5455 return static_cast<DocumentLifecycleNotifier*>(ScriptExecutionContext::lifec
ycleNotifier()); |
5452 } | 5456 } |
5453 | 5457 |
5454 } // namespace WebCore | 5458 } // namespace WebCore |
OLD | NEW |