message: Autocomplete runs in background to not slow down the app, (mac)
diff: @@ -132,18 +132,12 @@ extern void *ctx;
  return index;
  }
  -- (void)setFilter:(NSString *)filter
  +- (void)findFilter:(NSString *)filter
  {
  - self.textLength = 0;
  @synchronized(self)
  {
  - self.currentFilter = filter;
  - if (filter == nil || filter.length == 0)
  - {
  - self.filteredOrderedKeys = [NSMutableArray arrayWithArray:self.orderedKeys];
  - [self reload];
  - return;
  - }
  + dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{
  + // Code that runs async
  NSMutableArray *filtered = [[NSMutableArray alloc] init];
  for (int i = 0; i < self.orderedKeys.count; i++)
  {
  @@ -187,8 +181,30 @@ extern void *ctx;
  }
  }
  self.filteredOrderedKeys = filtered;
  + dispatch_sync(dispatch_get_main_queue(), ^{
  + // This will be called on the main thread,
  + // when async calls finish
  + [self reload];
  + });
  + });
  }
  +}
  +
  +- (void)setFilter:(NSString *)filter
  +{
  + self.textLength = 0;
  + @synchronized(self)
  + {
  + self.currentFilter = filter;
  + if (filter == nil || filter.length == 0)
  + {
  + self.filteredOrderedKeys = [NSMutableArray arrayWithArray:self.orderedKeys];
  [self reload];
  + return;
  + }
  +
  + [self findFilter:filter];
  + }
  }
  - (NSString *)comboBox:(NSComboBox *)comboBox completedString:(NSString *)partialString
  