Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(17)

Side by Side Diff: Source/core/html/HTMLElement.cpp

Issue 152623002: Make StyleChange parameter explicit in setNeedsStyleRecalc. (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Created 6 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « Source/core/html/HTMLBodyElement.cpp ('k') | Source/core/html/HTMLFormControlElement.cpp » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
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 * Copyright (C) 2004, 2005, 2006, 2007, 2008 Apple Inc. All rights reserved. 4 * Copyright (C) 2004, 2005, 2006, 2007, 2008 Apple Inc. All rights reserved.
5 * Copyright (C) 2009 Torch Mobile Inc. All rights reserved. (http://www.torchmo bile.com/) 5 * Copyright (C) 2009 Torch Mobile Inc. All rights reserved. (http://www.torchmo bile.com/)
6 * Copyright (C) 2011 Motorola Mobility. All rights reserved. 6 * Copyright (C) 2011 Motorola Mobility. All rights reserved.
7 * 7 *
8 * This library is free software; you can redistribute it and/or 8 * This library is free software; you can redistribute it and/or
9 * modify it under the terms of the GNU Library General Public 9 * modify it under the terms of the GNU Library General Public
10 * License as published by the Free Software Foundation; either 10 * License as published by the Free Software Foundation; either
(...skipping 757 matching lines...) Expand 10 before | Expand all | Expand 10 after
768 void HTMLElement::adjustDirectionalityIfNeededAfterChildAttributeChanged(Element * child) 768 void HTMLElement::adjustDirectionalityIfNeededAfterChildAttributeChanged(Element * child)
769 { 769 {
770 ASSERT(selfOrAncestorHasDirAutoAttribute()); 770 ASSERT(selfOrAncestorHasDirAutoAttribute());
771 Node* strongDirectionalityTextNode; 771 Node* strongDirectionalityTextNode;
772 TextDirection textDirection = directionality(&strongDirectionalityTextNode); 772 TextDirection textDirection = directionality(&strongDirectionalityTextNode);
773 setHasDirAutoFlagRecursively(child, false); 773 setHasDirAutoFlagRecursively(child, false);
774 if (renderer() && renderer()->style() && renderer()->style()->direction() != textDirection) { 774 if (renderer() && renderer()->style() && renderer()->style()->direction() != textDirection) {
775 Element* elementToAdjust = this; 775 Element* elementToAdjust = this;
776 for (; elementToAdjust; elementToAdjust = elementToAdjust->parentElement ()) { 776 for (; elementToAdjust; elementToAdjust = elementToAdjust->parentElement ()) {
777 if (elementAffectsDirectionality(elementToAdjust)) { 777 if (elementAffectsDirectionality(elementToAdjust)) {
778 elementToAdjust->setNeedsStyleRecalc(); 778 elementToAdjust->setNeedsStyleRecalc(SubtreeStyleChange);
779 return; 779 return;
780 } 780 }
781 } 781 }
782 } 782 }
783 } 783 }
784 784
785 void HTMLElement::calculateAndAdjustDirectionality() 785 void HTMLElement::calculateAndAdjustDirectionality()
786 { 786 {
787 Node* strongDirectionalityTextNode; 787 Node* strongDirectionalityTextNode;
788 TextDirection textDirection = directionality(&strongDirectionalityTextNode); 788 TextDirection textDirection = directionality(&strongDirectionalityTextNode);
789 setHasDirAutoFlagRecursively(this, true, strongDirectionalityTextNode); 789 setHasDirAutoFlagRecursively(this, true, strongDirectionalityTextNode);
790 if (renderer() && renderer()->style() && renderer()->style()->direction() != textDirection) 790 if (renderer() && renderer()->style() && renderer()->style()->direction() != textDirection)
791 setNeedsStyleRecalc(); 791 setNeedsStyleRecalc(SubtreeStyleChange);
792 } 792 }
793 793
794 void HTMLElement::adjustDirectionalityIfNeededAfterChildrenChanged(Node* beforeC hange, int childCountDelta) 794 void HTMLElement::adjustDirectionalityIfNeededAfterChildrenChanged(Node* beforeC hange, int childCountDelta)
795 { 795 {
796 if (document().renderer() && childCountDelta < 0) { 796 if (document().renderer() && childCountDelta < 0) {
797 Node* node = beforeChange ? NodeTraversal::nextSkippingChildren(*beforeC hange) : 0; 797 Node* node = beforeChange ? NodeTraversal::nextSkippingChildren(*beforeC hange) : 0;
798 for (int counter = 0; node && counter < childCountDelta; counter++, node = NodeTraversal::nextSkippingChildren(*node)) { 798 for (int counter = 0; node && counter < childCountDelta; counter++, node = NodeTraversal::nextSkippingChildren(*node)) {
799 if (elementAffectsDirectionality(node)) 799 if (elementAffectsDirectionality(node))
800 continue; 800 continue;
801 801
(...skipping 166 matching lines...) Expand 10 before | Expand all | Expand 10 after
968 #ifndef NDEBUG 968 #ifndef NDEBUG
969 969
970 // For use in the debugger 970 // For use in the debugger
971 void dumpInnerHTML(WebCore::HTMLElement*); 971 void dumpInnerHTML(WebCore::HTMLElement*);
972 972
973 void dumpInnerHTML(WebCore::HTMLElement* element) 973 void dumpInnerHTML(WebCore::HTMLElement* element)
974 { 974 {
975 printf("%s\n", element->innerHTML().ascii().data()); 975 printf("%s\n", element->innerHTML().ascii().data());
976 } 976 }
977 #endif 977 #endif
OLDNEW
« no previous file with comments | « Source/core/html/HTMLBodyElement.cpp ('k') | Source/core/html/HTMLFormControlElement.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698