| OLD | NEW |
| 1 /* | 1 /* |
| 2 * Copyright (C) 2006, 2007, 2008, 2009, 2010 Apple Inc. All rights reserved. | 2 * Copyright (C) 2006, 2007, 2008, 2009, 2010 Apple Inc. All rights reserved. |
| 3 * | 3 * |
| 4 * This library is free software; you can redistribute it and/or | 4 * This library is free software; you can redistribute it and/or |
| 5 * modify it under the terms of the GNU Library General Public | 5 * modify it under the terms of the GNU Library General Public |
| 6 * License as published by the Free Software Foundation; either | 6 * License as published by the Free Software Foundation; either |
| 7 * version 2 of the License, or (at your option) any later version. | 7 * version 2 of the License, or (at your option) any later version. |
| 8 * | 8 * |
| 9 * This library is distributed in the hope that it will be useful, | 9 * This library is distributed in the hope that it will be useful, |
| 10 * but WITHOUT ANY WARRANTY; without even the implied warranty of | 10 * but WITHOUT ANY WARRANTY; without even the implied warranty of |
| (...skipping 50 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 61 } | 61 } |
| 62 | 62 |
| 63 void ShadowBlockElement::updateStyleForPart(PseudoId pseudoId) | 63 void ShadowBlockElement::updateStyleForPart(PseudoId pseudoId) |
| 64 { | 64 { |
| 65 if (renderer()->style()->styleType() != pseudoId) | 65 if (renderer()->style()->styleType() != pseudoId) |
| 66 renderer()->setStyle(createStyleForPart(renderer()->parent(), pseudoId))
; | 66 renderer()->setStyle(createStyleForPart(renderer()->parent(), pseudoId))
; |
| 67 } | 67 } |
| 68 | 68 |
| 69 PassRefPtr<ShadowBlockElement> ShadowBlockElement::createForPart(HTMLElement* sh
adowParent, PseudoId pseudoId) | 69 PassRefPtr<ShadowBlockElement> ShadowBlockElement::createForPart(HTMLElement* sh
adowParent, PseudoId pseudoId) |
| 70 { | 70 { |
| 71 RenderObject* parentRenderer = shadowParent->renderer(); | 71 RefPtr<ShadowBlockElement> part = create(shadowParent); |
| 72 part->initAsPart(pseudoId); |
| 73 return part.release(); |
| 74 } |
| 75 |
| 76 void ShadowBlockElement::initAsPart(PseudoId pseudoId) |
| 77 { |
| 78 RenderObject* parentRenderer = shadowParent()->renderer(); |
| 72 RefPtr<RenderStyle> styleForPart = createStyleForPart(parentRenderer, pseudo
Id); | 79 RefPtr<RenderStyle> styleForPart = createStyleForPart(parentRenderer, pseudo
Id); |
| 73 RefPtr<ShadowBlockElement> part = create(shadowParent); | 80 setRenderer(createRenderer(parentRenderer->renderArena(), styleForPart.get()
)); |
| 74 part->setRenderer(part->createRenderer(parentRenderer->renderArena(), styleF
orPart.get())); | 81 renderer()->setStyle(styleForPart.release()); |
| 75 part->renderer()->setStyle(styleForPart.release()); | 82 setAttached(); |
| 76 part->setAttached(); | 83 setInDocument(); |
| 77 part->setInDocument(); | |
| 78 return part.release(); | |
| 79 } | 84 } |
| 80 | 85 |
| 81 PassRefPtr<RenderStyle> ShadowBlockElement::createStyleForPart(RenderObject* par
entRenderer, PseudoId pseudoId) | 86 PassRefPtr<RenderStyle> ShadowBlockElement::createStyleForPart(RenderObject* par
entRenderer, PseudoId pseudoId) |
| 82 { | 87 { |
| 83 RefPtr<RenderStyle> styleForPart; | 88 RefPtr<RenderStyle> styleForPart; |
| 84 RenderStyle* pseudoStyle = parentRenderer->getCachedPseudoStyle(pseudoId); | 89 RenderStyle* pseudoStyle = parentRenderer->getCachedPseudoStyle(pseudoId); |
| 85 if (pseudoStyle) | 90 if (pseudoStyle) |
| 86 styleForPart = RenderStyle::clone(pseudoStyle); | 91 styleForPart = RenderStyle::clone(pseudoStyle); |
| 87 else | 92 else |
| 88 styleForPart = RenderStyle::create(); | 93 styleForPart = RenderStyle::create(); |
| (...skipping 18 matching lines...) Expand all Loading... |
| 107 { | 112 { |
| 108 return adoptRef(new ShadowInputElement(shadowParent)); | 113 return adoptRef(new ShadowInputElement(shadowParent)); |
| 109 } | 114 } |
| 110 | 115 |
| 111 ShadowInputElement::ShadowInputElement(HTMLElement* shadowParent) | 116 ShadowInputElement::ShadowInputElement(HTMLElement* shadowParent) |
| 112 : ShadowElement<HTMLInputElement>(inputTag, shadowParent) | 117 : ShadowElement<HTMLInputElement>(inputTag, shadowParent) |
| 113 { | 118 { |
| 114 } | 119 } |
| 115 | 120 |
| 116 } // namespace WebCore | 121 } // namespace WebCore |
| OLD | NEW |