Revision: 29748
http://sourceforge.net/p/bibdesk/svn/29748
Author: hofman
Date: 2025-10-21 21:03:02 +0000 (Tue, 21 Oct 2025)
Log Message:
-----------
reset menuNeedsUpdate when menu was populated
Modified Paths:
--------------
trunk/bibdesk/BDSKBookmarkController.m
trunk/bibdesk/BDSKSearchBookmarkController.m
Modified: trunk/bibdesk/BDSKBookmarkController.m
===================================================================
--- trunk/bibdesk/BDSKBookmarkController.m 2025-10-21 16:17:08 UTC (rev
29747)
+++ trunk/bibdesk/BDSKBookmarkController.m 2025-10-21 21:03:02 UTC (rev
29748)
@@ -345,6 +345,7 @@
}
for (BDSKBookmark *bm in bookmarks)
[self addItemForBookmark:bm toMenu:menu forDisplay:display];
+ [bookmark setMenuNeedsUpdate:NO];
} else if (display) {
for (NSMenuItem *item in [menu itemArray]) {
BDSKBookmark *bm = [item representedObject];
@@ -360,7 +361,7 @@
}
- (BOOL)menuHasKeyEquivalent:(NSMenu *)menu forEvent:(NSEvent *)event
target:(id *)target action:(SEL *)action {
- if ([[NSUserDefaults standardUserDefaults]
dictionaryForKey:@"NSUserKeyEquivalents"])
+ if ([[NSUserDefaults standardUserDefaults]
objectForKey:@"NSUserKeyEquivalents"])
[self updateMenu:menu forDisplay:NO];
return NO;
}
Modified: trunk/bibdesk/BDSKSearchBookmarkController.m
===================================================================
--- trunk/bibdesk/BDSKSearchBookmarkController.m 2025-10-21 16:17:08 UTC
(rev 29747)
+++ trunk/bibdesk/BDSKSearchBookmarkController.m 2025-10-21 21:03:02 UTC
(rev 29748)
@@ -320,26 +320,25 @@
else if (idx >= 0)
bookmark = [[supermenu itemAtIndex:idx] representedObject];
- if ([bookmark isKindOfClass:[BDSKSearchBookmark class]]) {
- if ([bookmark menuNeedsUpdate]) {
- NSArray *bookmarks = [bookmark children];
- if (supermenu == [NSApp mainMenu]) {
- NSInteger i = [menu numberOfItems];
- while (i-- > 0 && ([[menu itemAtIndex:i] isSeparatorItem] ||
[[menu itemAtIndex:i] representedObject]))
- [menu removeItemAtIndex:i];
- if ([bookmarks count] > 0)
- [menu addItem:[NSMenuItem separatorItem]];
- } else {
- [menu removeAllItems];
- }
- for (BDSKSearchBookmark *bm in bookmarks)
- [self addItemForBookmark:bm toMenu:menu];
+ if ([bookmark isKindOfClass:[BDSKSearchBookmark class]] && [bookmark
menuNeedsUpdate]) {
+ NSArray *bookmarks = [bookmark children];
+ if (supermenu == [NSApp mainMenu]) {
+ NSInteger i = [menu numberOfItems];
+ while (i-- > 0 && ([[menu itemAtIndex:i] isSeparatorItem] ||
[[menu itemAtIndex:i] representedObject]))
+ [menu removeItemAtIndex:i];
+ if ([bookmarks count] > 0)
+ [menu addItem:[NSMenuItem separatorItem]];
+ } else {
+ [menu removeAllItems];
}
+ for (BDSKSearchBookmark *bm in bookmarks)
+ [self addItemForBookmark:bm toMenu:menu];
+ [bookmark setMenuNeedsUpdate:NO];
}
}
- (BOOL)menuHasKeyEquivalent:(NSMenu *)menu forEvent:(NSEvent *)event
target:(id *)target action:(SEL *)action {
- if ([[NSUserDefaults standardUserDefaults]
dictionaryForKey:@"NSUserKeyEquivalents"])
+ if ([[NSUserDefaults standardUserDefaults]
objectForKey:@"NSUserKeyEquivalents"])
[self menuNeedsUpdate:menu];
return NO;
}
This was sent by the SourceForge.net collaborative development platform, the
world's largest Open Source development site.
_______________________________________________
Bibdesk-commit mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/bibdesk-commit