@implementation EnjoyableApplicationDelegate
- (void)didSwitchApplication:(NSNotification *)note {
- NSRunningApplication *currentApp = note.userInfo[NSWorkspaceApplicationKey];
- [self.mappingsController activateMappingForProcess:currentApp.localizedName];
+ NSRunningApplication *activeApp = note.userInfo[NSWorkspaceApplicationKey];
+ NSString *name = activeApp.localizedName;
+ if (!name)
+ name = activeApp.bundleIdentifier;
+ if (name && ![name isEqualToString:NSRunningApplication.currentApplication.localizedName])
+ [self.mappingsController activateMappingForProcess:name];
}
- (void)applicationDidFinishLaunching:(NSNotification *)notification {
item.state = mapping == self.mappingsController.currentMapping;
[dockMenuBase addItem:item];
}
- [_outputController refreshMappings];
}
- (void)mappingDidChange:(NSNotification *)note {