Index: trunk/Cocoa/Pester/Source/English.lproj/Preferences.nib/classes.nib
===================================================================
--- trunk/Cocoa/Pester/Source/English.lproj/Preferences.nib/classes.nib	(revision 571)
+++ trunk/Cocoa/Pester/Source/English.lproj/Preferences.nib/classes.nib	(revision 572)
@@ -20,4 +20,10 @@
 		<dict>
 			<key>CLASS</key>
+			<string>NSObject</string>
+			<key>LANGUAGE</key>
+			<string>ObjC</string>
+		</dict>
+		<dict>
+			<key>CLASS</key>
 			<string>FirstResponder</string>
 			<key>LANGUAGE</key>
@@ -25,10 +31,4 @@
 			<key>SUPERCLASS</key>
 			<string>NSObject</string>
-		</dict>
-		<dict>
-			<key>CLASS</key>
-			<string>NSObject</string>
-			<key>LANGUAGE</key>
-			<string>ObjC</string>
 		</dict>
 		<dict>
@@ -50,4 +50,12 @@
 			<string>NSWindowController</string>
 		</dict>
+		<dict>
+			<key>CLASS</key>
+			<string>NSWindow</string>
+			<key>LANGUAGE</key>
+			<string>ObjC</string>
+			<key>SUPERCLASS</key>
+			<string>NSResponder</string>
+		</dict>
 	</array>
 	<key>IBVersion</key>
Index: trunk/Cocoa/Pester/Source/English.lproj/Preferences.nib/info.nib
===================================================================
--- trunk/Cocoa/Pester/Source/English.lproj/Preferences.nib/info.nib	(revision 571)
+++ trunk/Cocoa/Pester/Source/English.lproj/Preferences.nib/info.nib	(revision 572)
@@ -4,7 +4,7 @@
 <dict>
 	<key>IBFramework Version</key>
-	<string>629</string>
+	<string>677</string>
 	<key>IBLastKnownRelativeProjectPath</key>
-	<string>../../Pester.xcodeproj</string>
+	<string>../Pester.xcodeproj</string>
 	<key>IBOldestOS</key>
 	<integer>5</integer>
@@ -14,5 +14,5 @@
 	</array>
 	<key>IBSystem Version</key>
-	<string>9B18</string>
+	<string>9J61</string>
 	<key>targetFramework</key>
 	<string>IBCocoaFramework</string>
Index: trunk/Cocoa/Pester/Source/NJRHotKeyField.m
===================================================================
--- trunk/Cocoa/Pester/Source/NJRHotKeyField.m	(revision 571)
+++ trunk/Cocoa/Pester/Source/NJRHotKeyField.m	(revision 572)
@@ -111,4 +111,10 @@
 }
 
+- (void)textDidEndEditing:(NSNotification *)notification;
+{
+    [self showKeyEquivalentAttributedStringFinalized: YES];
+    [super textDidEndEditing: notification];
+}
+
 #pragma mark event handling
 
@@ -125,5 +131,8 @@
         id delegate = [self delegate];
         NSString *message = nil;
-        if (delegate != nil && ![delegate hotKeyField: self shouldAcceptCharacter: [characters characterAtIndex: 0] modifierFlags: modifierFlags rejectionMessage: &message]) {
+	unichar character = [characters characterAtIndex: 0];
+	if (character == NSTabCharacter || character == NSBackTabCharacter)
+	    return;
+        if (delegate != nil && ![delegate hotKeyField: self shouldAcceptCharacter: character modifierFlags: modifierFlags rejectionMessage: &message]) {
             [self showStatus: message != nil ? message : @"key is unavailable for use"];
         } else {
@@ -137,5 +146,6 @@
 - (BOOL)performKeyEquivalent:(NSEvent *)theEvent;
 {
-    [self keyUp: theEvent];
+    if ([[self window] firstResponder] == self)
+	[self keyUp: theEvent];
     return [super performKeyEquivalent: theEvent];
 }
Index: trunk/Cocoa/Pester/Source/PSPreferencesController.m
===================================================================
--- trunk/Cocoa/Pester/Source/PSPreferencesController.m	(revision 571)
+++ trunk/Cocoa/Pester/Source/PSPreferencesController.m	(revision 572)
@@ -83,5 +83,5 @@
         [set formUnionWithCharacterSet: [NSCharacterSet whitespaceAndNewlineCharacterSet]];
         [set formUnionWithCharacterSet: [NSCharacterSet punctuationCharacterSet]];
-        [set addCharactersInString: @"\t\r\e\x7f\x03\x19"]; // tab, CR, escape, delete, enter, backtab
+        [set addCharactersInString: @"\r\e\x7f\x03"]; // CR, escape, delete, enter
         [set addCharactersInRange: NSMakeRange(0xF700, 0x1FF)]; // reserved function key range
         [set removeCharactersInRange: NSMakeRange(NSF1FunctionKey, 15)]; // F1-F15
