WebKit Bugzilla
Attachment 360916 Details for
Bug 193786
: Turn on Smart Paste
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Requests
|
Help
|
New Account
|
Log In
Remember
[x]
|
Forgot Password
Login:
[x]
[patch]
Patch
bug-193786-20190201154926.patch (text/plain), 97.69 KB, created by
Megan Gardner
on 2019-02-01 15:49:27 PST
(
hide
)
Description:
Patch
Filename:
MIME Type:
Creator:
Megan Gardner
Created:
2019-02-01 15:49:27 PST
Size:
97.69 KB
patch
obsolete
>Subversion Revision: 240885 >diff --git a/Source/WebCore/ChangeLog b/Source/WebCore/ChangeLog >index 7b8dc4ce5086afbfd26acaaceff92a35d3e0fb66..89bb067c2b2fe6a1290bbf3dc943e1c3e65e5c94 100644 >--- a/Source/WebCore/ChangeLog >+++ b/Source/WebCore/ChangeLog >@@ -1,3 +1,24 @@ >+2019-01-25 Megan Gardner <megan_gardner@apple.com> >+ >+ Turn on Smart Paste >+ https://bugs.webkit.org/show_bug.cgi?id=193786 >+ >+ Reviewed by NOBODY (OOPS!). >+ >+ Turned on a modified tests: >+ LayoutTests/editing/pasteboard/smart-paste-001.html >+ LayoutTests/editing/pasteboard/smart-paste-002.html >+ LayoutTests/editing/pasteboard/smart-paste-003.html >+ LayoutTests/editing/pasteboard/smart-paste-004.html >+ LayoutTests/editing/pasteboard/smart-paste-005.html >+ LayoutTests/editing/pasteboard/smart-paste-006.html >+ LayoutTests/editing/pasteboard/smart-paste-007.html >+ LayoutTests/editing/pasteboard/smart-paste-008.html >+ >+ * platform/ios/PasteboardIOS.mm: >+ (WebCore::Pasteboard::canSmartReplace): >+ Turn on smart replace. >+ > 2019-02-01 Chris Dumez <cdumez@apple.com> > > REGRESSION: Flaky ASSERTION FAILED: m_uncommittedState.state == State::Committed on http/tests/cookies/same-site/fetch-after-top-level-navigation-initiated-from-iframe-in-cross-origin-page.html >diff --git a/Source/WebKit/ChangeLog b/Source/WebKit/ChangeLog >index 423a4dfdc3c6a68b20b7f027b9c33e2f74139216..398c61203f43da099279e048756df88e85e6dde9 100644 >--- a/Source/WebKit/ChangeLog >+++ b/Source/WebKit/ChangeLog >@@ -1,3 +1,16 @@ >+2019-01-25 Megan Gardner <megan_gardner@apple.com> >+ >+ Turn on Smart Paste >+ https://bugs.webkit.org/show_bug.cgi?id=193786 >+ >+ Reviewed by NOBODY (OOPS!). >+ >+ * Platform/spi/ios/UIKitSPI.h: >+ * UIProcess/ios/TextCheckerIOS.mm: >+ (WebKit::TextChecker::isSmartInsertDeleteEnabled): >+ Use the flag from UIKit to determine if smart copy paste should be >+ turned on. >+ > 2019-02-01 Alex Christensen <achristensen@webkit.org> > > Move XPCService entry points from mac directory to new Cocoa directory >diff --git a/Source/WebCore/platform/ios/PasteboardIOS.mm b/Source/WebCore/platform/ios/PasteboardIOS.mm >index 8f52793d350fa6767d70d44cbef4f9774e0440f1..2071531cdc77ab4f00d1768e5e6d50d91bc65cc8 100644 >--- a/Source/WebCore/platform/ios/PasteboardIOS.mm >+++ b/Source/WebCore/platform/ios/PasteboardIOS.mm >@@ -147,7 +147,7 @@ void Pasteboard::write(const Color& color) > > bool Pasteboard::canSmartReplace() > { >- return false; >+ return true; > } > > void Pasteboard::read(PasteboardPlainText& text) >diff --git a/Source/WebKit/Platform/spi/ios/UIKitSPI.h b/Source/WebKit/Platform/spi/ios/UIKitSPI.h >index 0978e6da47a79d6484b9cf18826bbd4e5ea39278..8f64537937e3f7fd2a1a6f82b5fbbaac20482f0c 100644 >--- a/Source/WebKit/Platform/spi/ios/UIKitSPI.h >+++ b/Source/WebKit/Platform/spi/ios/UIKitSPI.h >@@ -259,6 +259,7 @@ typedef enum { > @end > > @interface UIKeyboardImpl : UIView <UIKeyboardCandidateListDelegate> >+- (BOOL)smartInsertDeleteIsEnabled; > @end > > @interface UIKeyboardImpl () >diff --git a/Source/WebKit/UIProcess/ios/TextCheckerIOS.mm b/Source/WebKit/UIProcess/ios/TextCheckerIOS.mm >index 42078b636511548159df07114c58cc60cd2b52a9..d310232057a0098049f95105b88ee910eabae122 100644 >--- a/Source/WebKit/UIProcess/ios/TextCheckerIOS.mm >+++ b/Source/WebKit/UIProcess/ios/TextCheckerIOS.mm >@@ -113,8 +113,7 @@ bool TextChecker::isTestingMode() > > bool TextChecker::isSmartInsertDeleteEnabled() > { >- notImplemented(); >- return false; >+ return [[UIKeyboardImpl sharedInstance] smartInsertDeleteIsEnabled]; > } > > void TextChecker::setSmartInsertDeleteEnabled(bool) >diff --git a/LayoutTests/ChangeLog b/LayoutTests/ChangeLog >index f6299541c0f9e70cf9dd2464f36036f66589eb42..c52618a670d70b3dae2e068b972a7c01f54945f7 100644 >--- a/LayoutTests/ChangeLog >+++ b/LayoutTests/ChangeLog >@@ -1,3 +1,39 @@ >+2019-01-25 Megan Gardner <megan_gardner@apple.com> >+ >+ Turn on Smart Paste >+ https://bugs.webkit.org/show_bug.cgi?id=193786 >+ >+ Reviewed by NOBODY (OOPS!). >+ >+ Rebaselined many tests and/or added iOS specific expectations to >+ correctly reflect smart copy paste behavior. >+ >+ * editing/editing.js: >+ (runEditingTestWithCallbackLogging): >+ (runDumpAsTextEditingTest): >+ Added ability to handle async functions. >+ * editing/pasteboard/smart-paste-001.html: >+ * editing/pasteboard/smart-paste-002.html: >+ * editing/pasteboard/smart-paste-003.html: >+ * editing/pasteboard/smart-paste-004.html: >+ * editing/pasteboard/smart-paste-005.html: >+ * editing/pasteboard/smart-paste-006.html: >+ * editing/pasteboard/smart-paste-007.html: >+ * editing/pasteboard/smart-paste-008.html: >+ * platform/ios-wk2/editing/pasteboard/smart-paste-007-expected.txt: >+ * platform/ios-wk2/editing/pasteboard/smart-paste-008-expected.txt: >+ * platform/ios/TestExpectations: >+ * platform/ios/editing/pasteboard/smart-paste-001-expected.txt: Added. >+ * platform/ios/editing/pasteboard/smart-paste-002-expected.txt: Added. >+ * platform/ios/editing/pasteboard/smart-paste-003-expected.txt: Added. >+ * platform/ios/editing/pasteboard/smart-paste-004-expected.txt: Added. >+ * platform/ios/editing/pasteboard/smart-paste-005-expected.txt: Added. >+ * platform/ios/editing/pasteboard/smart-paste-006-expected.txt: Added. >+ * resources/ui-helper.js: >+ (window.UIHelper.doubleClickAt): >+ (window.UIHelper.async.selectWordByDoubleTapOrClick): >+ Added helper functions to allow for selecting a word by double tap or click. >+ > 2019-02-01 Megan Gardner <megan_gardner@apple.com> > > Rewrite and rebaseline smart copy paste tests to work on iOS and MacOS >diff --git a/LayoutTests/editing/editing.js b/LayoutTests/editing/editing.js >index daa5f31c361669430a4341f12f82ed66efc6f268..998164eb0b611dfbec8abed7a601328a953ff271 100644 >--- a/LayoutTests/editing/editing.js >+++ b/LayoutTests/editing/editing.js >@@ -954,8 +954,21 @@ function runDumpAsTextEditingTest(enableCallbacks) { > selection.setPosition(elem, 0); > const result = editingTest(); > >- for (var i = 0; i < elementsForDumpingMarkupList.length; i++) >- document.body.appendChild(elementsForDumpingMarkupList[i]); >+ const postTask = () => { >+ for (var i = 0; i < elementsForDumpingMarkupList.length; i++) >+ document.body.appendChild(elementsForDumpingMarkupList[i]); >+ } >+ >+ if (result instanceof Promise) { >+ if (window.testRunner) >+ testRunner.waitUntilDone(); >+ result.then(() => { >+ postTask(); >+ if (window.testRunner) >+ testRunner.notifyDone(); >+ }); >+ } else >+ postTask(); > } > > function debugForDumpAsText(name) { >diff --git a/LayoutTests/editing/pasteboard/smart-paste-006.html b/LayoutTests/editing/pasteboard/smart-paste-006.html >index 66825a5fc856a2359203b14d0468a0c0ce85b344..f1ad76485b6727d70f79d1e09eb4a2f64187d6a4 100644 >--- a/LayoutTests/editing/pasteboard/smart-paste-006.html >+++ b/LayoutTests/editing/pasteboard/smart-paste-006.html >@@ -44,7 +44,8 @@ test > <script> > > async function editingTest() { >- await UIHelper.selectWordByDoubleTapOrClick(document.getElementById('test')); cutCommand(); >+ await UIHelper.selectWordByDoubleTapOrClick(document.getElementById('test')); >+ cutCommand(); > typeCharacterCommand('-'); > typeCharacterCommand('-'); > moveSelectionBackwardByCharacterCommand(); >diff --git a/LayoutTests/editing/pasteboard/smart-paste-007.html b/LayoutTests/editing/pasteboard/smart-paste-007.html >index 457409f0a4df74a91bff4735526169323b148bc1..ab8837dc33e59f3df23fd5a26abca745a9339fa6 100644 >--- a/LayoutTests/editing/pasteboard/smart-paste-007.html >+++ b/LayoutTests/editing/pasteboard/smart-paste-007.html >@@ -18,7 +18,6 @@ > </style> > <script src="../editing.js"></script> > <script src="../../resources/ui-helper.js"></script> >- > <script> > > async function editingTest() { >diff --git a/LayoutTests/platform/ios-wk2/editing/pasteboard/4076267-2-expected.txt b/LayoutTests/platform/ios-wk2/editing/pasteboard/4076267-2-expected.txt >index f4c3239603f07ea1cd1074899bd7f7705546aea1..9573433bef2d3255702a5324b046a5d30f325cc5 100644 >--- a/LayoutTests/platform/ios-wk2/editing/pasteboard/4076267-2-expected.txt >+++ b/LayoutTests/platform/ios-wk2/editing/pasteboard/4076267-2-expected.txt >@@ -11,7 +11,7 @@ EDITING DELEGATE: shouldChangeSelectedDOMRange:range from 0 of DIV > DIV > BODY > EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification > EDITING DELEGATE: webViewDidChange:WebViewDidChangeNotification > EDITING DELEGATE: shouldInsertText:there should be a single trailing space between the '.' and the last character in this sentence replacingDOMRange:range from 0 of DIV > DIV > BODY > HTML > #document to 0 of DIV > DIV > BODY > HTML > #document givenAction:WebViewInsertActionPasted >-EDITING DELEGATE: shouldChangeSelectedDOMRange:range from 0 of DIV > DIV > BODY > HTML > #document to 0 of DIV > DIV > BODY > HTML > #document toDOMRange:range from 96 of #text > DIV > DIV > BODY > HTML > #document to 96 of #text > DIV > DIV > BODY > HTML > #document affinity:NSSelectionAffinityDownstream stillSelecting:FALSE >+EDITING DELEGATE: shouldChangeSelectedDOMRange:range from 97 of #text > DIV > DIV > BODY > HTML > #document to 97 of #text > DIV > DIV > BODY > HTML > #document toDOMRange:range from 97 of #text > DIV > DIV > BODY > HTML > #document to 97 of #text > DIV > DIV > BODY > HTML > #document affinity:NSSelectionAffinityDownstream stillSelecting:FALSE > EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification > EDITING DELEGATE: webViewDidChange:WebViewDidChangeNotification > layer at (0,0) size 800x600 >@@ -27,4 +27,4 @@ layer at (0,0) size 800x600 > RenderBlock {DIV} at (2,2) size 780x24 [border: (2px solid #AAAAFF)] > RenderText {#text} at (2,2) size 586x19 > text run at (2,2) width 586: "there should be a single trailing space between the '.' and the last character in this sentence ." >-caret: position 96 of child 0 {#text} of child 1 {DIV} of child 5 {DIV} of body >+caret: position 97 of child 0 {#text} of child 0 {DIV} of child 5 {DIV} of body >diff --git a/LayoutTests/platform/ios-wk2/editing/pasteboard/4944770-2-expected.txt b/LayoutTests/platform/ios-wk2/editing/pasteboard/4944770-2-expected.txt >index 9d89c3031b894c5e564f630a160cdac9676afa84..b0e75ffef1158e0d8c8218bcf735046414b5655c 100644 >--- a/LayoutTests/platform/ios-wk2/editing/pasteboard/4944770-2-expected.txt >+++ b/LayoutTests/platform/ios-wk2/editing/pasteboard/4944770-2-expected.txt >@@ -13,13 +13,12 @@ layer at (0,0) size 800x600 > RenderBlock (anonymous) at (6,3) size 27x14 > RenderText at (0,0) size 7x14 > text run at (0,0) width 7: "1" >- RenderBlock {DIV} at (0,80) size 784x24 >- RenderText {#text} at (0,1) size 30x19 >- text run at (0,1) width 30: "xfoo" >- RenderMenuList {SELECT} at (31,2) size 40x20 [bgcolor=#FFFFFF02] [border: (1px solid #4C4C4C)] >- RenderBlock (anonymous) at (6,3) size 27x14 >- RenderText at (0,0) size 7x14 >- text run at (0,0) width 7: "1" >- RenderText {#text} at (72,1) size 9x19 >- text run at (72,1) width 9: "x" >-caret: position 3 of child 1 {SELECT} of child 4 {DIV} of body >+ RenderBlock {DIV} at (0,80) size 784x20 >+ RenderText {#text} at (0,0) size 8x19 >+ text run at (0,0) width 8: "x" >+ RenderInline {SPAN} at (0,0) size 353x18 [color=#D6492E] >+ RenderText {#text} at (8,1) size 353x18 >+ text run at (8,1) width 353: " LayoutTests/platform/ios-wk2/editing/ " >+ RenderText {#text} at (360,0) size 9x19 >+ text run at (360,0) width 9: "x" >+caret: position 39 of child 0 {#text} of child 1 {SPAN} of child 4 {DIV} of body >diff --git a/LayoutTests/platform/ios-wk2/editing/pasteboard/input-field-1-expected.txt b/LayoutTests/platform/ios-wk2/editing/pasteboard/input-field-1-expected.txt >index 8732b9b3f08106e7468f08e8d8c044e7d3ffdd1b..1ad3293b41028567a4fd5a669a0b37ffef220e59 100644 >--- a/LayoutTests/platform/ios-wk2/editing/pasteboard/input-field-1-expected.txt >+++ b/LayoutTests/platform/ios-wk2/editing/pasteboard/input-field-1-expected.txt >@@ -6,7 +6,7 @@ EDITING DELEGATE: shouldChangeSelectedDOMRange:range from 0 of DIV > BODY > HTML > EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification > EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification > EDITING DELEGATE: shouldInsertNode:#document-fragment replacingDOMRange:range from 1 of DIV > BODY > HTML > #document to 1 of DIV > BODY > HTML > #document givenAction:WebViewInsertActionPasted >-EDITING DELEGATE: shouldChangeSelectedDOMRange:range from 1 of DIV > BODY > HTML > #document to 1 of DIV > BODY > HTML > #document toDOMRange:range from 2 of DIV > BODY > HTML > #document to 2 of DIV > BODY > HTML > #document affinity:NSSelectionAffinityDownstream stillSelecting:FALSE >+EDITING DELEGATE: shouldChangeSelectedDOMRange:range from 1 of DIV > BODY > HTML > #document to 1 of DIV > BODY > HTML > #document toDOMRange:range from 3 of DIV > BODY > HTML > #document to 3 of DIV > BODY > HTML > #document affinity:NSSelectionAffinityDownstream stillSelecting:FALSE > EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification > EDITING DELEGATE: webViewDidChange:WebViewDidChangeNotification > layer at (0,0) size 800x600 >@@ -19,7 +19,9 @@ layer at (0,0) size 800x600 > text run at (0,0) width 241: "This tests Copy/Paste of a input field." > RenderBlock {DIV} at (0,36) size 784x25 > RenderTextControl {INPUT} at (2,2) size 136x22 [bgcolor=#FFFFFF] [border: (1px solid #4C4C4C)] >- RenderTextControl {INPUT} at (141,2) size 136x22 [bgcolor=#FFFFFF] [border: (1px solid #4C4C4C)] >+ RenderText {#text} at (139,1) size 5x19 >+ text run at (139,1) width 5: " " >+ RenderTextControl {INPUT} at (145,2) size 136x22 [bgcolor=#FFFFFF] [border: (1px solid #4C4C4C)] > RenderBlock {UL} at (0,77) size 784x20 > RenderListItem {LI} at (40,0) size 744x20 > RenderListMarker at (-18,0) size 7x19: bullet >@@ -27,6 +29,6 @@ layer at (0,0) size 800x600 > text run at (0,0) width 44: "Passed" > layer at (17,49) size 122x14 > RenderBlock {DIV} at (6,3) size 123x15 >-layer at (156,49) size 122x14 >+layer at (160,49) size 122x14 > RenderBlock {DIV} at (6,3) size 123x15 >-caret: position 1 of child 1 {INPUT} of child 2 {DIV} of body >+caret: position 1 of child 2 {INPUT} of child 2 {DIV} of body >diff --git a/LayoutTests/platform/ios-wk2/editing/pasteboard/paste-line-endings-006-expected.txt b/LayoutTests/platform/ios-wk2/editing/pasteboard/paste-line-endings-006-expected.txt >index 38febd8dc5c6c3a80aa3a5f449e378a8d3c2f26a..58c94be5320205549be63ff9eb175be8517fa0ff 100644 >--- a/LayoutTests/platform/ios-wk2/editing/pasteboard/paste-line-endings-006-expected.txt >+++ b/LayoutTests/platform/ios-wk2/editing/pasteboard/paste-line-endings-006-expected.txt >@@ -13,7 +13,7 @@ EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotificatio > EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification > EDITING DELEGATE: shouldInsertNode:#document-fragment replacingDOMRange:range from 1 of DIV > DIV > BODY > HTML > #document to 1 of #text > DIV > DIV > BODY > HTML > #document givenAction:WebViewInsertActionPasted > EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >-EDITING DELEGATE: shouldChangeSelectedDOMRange:range from 1 of DIV > DIV > BODY > HTML > #document to 8 of #text > DIV > DIV > BODY > HTML > #document toDOMRange:range from 1 of #text > DIV > DIV > BODY > HTML > #document to 1 of #text > DIV > DIV > BODY > HTML > #document affinity:NSSelectionAffinityDownstream stillSelecting:FALSE >+EDITING DELEGATE: shouldChangeSelectedDOMRange:range from 1 of DIV > DIV > BODY > HTML > #document to 9 of #text > DIV > DIV > BODY > HTML > #document toDOMRange:range from 2 of #text > DIV > DIV > BODY > HTML > #document to 2 of #text > DIV > DIV > BODY > HTML > #document affinity:NSSelectionAffinityDownstream stillSelecting:FALSE > EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification > EDITING DELEGATE: webViewDidChange:WebViewDidChangeNotification > layer at (0,0) size 800x600 >@@ -47,6 +47,6 @@ layer at (0,0) size 800x600 > RenderText {#text} at (2,3) size 77x28 > text run at (2,3) width 77: "line one" > RenderBR {BR} at (78,25) size 1x0 >- RenderText {#text} at (2,33) size 78x28 >- text run at (2,33) width 78: "line two" >-caret: position 1 of child 2 {#text} of child 1 {DIV} of child 3 {DIV} of body >+ RenderText {#text} at (2,33) size 84x28 >+ text run at (2,33) width 84: "l ine two" >+caret: position 2 of child 2 {#text} of child 1 {DIV} of child 3 {DIV} of body >diff --git a/LayoutTests/platform/ios-wk2/editing/pasteboard/paste-line-endings-007-expected.txt b/LayoutTests/platform/ios-wk2/editing/pasteboard/paste-line-endings-007-expected.txt >index b8cb7ad25b291b52f34c5627b4b070d7f7882bfc..9888dbdc5fca022dc3dd315c1ea0d49f3f127658 100644 >--- a/LayoutTests/platform/ios-wk2/editing/pasteboard/paste-line-endings-007-expected.txt >+++ b/LayoutTests/platform/ios-wk2/editing/pasteboard/paste-line-endings-007-expected.txt >@@ -13,7 +13,7 @@ EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotificatio > EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification > EDITING DELEGATE: shouldInsertNode:#document-fragment replacingDOMRange:range from 9 of #text > DIV > DIV > BODY > HTML > #document to 1 of #text > DIV > DIV > DIV > BODY > HTML > #document givenAction:WebViewInsertActionPasted > EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >-EDITING DELEGATE: shouldChangeSelectedDOMRange:range from 1 of DIV > DIV > BODY > HTML > #document to 8 of #text > DIV > DIV > DIV > BODY > HTML > #document toDOMRange:range from 1 of #text > DIV > DIV > DIV > BODY > HTML > #document to 1 of #text > DIV > DIV > DIV > BODY > HTML > #document affinity:NSSelectionAffinityDownstream stillSelecting:FALSE >+EDITING DELEGATE: shouldChangeSelectedDOMRange:range from 1 of DIV > DIV > BODY > HTML > #document to 9 of #text > DIV > DIV > DIV > BODY > HTML > #document toDOMRange:range from 2 of #text > DIV > DIV > DIV > BODY > HTML > #document to 2 of #text > DIV > DIV > DIV > BODY > HTML > #document affinity:NSSelectionAffinityDownstream stillSelecting:FALSE > EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification > EDITING DELEGATE: webViewDidChange:WebViewDidChangeNotification > layer at (0,0) size 800x600 >@@ -49,6 +49,6 @@ layer at (0,0) size 800x600 > text run at (0,1) width 77: "line one" > RenderBR {BR} at (76,23) size 1x0 > RenderBlock {DIV} at (2,32) size 780x30 >- RenderText {#text} at (0,1) size 78x28 >- text run at (0,1) width 78: "line two" >-caret: position 1 of child 0 {#text} of child 2 {DIV} of child 1 {DIV} of child 3 {DIV} of body >+ RenderText {#text} at (0,1) size 84x28 >+ text run at (0,1) width 84: "l ine two" >+caret: position 2 of child 0 {#text} of child 2 {DIV} of child 1 {DIV} of child 3 {DIV} of body >diff --git a/LayoutTests/platform/ios-wk2/editing/pasteboard/paste-line-endings-008-expected.txt b/LayoutTests/platform/ios-wk2/editing/pasteboard/paste-line-endings-008-expected.txt >index 8b15f5600efbcdfea4e63eefc78c7f5fa8ea762c..947f00629331d317657f0bbd3838c694a23a0c30 100644 >--- a/LayoutTests/platform/ios-wk2/editing/pasteboard/paste-line-endings-008-expected.txt >+++ b/LayoutTests/platform/ios-wk2/editing/pasteboard/paste-line-endings-008-expected.txt >@@ -13,7 +13,7 @@ EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotificatio > EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification > EDITING DELEGATE: shouldInsertNode:#document-fragment replacingDOMRange:range from 8 of #text > DIV > DIV > DIV > BODY > HTML > #document to 1 of #text > DIV > DIV > DIV > BODY > HTML > #document givenAction:WebViewInsertActionPasted > EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >-EDITING DELEGATE: shouldChangeSelectedDOMRange:range from 8 of #text > DIV > DIV > DIV > BODY > HTML > #document to 8 of #text > DIV > DIV > DIV > BODY > HTML > #document toDOMRange:range from 1 of #text > DIV > DIV > DIV > BODY > HTML > #document to 1 of #text > DIV > DIV > DIV > BODY > HTML > #document affinity:NSSelectionAffinityDownstream stillSelecting:FALSE >+EDITING DELEGATE: shouldChangeSelectedDOMRange:range from 8 of #text > DIV > DIV > DIV > BODY > HTML > #document to 9 of #text > DIV > DIV > DIV > BODY > HTML > #document toDOMRange:range from 2 of #text > DIV > DIV > DIV > BODY > HTML > #document to 2 of #text > DIV > DIV > DIV > BODY > HTML > #document affinity:NSSelectionAffinityDownstream stillSelecting:FALSE > EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification > EDITING DELEGATE: webViewDidChange:WebViewDidChangeNotification > layer at (0,0) size 800x600 >@@ -48,6 +48,6 @@ layer at (0,0) size 800x600 > RenderText {#text} at (0,1) size 77x28 > text run at (0,1) width 77: "line one" > RenderBlock {DIV} at (2,32) size 780x30 >- RenderText {#text} at (0,1) size 78x28 >- text run at (0,1) width 78: "line two" >-caret: position 1 of child 0 {#text} of child 2 {DIV} of child 1 {DIV} of child 3 {DIV} of body >+ RenderText {#text} at (0,1) size 84x28 >+ text run at (0,1) width 84: "l ine two" >+caret: position 2 of child 0 {#text} of child 2 {DIV} of child 1 {DIV} of child 3 {DIV} of body >diff --git a/LayoutTests/platform/ios-wk2/editing/pasteboard/paste-line-endings-009-expected.txt b/LayoutTests/platform/ios-wk2/editing/pasteboard/paste-line-endings-009-expected.txt >index cc1fd8f1c97bd0af285e0a75ed542a2b5dc59ebd..43e2c0545912381d8f4260c1ad6f71c77fb1cfdc 100644 >--- a/LayoutTests/platform/ios-wk2/editing/pasteboard/paste-line-endings-009-expected.txt >+++ b/LayoutTests/platform/ios-wk2/editing/pasteboard/paste-line-endings-009-expected.txt >@@ -13,7 +13,7 @@ EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotificatio > EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification > EDITING DELEGATE: shouldInsertNode:#document-fragment replacingDOMRange:range from 8 of #text > DIV > DIV > DIV > BODY > HTML > #document to 1 of #text > DIV > DIV > DIV > DIV > BODY > HTML > #document givenAction:WebViewInsertActionPasted > EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >-EDITING DELEGATE: shouldChangeSelectedDOMRange:range from 1 of DIV > DIV > DIV > BODY > HTML > #document to 8 of #text > DIV > DIV > DIV > DIV > BODY > HTML > #document toDOMRange:range from 1 of #text > DIV > DIV > DIV > DIV > BODY > HTML > #document to 1 of #text > DIV > DIV > DIV > DIV > BODY > HTML > #document affinity:NSSelectionAffinityDownstream stillSelecting:FALSE >+EDITING DELEGATE: shouldChangeSelectedDOMRange:range from 1 of DIV > DIV > DIV > BODY > HTML > #document to 9 of #text > DIV > DIV > DIV > DIV > BODY > HTML > #document toDOMRange:range from 2 of #text > DIV > DIV > DIV > DIV > BODY > HTML > #document to 2 of #text > DIV > DIV > DIV > DIV > BODY > HTML > #document affinity:NSSelectionAffinityDownstream stillSelecting:FALSE > EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification > EDITING DELEGATE: webViewDidChange:WebViewDidChangeNotification > layer at (0,0) size 800x600 >@@ -50,6 +50,6 @@ layer at (0,0) size 800x600 > text run at (0,1) width 77: "line one" > RenderBR {BR} at (76,23) size 1x0 > RenderBlock {DIV} at (0,30) size 780x30 >- RenderText {#text} at (0,1) size 78x28 >- text run at (0,1) width 78: "line two" >-caret: position 1 of child 0 {#text} of child 2 {DIV} of child 1 {DIV} of child 1 {DIV} of child 3 {DIV} of body >+ RenderText {#text} at (0,1) size 84x28 >+ text run at (0,1) width 84: "l ine two" >+caret: position 2 of child 0 {#text} of child 2 {DIV} of child 1 {DIV} of child 1 {DIV} of child 3 {DIV} of body >diff --git a/LayoutTests/platform/ios-wk2/editing/pasteboard/paste-line-endings-010-expected.txt b/LayoutTests/platform/ios-wk2/editing/pasteboard/paste-line-endings-010-expected.txt >index 9a47591d87a02c23603d08b49d9a566e51ab7e07..8f05088b4c6297f7e31fb65fd78ed3b078f5cef4 100644 >--- a/LayoutTests/platform/ios-wk2/editing/pasteboard/paste-line-endings-010-expected.txt >+++ b/LayoutTests/platform/ios-wk2/editing/pasteboard/paste-line-endings-010-expected.txt >@@ -13,7 +13,7 @@ EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotificatio > EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification > EDITING DELEGATE: shouldInsertNode:#document-fragment replacingDOMRange:range from 8 of #text > DIV > DIV > DIV > DIV > BODY > HTML > #document to 1 of #text > DIV > DIV > DIV > BODY > HTML > #document givenAction:WebViewInsertActionPasted > EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >-EDITING DELEGATE: shouldChangeSelectedDOMRange:range from 8 of #text > DIV > DIV > DIV > DIV > BODY > HTML > #document to 8 of #text > DIV > DIV > DIV > BODY > HTML > #document toDOMRange:range from 1 of #text > DIV > DIV > DIV > BODY > HTML > #document to 1 of #text > DIV > DIV > DIV > BODY > HTML > #document affinity:NSSelectionAffinityDownstream stillSelecting:FALSE >+EDITING DELEGATE: shouldChangeSelectedDOMRange:range from 8 of #text > DIV > DIV > DIV > DIV > BODY > HTML > #document to 9 of #text > DIV > DIV > DIV > BODY > HTML > #document toDOMRange:range from 2 of #text > DIV > DIV > DIV > BODY > HTML > #document to 2 of #text > DIV > DIV > DIV > BODY > HTML > #document affinity:NSSelectionAffinityDownstream stillSelecting:FALSE > EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification > EDITING DELEGATE: webViewDidChange:WebViewDidChangeNotification > layer at (0,0) size 800x600 >@@ -49,6 +49,6 @@ layer at (0,0) size 800x600 > RenderText {#text} at (0,1) size 77x28 > text run at (0,1) width 77: "line one" > RenderBlock (anonymous) at (0,30) size 780x30 >- RenderText {#text} at (0,1) size 78x28 >- text run at (0,1) width 78: "line two" >-caret: position 1 of child 1 {#text} of child 1 {DIV} of child 1 {DIV} of child 3 {DIV} of body >+ RenderText {#text} at (0,1) size 84x28 >+ text run at (0,1) width 84: "l ine two" >+caret: position 2 of child 1 {#text} of child 1 {DIV} of child 1 {DIV} of child 3 {DIV} of body >diff --git a/LayoutTests/platform/ios-wk2/editing/pasteboard/paste-match-style-001-expected.txt b/LayoutTests/platform/ios-wk2/editing/pasteboard/paste-match-style-001-expected.txt >index a13e09897435b9669b633c894c92adf5eb7b87f6..91ff5520e82b0a940170a8423f0f58c2a2138acb 100644 >--- a/LayoutTests/platform/ios-wk2/editing/pasteboard/paste-match-style-001-expected.txt >+++ b/LayoutTests/platform/ios-wk2/editing/pasteboard/paste-match-style-001-expected.txt >@@ -11,7 +11,7 @@ EDITING DELEGATE: shouldChangeSelectedDOMRange:range from 1 of #text > B > DIV > > EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification > EDITING DELEGATE: webViewDidChange:WebViewDidChangeNotification > EDITING DELEGATE: shouldInsertText:b replacingDOMRange:range from 1 of #text > B > DIV > DIV > BODY > HTML > #document to 1 of #text > B > DIV > DIV > BODY > HTML > #document givenAction:WebViewInsertActionPasted >-EDITING DELEGATE: shouldChangeSelectedDOMRange:range from 0 of DIV > DIV > BODY > HTML > #document to 0 of DIV > DIV > BODY > HTML > #document toDOMRange:range from 2 of #text > B > DIV > DIV > BODY > HTML > #document to 2 of #text > B > DIV > DIV > BODY > HTML > #document affinity:NSSelectionAffinityDownstream stillSelecting:FALSE >+EDITING DELEGATE: shouldChangeSelectedDOMRange:range from 0 of DIV > DIV > BODY > HTML > #document to 0 of DIV > DIV > BODY > HTML > #document toDOMRange:range from 3 of #text > B > DIV > DIV > BODY > HTML > #document to 3 of #text > B > DIV > DIV > BODY > HTML > #document affinity:NSSelectionAffinityDownstream stillSelecting:FALSE > EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification > EDITING DELEGATE: webViewDidChange:WebViewDidChangeNotification > layer at (0,0) size 800x600 >@@ -40,7 +40,7 @@ layer at (0,0) size 800x600 > RenderText {#text} at (0,0) size 0x0 > RenderBlock {DIV} at (0,248) size 784x34 > RenderBlock {DIV} at (0,0) size 784x34 [border: (2px solid #FF0000)] >- RenderInline {B} at (0,0) size 26x28 >- RenderText {#text} at (2,3) size 26x28 >- text run at (2,3) width 26: "ab" >-caret: position 2 of child 0 {#text} of child 0 {B} of child 1 {DIV} of child 3 {DIV} of body >+ RenderInline {B} at (0,0) size 32x28 >+ RenderText {#text} at (2,3) size 32x28 >+ text run at (2,3) width 32: "a b" >+caret: position 3 of child 0 {#text} of child 0 {B} of child 1 {DIV} of child 3 {DIV} of body >diff --git a/LayoutTests/platform/ios-wk2/editing/pasteboard/paste-text-008-expected.txt b/LayoutTests/platform/ios-wk2/editing/pasteboard/paste-text-008-expected.txt >index 2bf103990c624fca0a02a82a5c5c4ad7e21efc0f..e38628bc67be1a75a12eb11f440bb0330721db11 100644 >--- a/LayoutTests/platform/ios-wk2/editing/pasteboard/paste-text-008-expected.txt >+++ b/LayoutTests/platform/ios-wk2/editing/pasteboard/paste-text-008-expected.txt >@@ -106,7 +106,7 @@ EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotificatio > EDITING DELEGATE: webViewDidChange:WebViewDidChangeNotification > EDITING DELEGATE: shouldInsertNode:#document-fragment replacingDOMRange:range from 20 of #text > DIV > BODY > HTML > #document to 20 of #text > DIV > BODY > HTML > #document givenAction:WebViewInsertActionPasted > EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >-EDITING DELEGATE: shouldChangeSelectedDOMRange:range from 45 of #text > DIV > BODY > HTML > #document to 45 of #text > DIV > BODY > HTML > #document toDOMRange:range from 20 of #text > DIV > BODY > HTML > #document to 20 of #text > DIV > BODY > HTML > #document affinity:NSSelectionAffinityDownstream stillSelecting:FALSE >+EDITING DELEGATE: shouldChangeSelectedDOMRange:range from 46 of #text > DIV > BODY > HTML > #document to 46 of #text > DIV > BODY > HTML > #document toDOMRange:range from 20 of #text > DIV > BODY > HTML > #document to 20 of #text > DIV > BODY > HTML > #document affinity:NSSelectionAffinityDownstream stillSelecting:FALSE > EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification > EDITING DELEGATE: webViewDidChange:WebViewDidChangeNotification > layer at (0,0) size 800x600 >@@ -122,8 +122,8 @@ layer at (0,0) size 800x600 > RenderText {#text} at (14,15) size 356x28 > text run at (14,15) width 356: "Is bound in shallows and in miseries." > RenderBlock (anonymous) at (14,102) size 756x30 >- RenderText {#text} at (0,1) size 438x28 >- text run at (0,1) width 438: "Upon such a full seashallows and in miseries." >+ RenderText {#text} at (0,1) size 444x28 >+ text run at (0,1) width 444: "Upon such a full sea shallows and in miseries." > RenderBlock {DIV} at (0,146) size 784x58 [border: (2px solid #FF0000)] > RenderText {#text} at (14,15) size 380x28 > text run at (14,15) width 380: "Upon such a full sea are we now afloat," >diff --git a/LayoutTests/platform/ios-wk2/editing/pasteboard/paste-text-009-expected.txt b/LayoutTests/platform/ios-wk2/editing/pasteboard/paste-text-009-expected.txt >index 65ccfb96c92b1185c85c47a96dde82e3bc4d702b..cb881a1e2a9ed002588c93c7fc88a07465f52277 100644 >--- a/LayoutTests/platform/ios-wk2/editing/pasteboard/paste-text-009-expected.txt >+++ b/LayoutTests/platform/ios-wk2/editing/pasteboard/paste-text-009-expected.txt >@@ -81,12 +81,12 @@ EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotificatio > EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification > EDITING DELEGATE: shouldInsertNode:#document-fragment replacingDOMRange:range from 37 of #text > DIV > DIV > BODY > HTML > #document to 1 of #text > DIV > BODY > HTML > #document givenAction:WebViewInsertActionPasted > EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >-EDITING DELEGATE: shouldChangeSelectedDOMRange:range from 37 of #text > DIV > DIV > BODY > HTML > #document to 39 of #text > DIV > BODY > HTML > #document toDOMRange:range from 1 of #text > DIV > BODY > HTML > #document to 1 of #text > DIV > BODY > HTML > #document affinity:NSSelectionAffinityDownstream stillSelecting:FALSE >+EDITING DELEGATE: shouldChangeSelectedDOMRange:range from 37 of #text > DIV > DIV > BODY > HTML > #document to 40 of #text > DIV > BODY > HTML > #document toDOMRange:range from 2 of #text > DIV > BODY > HTML > #document to 2 of #text > DIV > BODY > HTML > #document affinity:NSSelectionAffinityDownstream stillSelecting:FALSE > EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification > EDITING DELEGATE: webViewDidChange:WebViewDidChangeNotification >-EDITING DELEGATE: shouldInsertNode:#document-fragment replacingDOMRange:range from 1 of #text > DIV > BODY > HTML > #document to 1 of #text > DIV > BODY > HTML > #document givenAction:WebViewInsertActionPasted >+EDITING DELEGATE: shouldInsertNode:#document-fragment replacingDOMRange:range from 2 of #text > DIV > BODY > HTML > #document to 2 of #text > DIV > BODY > HTML > #document givenAction:WebViewInsertActionPasted > EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >-EDITING DELEGATE: shouldChangeSelectedDOMRange:range from 1 of #text > DIV > BODY > HTML > #document to 1 of #text > DIV > BODY > HTML > #document toDOMRange:range from 1 of #text > DIV > BODY > HTML > #document to 1 of #text > DIV > BODY > HTML > #document affinity:NSSelectionAffinityDownstream stillSelecting:FALSE >+EDITING DELEGATE: shouldChangeSelectedDOMRange:range from 2 of #text > DIV > BODY > HTML > #document to 2 of #text > DIV > BODY > HTML > #document toDOMRange:range from 2 of #text > DIV > BODY > HTML > #document to 2 of #text > DIV > BODY > HTML > #document affinity:NSSelectionAffinityDownstream stillSelecting:FALSE > EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification > EDITING DELEGATE: webViewDidChange:WebViewDidChangeNotification > layer at (0,0) size 800x600 >@@ -102,9 +102,10 @@ layer at (0,0) size 800x600 > RenderText {#text} at (14,15) size 356x28 > text run at (14,15) width 356: "Is bound in shallows and in miseries." > RenderBlock (anonymous) at (14,102) size 756x30 >- RenderText {#text} at (0,1) size 18x28 >+ RenderText {#text} at (0,1) size 24x28 > text run at (0,1) width 18: "U" >+ text run at (17,1) width 7: " " > RenderBlock {DIV} at (0,146) size 784x58 [border: (2px solid #FF0000)] >- RenderText {#text} at (14,15) size 380x28 >- text run at (14,15) width 380: "Upon such a full sea are we now afloat," >-caret: position 1 of child 0 {#text} of child 2 {DIV} of body >+ RenderText {#text} at (14,15) size 386x28 >+ text run at (14,15) width 386: "U pon such a full sea are we now afloat," >+caret: position 2 of child 0 {#text} of child 2 {DIV} of body >diff --git a/LayoutTests/platform/ios-wk2/editing/pasteboard/paste-text-019-expected.txt b/LayoutTests/platform/ios-wk2/editing/pasteboard/paste-text-019-expected.txt >index 7ab5290d50288853cfc85cd5be948147226146e9..9a7340fe32feed94a99c950f589437e7744db5db 100644 >--- a/LayoutTests/platform/ios-wk2/editing/pasteboard/paste-text-019-expected.txt >+++ b/LayoutTests/platform/ios-wk2/editing/pasteboard/paste-text-019-expected.txt >@@ -14,7 +14,7 @@ EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotificatio > EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification > EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification > EDITING DELEGATE: shouldInsertText:Bar replacingDOMRange:range from 4 of #text > SPAN > DIV > BODY > HTML > #document to 4 of #text > SPAN > DIV > BODY > HTML > #document givenAction:WebViewInsertActionPasted >-EDITING DELEGATE: shouldChangeSelectedDOMRange:range from 4 of #text > SPAN > DIV > BODY > HTML > #document to 4 of #text > SPAN > DIV > BODY > HTML > #document toDOMRange:range from 7 of #text > SPAN > DIV > BODY > HTML > #document to 7 of #text > SPAN > DIV > BODY > HTML > #document affinity:NSSelectionAffinityDownstream stillSelecting:FALSE >+EDITING DELEGATE: shouldChangeSelectedDOMRange:range from 4 of #text > SPAN > DIV > BODY > HTML > #document to 4 of #text > SPAN > DIV > BODY > HTML > #document toDOMRange:range from 4 of #text > DIV > BODY > HTML > #document to 4 of #text > DIV > BODY > HTML > #document affinity:NSSelectionAffinityDownstream stillSelecting:FALSE > EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification > EDITING DELEGATE: webViewDidChange:WebViewDidChangeNotification > layer at (0,0) size 800x600 >@@ -48,11 +48,12 @@ layer at (0,0) size 800x600 > RenderText {#text} at (0,1) size 154x28 > text run at (0,1) width 154: "(case sensitive)." > RenderBlock {DIV} at (0,321) size 784x34 [border: (2px solid #FF0000)] >- RenderInline {SPAN} at (0,0) size 152x28 >+ RenderInline {SPAN} at (0,0) size 118x28 > RenderInline {SPAN} at (0,0) size 78x28 > RenderText {#text} at (2,3) size 78x28 > text run at (2,3) width 78: "Foo Bar" >- RenderText {#text} at (80,3) size 74x28 >- text run at (80,3) width 74: " bazBar" >- RenderText {#text} at (0,0) size 0x0 >-caret: position 7 of child 1 {#text} of child 1 {SPAN} of child 3 {DIV} of body >+ RenderText {#text} at (80,3) size 40x28 >+ text run at (80,3) width 40: " baz" >+ RenderText {#text} at (119,3) size 41x28 >+ text run at (119,3) width 41: " Bar" >+caret: position 4 of child 2 {#text} of child 3 {DIV} of body >diff --git a/LayoutTests/platform/ios-wk2/editing/pasteboard/paste-text-at-tabspan-003-expected.txt b/LayoutTests/platform/ios-wk2/editing/pasteboard/paste-text-at-tabspan-003-expected.txt >index 58936d852cda2c576e87cead09852ea9c10cfb85..12844a32dc060c444db529f9718d0a22c66b2967 100644 >--- a/LayoutTests/platform/ios-wk2/editing/pasteboard/paste-text-at-tabspan-003-expected.txt >+++ b/LayoutTests/platform/ios-wk2/editing/pasteboard/paste-text-at-tabspan-003-expected.txt >@@ -7,10 +7,11 @@ EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotificatio > EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification > EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification > EDITING DELEGATE: shouldInsertNode:#document-fragment replacingDOMRange:range from 3 of #text > SPAN > SPAN > DIV > BODY > HTML > #document to 3 of #text > SPAN > SPAN > DIV > BODY > HTML > #document givenAction:WebViewInsertActionPasted >-EDITING DELEGATE: shouldChangeSelectedDOMRange:range from 3 of #text > SPAN > SPAN > DIV > BODY > HTML > #document to 3 of #text > SPAN > SPAN > DIV > BODY > HTML > #document toDOMRange:range from 1 of #text > SPAN > DIV > BODY > HTML > #document to 1 of #text > SPAN > DIV > BODY > HTML > #document affinity:NSSelectionAffinityDownstream stillSelecting:FALSE >+EDITING DELEGATE: shouldChangeSelectedDOMRange:range from 3 of #text > SPAN > SPAN > DIV > BODY > HTML > #document to 3 of #text > SPAN > SPAN > DIV > BODY > HTML > #document toDOMRange:range from 2 of #text > SPAN > DIV > BODY > HTML > #document to 2 of #text > SPAN > DIV > BODY > HTML > #document affinity:NSSelectionAffinityDownstream stillSelecting:FALSE > EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification > EDITING DELEGATE: webViewDidChange:WebViewDidChangeNotification >-EDITING DELEGATE: shouldChangeSelectedDOMRange:range from 1 of #text > SPAN > DIV > BODY > HTML > #document to 1 of #text > SPAN > DIV > BODY > HTML > #document toDOMRange:range from 2 of #text > SPAN > DIV > BODY > HTML > #document to 2 of #text > SPAN > DIV > BODY > HTML > #document affinity:NSSelectionAffinityDownstream stillSelecting:FALSE >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: shouldChangeSelectedDOMRange:range from 1 of #text > SPAN > DIV > BODY > HTML > #document to 1 of #text > SPAN > DIV > BODY > HTML > #document toDOMRange:range from 3 of #text > SPAN > DIV > BODY > HTML > #document to 3 of #text > SPAN > DIV > BODY > HTML > #document affinity:NSSelectionAffinityDownstream stillSelecting:FALSE > EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification > EDITING DELEGATE: webViewDidChange:WebViewDidChangeNotification > layer at (0,0) size 800x600 >@@ -19,13 +20,13 @@ layer at (0,0) size 800x600 > RenderBlock {HTML} at (0,0) size 800x600 > RenderBody {BODY} at (8,8) size 784x584 > RenderBlock {DIV} at (0,0) size 784x58 [border: (2px solid #FF0000)] >- RenderInline {SPAN} at (0,0) size 178x28 >+ RenderInline {SPAN} at (0,0) size 184x28 > RenderText {#text} at (14,15) size 11x28 > text run at (14,15) width 11: "a" > RenderInline {SPAN} at (0,0) size 134x28 > RenderText {#text} at (24,15) size 134x28 > text run at (24,15) width 134: "\x{9}\x{9}\x{9}" >- RenderText {#text} at (158,15) size 34x28 >- text run at (158,15) width 34: "axz" >+ RenderText {#text} at (158,15) size 40x28 >+ text run at (158,15) width 40: "a xz" > RenderText {#text} at (0,0) size 0x0 >-caret: position 2 of child 2 {#text} of child 1 {SPAN} of child 1 {DIV} of body >+caret: position 3 of child 2 {#text} of child 1 {SPAN} of child 1 {DIV} of body >diff --git a/LayoutTests/platform/ios-wk2/editing/pasteboard/paste-xml-expected.txt b/LayoutTests/platform/ios-wk2/editing/pasteboard/paste-xml-expected.txt >index a828f64caff8de7db926a08a3322d993540d02a3..bd0492a39c36284be389f000d5b5c15a5736a683 100644 >--- a/LayoutTests/platform/ios-wk2/editing/pasteboard/paste-xml-expected.txt >+++ b/LayoutTests/platform/ios-wk2/editing/pasteboard/paste-xml-expected.txt >@@ -11,9 +11,9 @@ EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotificatio > EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification > EDITING DELEGATE: shouldInsertNode:#document-fragment replacingDOMRange:range from 7 of #text > span > div > body > html > #document to 7 of #text > span > div > body > html > #document givenAction:WebViewInsertActionPasted > EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >-EDITING DELEGATE: shouldChangeSelectedDOMRange:range from 14 of #text > span > div > body > html > #document to 14 of #text > span > div > body > html > #document toDOMRange:range from 10 of #text > span > div > body > html > #document to 10 of #text > span > div > body > html > #document affinity:NSSelectionAffinityDownstream stillSelecting:FALSE >+EDITING DELEGATE: shouldChangeSelectedDOMRange:range from 15 of #text > span > div > body > html > #document to 15 of #text > span > div > body > html > #document toDOMRange:range from 11 of #text > span > div > body > html > #document to 11 of #text > span > div > body > html > #document affinity:NSSelectionAffinityDownstream stillSelecting:FALSE > EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification > EDITING DELEGATE: webViewDidChange:WebViewDidChangeNotification >-foo barbar baz >+foo bar bar baz > execCopyCommand: <span xmlns="http://www.w3.org/1999/xhtml" id="test">foo bar baz</span> >-execPasteCommand: <span xmlns="http://www.w3.org/1999/xhtml" id="test">foo barbar baz</span> >+execPasteCommand: <span xmlns="http://www.w3.org/1999/xhtml" id="test">foo bar bar baz</span> >diff --git a/LayoutTests/platform/ios-wk2/editing/pasteboard/smart-paste-007-expected.txt b/LayoutTests/platform/ios-wk2/editing/pasteboard/smart-paste-007-expected.txt >index 6684c5cce04cf92f4cded4f63b6ffddb7a9e70db..d88a593802d77e8d4209bc6f98ed227fa6bd9f02 100644 >--- a/LayoutTests/platform/ios-wk2/editing/pasteboard/smart-paste-007-expected.txt >+++ b/LayoutTests/platform/ios-wk2/editing/pasteboard/smart-paste-007-expected.txt >@@ -1,6 +1,15 @@ >+EDITING DELEGATE: shouldBeginEditingInDOMRange:range from 0 of DIV > BODY > HTML > #document to 3 of DIV > BODY > HTML > #document >+EDITING DELEGATE: webViewDidBeginEditing:WebViewDidBeginEditingNotification > EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: shouldChangeSelectedDOMRange:range from 0 of DIV > DIV > BODY > HTML > #document to 0 of DIV > DIV > BODY > HTML > #document toDOMRange:range from 0 of DIV > DIV > BODY > HTML > #document to 0 of DIV > DIV > BODY > HTML > #document affinity:NSSelectionAffinityDownstream stillSelecting:FALSE >+EDITING DELEGATE: shouldChangeSelectedDOMRange:range from 0 of DIV > DIV > BODY > HTML > #document to 0 of DIV > DIV > BODY > HTML > #document toDOMRange:range from 1 of #text > DIV > DIV > BODY > HTML > #document to 5 of #text > DIV > DIV > BODY > HTML > #document affinity:NSSelectionAffinityDownstream stillSelecting:FALSE > EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >-EDITING DELEGATE: shouldChangeSelectedDOMRange:range from 0 of DIV > DIV > BODY > HTML > #document to 0 of DIV > DIV > BODY > HTML > #document toDOMRange:range from 1 of #text > DIV > DIV > BODY > HTML > #document to 1 of #text > DIV > DIV > BODY > HTML > #document affinity:NSSelectionAffinityDownstream stillSelecting:FALSE >+EDITING DELEGATE: shouldDeleteDOMRange:range from 1 of #text > DIV > DIV > BODY > HTML > #document to 5 of #text > DIV > DIV > BODY > HTML > #document >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: shouldChangeSelectedDOMRange:range from 0 of DIV > DIV > BODY > HTML > #document to 0 of DIV > DIV > BODY > HTML > #document toDOMRange:range from 0 of DIV > DIV > BODY > HTML > #document to 0 of DIV > DIV > BODY > HTML > #document affinity:NSSelectionAffinityDownstream stillSelecting:FALSE >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChange:WebViewDidChangeNotification >+EDITING DELEGATE: shouldChangeSelectedDOMRange:range from 1 of #text > DIV > DIV > BODY > HTML > #document to 1 of #text > DIV > DIV > BODY > HTML > #document toDOMRange:range from 1 of #text > DIV > DIV > BODY > HTML > #document to 1 of #text > DIV > DIV > BODY > HTML > #document affinity:NSSelectionAffinityDownstream stillSelecting:FALSE > EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification > EDITING DELEGATE: webViewDidChange:WebViewDidChangeNotification > EDITING DELEGATE: shouldChangeSelectedDOMRange:range from 1 of #text > DIV > DIV > BODY > HTML > #document to 1 of #text > DIV > DIV > BODY > HTML > #document toDOMRange:range from 2 of #text > DIV > DIV > BODY > HTML > #document to 2 of #text > DIV > DIV > BODY > HTML > #document affinity:NSSelectionAffinityDownstream stillSelecting:FALSE >@@ -9,7 +18,7 @@ EDITING DELEGATE: webViewDidChange:WebViewDidChangeNotification > EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification > EDITING DELEGATE: shouldInsertNode:#document-fragment replacingDOMRange:range from 1 of #text > DIV > DIV > BODY > HTML > #document to 1 of #text > DIV > DIV > BODY > HTML > #document givenAction:WebViewInsertActionPasted > EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >-EDITING DELEGATE: shouldChangeSelectedDOMRange:range from 10 of #text > DIV > DIV > BODY > HTML > #document to 10 of #text > DIV > DIV > BODY > HTML > #document toDOMRange:range from 5 of #text > DIV > DIV > BODY > HTML > #document to 5 of #text > DIV > DIV > BODY > HTML > #document affinity:NSSelectionAffinityDownstream stillSelecting:FALSE >+EDITING DELEGATE: shouldChangeSelectedDOMRange:range from 7 of #text > DIV > DIV > BODY > HTML > #document to 7 of #text > DIV > DIV > BODY > HTML > #document toDOMRange:range from 6 of #text > DIV > DIV > BODY > HTML > #document to 6 of #text > DIV > DIV > BODY > HTML > #document affinity:NSSelectionAffinityDownstream stillSelecting:FALSE > EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification > EDITING DELEGATE: webViewDidChange:WebViewDidChangeNotification > layer at (0,0) size 800x600 >@@ -36,7 +45,7 @@ layer at (0,0) size 800x600 > text run at (0,91) width 52: ". test." > RenderBlock {DIV} at (0,248) size 784x34 > RenderBlock {DIV} at (0,0) size 784x34 [border: (2px solid #FF0000)] >- RenderText {#text} at (2,3) size 79x28 >- text run at (2,3) width 79: ".test.test" >- RenderBlock (anonymous) at (0,34) size 784x0 >-caret: position 5 of child 0 {#text} of child 1 {DIV} of child 3 {DIV} of body >+ RenderText {#text} at (2,3) size 52x28 >+ text run at (2,3) width 52: ". test." >+caret: position 6 of child 0 {#text} of child 1 {DIV} of child 3 {DIV} of body >+scrolled to 0,21 >diff --git a/LayoutTests/platform/ios-wk2/editing/pasteboard/smart-paste-008-expected.txt b/LayoutTests/platform/ios-wk2/editing/pasteboard/smart-paste-008-expected.txt >index 0beecb8ff1771e07c6d8da840cca17b78bc1c9e8..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 100644 >--- a/LayoutTests/platform/ios-wk2/editing/pasteboard/smart-paste-008-expected.txt >+++ b/LayoutTests/platform/ios-wk2/editing/pasteboard/smart-paste-008-expected.txt >@@ -1,34 +0,0 @@ >-EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >-EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >-EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >-EDITING DELEGATE: shouldInsertNode:#document-fragment replacingDOMRange:range from 1 of #text > DIV > DIV > BODY > HTML > #document to 1 of #text > DIV > DIV > BODY > HTML > #document givenAction:WebViewInsertActionPasted >-EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >-EDITING DELEGATE: shouldChangeSelectedDOMRange:range from 0 of #text > SPAN > DIV > DIV > BODY > HTML > #document to 1 of DIV > BODY > HTML > #document toDOMRange:range from 4 of #text > SPAN > DIV > DIV > BODY > HTML > #document to 4 of #text > SPAN > DIV > DIV > BODY > HTML > #document affinity:NSSelectionAffinityDownstream stillSelecting:FALSE >-EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >-EDITING DELEGATE: webViewDidChange:WebViewDidChangeNotification >-layer at (0,0) size 800x600 >- RenderView at (0,0) size 800x600 >-layer at (0,0) size 800x600 >- RenderBlock {HTML} at (0,0) size 800x600 >- RenderBody {BODY} at (8,8) size 784x584 >- RenderBlock {P} at (0,0) size 784x40 >- RenderText {#text} at (0,0) size 767x39 >- text run at (0,0) width 401: "There was a bug in paste's smart replace whitespace handling. " >- text run at (400,0) width 367: "In some cases, it used information gathered at the start of" >- text run at (0,20) width 759: "the selection being pasted into to decide whether or not a space needed to be added to the end of the incoming content." >- RenderBlock {P} at (0,56) size 784x40 >- RenderText {#text} at (0,0) size 779x39 >- text run at (0,0) width 559: "A smart paste is performed into a selection starting in one block and ending in another. " >- text run at (558,0) width 221: "Spaces should surround the pasted" >- text run at (0,20) width 37: "word." >- RenderBlock {DIV} at (0,112) size 784x30 >- RenderBlock {DIV} at (0,0) size 784x30 >- RenderText {#text} at (0,8) size 6x19 >- text run at (0,8) width 6: "f" >- RenderInline {SPAN} at (0,0) size 34x28 >- RenderText {#text} at (5,1) size 34x28 >- text run at (5,1) width 34: "test" >- RenderText {#text} at (38,8) size 26x19 >- text run at (38,8) width 26: " bar" >- RenderBlock (anonymous) at (0,30) size 784x0 >-caret: position 4 of child 0 {#text} of child 1 {SPAN} of child 0 {DIV} of child 4 {DIV} of body >diff --git a/LayoutTests/platform/ios/TestExpectations b/LayoutTests/platform/ios/TestExpectations >index 25f027064458b728218602900fb03a5806627980..283bd6a275a787507ce16360d132c2bee87b112f 100644 >--- a/LayoutTests/platform/ios/TestExpectations >+++ b/LayoutTests/platform/ios/TestExpectations >@@ -2138,13 +2138,7 @@ editing/pasteboard/paste-plaintext-user-select-none.html [ Failure ] > editing/pasteboard/paste-sanitize-crash-1.html [ Failure ] > editing/pasteboard/paste-sanitize-crash-2.html [ Failure ] > editing/pasteboard/paste-text-events.html [ Failure ] >-editing/pasteboard/smart-paste-001.html [ Failure ] >-editing/pasteboard/smart-paste-002.html [ Failure ] >-editing/pasteboard/smart-paste-003.html [ Failure ] >-editing/pasteboard/smart-paste-004.html [ Failure ] >-editing/pasteboard/smart-paste-005.html [ Failure ] >-editing/pasteboard/smart-paste-007.html [ Failure ] >-editing/pasteboard/smart-paste-008.html [ Failure ] >+ > > # Local pasteboard is not implemented on iOS, so pasteboard tests used to be all disabled. > >diff --git a/LayoutTests/platform/ios/editing/pasteboard/4989774-expected.txt b/LayoutTests/platform/ios/editing/pasteboard/4989774-expected.txt >index 4c152cc7531e243c11a82ac5b8e4474fbbf58142..35a3a724c3534e92f35c973229cd41e0581c9cc8 100644 >--- a/LayoutTests/platform/ios/editing/pasteboard/4989774-expected.txt >+++ b/LayoutTests/platform/ios/editing/pasteboard/4989774-expected.txt >@@ -4,14 +4,18 @@ layer at (0,0) size 800x600 > RenderBlock {HTML} at (0,0) size 800x600 > RenderBody {BODY} at (8,8) size 784x584 > RenderImage {IMG} at (0,0) size 76x103 >- RenderImage {IMG} at (76,0) size 76x103 >- RenderImage {IMG} at (152,0) size 76x103 >- RenderBR {BR} at (228,103) size 0x0 >- RenderText {#text} at (0,103) size 740x39 >- text run at (0,103) width 635: "This tests for a bug where an images pasted on the same line would appear on different lines. " >- text run at (634,103) width 102: "You should see" >- text run at (735,103) width 5: " " >- text run at (0,123) width 364: "several pictures above all in the same line/paragraph." >+ RenderText {#text} at (76,88) size 4x19 >+ text run at (76,88) width 4: " " >+ RenderImage {IMG} at (80,0) size 76x103 >+ RenderText {#text} at (156,88) size 4x19 >+ text run at (156,88) width 4: " " >+ RenderImage {IMG} at (160,0) size 76x103 >+ RenderBR {BR} at (236,103) size 0x0 >+ RenderText {#text} at (0,108) size 740x39 >+ text run at (0,108) width 635: "This tests for a bug where an images pasted on the same line would appear on different lines. " >+ text run at (634,108) width 102: "You should see" >+ text run at (735,108) width 5: " " >+ text run at (0,128) width 364: "several pictures above all in the same line/paragraph." > RenderText {#text} at (0,0) size 0x0 > RenderText {#text} at (0,0) size 0x0 >-caret: position 164 of child 4 {#text} of body >+caret: position 164 of child 6 {#text} of body >diff --git a/LayoutTests/platform/ios/editing/pasteboard/onpaste-text-html-expected.txt b/LayoutTests/platform/ios/editing/pasteboard/onpaste-text-html-expected.txt >new file mode 100644 >index 0000000000000000000000000000000000000000..822846e2b7e1c3c009879a278a4cc4ebbdcddcb6 >--- /dev/null >+++ b/LayoutTests/platform/ios/editing/pasteboard/onpaste-text-html-expected.txt >@@ -0,0 +1,6 @@ >+CONSOLE MESSAGE: line 21: text/plain: This test verifies that we can get text/html from the clipboard during an onpaste event. >+CONSOLE MESSAGE: line 23: text/html: <span style="...">This test verifies that we can get text/html from the clipboard during an onpaste event.<span class="Apple-converted-space"> </span></span> >+This test verifies that we can get text/html from the clipboard during an onpaste event. This test requires DRT. >+Paste content in this div. This test verifies that we can get text/html from the clipboard during an onpaste event. >+PASS >+ >diff --git a/LayoutTests/platform/ios/editing/pasteboard/paste-text-001-expected.txt b/LayoutTests/platform/ios/editing/pasteboard/paste-text-001-expected.txt >new file mode 100644 >index 0000000000000000000000000000000000000000..47d3d628085074213805f81de18e35ff6db15931 >--- /dev/null >+++ b/LayoutTests/platform/ios/editing/pasteboard/paste-text-001-expected.txt >@@ -0,0 +1,23 @@ >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: shouldInsertNode:#document-fragment replacingDOMRange:range from 7 of #text > SPAN > DIV > BODY > HTML > #document to 7 of #text > SPAN > DIV > BODY > HTML > #document givenAction:WebViewInsertActionPasted >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: shouldChangeSelectedDOMRange:range from 15 of #text > SPAN > DIV > BODY > HTML > #document to 15 of #text > SPAN > DIV > BODY > HTML > #document toDOMRange:range from 11 of #text > SPAN > DIV > BODY > HTML > #document to 11 of #text > SPAN > DIV > BODY > HTML > #document affinity:NSSelectionAffinityDownstream stillSelecting:FALSE >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChange:WebViewDidChangeNotification >+EDITING DELEGATE: webViewDidEndEditing:WebViewDidEndEditingNotification >+ >+You should see "foo barbar baz" below: >+| " >+" >+| <span> >+| id="test" >+| "foo bar bar<#selection-caret> baz" >+| " >+" >diff --git a/LayoutTests/platform/ios/editing/pasteboard/paste-text-002-expected.txt b/LayoutTests/platform/ios/editing/pasteboard/paste-text-002-expected.txt >new file mode 100644 >index 0000000000000000000000000000000000000000..1bf42c089afad6a8a9d398e96abc590fd6fd1dbc >--- /dev/null >+++ b/LayoutTests/platform/ios/editing/pasteboard/paste-text-002-expected.txt >@@ -0,0 +1,74 @@ >+EDITING DELEGATE: shouldBeginEditingInDOMRange:range from 0 of DIV > BODY > HTML > #document to 9 of DIV > BODY > HTML > #document >+EDITING DELEGATE: webViewDidBeginEditing:WebViewDidBeginEditingNotification >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: shouldInsertNode:#document-fragment replacingDOMRange:range from 6 of #text > DIV > DIV > BODY > HTML > #document to 11 of #text > DIV > DIV > BODY > HTML > #document givenAction:WebViewInsertActionPasted >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: shouldChangeSelectedDOMRange:range from 5 of #text > DIV > DIV > BODY > HTML > #document to 45 of #text > DIV > DIV > BODY > HTML > #document toDOMRange:range from 11 of #text > DIV > DIV > BODY > HTML > #document to 11 of #text > DIV > DIV > BODY > HTML > #document affinity:NSSelectionAffinityDownstream stillSelecting:FALSE >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChange:WebViewDidChangeNotification >+EDITING DELEGATE: shouldInsertNode:#document-fragment replacingDOMRange:range from 11 of #text > DIV > DIV > BODY > HTML > #document to 11 of #text > DIV > DIV > BODY > HTML > #document givenAction:WebViewInsertActionPasted >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: shouldChangeSelectedDOMRange:range from 44 of #text > DIV > DIV > BODY > HTML > #document to 44 of #text > DIV > DIV > BODY > HTML > #document toDOMRange:range from 11 of #text > DIV > DIV > BODY > HTML > #document to 11 of #text > DIV > DIV > BODY > HTML > #document affinity:NSSelectionAffinityDownstream stillSelecting:FALSE >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChange:WebViewDidChangeNotification >+This tests copy and pastes "is a tide in the affairs of men,\nWhich taken" twice. >+ >+There is a tide in the affairs of men, >+Which taken is a tide in the affairs of men, >+Which taken at the flood leads on to fortune. >+Omitted, all the voyage of their life, >+Is bound in shallows and in miseries. >+execCopyCommand: <div id="test" class="editing">There is a tide in the affairs of men,</div> <div class="editing">Which taken at the flood leads on to fortune.</div> <div class="editing">Omitted, all the voyage of their life,</div> <div class="editing">Is bound in shallows and in miseries.</div> >+execPasteCommand: <div id="test" class="editing">There is a tide in the affairs of men,</div><div class="editing">Which taken at the flood leads on to fortune.</div> <div class="editing">Omitted, all the voyage of their life,</div> <div class="editing">Is bound in shallows and in miseries.</div> >+execPasteCommand: <div id="test" class="editing">There is a tide in the affairs of men,</div><div class="editing">Which taken is a tide in the affairs of men,</div><div class="editing">Which taken at the flood leads on to fortune.</div> <div class="editing">Omitted, all the voyage of their life,</div> <div class="editing">Is bound in shallows and in miseries.</div> >diff --git a/LayoutTests/platform/ios/editing/pasteboard/paste-text-003-expected.txt b/LayoutTests/platform/ios/editing/pasteboard/paste-text-003-expected.txt >new file mode 100644 >index 0000000000000000000000000000000000000000..4abe390670528a43ea281e12efd1ed37dfc0dce0 >--- /dev/null >+++ b/LayoutTests/platform/ios/editing/pasteboard/paste-text-003-expected.txt >@@ -0,0 +1,117 @@ >+EDITING DELEGATE: shouldBeginEditingInDOMRange:range from 0 of DIV > BODY > HTML > #document to 3 of DIV > BODY > HTML > #document >+EDITING DELEGATE: webViewDidBeginEditing:WebViewDidBeginEditingNotification >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: shouldInsertNode:#document-fragment replacingDOMRange:range from 6 of #text > DIV > DIV > BODY > HTML > #document to 7 of #text > DIV > DIV > DIV > DIV > BODY > HTML > #document givenAction:WebViewInsertActionPasted >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: shouldChangeSelectedDOMRange:range from 5 of #text > DIV > DIV > BODY > HTML > #document to 38 of #text > DIV > DIV > DIV > DIV > BODY > HTML > #document toDOMRange:range from 7 of #text > DIV > DIV > DIV > DIV > BODY > HTML > #document to 7 of #text > DIV > DIV > DIV > DIV > BODY > HTML > #document affinity:NSSelectionAffinityDownstream stillSelecting:FALSE >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChange:WebViewDidChangeNotification >+EDITING DELEGATE: shouldInsertNode:#document-fragment replacingDOMRange:range from 7 of #text > DIV > DIV > DIV > DIV > BODY > HTML > #document to 7 of #text > DIV > DIV > DIV > DIV > BODY > HTML > #document givenAction:WebViewInsertActionPasted >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: shouldChangeSelectedDOMRange:range from 40 of #text > DIV > DIV > DIV > DIV > BODY > HTML > #document to 40 of #text > DIV > DIV > DIV > DIV > BODY > HTML > #document toDOMRange:range from 7 of #text > DIV > DIV > DIV > DIV > BODY > HTML > #document to 7 of #text > DIV > DIV > DIV > DIV > BODY > HTML > #document affinity:NSSelectionAffinityDownstream stillSelecting:FALSE >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChange:WebViewDidChangeNotification >+This test copies and pastes "is a tide in the affairs of men,\nWhich taken at the flood leads on to fortune.\nOmitted" twice. >+ >+There is a tide in the affairs of men, >+Which taken at the flood leads on to fortune. >+Omitted is a tide in the affairs of men, >+Which taken at the flood leads on to fortune. >+Omitted, all the voyage of their life, >+Is bound in shallows and in miseries. >+execCopyCommand: <div id="test" class="editing">There is a tide in the affairs of men, <div class="editing">Which taken at the flood leads on to fortune. <div class="editing">Omitted, all the voyage of their life, <div class="editing">Is bound in shallows and in miseries. </div> </div> </div> </div> >+execPasteCommand: <div id="test" class="editing">There is a tide in the affairs of men,<div class="editing">Which taken at the flood leads on to fortune.</div><div class="editing"><div class="editing">Omitted, all the voyage of their life, <div class="editing">Is bound in shallows and in miseries. </div> </div> </div> </div> >+execPasteCommand: <div id="test" class="editing">There is a tide in the affairs of men,<div class="editing">Which taken at the flood leads on to fortune.</div><div class="editing"><div class="editing">Omitted is a tide in the affairs of men,</div><div class="editing">Which taken at the flood leads on to fortune.</div><div class="editing">Omitted, all the voyage of their life, <div class="editing">Is bound in shallows and in miseries. </div> </div> </div> </div> >diff --git a/LayoutTests/platform/ios/editing/pasteboard/paste-text-010-expected.txt b/LayoutTests/platform/ios/editing/pasteboard/paste-text-010-expected.txt >new file mode 100644 >index 0000000000000000000000000000000000000000..9f902ada163cb5f95af09fac614ab1cf9fc238c3 >--- /dev/null >+++ b/LayoutTests/platform/ios/editing/pasteboard/paste-text-010-expected.txt >@@ -0,0 +1,13 @@ >+There was a bug when pasting at the end of the block. The content was inserted at the start >+the block instead of the end. This tests the insert-at-end case. >+| " >+" >+| <div> >+| class="editing" >+| id="test" >+| "There is a tide in the affairs of men." >+| <br> >+| <br> >+| "of men. of men.<#selection-caret>" >+| " >+" >diff --git a/LayoutTests/platform/ios/editing/pasteboard/paste-text-at-tabspan-001-expected.txt b/LayoutTests/platform/ios/editing/pasteboard/paste-text-at-tabspan-001-expected.txt >new file mode 100644 >index 0000000000000000000000000000000000000000..df21d4731539cd4aec8a2bf5557ce3dc7a51bb7c >--- /dev/null >+++ b/LayoutTests/platform/ios/editing/pasteboard/paste-text-at-tabspan-001-expected.txt >@@ -0,0 +1,24 @@ >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: shouldInsertNode:#document-fragment replacingDOMRange:range from 1 of #text > SPAN > DIV > BODY > HTML > #document to 1 of #text > SPAN > DIV > BODY > HTML > #document givenAction:WebViewInsertActionPasted >+EDITING DELEGATE: shouldChangeSelectedDOMRange:range from 1 of #text > SPAN > DIV > BODY > HTML > #document to 1 of #text > SPAN > DIV > BODY > HTML > #document toDOMRange:range from 3 of #text > SPAN > DIV > BODY > HTML > #document to 3 of #text > SPAN > DIV > BODY > HTML > #document affinity:NSSelectionAffinityDownstream stillSelecting:FALSE >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChange:WebViewDidChangeNotification >+EDITING DELEGATE: shouldChangeSelectedDOMRange:range from 3 of #text > SPAN > DIV > BODY > HTML > #document to 3 of #text > SPAN > DIV > BODY > HTML > #document toDOMRange:range from 4 of #text > SPAN > DIV > BODY > HTML > #document to 4 of #text > SPAN > DIV > BODY > HTML > #document affinity:NSSelectionAffinityDownstream stillSelecting:FALSE >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChange:WebViewDidChangeNotification >+EDITING DELEGATE: webViewDidEndEditing:WebViewDidEndEditingNotification >+ >+You should see aax\tz below: >+| " >+" >+| <span> >+| id="test" >+| "a ax<#selection-caret>" >+| <span> >+| class="Apple-tab-span" >+| style="white-space:pre" >+| " " >+| "z" >+| " >+" >diff --git a/LayoutTests/platform/ios/editing/pasteboard/smart-paste-001-expected.txt b/LayoutTests/platform/ios/editing/pasteboard/smart-paste-001-expected.txt >new file mode 100644 >index 0000000000000000000000000000000000000000..4355430d21eb42ef1c3a2f9f7c34c8ddd6e1bfb7 >--- /dev/null >+++ b/LayoutTests/platform/ios/editing/pasteboard/smart-paste-001-expected.txt >@@ -0,0 +1,19 @@ >+EDITING DELEGATE: shouldBeginEditingInDOMRange:range from 0 of DIV > BODY > HTML > #document to 3 of DIV > BODY > HTML > #document >+EDITING DELEGATE: webViewDidBeginEditing:WebViewDidBeginEditingNotification >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: shouldChangeSelectedDOMRange:range from 0 of DIV > DIV > BODY > HTML > #document to 0 of DIV > DIV > BODY > HTML > #document toDOMRange:range from 0 of DIV > DIV > BODY > HTML > #document to 0 of DIV > DIV > BODY > HTML > #document affinity:NSSelectionAffinityDownstream stillSelecting:FALSE >+EDITING DELEGATE: shouldChangeSelectedDOMRange:range from 0 of DIV > DIV > BODY > HTML > #document to 0 of DIV > DIV > BODY > HTML > #document toDOMRange:range from 1 of #text > DIV > DIV > BODY > HTML > #document to 5 of #text > DIV > DIV > BODY > HTML > #document affinity:NSSelectionAffinityDownstream stillSelecting:FALSE >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: shouldInsertNode:#document-fragment replacingDOMRange:range from 5 of #text > DIV > DIV > BODY > HTML > #document to 5 of #text > DIV > DIV > BODY > HTML > #document givenAction:WebViewInsertActionPasted >+EDITING DELEGATE: shouldChangeSelectedDOMRange:range from 5 of #text > DIV > DIV > BODY > HTML > #document to 5 of #text > DIV > DIV > BODY > HTML > #document toDOMRange:range from 10 of #text > DIV > DIV > BODY > HTML > #document to 10 of #text > DIV > DIV > BODY > HTML > #document affinity:NSSelectionAffinityDownstream stillSelecting:FALSE >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChange:WebViewDidChangeNotification >+Tests: >+Smart paste when pasting after a word at the end of a line. >+Expected Results: >+A space should be added between the preexisting word and the word that's pasted. It should like this: >+test test >+test test >+execCopyCommand: <div id="test" class="editing"> test </div> >+execPasteCommand: <div id="test" class="editing"> test test</div> >diff --git a/LayoutTests/platform/ios/editing/pasteboard/smart-paste-002-expected.txt b/LayoutTests/platform/ios/editing/pasteboard/smart-paste-002-expected.txt >new file mode 100644 >index 0000000000000000000000000000000000000000..5fecd89ddf54dd7cb6489e219c1d68036eadb13c >--- /dev/null >+++ b/LayoutTests/platform/ios/editing/pasteboard/smart-paste-002-expected.txt >@@ -0,0 +1,20 @@ >+EDITING DELEGATE: shouldBeginEditingInDOMRange:range from 0 of DIV > BODY > HTML > #document to 3 of DIV > BODY > HTML > #document >+EDITING DELEGATE: webViewDidBeginEditing:WebViewDidBeginEditingNotification >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: shouldChangeSelectedDOMRange:range from 0 of DIV > DIV > BODY > HTML > #document to 0 of DIV > DIV > BODY > HTML > #document toDOMRange:range from 0 of DIV > DIV > BODY > HTML > #document to 0 of DIV > DIV > BODY > HTML > #document affinity:NSSelectionAffinityDownstream stillSelecting:FALSE >+EDITING DELEGATE: shouldChangeSelectedDOMRange:range from 0 of DIV > DIV > BODY > HTML > #document to 0 of DIV > DIV > BODY > HTML > #document toDOMRange:range from 1 of #text > DIV > DIV > BODY > HTML > #document to 5 of #text > DIV > DIV > BODY > HTML > #document affinity:NSSelectionAffinityDownstream stillSelecting:FALSE >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: shouldInsertNode:#document-fragment replacingDOMRange:range from 0 of DIV > DIV > BODY > HTML > #document to 0 of DIV > DIV > BODY > HTML > #document givenAction:WebViewInsertActionPasted >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: shouldChangeSelectedDOMRange:range from 9 of #text > DIV > DIV > BODY > HTML > #document to 9 of #text > DIV > DIV > BODY > HTML > #document toDOMRange:range from 5 of #text > DIV > DIV > BODY > HTML > #document to 5 of #text > DIV > DIV > BODY > HTML > #document affinity:NSSelectionAffinityDownstream stillSelecting:FALSE >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChange:WebViewDidChangeNotification >+Tests: >+Smart paste when pasting at the beginning of a line before a word. >+Expected Results: >+A space should be added after the pasted word before the preexising word. It should like this: >+test test >+test test >+execCopyCommand: <div id="test" class="editing"> test </div> >+execPasteCommand: <div id="test" class="editing">test test </div> >diff --git a/LayoutTests/platform/ios/editing/pasteboard/smart-paste-003-expected.txt b/LayoutTests/platform/ios/editing/pasteboard/smart-paste-003-expected.txt >new file mode 100644 >index 0000000000000000000000000000000000000000..b137fddf50d266e25a62a834c0a762cc5530fbe2 >--- /dev/null >+++ b/LayoutTests/platform/ios/editing/pasteboard/smart-paste-003-expected.txt >@@ -0,0 +1,20 @@ >+EDITING DELEGATE: shouldBeginEditingInDOMRange:range from 0 of DIV > BODY > HTML > #document to 3 of DIV > BODY > HTML > #document >+EDITING DELEGATE: webViewDidBeginEditing:WebViewDidBeginEditingNotification >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: shouldChangeSelectedDOMRange:range from 0 of DIV > DIV > BODY > HTML > #document to 0 of DIV > DIV > BODY > HTML > #document toDOMRange:range from 0 of DIV > DIV > BODY > HTML > #document to 0 of DIV > DIV > BODY > HTML > #document affinity:NSSelectionAffinityDownstream stillSelecting:FALSE >+EDITING DELEGATE: shouldChangeSelectedDOMRange:range from 0 of DIV > DIV > BODY > HTML > #document to 0 of DIV > DIV > BODY > HTML > #document toDOMRange:range from 1 of #text > DIV > DIV > BODY > HTML > #document to 5 of #text > DIV > DIV > BODY > HTML > #document affinity:NSSelectionAffinityDownstream stillSelecting:FALSE >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: shouldInsertNode:#document-fragment replacingDOMRange:range from 5 of #text > DIV > DIV > BODY > HTML > #document to 5 of #text > DIV > DIV > BODY > HTML > #document givenAction:WebViewInsertActionPasted >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: shouldChangeSelectedDOMRange:range from 15 of #text > DIV > DIV > BODY > HTML > #document to 15 of #text > DIV > DIV > BODY > HTML > #document toDOMRange:range from 10 of #text > DIV > DIV > BODY > HTML > #document to 10 of #text > DIV > DIV > BODY > HTML > #document affinity:NSSelectionAffinityDownstream stillSelecting:FALSE >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChange:WebViewDidChangeNotification >+Tests: >+Smart paste when pasting after a word and before a space and another word. >+Expected Results: >+A space should be added between the preexisting word and the word that's pasted. No space should be added after the pasted word. It should like this: >+test test test >+test test test >+execCopyCommand: <div id="test" class="editing"> test test </div> >+execPasteCommand: <div id="test" class="editing"> test test test</div> >diff --git a/LayoutTests/platform/ios/editing/pasteboard/smart-paste-003-trailing-whitespace-expected.txt b/LayoutTests/platform/ios/editing/pasteboard/smart-paste-003-trailing-whitespace-expected.txt >new file mode 100644 >index 0000000000000000000000000000000000000000..d825c0929368d941d47cc0df0145db20a78124f5 >--- /dev/null >+++ b/LayoutTests/platform/ios/editing/pasteboard/smart-paste-003-trailing-whitespace-expected.txt >@@ -0,0 +1,12 @@ >+Smart paste when pasting a word with trailing whitespace after a word and a space before another word. >+ >+To run this test manually, select "hello " (including trailing space), copy, and paste. >+ >+Expected result >+ >+A space should be added between the preexisting word and the word that's pasted. No space should be added after the pasted word: hello hello world >+ >+Actual result >+ >+execCopyCommand: <div id="test" class="editing" style="font-size: 24px;"> hello world </div> >+execPasteCommand: <div id="test" class="editing" style="font-size: 24px;"> hello hello world</div> >diff --git a/LayoutTests/platform/ios/editing/pasteboard/smart-paste-004-expected.txt b/LayoutTests/platform/ios/editing/pasteboard/smart-paste-004-expected.txt >new file mode 100644 >index 0000000000000000000000000000000000000000..282c3625315c972c106b7c5b1b6b0704bdaaa01e >--- /dev/null >+++ b/LayoutTests/platform/ios/editing/pasteboard/smart-paste-004-expected.txt >@@ -0,0 +1,22 @@ >+EDITING DELEGATE: shouldBeginEditingInDOMRange:range from 0 of DIV > BODY > HTML > #document to 3 of DIV > BODY > HTML > #document >+EDITING DELEGATE: webViewDidBeginEditing:WebViewDidBeginEditingNotification >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: shouldChangeSelectedDOMRange:range from 0 of DIV > DIV > BODY > HTML > #document to 0 of DIV > DIV > BODY > HTML > #document toDOMRange:range from 0 of DIV > DIV > BODY > HTML > #document to 0 of DIV > DIV > BODY > HTML > #document affinity:NSSelectionAffinityDownstream stillSelecting:FALSE >+EDITING DELEGATE: shouldChangeSelectedDOMRange:range from 0 of DIV > DIV > BODY > HTML > #document to 0 of DIV > DIV > BODY > HTML > #document toDOMRange:range from 1 of #text > DIV > DIV > BODY > HTML > #document to 5 of #text > DIV > DIV > BODY > HTML > #document affinity:NSSelectionAffinityDownstream stillSelecting:FALSE >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: shouldInsertNode:#document-fragment replacingDOMRange:range from 6 of #text > DIV > DIV > BODY > HTML > #document to 6 of #text > DIV > DIV > BODY > HTML > #document givenAction:WebViewInsertActionPasted >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: shouldChangeSelectedDOMRange:range from 15 of #text > DIV > DIV > BODY > HTML > #document to 15 of #text > DIV > DIV > BODY > HTML > #document toDOMRange:range from 11 of #text > DIV > DIV > BODY > HTML > #document to 11 of #text > DIV > DIV > BODY > HTML > #document affinity:NSSelectionAffinityDownstream stillSelecting:FALSE >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChange:WebViewDidChangeNotification >+Tests: >+Smart paste when pasting after word and a space before another word. >+Expected Results: >+A space should be added after the pasted word before the other preexisting word. It should like this: >+test test test >+test test test >+execCopyCommand: <div id="test" class="editing"> test test </div> >+execPasteCommand: <div id="test" class="editing"> test test test</div> >diff --git a/LayoutTests/platform/ios/editing/pasteboard/smart-paste-005-expected.txt b/LayoutTests/platform/ios/editing/pasteboard/smart-paste-005-expected.txt >new file mode 100644 >index 0000000000000000000000000000000000000000..e4f6f583be9290a6a36c536cd7c5eeae1ea7e192 >--- /dev/null >+++ b/LayoutTests/platform/ios/editing/pasteboard/smart-paste-005-expected.txt >@@ -0,0 +1,22 @@ >+EDITING DELEGATE: shouldBeginEditingInDOMRange:range from 0 of DIV > BODY > HTML > #document to 3 of DIV > BODY > HTML > #document >+EDITING DELEGATE: webViewDidBeginEditing:WebViewDidBeginEditingNotification >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: shouldChangeSelectedDOMRange:range from 0 of DIV > DIV > BODY > HTML > #document to 0 of DIV > DIV > BODY > HTML > #document toDOMRange:range from 0 of DIV > DIV > BODY > HTML > #document to 0 of DIV > DIV > BODY > HTML > #document affinity:NSSelectionAffinityDownstream stillSelecting:FALSE >+EDITING DELEGATE: shouldChangeSelectedDOMRange:range from 0 of DIV > DIV > BODY > HTML > #document to 0 of DIV > DIV > BODY > HTML > #document toDOMRange:range from 1 of #text > DIV > DIV > BODY > HTML > #document to 5 of #text > DIV > DIV > BODY > HTML > #document affinity:NSSelectionAffinityDownstream stillSelecting:FALSE >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: shouldInsertNode:#document-fragment replacingDOMRange:range from 3 of #text > DIV > DIV > BODY > HTML > #document to 3 of #text > DIV > DIV > BODY > HTML > #document givenAction:WebViewInsertActionPasted >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: shouldChangeSelectedDOMRange:range from 11 of #text > DIV > DIV > BODY > HTML > #document to 11 of #text > DIV > DIV > BODY > HTML > #document toDOMRange:range from 9 of #text > DIV > DIV > BODY > HTML > #document to 9 of #text > DIV > DIV > BODY > HTML > #document affinity:NSSelectionAffinityDownstream stillSelecting:FALSE >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChange:WebViewDidChangeNotification >+Tests: >+Smart paste when pasting in the middle of a word. >+Expected Results: >+Spaces should be added before and after the pasted word. It should look like this: >+te test st >+te test st >+execCopyCommand: <div id="test" class="editing"> test </div> >+execPasteCommand: <div id="test" class="editing"> te test st</div> >diff --git a/LayoutTests/platform/ios/editing/pasteboard/smart-paste-006-expected.txt b/LayoutTests/platform/ios/editing/pasteboard/smart-paste-006-expected.txt >new file mode 100644 >index 0000000000000000000000000000000000000000..e05ea3792d24aca77fd336310e50172665b33574 >--- /dev/null >+++ b/LayoutTests/platform/ios/editing/pasteboard/smart-paste-006-expected.txt >@@ -0,0 +1,33 @@ >+EDITING DELEGATE: shouldBeginEditingInDOMRange:range from 0 of DIV > BODY > HTML > #document to 3 of DIV > BODY > HTML > #document >+EDITING DELEGATE: webViewDidBeginEditing:WebViewDidBeginEditingNotification >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: shouldChangeSelectedDOMRange:range from 0 of DIV > DIV > BODY > HTML > #document to 0 of DIV > DIV > BODY > HTML > #document toDOMRange:range from 0 of DIV > DIV > BODY > HTML > #document to 0 of DIV > DIV > BODY > HTML > #document affinity:NSSelectionAffinityDownstream stillSelecting:FALSE >+EDITING DELEGATE: shouldChangeSelectedDOMRange:range from 0 of DIV > DIV > BODY > HTML > #document to 0 of DIV > DIV > BODY > HTML > #document toDOMRange:range from 1 of #text > DIV > DIV > BODY > HTML > #document to 5 of #text > DIV > DIV > BODY > HTML > #document affinity:NSSelectionAffinityDownstream stillSelecting:FALSE >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: shouldDeleteDOMRange:range from 1 of #text > DIV > DIV > BODY > HTML > #document to 5 of #text > DIV > DIV > BODY > HTML > #document >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: shouldChangeSelectedDOMRange:range from 0 of DIV > DIV > BODY > HTML > #document to 0 of DIV > DIV > BODY > HTML > #document toDOMRange:range from 0 of DIV > DIV > BODY > HTML > #document to 0 of DIV > DIV > BODY > HTML > #document affinity:NSSelectionAffinityDownstream stillSelecting:FALSE >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChange:WebViewDidChangeNotification >+EDITING DELEGATE: shouldChangeSelectedDOMRange:range from 1 of #text > DIV > DIV > BODY > HTML > #document to 1 of #text > DIV > DIV > BODY > HTML > #document toDOMRange:range from 1 of #text > DIV > DIV > BODY > HTML > #document to 1 of #text > DIV > DIV > BODY > HTML > #document affinity:NSSelectionAffinityDownstream stillSelecting:FALSE >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChange:WebViewDidChangeNotification >+EDITING DELEGATE: shouldChangeSelectedDOMRange:range from 1 of #text > DIV > DIV > BODY > HTML > #document to 1 of #text > DIV > DIV > BODY > HTML > #document toDOMRange:range from 2 of #text > DIV > DIV > BODY > HTML > #document to 2 of #text > DIV > DIV > BODY > HTML > #document affinity:NSSelectionAffinityDownstream stillSelecting:FALSE >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChange:WebViewDidChangeNotification >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: shouldInsertNode:#document-fragment replacingDOMRange:range from 1 of #text > DIV > DIV > BODY > HTML > #document to 1 of #text > DIV > DIV > BODY > HTML > #document givenAction:WebViewInsertActionPasted >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: shouldChangeSelectedDOMRange:range from 6 of #text > DIV > DIV > BODY > HTML > #document to 6 of #text > DIV > DIV > BODY > HTML > #document toDOMRange:range from 5 of #text > DIV > DIV > BODY > HTML > #document to 5 of #text > DIV > DIV > BODY > HTML > #document affinity:NSSelectionAffinityDownstream stillSelecting:FALSE >+EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification >+EDITING DELEGATE: webViewDidChange:WebViewDidChangeNotification >+Tests: >+Smart paste when pasting between smart paste exempt characters. >+Expected Results: >+No spaces should be added before or after the pasted word. It should look like this: >+-test- >+-test- >+execCutCommand: <div id="test" class="editing"><br></div> >+execTypeCharacterCommand: <div id="test" class="editing">-</div> >+execTypeCharacterCommand: <div id="test" class="editing">--</div> >+execPasteCommand: <div id="test" class="editing">-test-</div>
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Formatted Diff
|
Diff
Attachments on
bug 193786
:
360133
|
360143
|
360145
|
360187
|
360197
|
360201
|
360211
|
360214
|
360215
|
360218
|
360369
|
360371
|
360377
|
360379
|
360453
|
360817
|
360822
|
360916
|
360937
|
360943
|
360958
|
360999
|
361000