diff --git a/AppKit/CPDragServer.j b/AppKit/CPDragServer.j index c2a5066b0..9593316d1 100644 --- a/AppKit/CPDragServer.j +++ b/AppKit/CPDragServer.j @@ -456,8 +456,8 @@ var CPDraggingSource_draggedImage_movedTo_ = 1 << 0, } else if (type === CPKeyDown) { - var keyCode = [anEvent keyCode]; - if (keyCode === CPEscapeKeyCode) + var characters = [anEvent characters]; + if (characters === CPEscapeFunctionKey) { _dragOperation = CPDragOperationNone; [self draggingEndedInPlatformWindow:platformWindow globalLocation:CGPointMakeZero() operation:_dragOperation]; diff --git a/AppKit/CPTextField.j b/AppKit/CPTextField.j index 67d9d3083..c0abc894c 100644 --- a/AppKit/CPTextField.j +++ b/AppKit/CPTextField.j @@ -672,7 +672,9 @@ CPTextFieldStatePlaceholder = CPThemeState("placeholder"); - (void)keyDown:(CPEvent)anEvent { - if ([anEvent keyCode] === CPReturnKeyCode) + var characters = [anEvent characters]; + // Treat \r and \n the same. See issue #710. + if (characters === CPNewlineCharacter || characters === CPCarriageReturnCharacter) { // selectText: has a side effect - it can change first responder of the window // we have to prevent such behaviour inside this method because target should be able to change first responder after receiving action.