Changeset 187326 in webkit
- Timestamp:
- Jul 24, 2015, 12:54:47 AM (11 years ago)
- Location:
- branches/safari-601.1-branch/Source/WebKit2
- Files:
-
- 2 edited
-
ChangeLog (modified) (1 diff)
-
UIProcess/ios/WKContentViewInteraction.mm (modified) (4 diffs)
Legend:
- Unmodified
- Added
- Removed
-
branches/safari-601.1-branch/Source/WebKit2/ChangeLog
r187325 r187326 1 2015-07-24 Matthew Hanson <matthew_hanson@apple.com> 2 3 Merge r187266. rdar://problem/21910578 4 5 2015-07-23 Dan Bernstein <mitz@apple.com> 6 7 <rdar://problem/21910578> Second pass at [iOS] Keyboard shortcuts that take focus away from the web view end up typing a letter into the newly focused field 8 https://bugs.webkit.org/show_bug.cgi?id=146732 9 10 Reviewed by Darin Adler. 11 12 * UIProcess/ios/WKContentViewInteraction.mm: 13 (-[WKContentView _interpretKeyEvent:isCharEvent:]): Rather than checking if the view is 14 first responder, which it might still be when the Web Content processes invokes this 15 callback, check if we are in editable content before forwarding the event to the keyboard. 16 1 17 2015-07-24 Matthew Hanson <matthew_hanson@apple.com> 2 18 -
branches/safari-601.1-branch/Source/WebKit2/UIProcess/ios/WKContentViewInteraction.mm
r187325 r187326 2640 2640 static const unsigned kWebSpaceKey = 0x20; 2641 2641 2642 if (!self.isFirstResponder) 2643 return NO; 2644 2645 if (!_page->editorState().isContentEditable && event.isTabKey) 2642 BOOL contentEditable = _page->editorState().isContentEditable; 2643 2644 if (!contentEditable && event.isTabKey) 2646 2645 return NO; 2647 2646 … … 2692 2691 case kWebBackspaceKey: 2693 2692 case kWebDeleteKey: 2694 // FIXME: remove deleteFromInput once UIKit adopts deleteFromInputWithFlags 2695 if ([keyboard respondsToSelector:@selector(deleteFromInputWithFlags:)]) 2696 [keyboard deleteFromInputWithFlags:event.keyboardFlags]; 2697 else 2698 [keyboard deleteFromInput]; 2699 return YES; 2693 if (contentEditable) { 2694 // FIXME: remove deleteFromInput once UIKit adopts deleteFromInputWithFlags 2695 if ([keyboard respondsToSelector:@selector(deleteFromInputWithFlags:)]) 2696 [keyboard deleteFromInputWithFlags:event.keyboardFlags]; 2697 else 2698 [keyboard deleteFromInput]; 2699 return YES; 2700 } 2701 break; 2700 2702 2701 2703 case kWebSpaceKey: 2702 if (! _page->editorState().isContentEditable) {2704 if (!contentEditable) { 2703 2705 [_webView _scrollByOffset:FloatPoint(0, shift ? -_page->unobscuredContentRect().height() : _page->unobscuredContentRect().height())]; 2704 2706 return YES; … … 2712 2714 case kWebEnterKey: 2713 2715 case kWebReturnKey: 2714 if ( isCharEvent) {2716 if (contentEditable && isCharEvent) { 2715 2717 // Map \r from HW keyboard to \n to match the behavior of the soft keyboard. 2716 2718 [keyboard addInputString:@"\n" withFlags:0]; … … 2724 2726 2725 2727 default: 2726 if ( isCharEvent) {2728 if (contentEditable && isCharEvent) { 2727 2729 [keyboard addInputString:event.characters withFlags:event.keyboardFlags]; 2728 2730 return YES;
Note:
See TracChangeset
for help on using the changeset viewer.