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

Side by Side Diff: Source/WebCore/html/HTMLTitleElement.cpp

Issue 9569046: Merge 109362 (Closed) Base URL: http://svn.webkit.org/repository/webkit/branches/chromium/963/
Patch Set: Created 8 years, 9 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/html/HTMLTextAreaElement.cpp ('k') | no next file » | 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) 2001 Dirk Mueller (mueller@kde.org) 4 * (C) 2001 Dirk Mueller (mueller@kde.org)
5 * Copyright (C) 2003, 2010 Apple Inc. All rights reserved. 5 * Copyright (C) 2003, 2010 Apple Inc. All rights reserved.
6 * 6 *
7 * This library is free software; you can redistribute it and/or 7 * This library is free software; you can redistribute it and/or
8 * modify it under the terms of the GNU Library General Public 8 * modify it under the terms of the GNU Library General Public
9 * License as published by the Free Software Foundation; either 9 * License as published by the Free Software Foundation; either
10 * version 2 of the License, or (at your option) any later version. 10 * version 2 of the License, or (at your option) any later version.
(...skipping 70 matching lines...) Expand 10 before | Expand all | Expand 10 after
81 TextDirection direction = LTR; 81 TextDirection direction = LTR;
82 if (RenderStyle* style = computedStyle()) 82 if (RenderStyle* style = computedStyle())
83 direction = style->direction(); 83 direction = style->direction();
84 else if (RefPtr<RenderStyle> style = styleForRenderer()) 84 else if (RefPtr<RenderStyle> style = styleForRenderer())
85 direction = style->direction(); 85 direction = style->direction();
86 return StringWithDirection(text(), direction); 86 return StringWithDirection(text(), direction);
87 } 87 }
88 88
89 void HTMLTitleElement::setText(const String &value) 89 void HTMLTitleElement::setText(const String &value)
90 { 90 {
91 RefPtr<Node> protectFromMutationEvents(this);
92
91 ExceptionCode ec = 0; 93 ExceptionCode ec = 0;
92 int numChildren = childNodeCount(); 94 int numChildren = childNodeCount();
93 95
94 if (numChildren == 1 && firstChild()->isTextNode()) 96 if (numChildren == 1 && firstChild()->isTextNode())
95 static_cast<Text*>(firstChild())->setData(value, ec); 97 static_cast<Text*>(firstChild())->setData(value, ec);
96 else { 98 else {
97 // We make a copy here because entity of "value" argument can be Documen t::m_title, 99 // We make a copy here because entity of "value" argument can be Documen t::m_title,
98 // which goes empty during removeChildren() invocation below, 100 // which goes empty during removeChildren() invocation below,
99 // which causes HTMLTitleElement::childrenChanged(), which ends up Docum ent::setTitle(). 101 // which causes HTMLTitleElement::childrenChanged(), which ends up Docum ent::setTitle().
100 String valueCopy(value); 102 String valueCopy(value);
101 103
102 if (numChildren > 0) 104 if (numChildren > 0)
103 removeChildren(); 105 removeChildren();
104 106
105 appendChild(document()->createTextNode(valueCopy.impl()), ec); 107 appendChild(document()->createTextNode(valueCopy.impl()), ec);
106 } 108 }
107 } 109 }
108 110
109 } 111 }
OLDNEW
« no previous file with comments | « Source/WebCore/html/HTMLTextAreaElement.cpp ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698