Revision: 29046 http://sourceforge.net/p/bibdesk/svn/29046 Author: hofman Date: 2025-02-22 17:09:05 +0000 (Sat, 22 Feb 2025) Log Message: ----------- Avoid checking item changes when the change alrready occurred for another item
Modified Paths: -------------- trunk/bibdesk/BibDocument_UI.m Modified: trunk/bibdesk/BibDocument_UI.m =================================================================== --- trunk/bibdesk/BibDocument_UI.m 2025-02-22 17:04:02 UTC (rev 29045) +++ trunk/bibdesk/BibDocument_UI.m 2025-02-22 17:09:05 UTC (rev 29046) @@ -1488,16 +1488,16 @@ } if (docFlags.isDocumentClosed == NO) { - if (groupFieldsDependOnKey([self currentGroupFields], changedKey)) + if ((docFlags.itemChangeMask & BDSKItemChangedGroupFieldMask) == 0 && groupFieldsDependOnKey([self currentGroupFields], changedKey)) docFlags.itemChangeMask |= BDSKItemChangedGroupFieldMask; - if (smartGroupsDependOnKey([[groups smartGroups] valueForKeyPath:@"@distinctUnionOfArrays.filter.conditions.key"], changedKey)) + if ((docFlags.itemChangeMask & BDSKItemChangedSmartGroupMask) == 0 && smartGroupsDependOnKey([[groups smartGroups] valueForKeyPath:@"@distinctUnionOfArrays.filter.conditions.key"], changedKey)) docFlags.itemChangeMask |= BDSKItemChangedSmartGroupMask; - if (sortKeyDependsOnKey(sortKey, changedKey) || sortKeyDependsOnKey(previousSortKey, changedKey)) + if ((docFlags.itemChangeMask & BDSKItemChangedSortKeyMask) == 0 && sortKeyDependsOnKey(sortKey, changedKey) || sortKeyDependsOnKey(previousSortKey, changedKey)) docFlags.itemChangeMask |= BDSKItemChangedSortKeyMask; - if ([self displaysControlView:BDSKControlViewSearch] && searchKeyDependsOnKey([searchButtonBar selectedIdentifier], changedKey)) + if ((docFlags.itemChangeMask & BDSKItemChangedSearchKeyMask) == 0 && [self displaysControlView:BDSKControlViewSearch] && searchKeyDependsOnKey([searchButtonBar selectedIdentifier], changedKey)) docFlags.itemChangeMask |= BDSKItemChangedSearchKeyMask; - if ([changedKey isEqualToString:BDSKLocalFileString] || [changedKey isEqualToString:BDSKRemoteURLString] || - (docFlags.showingURLFields && ([changedKey isEqualToString:BDSKLocalUrlString] || [changedKey isEqualToString:BDSKUrlString]))) + if ((docFlags.itemChangeMask & BDSKItemChangedFilesMask) == 0 && ([changedKey isEqualToString:BDSKLocalFileString] || [changedKey isEqualToString:BDSKRemoteURLString] || + (docFlags.showingURLFields && ([changedKey isEqualToString:BDSKLocalUrlString] || [changedKey isEqualToString:BDSKUrlString])))) docFlags.itemChangeMask |= BDSKItemChangedFilesMask; // queue for UI updating, in case the item is changed as part of a batch process such as Find & Replace or AutoFile This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. _______________________________________________ Bibdesk-commit mailing list Bibdesk-commit@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/bibdesk-commit