| Index: content/browser/renderer_host/input/web_input_event_builders_mac.mm
|
| diff --git a/content/browser/renderer_host/input/web_input_event_builders_mac.mm b/content/browser/renderer_host/input/web_input_event_builders_mac.mm
|
| index 723b6238ca760bb80833ef100c7fcf69ca46c2bf..1e116e84b939c24efb5f248caebe1e6f07c4f72f 100644
|
| --- a/content/browser/renderer_host/input/web_input_event_builders_mac.mm
|
| +++ b/content/browser/renderer_host/input/web_input_event_builders_mac.mm
|
| @@ -117,34 +117,16 @@
|
| return false;
|
| }
|
|
|
| -inline NSString* FilterSpecialCharacter(NSString* str) {
|
| - if ([str length] != 1)
|
| - return str;
|
| - unichar c = [str characterAtIndex:0];
|
| - NSString* result = str;
|
| - if (c == 0x7F) {
|
| - // Backspace should be 8
|
| - result = @"\x8";
|
| - } else if (c >= 0xF700 && c <= 0xF7FF) {
|
| - // Mac private use characters should be @"\0" (@"" won't work)
|
| - // NSDeleteFunctionKey will also go into here
|
| - // Use the range 0xF700~0xF7FF to match
|
| - // http://www.opensource.apple.com/source/WebCore/WebCore-7601.1.55/platform/mac/KeyEventMac.mm
|
| - result = @"\0";
|
| - }
|
| - return result;
|
| -}
|
| -
|
| inline NSString* TextFromEvent(NSEvent* event) {
|
| if ([event type] == NSFlagsChanged)
|
| return @"";
|
| - return FilterSpecialCharacter([event characters]);
|
| + return [event characters];
|
| }
|
|
|
| inline NSString* UnmodifiedTextFromEvent(NSEvent* event) {
|
| if ([event type] == NSFlagsChanged)
|
| return @"";
|
| - return FilterSpecialCharacter([event charactersIgnoringModifiers]);
|
| + return [event charactersIgnoringModifiers];
|
| }
|
|
|
| NSString* KeyIdentifierForKeyEvent(NSEvent* event) {
|
| @@ -632,6 +614,14 @@
|
| unmodified_str = @"\r";
|
| }
|
|
|
| + // The adjustments below are only needed in backward compatibility mode,
|
| + // but we cannot tell what mode we are in from here.
|
| +
|
| + // Turn 0x7F into 8, because backspace needs to always be 8.
|
| + if ([text_str isEqualToString:@"\x7F"])
|
| + text_str = @"\x8";
|
| + if ([unmodified_str isEqualToString:@"\x7F"])
|
| + unmodified_str = @"\x8";
|
| // Always use 9 for tab -- we don't want to use AppKit's different character
|
| // for shift-tab.
|
| if (result.windowsKeyCode == 9) {
|
|
|