From 5cbe94ba66fed126c2fd5fe2ff93b00a0de89644 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Stefan=20Wallstro=CC=88m?= Date: Thu, 7 Mar 2013 20:32:57 +0100 Subject: [PATCH] CPTextField: Optimization: Only restore null placeholder when setting null values through binders. --- AppKit/CPTextField.j | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/AppKit/CPTextField.j b/AppKit/CPTextField.j index a3b40c132..90a0b8ba7 100644 --- a/AppKit/CPTextField.j +++ b/AppKit/CPTextField.j @@ -1660,7 +1660,8 @@ var CPTextFieldIsEditableKey = "CPTextFieldIsEditableKey", - (void)setValue:(id)aValue forBinding:(CPString)aBinding { - [_source setPlaceholderString:[self _placeholderForMarker:CPNullMarker]]; + if (!aValue || (aValue.isa && [aValue isMemberOfClass:CPNull])) + [_source setPlaceholderString:[self _placeholderForMarker:CPNullMarker]]; [_source setObjectValue:aValue]; } @@ -1676,7 +1677,8 @@ var CPTextFieldIsEditableKey = "CPTextFieldIsEditableKey", - (void)setValue:(id)aValue forBinding:(CPString)aBinding { - [_source setPlaceholderString:[self _placeholderForMarker:CPNullMarker]]; + if (!aValue || (aValue.isa && [aValue isMemberOfClass:CPNull])) + [_source setPlaceholderString:[self _placeholderForMarker:CPNullMarker]]; [_source setObjectValue:aValue]; }