Changeset 94068 in webkit
- Timestamp:
- Aug 30, 2011, 4:23:24 AM (15 years ago)
- Location:
- trunk
- Files:
-
- 7 edited
-
LayoutTests/ChangeLog (modified) (1 diff)
-
LayoutTests/fast/forms/textfield-lastchange-was-useredit-expected.txt (modified) (1 diff)
-
Source/WebCore/ChangeLog (modified) (1 diff)
-
Source/WebCore/html/HTMLInputElement.cpp (modified) (1 diff)
-
Source/WebCore/html/HTMLTextAreaElement.cpp (modified) (2 diffs)
-
Source/WebCore/html/HTMLTextFormControlElement.cpp (modified) (3 diffs)
-
Source/WebCore/html/HTMLTextFormControlElement.h (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
-
trunk/LayoutTests/ChangeLog
r94067 r94068 1 2011-08-30 Ryosuke Niwa <rniwa@webkit.org> 2 3 lastChangeWasUserEdit continues to return true when innerText or textContent is modified 4 https://bugs.webkit.org/show_bug.cgi?id=67183 5 6 Reviewed by Kent Tamura. 7 8 Two test cases now pass. 9 10 * fast/forms/textfield-lastchange-was-useredit-expected.txt: 11 1 12 2011-08-29 Yury Semikhatsky <yurys@chromium.org> 2 13 -
trunk/LayoutTests/fast/forms/textfield-lastchange-was-useredit-expected.txt
r94038 r94068 20 20 PASS document.execCommand("SelectAll", false, null); internals.wasLastChangeUserEdit(textField) is false 21 21 PASS document.execCommand("Delete", false, null); internals.wasLastChangeUserEdit(textField) is true 22 FAIL textField.textContent = "hello\nworld"; internals.wasLastChangeUserEdit(textField) should be false. Was true. 22 PASS textField.textContent = "hello\nworld"; internals.wasLastChangeUserEdit(textField) is false 23 23 PASS document.execCommand("InsertText", false, "\nWebKit rocks"); internals.wasLastChangeUserEdit(textField) is true 24 FAIL textField.innerText = " WebKit "; internals.wasLastChangeUserEdit(textField) should be false. Was true. 24 PASS textField.innerText = " WebKit "; internals.wasLastChangeUserEdit(textField) is false 25 25 PASS successfullyParsed is true 26 26 -
trunk/Source/WebCore/ChangeLog
r94067 r94068 1 2011-08-30 Ryosuke Niwa <rniwa@webkit.org> 2 3 lastChangeWasUserEdit continues to return true when innerText or textContent is modified 4 https://bugs.webkit.org/show_bug.cgi?id=67183 5 6 Reviewed by Kent Tamura. 7 8 Fixed the bug by calling setLastChangeWasNotUserEdit in HTMLTextAreaElement::childrenChanged. 9 10 Also got rid of HTMLTextFormControlElement::subtreeHasChanged because it was a needless indirection. 11 12 * html/HTMLInputElement.cpp: 13 (WebCore::HTMLInputElement::subtreeHasChanged): No longer calls HTMLTextFormControlElement::subtreeHasChanged. 14 * html/HTMLTextAreaElement.cpp: 15 (WebCore::HTMLTextAreaElement::childrenChanged): Calls setLastChangeWasNotUserEdit. 16 (WebCore::HTMLTextAreaElement::subtreeHasChanged): No longer calls HTMLTextFormControlElement::subtreeHasChanged. 17 * html/HTMLTextFormControlElement.cpp: 18 (WebCore::HTMLTextFormControlElement::defaultEventHandler): Merged subtreeHasChanged. 19 (WebCore::HTMLTextFormControlElement::setInnerTextValue): No longer set m_lastChangeWasUserEdit to false 20 since this is now done when renderers are set dirty. 21 * html/HTMLTextFormControlElement.h: Made subtreeHasChanged a pure virtual function. 22 1 23 2011-08-29 Yury Semikhatsky <yurys@chromium.org> 2 24 -
trunk/Source/WebCore/html/HTMLInputElement.cpp
r94047 r94068 616 616 ASSERT(renderer()); 617 617 RenderTextControlSingleLine* renderTextControl = toRenderTextControlSingleLine(renderer()); 618 619 HTMLTextFormControlElement::subtreeHasChanged();620 618 621 619 bool wasChanged = wasChangedSinceLastFormControlChangeEvent(); -
trunk/Source/WebCore/html/HTMLTextAreaElement.cpp
r94047 r94068 99 99 void HTMLTextAreaElement::childrenChanged(bool changedByParser, Node* beforeChange, Node* afterChange, int childCountDelta) 100 100 { 101 setLastChangeWasNotUserEdit(); 101 102 if (!m_isDirty) 102 103 setNonDirtyValue(defaultValue()); … … 231 232 void HTMLTextAreaElement::subtreeHasChanged() 232 233 { 233 HTMLTextFormControlElement::subtreeHasChanged();234 235 234 setChangedSinceLastFormControlChangeEvent(true); 236 235 setFormControlValueMatchesRenderer(false); -
trunk/Source/WebCore/html/HTMLTextFormControlElement.cpp
r94047 r94068 90 90 { 91 91 if (event->type() == eventNames().webkitEditableContentChangedEvent && renderer() && renderer()->isTextControl()) { 92 m_lastChangeWasUserEdit = true; 92 93 subtreeHasChanged(); 93 94 return; … … 102 103 return; 103 104 innerTextElement()->defaultEventHandler(event); 104 }105 106 void HTMLTextFormControlElement::subtreeHasChanged()107 {108 m_lastChangeWasUserEdit = true;109 105 } 110 106 … … 476 472 ASSERT(!ec); 477 473 } 478 479 // We set m_lastChangeWasUserEdit to false since this change was not explicitly made by the user (say, via typing on the keyboard), see <rdar://problem/5359921>.480 m_lastChangeWasUserEdit = false;481 474 } 482 475 -
trunk/Source/WebCore/html/HTMLTextFormControlElement.h
r94047 r94068 98 98 99 99 virtual void defaultEventHandler(Event*); 100 virtual void subtreeHasChanged() ;100 virtual void subtreeHasChanged() = 0; 101 101 102 102 void setLastChangeWasNotUserEdit() { m_lastChangeWasUserEdit = false; }
Note:
See TracChangeset
for help on using the changeset viewer.