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

Side by Side Diff: Source/WebCore/rendering/RenderObject.cpp

Issue 7833032: Merge 94543 - Style not propagated to anonymous boxes and anonymous (Closed) Base URL: http://svn.webkit.org/repository/webkit/branches/chromium/835/
Patch Set: Created 9 years, 3 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
« no previous file with comments | « Source/WebCore/rendering/RenderObject.h ('k') | Source/WebCore/rendering/RenderRuby.h » ('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 * (C) 2000 Dirk Mueller (mueller@kde.org) 4 * (C) 2000 Dirk Mueller (mueller@kde.org)
5 * (C) 2004 Allan Sandfeld Jensen (kde@carewolf.com) 5 * (C) 2004 Allan Sandfeld Jensen (kde@carewolf.com)
6 * Copyright (C) 2004, 2005, 2006, 2007, 2008, 2011 Apple Inc. All rights reserv ed. 6 * Copyright (C) 2004, 2005, 2006, 2007, 2008, 2011 Apple Inc. All rights reserv ed.
7 * Copyright (C) 2009 Google Inc. All rights reserved. 7 * Copyright (C) 2009 Google Inc. All rights reserved.
8 * Copyright (C) 2009 Torch Mobile Inc. All rights reserved. (http://www.torchmo bile.com/) 8 * Copyright (C) 2009 Torch Mobile Inc. All rights reserved. (http://www.torchmo bile.com/)
9 * 9 *
10 * This library is free software; you can redistribute it and/or 10 * This library is free software; you can redistribute it and/or
(...skipping 1772 matching lines...) Expand 10 before | Expand all | Expand 10 after
1783 1783
1784 // Don't check for repaint here; we need to wait until the layer has been 1784 // Don't check for repaint here; we need to wait until the layer has been
1785 // updated by subclasses before we know if we have to repaint (in setStyle() ). 1785 // updated by subclasses before we know if we have to repaint (in setStyle() ).
1786 1786
1787 if (oldStyle && !areCursorsEqual(oldStyle, style())) { 1787 if (oldStyle && !areCursorsEqual(oldStyle, style())) {
1788 if (Frame* frame = this->frame()) 1788 if (Frame* frame = this->frame())
1789 frame->eventHandler()->dispatchFakeMouseMoveEventSoon(); 1789 frame->eventHandler()->dispatchFakeMouseMoveEventSoon();
1790 } 1790 }
1791 } 1791 }
1792 1792
1793 void RenderObject::propagateStyleToAnonymousChildren()
1794 {
1795 for (RenderObject* child = firstChild(); child; child = child->nextSibling() ) {
1796 if (child->isAnonymous() && !child->isBeforeOrAfterContent()) {
1797 RefPtr<RenderStyle> newStyle = RenderStyle::createAnonymousStyle(sty le());
1798 if (style()->specifiesColumns()) {
1799 if (child->style()->specifiesColumns())
1800 newStyle->inheritColumnPropertiesFrom(style());
1801 if (child->style()->columnSpan())
1802 newStyle->setColumnSpan(true);
1803 }
1804 newStyle->setDisplay(child->style()->display());
1805 child->setStyle(newStyle.release());
1806 }
1807 }
1808 }
1809
1793 void RenderObject::updateFillImages(const FillLayer* oldLayers, const FillLayer* newLayers) 1810 void RenderObject::updateFillImages(const FillLayer* oldLayers, const FillLayer* newLayers)
1794 { 1811 {
1795 // Optimize the common case 1812 // Optimize the common case
1796 if (oldLayers && !oldLayers->next() && newLayers && !newLayers->next() && (o ldLayers->image() == newLayers->image())) 1813 if (oldLayers && !oldLayers->next() && newLayers && !newLayers->next() && (o ldLayers->image() == newLayers->image()))
1797 return; 1814 return;
1798 1815
1799 // Go through the new layers and addClients first, to avoid removing all cli ents of an image. 1816 // Go through the new layers and addClients first, to avoid removing all cli ents of an image.
1800 for (const FillLayer* currNew = newLayers; currNew; currNew = currNew->next( )) { 1817 for (const FillLayer* currNew = newLayers; currNew; currNew = currNew->next( )) {
1801 if (currNew->image()) 1818 if (currNew->image())
1802 currNew->image()->addClient(this); 1819 currNew->image()->addClient(this);
(...skipping 849 matching lines...) Expand 10 before | Expand all | Expand 10 after
2652 { 2669 {
2653 if (object1) { 2670 if (object1) {
2654 const WebCore::RenderObject* root = object1; 2671 const WebCore::RenderObject* root = object1;
2655 while (root->parent()) 2672 while (root->parent())
2656 root = root->parent(); 2673 root = root->parent();
2657 root->showRenderTreeAndMark(object1, "*", object2, "-", 0); 2674 root->showRenderTreeAndMark(object1, "*", object2, "-", 0);
2658 } 2675 }
2659 } 2676 }
2660 2677
2661 #endif 2678 #endif
OLDNEW
« no previous file with comments | « Source/WebCore/rendering/RenderObject.h ('k') | Source/WebCore/rendering/RenderRuby.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698