Bug 47548

Summary: [Qt] editing/input/emacs-ctrl-o.html
Product: WebKit Reporter: Robert Hogan <robert>
Component: Tools / TestsAssignee: Nobody <webkit-unassigned>
Status: RESOLVED FIXED    
Severity: Normal CC: commit-queue
Priority: P2    
Version: 528+ (Nightly build)   
Hardware: PC   
OS: OS X 10.5   
Attachments:
Description Flags
Patch none

Description Robert Hogan 2010-10-12 11:47:01 PDT
Qt is missing a couple of editing delegate messages from the Mac expected results:

EDITING DELEGATE: shouldChangeSelectedDOMRange:range from 0 of DIV > DIV > BODY > HTML > #document to 0 of 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

Qt is missing these because ctrl-o is bound to a sequence of commands on Mac, namely: insertParagraphSeparator then moveUp. In the DRT, we just interepret ctrl-o in EventSenderQt as '\n', i.e. insertParagraphSeparator. As a result we only issue one command, so don't generate the change in caret position that results in the above editing delegate messages.

Since we are only passing an insertParagraphSeparator to mimic other DRTs and Qt clients are free to re-implement whatever key binding they like to perform whatever editing actions they like there is no point in bending over backwards to get DRT, or even EditorClientQt to mimic Mac here by repositioning the caret. So just add our own expected results and unskip.
Comment 1 Robert Hogan 2010-10-12 12:38:22 PDT
Created attachment 70556 [details]
Patch
Comment 2 WebKit Commit Bot 2010-10-12 13:46:28 PDT
Comment on attachment 70556 [details]
Patch

Clearing flags on attachment: 70556

Committed r69597: <http://trac.webkit.org/changeset/69597>
Comment 3 WebKit Commit Bot 2010-10-12 13:46:34 PDT
All reviewed patches have been landed.  Closing bug.