diff options
| -rw-r--r-- | MASShortcutView+UserDefaults.m | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/MASShortcutView+UserDefaults.m b/MASShortcutView+UserDefaults.m index 1b1b8e5..2c4e285 100644 --- a/MASShortcutView+UserDefaults.m +++ b/MASShortcutView+UserDefaults.m @@ -25,6 +25,10 @@ void *kDefaultsObserver = &kDefaultsObserver; - (void)setAssociatedUserDefaultsKey:(NSString *)associatedUserDefaultsKey { + // First, stop observing previous shortcut view + objc_setAssociatedObject(self, kDefaultsObserver, nil, OBJC_ASSOCIATION_RETAIN_NONATOMIC); + + // Next, start observing current shortcut view MASShortcutDefaultsObserver *defaultsObserver = [[MASShortcutDefaultsObserver alloc] initWithShortcutView:self userDefaultsKey:associatedUserDefaultsKey]; objc_setAssociatedObject(self, kDefaultsObserver, defaultsObserver, OBJC_ASSOCIATION_RETAIN_NONATOMIC); } |
