From c3c5d6ea77f6cbde7e1cfee3b0445b40857f22ad Mon Sep 17 00:00:00 2001 From: Blair Duncan Date: Tue, 7 Sep 2010 00:34:18 -0400 Subject: [PATCH 1/3] Added undo/redo --- LPMultiLineTextField.j | 3 +++ 1 file changed, 3 insertions(+) diff --git a/LPMultiLineTextField.j b/LPMultiLineTextField.j index b8b53b1..64b6d6f 100644 --- a/LPMultiLineTextField.j +++ b/LPMultiLineTextField.j @@ -184,6 +184,7 @@ var CPTextFieldInputOwner = nil; { if (_stringValue !== [self stringValue]) { + [[[[self window] undoManager] prepareWithInvocationTarget:self] setStringValue:_stringValue]; _stringValue = [self stringValue]; if (!_isEditing) @@ -250,6 +251,8 @@ var CPTextFieldInputOwner = nil; - (void)setStringValue:(CPString)aString { + if(_stringValue != aString) + [[[[self window] undoManager] prepareWithInvocationTarget:self] setStringValue:_stringValue]; _stringValue = aString; [self setNeedsLayout]; } From 579fee03d820b2c2666fb14a15ee96c01628f9ac Mon Sep 17 00:00:00 2001 From: Blair Duncan Date: Tue, 7 Sep 2010 12:43:24 -0400 Subject: [PATCH 2/3] Fixes issue where 2 testField did blur notifications were being sent --- LPMultiLineTextField.j | 7 ------- 1 file changed, 7 deletions(-) diff --git a/LPMultiLineTextField.j b/LPMultiLineTextField.j index 64b6d6f..64e6711 100644 --- a/LPMultiLineTextField.j +++ b/LPMultiLineTextField.j @@ -208,14 +208,7 @@ var CPTextFieldInputOwner = nil; - (BOOL)becomeFirstResponder { _stringValue = [self stringValue]; - [self setThemeState:CPThemeStateEditing]; - - setTimeout(function(){ - [self _DOMTextareaElement].focus(); - CPTextFieldInputOwner = self; - }, 0.0); - [self textDidFocus:[CPNotification notificationWithName:CPTextFieldDidFocusNotification object:self userInfo:nil]]; return YES; From ebae16d590d147c47e4b23f5c0467aca58a2b4d2 Mon Sep 17 00:00:00 2001 From: Blair Duncan Date: Mon, 13 Sep 2010 23:44:36 -0400 Subject: [PATCH 3/3] added undoActionName for autoenabled menu --- LPMultiLineTextField.j | 1 + 1 file changed, 1 insertion(+) diff --git a/LPMultiLineTextField.j b/LPMultiLineTextField.j index 64e6711..74ea007 100644 --- a/LPMultiLineTextField.j +++ b/LPMultiLineTextField.j @@ -185,6 +185,7 @@ var CPTextFieldInputOwner = nil; if (_stringValue !== [self stringValue]) { [[[[self window] undoManager] prepareWithInvocationTarget:self] setStringValue:_stringValue]; + [[[self window] undoManager] setActionName:@"Typing"]; _stringValue = [self stringValue]; if (!_isEditing)