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

Side by Side Diff: Source/core/editing/commands/ApplyBlockElementCommand.cpp

Issue 1294543005: Move execCommand related files in core/editing/ related files into core/editing/commands/ (Closed) Base URL: https://chromium.googlesource.com/chromium/blink.git@master
Patch Set: 2015-08-17T17:57:33 Created 5 years, 4 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
OLDNEW
1 /* 1 /*
2 * Copyright (C) 2006, 2008 Apple Inc. All rights reserved. 2 * Copyright (C) 2006, 2008 Apple Inc. All rights reserved.
3 * Copyright (C) 2010 Google Inc. All rights reserved. 3 * Copyright (C) 2010 Google Inc. All rights reserved.
4 * 4 *
5 * Redistribution and use in source and binary forms, with or without 5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions 6 * modification, are permitted provided that the following conditions
7 * are met: 7 * are met:
8 * 1. Redistributions of source code must retain the above copyright 8 * 1. Redistributions of source code must retain the above copyright
9 * notice, this list of conditions and the following disclaimer. 9 * notice, this list of conditions and the following disclaimer.
10 * 2. Redistributions in binary form must reproduce the above copyright 10 * 2. Redistributions in binary form must reproduce the above copyright
11 * notice, this list of conditions and the following disclaimer in the 11 * notice, this list of conditions and the following disclaimer in the
12 * documentation and/or other materials provided with the distribution. 12 * documentation and/or other materials provided with the distribution.
13 * 13 *
14 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 14 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
15 * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 15 * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
16 * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 16 * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
17 * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 17 * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
18 * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 18 * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
19 * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 19 * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
20 * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 20 * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
21 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 21 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
22 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 22 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
23 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 23 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
24 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 24 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
25 */ 25 */
26 26
27 #include "config.h" 27 #include "config.h"
28 #include "core/editing/ApplyBlockElementCommand.h" 28 #include "core/editing/commands/ApplyBlockElementCommand.h"
29 29
30 #include "bindings/core/v8/ExceptionState.h" 30 #include "bindings/core/v8/ExceptionState.h"
31 #include "core/HTMLNames.h" 31 #include "core/HTMLNames.h"
32 #include "core/dom/NodeComputedStyle.h" 32 #include "core/dom/NodeComputedStyle.h"
33 #include "core/dom/Text.h" 33 #include "core/dom/Text.h"
34 #include "core/editing/EditingUtilities.h" 34 #include "core/editing/EditingUtilities.h"
35 #include "core/editing/VisiblePosition.h" 35 #include "core/editing/VisiblePosition.h"
36 #include "core/editing/VisibleUnits.h" 36 #include "core/editing/VisibleUnits.h"
37 #include "core/html/HTMLBRElement.h" 37 #include "core/html/HTMLBRElement.h"
38 #include "core/html/HTMLElement.h" 38 #include "core/html/HTMLElement.h"
(...skipping 228 matching lines...) Expand 10 before | Expand all | Expand 10 after
267 if (text == end.computeContainerNode() && text->previousSibling() && text->p reviousSibling()->isTextNode()) { 267 if (text == end.computeContainerNode() && text->previousSibling() && text->p reviousSibling()->isTextNode()) {
268 ASSERT(end.offsetInContainerNode() < position.offsetInContainerNode()); 268 ASSERT(end.offsetInContainerNode() < position.offsetInContainerNode());
269 end = Position(toText(text->previousSibling()), end.offsetInContainerNod e()); 269 end = Position(toText(text->previousSibling()), end.offsetInContainerNod e());
270 } 270 }
271 if (text == m_endOfLastParagraph.computeContainerNode()) { 271 if (text == m_endOfLastParagraph.computeContainerNode()) {
272 if (m_endOfLastParagraph.offsetInContainerNode() < position.offsetInCont ainerNode()) { 272 if (m_endOfLastParagraph.offsetInContainerNode() < position.offsetInCont ainerNode()) {
273 // We can only fix endOfLastParagraph if the previous node was still text and hasn't been modified by script. 273 // We can only fix endOfLastParagraph if the previous node was still text and hasn't been modified by script.
274 if (text->previousSibling()->isTextNode() 274 if (text->previousSibling()->isTextNode()
275 && static_cast<unsigned>(m_endOfLastParagraph.offsetInContainerN ode()) <= toText(text->previousSibling())->length()) 275 && static_cast<unsigned>(m_endOfLastParagraph.offsetInContainerN ode()) <= toText(text->previousSibling())->length())
276 m_endOfLastParagraph = Position(toText(text->previousSibling()), m_endOfLastParagraph.offsetInContainerNode()); 276 m_endOfLastParagraph = Position(toText(text->previousSibling()), m_endOfLastParagraph.offsetInContainerNode());
277 } else 277 } else {
278 m_endOfLastParagraph = Position(text.get(), m_endOfLastParagraph.off setInContainerNode() - 1); 278 m_endOfLastParagraph = Position(text.get(), m_endOfLastParagraph.off setInContainerNode() - 1);
279 }
279 } 280 }
280 281
281 return VisiblePosition(Position(text.get(), position.offsetInContainerNode() - 1)); 282 return VisiblePosition(Position(text.get(), position.offsetInContainerNode() - 1));
282 } 283 }
283 284
284 PassRefPtrWillBeRawPtr<HTMLElement> ApplyBlockElementCommand::createBlockElement () const 285 PassRefPtrWillBeRawPtr<HTMLElement> ApplyBlockElementCommand::createBlockElement () const
285 { 286 {
286 RefPtrWillBeRawPtr<HTMLElement> element = createHTMLElement(document(), m_ta gName); 287 RefPtrWillBeRawPtr<HTMLElement> element = createHTMLElement(document(), m_ta gName);
287 if (m_inlineStyle.length()) 288 if (m_inlineStyle.length())
288 element->setAttribute(styleAttr, m_inlineStyle); 289 element->setAttribute(styleAttr, m_inlineStyle);
289 return element.release(); 290 return element.release();
290 } 291 }
291 292
292 DEFINE_TRACE(ApplyBlockElementCommand) 293 DEFINE_TRACE(ApplyBlockElementCommand)
293 { 294 {
294 visitor->trace(m_endOfLastParagraph); 295 visitor->trace(m_endOfLastParagraph);
295 CompositeEditCommand::trace(visitor); 296 CompositeEditCommand::trace(visitor);
296 } 297 }
297 298
298 } 299 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698