@@ -57,22 +57,31 @@ - (void)setupSearch {
57
57
}
58
58
59
59
- (void )resetSearch {
60
- [self .searchTextField setStringValue: @" " ];
61
- [self .repository updateFilePattern: nil ];
62
- self.searchTextField .nextKeyView = self.messageTextView ;
63
- self.searchTextField .nextResponder = self.messageTextView ;
60
+ self.searchTextField .stringValue = @" " ;
61
+ [self onSearchTextDidChange: self .searchTextField.stringValue];
62
+ }
63
+
64
+ - (void )onSearchTextDidChange : (NSString *)text {
65
+ BOOL isSearchDisabled = [@" " isEqualToString: text];
66
+ if (isSearchDisabled) {
67
+ [self .repository updateFilePattern: nil ];
68
+ self.commitButton .toolTip = nil ;
69
+ }
70
+ else {
71
+ [self .repository updateFilePattern: text];
72
+ self.commitButton .toolTip = NSLocalizedString(@" Search in progress" , nil );
73
+ }
74
+ [self _updateCommitButton ];
75
+ }
76
+
77
+ - (BOOL )searchInProgress {
78
+ return self.repository .filePattern != nil ;
64
79
}
65
80
66
81
#pragma mark - NSControlTextEditingDelegate
67
82
- (void )controlTextDidChange : (NSNotification *)obj {
68
83
if (obj.object == self.searchTextField ) {
69
- NSString *text = self.searchTextField .stringValue ;
70
- if ([@" " isEqualToString: text]) {
71
- [self .repository updateFilePattern: nil ];
72
- }
73
- else {
74
- [self .repository updateFilePattern: text];
75
- }
84
+ [self onSearchTextDidChange: self .searchTextField.stringValue];
76
85
}
77
86
}
78
87
@@ -147,7 +156,18 @@ - (void)repositoryStatusDidUpdate {
147
156
}
148
157
149
158
- (void )_updateCommitButton {
150
- _commitButton.enabled = _indexStatus.modified || (self.repository .state == kGCRepositoryState_Merge ) || self.amendButton .state ; // Creating an empty commit is OK for a merge or when amending
159
+ _commitButton.enabled =
160
+ _indexStatus.modified
161
+ || (self.repository .state == kGCRepositoryState_Merge )
162
+ || self.amendButton .state ; // Creating an empty commit is OK for a merge or when amending
163
+ _commitButton.enabled = _commitButton.enabled && !self.searchInProgress ;
164
+
165
+ if (self.searchInProgress ) {
166
+ _commitButton.toolTip = NSLocalizedString(@" Search in progress" , @" " );
167
+ }
168
+ else {
169
+ _commitButton.toolTip = nil ;
170
+ }
151
171
}
152
172
153
173
- (void )_reloadContents {
0 commit comments