Changeset 187266 in webkit
- Timestamp:
- Jul 23, 2015, 4:06:44 PM (10 years ago)
- Location:
- trunk/Source/WebKit2
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
TabularUnified trunk/Source/WebKit2/ChangeLog ¶
r187264 r187266 1 2015-07-23 Dan Bernstein <mitz@apple.com> 2 3 <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 4 https://bugs.webkit.org/show_bug.cgi?id=146732 5 6 Reviewed by Darin Adler. 7 8 * UIProcess/ios/WKContentViewInteraction.mm: 9 (-[WKContentView _interpretKeyEvent:isCharEvent:]): Rather than checking if the view is 10 first responder, which it might still be when the Web Content processes invokes this 11 callback, check if we are in editable content before forwarding the event to the keyboard. 12 1 13 2015-07-23 Jer Noble <jer.noble@apple.com> 2 14 -
TabularUnified trunk/Source/WebKit2/UIProcess/ios/WKContentViewInteraction.mm ¶
r187255 r187266 2650 2650 static const unsigned kWebSpaceKey = 0x20; 2651 2651 2652 if (!self.isFirstResponder) 2653 return NO; 2654 2655 if (!_page->editorState().isContentEditable && event.isTabKey) 2652 BOOL contentEditable = _page->editorState().isContentEditable; 2653 2654 if (!contentEditable && event.isTabKey) 2656 2655 return NO; 2657 2656 … … 2702 2701 case kWebBackspaceKey: 2703 2702 case kWebDeleteKey: 2704 // FIXME: remove deleteFromInput once UIKit adopts deleteFromInputWithFlags 2705 if ([keyboard respondsToSelector:@selector(deleteFromInputWithFlags:)]) 2706 [keyboard deleteFromInputWithFlags:event.keyboardFlags]; 2707 else 2708 [keyboard deleteFromInput]; 2709 return YES; 2703 if (contentEditable) { 2704 // FIXME: remove deleteFromInput once UIKit adopts deleteFromInputWithFlags 2705 if ([keyboard respondsToSelector:@selector(deleteFromInputWithFlags:)]) 2706 [keyboard deleteFromInputWithFlags:event.keyboardFlags]; 2707 else 2708 [keyboard deleteFromInput]; 2709 return YES; 2710 } 2711 break; 2710 2712 2711 2713 case kWebSpaceKey: 2712 if (! _page->editorState().isContentEditable) {2714 if (!contentEditable) { 2713 2715 [_webView _scrollByOffset:FloatPoint(0, shift ? -_page->unobscuredContentRect().height() : _page->unobscuredContentRect().height())]; 2714 2716 return YES; … … 2722 2724 case kWebEnterKey: 2723 2725 case kWebReturnKey: 2724 if ( isCharEvent) {2726 if (contentEditable && isCharEvent) { 2725 2727 // Map \r from HW keyboard to \n to match the behavior of the soft keyboard. 2726 2728 [keyboard addInputString:@"\n" withFlags:0]; … … 2734 2736 2735 2737 default: 2736 if ( isCharEvent) {2738 if (contentEditable && isCharEvent) { 2737 2739 [keyboard addInputString:event.characters withFlags:event.keyboardFlags]; 2738 2740 return YES;
Note:
See TracChangeset
for help on using the changeset viewer.