Revision: 14748
          http://sourceforge.net/p/skim-app/code/14748
Author:   hofman
Date:     2024-11-26 17:33:53 +0000 (Tue, 26 Nov 2024)
Log Message:
-----------
Avoid rebuilding custom template types multiple times for the same event

Modified Paths:
--------------
    trunk/SKTemplateManager.h
    trunk/SKTemplateManager.m

Modified: trunk/SKTemplateManager.h
===================================================================
--- trunk/SKTemplateManager.h   2024-11-26 16:46:00 UTC (rev 14747)
+++ trunk/SKTemplateManager.h   2024-11-26 17:33:53 UTC (rev 14748)
@@ -43,6 +43,7 @@
 @interface SKTemplateManager : NSObject {
     NSArray<NSString *> *customTemplateTypes;
     NSMutableDictionary<NSString *, NSString *> *templateFileNames;
+    BOOL needsUpdate;
 }
 
 @property (class, nonatomic, readonly) SKTemplateManager *sharedManager;

Modified: trunk/SKTemplateManager.m
===================================================================
--- trunk/SKTemplateManager.m   2024-11-26 16:46:00 UTC (rev 14747)
+++ trunk/SKTemplateManager.m   2024-11-26 17:33:53 UTC (rev 14748)
@@ -65,6 +65,7 @@
 
 - (NSArray *)_customTemplateTypes {
     if (customTemplateTypes == nil) {
+        DISPATCH_MAIN_AFTER_SEC(1.0, ^{ needsUpdate = YES; });
         NSFileManager *fm = [NSFileManager defaultManager];
         NSMutableArray *templates = [NSMutableArray array];
         NSMutableDictionary *types = [NSMutableDictionary dictionary];
@@ -105,7 +106,10 @@
 }
 
 - (NSArray *)customTemplateTypes {
-    customTemplateTypes = nil;
+    if (needsUpdate) {
+        customTemplateTypes = nil;
+        needsUpdate = NO;
+    }
     return [self _customTemplateTypes];
 }
 

This was sent by the SourceForge.net collaborative development platform, the 
world's largest Open Source development site.



_______________________________________________
Skim-app-commit mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/skim-app-commit

Reply via email to