title: FinderSync Extension - requestBadgeIdentifierForURL is never called
body: <p>I have tested the template provided in Xcode for making a FinderSync Extension. Everything works well except two things:</p>
  
  <p>a) The method requestBadgeIdentifierForURL is never called by the system when a folder is monitored so that badges are not set. What is going wrong here? I am right assuming that this method should be called when I e.g. move or scroll a monitored folder in Finder? By the way the methods beginObservingDirectoryAtURL and endObservingDirectoryAtURL are called properly in this context.</p>
  
  <pre><code>#import "FinderSync.h"
  
  @interface FinderSync ()
  
  @property NSURL *myFolderURL;
  
  @end
  
  @implementation FinderSync
  
  - (instancetype)init {
      self = [super init];
  
      NSLog(@"%s launched from %@ ; compiled at %s", __PRETTY_FUNCTION__, [[NSBundle mainBundle] bundlePath], __TIME__);
  
      // Set up the directory we are syncing.
      self.myFolderURL = [NSURL fileURLWithPath:@"/Users/hmaass/Downloads"];
      [FIFinderSyncController defaultController].directoryURLs = [NSSet setWithObject:self.myFolderURL];
  
      // Set up images for our badge identifiers. For demonstration purposes, this uses off-the-shelf images.
      [[FIFinderSyncController defaultController] setBadgeImage:[NSImage imageNamed: NSImageNameColorPanel] label:@"Status One" forBadgeIdentifier:@"One"];
      [[FIFinderSyncController defaultController] setBadgeImage:[NSImage imageNamed: NSImageNameCaution] label:@"Status Two" forBadgeIdentifier:@"Two"];
  
      return self;
  }
  
  #pragma mark - Primary Finder Sync protocol methods
  
  - (void)beginObservingDirectoryAtURL:(NSURL *)url {
      // The user is now seeing the container's contents.
      // If they see it in more than one view at a time, we're only told once.
      NSLog(@"beginObservingDirectoryAtURL:%@", url.filePathURL);
  }
  
  
  - (void)endObservingDirectoryAtURL:(NSURL *)url {
      // The user is no longer seeing the container's contents.
      NSLog(@"endObservingDirectoryAtURL:%@", url.filePathURL);
  }
  
  - (void)requestBadgeIdentifierForURL:(NSURL *)url {
      NSLog(@"requestBadgeIdentifierForURL:%@", url.filePathURL);
  
      // For demonstration purposes, this picks one of our two badges, or no badge at all, based on the filename.
      NSInteger whichBadge = [url.filePathURL hash] % 3;
      NSString* badgeIdentifier = @[@"", @"One", @"Two"][whichBadge];
      [[FIFinderSyncController defaultController] setBadgeIdentifier:badgeIdentifier forURL:url];
  }
  
  #pragma mark - Menu and toolbar item support
  
  - (NSString *)toolbarItemName {
      return @"testfifi";
  }
  
  - (NSString *)toolbarItemToolTip {
      return @"testfifi: Click the toolbar item for a menu.";
  }
  
  - (NSImage *)toolbarItemImage {
      return [NSImage imageNamed:NSImageNameCaution];
  }
  
  - (NSMenu *)menuForMenuKind:(FIMenuKind)whichMenu {
      // Produce a menu for the extension.
      NSMenu *menu = [[NSMenu alloc] initWithTitle:@""];
      [menu addItemWithTitle:@"Example Menu Item" action:@selector(sampleAction:) keyEquivalent:@""];
  
      return menu;
  }
  
  - (IBAction)sampleAction:(id)sender {
      NSURL* target = [[FIFinderSyncController defaultController] targetedURL];
      NSArray* items = [[FIFinderSyncController defaultController] selectedItemURLs];
  
      NSLog(@"sampleAction: menu item: %@, target = %@, items = ", [sender title], [target filePathURL]);
      [items enumerateObjectsUsingBlock: ^(id obj, NSUInteger idx, BOOL *stop) {
          NSLog(@"    %@", [obj filePathURL]);
      }];
  }
  
  @end
  </code></pre>
  
  <p>b) I get the following message in the log console of Xcode when running the template above:</p>
  
  <blockquote>
    <p>2015-08-25 15:33:00.300 testfifi[855:8134] Failed to connect
    (colorGridView) outlet from (NSApplication) to
    (NSColorPickerGridView): missing setter or instance variable
    2015-08-25 15:33:00.300 testfifi[855:8134] Failed to connect (view)
    outlet from (NSApplication) to (NSColorPickerGridView): missing setter
    or instance variable 2015-08-25 15:33:00.321 testfifi[855:8134]
    -[FinderSync init] launched from /Users/hmaass/Library/Developer/Xcode/DerivedData/testtest-egudnxkifjxirpbrjkohnatmjuro/Build/Products/Debug/testtest.app/Contents/PlugIns/testfifi.appex
    ; compiled at 20:38:18</p>
  </blockquote>
  
  <p>Can someone help me to get rid of this message?</p>
  
  <p>Thanks!</p>