Revision: 16534
          http://sourceforge.net/p/skim-app/code/16534
Author:   hofman
Date:     2026-09-23 16:37:00 +0000 (Wed, 23 Sep 2026)
Log Message:
-----------
check auto update pref bbefore calling auto update method

Modified Paths:
--------------
    trunk/PDFAnnotationButtonWidget_SKExtensions.m
    trunk/PDFAnnotationChoiceWidget_SKExtensions.m
    trunk/PDFAnnotationCircle_SKExtensions.m
    trunk/PDFAnnotationFreeText_SKExtensions.m
    trunk/PDFAnnotationInk_SKExtensions.m
    trunk/PDFAnnotationLine_SKExtensions.m
    trunk/PDFAnnotationSquare_SKExtensions.m
    trunk/PDFAnnotationStamp_SKExtensions.m
    trunk/PDFAnnotationTextWidget_SKExtensions.m
    trunk/PDFAnnotationText_SKExtensions.m
    trunk/PDFAnnotation_SKExtensions.h
    trunk/PDFAnnotation_SKExtensions.m
    trunk/SKMainWindowController_UI.m
    trunk/SKPDFView.m

Modified: trunk/PDFAnnotationButtonWidget_SKExtensions.m
===================================================================
--- trunk/PDFAnnotationButtonWidget_SKExtensions.m      2026-09-23 15:53:03 UTC 
(rev 16533)
+++ trunk/PDFAnnotationButtonWidget_SKExtensions.m      2026-09-23 16:37:00 UTC 
(rev 16534)
@@ -71,7 +71,7 @@
     return [self controlType] == kPDFWidgetCheckBoxControl || [self 
controlType] == kPDFWidgetRadioButtonControl;
 }
 
-- (BOOL)isLnk { return NO; }
+- (BOOL)isLink { return NO; }
 
 - (NSSet *)keysForValuesToObserveForUndo {
     if ([self controlType] != kPDFWidgetCheckBoxControl && [self controlType] 
!= kPDFWidgetRadioButtonControl)

Modified: trunk/PDFAnnotationChoiceWidget_SKExtensions.m
===================================================================
--- trunk/PDFAnnotationChoiceWidget_SKExtensions.m      2026-09-23 15:53:03 UTC 
(rev 16533)
+++ trunk/PDFAnnotationChoiceWidget_SKExtensions.m      2026-09-23 16:37:00 UTC 
(rev 16534)
@@ -69,7 +69,7 @@
 
 - (BOOL)isWidget { return YES; }
 
-- (BOOL)isLnk { return NO; }
+- (BOOL)isLink { return NO; }
 
 - (NSSet *)keysForValuesToObserveForUndo {
     static NSSet *keys = nil;

Modified: trunk/PDFAnnotationCircle_SKExtensions.m
===================================================================
--- trunk/PDFAnnotationCircle_SKExtensions.m    2026-09-23 15:53:03 UTC (rev 
16533)
+++ trunk/PDFAnnotationCircle_SKExtensions.m    2026-09-23 16:37:00 UTC (rev 
16534)
@@ -71,8 +71,10 @@
 
 - (BOOL)isWidget { return NO; }
 
-- (BOOL)isLnk { return NO; }
+- (BOOL)isShape { return YES; }
 
+- (BOOL)isLink { return NO; }
+
 - (BOOL)isResizable { return [self isSkimNote]; }
 
 - (BOOL)isMovable { return [self isSkimNote]; }
@@ -104,11 +106,6 @@
     return dx * dx + dy * dy >= 1.0;
 }
 
-- (void)autoUpdateString {
-    if (NO == [[NSUserDefaults standardUserDefaults] 
boolForKey:SKDisableUpdateContentsFromEnclosedTextKey] && [self page])
-        [self autoUpdateStringWithPage:[self page]];
-}
-
 - (void)autoUpdateStringWithPage:(PDFPage *)page {
     // this calculation is roughly the inverse of -[PDFView 
addOtherAnnotationWithType:selection:point:]
     NSRect bounds = NSInsetRect([self bounds], [self lineWidth] - 1.0, [self 
lineWidth] - 1.0);

Modified: trunk/PDFAnnotationFreeText_SKExtensions.m
===================================================================
--- trunk/PDFAnnotationFreeText_SKExtensions.m  2026-09-23 15:53:03 UTC (rev 
16533)
+++ trunk/PDFAnnotationFreeText_SKExtensions.m  2026-09-23 16:37:00 UTC (rev 
16534)
@@ -107,7 +107,7 @@
 
 - (BOOL)isWidget { return NO; }
 
-- (BOOL)isLnk { return NO; }
+- (BOOL)isLink { return NO; }
 
 - (BOOL)isResizable { return [self isSkimNote]; }
 

Modified: trunk/PDFAnnotationInk_SKExtensions.m
===================================================================
--- trunk/PDFAnnotationInk_SKExtensions.m       2026-09-23 15:53:03 UTC (rev 
16533)
+++ trunk/PDFAnnotationInk_SKExtensions.m       2026-09-23 16:37:00 UTC (rev 
16534)
@@ -96,7 +96,7 @@
 
 - (BOOL)isWidget { return NO; }
 
-- (BOOL)isLnk { return NO; }
+- (BOOL)isLink { return NO; }
 
 - (BOOL)isResizable { return [self isSkimNote]; }
 

Modified: trunk/PDFAnnotationLine_SKExtensions.m
===================================================================
--- trunk/PDFAnnotationLine_SKExtensions.m      2026-09-23 15:53:03 UTC (rev 
16533)
+++ trunk/PDFAnnotationLine_SKExtensions.m      2026-09-23 16:37:00 UTC (rev 
16534)
@@ -124,7 +124,7 @@
 
 - (BOOL)isWidget { return NO; }
 
-- (BOOL)isLnk { return NO; }
+- (BOOL)isLink { return NO; }
 
 - (BOOL)isResizable { return [self isSkimNote]; }
 

Modified: trunk/PDFAnnotationSquare_SKExtensions.m
===================================================================
--- trunk/PDFAnnotationSquare_SKExtensions.m    2026-09-23 15:53:03 UTC (rev 
16533)
+++ trunk/PDFAnnotationSquare_SKExtensions.m    2026-09-23 16:37:00 UTC (rev 
16534)
@@ -72,8 +72,10 @@
 
 - (BOOL)isWidget { return NO; }
 
-- (BOOL)isLnk { return NO; }
+- (BOOL)isShape { return YES; }
 
+- (BOOL)isLink { return NO; }
+
 - (BOOL)isResizable { return [self isSkimNote]; }
 
 - (BOOL)isMovable { return [self isSkimNote]; }
@@ -94,11 +96,6 @@
     return NSWidth(bounds) <= 2.0 * delta || NSHeight(bounds) <= 2.0 * delta 
|| NSPointInRect(point, NSInsetRect(bounds, delta, delta)) == NO;
 }
 
-- (void)autoUpdateString {
-    if (NO == [[NSUserDefaults standardUserDefaults] 
boolForKey:SKDisableUpdateContentsFromEnclosedTextKey] && [self page])
-        [self autoUpdateStringWithPage:[self page]];
-}
-
 - (void)autoUpdateStringWithPage:(PDFPage *)page {
     NSRect bounds = NSInsetRect([self bounds], [self lineWidth] - 1.0, [self 
lineWidth] - 1.0);
     if (NSWidth(bounds) <= 0.0 || NSHeight(bounds) <= 0.0)

Modified: trunk/PDFAnnotationStamp_SKExtensions.m
===================================================================
--- trunk/PDFAnnotationStamp_SKExtensions.m     2026-09-23 15:53:03 UTC (rev 
16533)
+++ trunk/PDFAnnotationStamp_SKExtensions.m     2026-09-23 16:37:00 UTC (rev 
16534)
@@ -52,7 +52,7 @@
 
 - (BOOL)isWidget { return NO; }
 
-- (BOOL)isLnk { return NO; }
+- (BOOL)isLink { return NO; }
 
 - (BOOL)isMovable { return [self isSkimNote]; }
 

Modified: trunk/PDFAnnotationTextWidget_SKExtensions.m
===================================================================
--- trunk/PDFAnnotationTextWidget_SKExtensions.m        2026-09-23 15:53:03 UTC 
(rev 16533)
+++ trunk/PDFAnnotationTextWidget_SKExtensions.m        2026-09-23 16:37:00 UTC 
(rev 16534)
@@ -69,7 +69,7 @@
 
 - (BOOL)isWidget { return YES; }
 
-- (BOOL)isLnk { return NO; }
+- (BOOL)isLink { return NO; }
 
 - (NSSet *)keysForValuesToObserveForUndo {
     static NSSet *keys = nil;

Modified: trunk/PDFAnnotationText_SKExtensions.m
===================================================================
--- trunk/PDFAnnotationText_SKExtensions.m      2026-09-23 15:53:03 UTC (rev 
16533)
+++ trunk/PDFAnnotationText_SKExtensions.m      2026-09-23 16:37:00 UTC (rev 
16534)
@@ -53,7 +53,7 @@
 
 - (BOOL)isWidget { return NO; }
 
-- (BOOL)isLnk { return NO; }
+- (BOOL)isLink { return NO; }
 
 - (BOOL)isMovable { return [self isSkimNote]; }
 

Modified: trunk/PDFAnnotation_SKExtensions.h
===================================================================
--- trunk/PDFAnnotation_SKExtensions.h  2026-09-23 15:53:03 UTC (rev 16533)
+++ trunk/PDFAnnotation_SKExtensions.h  2026-09-23 16:37:00 UTC (rev 16534)
@@ -97,7 +97,7 @@
 
 @property (nonatomic, nullable, readonly) NSString *textString;
 
-@property (nonatomic, readonly) BOOL isMarkup, isNote, isText, isLine, isInk, 
isLink, isWidget;
+@property (nonatomic, readonly) BOOL isMarkup, isNote, isText, isShape, 
isLine, isInk, isLink, isWidget;
 @property (nonatomic, readonly) BOOL isResizable, isMovable, isEditable;
 @property (nonatomic, readonly) BOOL hasBorder, hasInteriorColor;
 @property (nonatomic, readonly) BOOL isConvertibleAnnotation;
@@ -112,7 +112,6 @@
 
 - (void)registerUserName;
 
-- (void)autoUpdateString;
 - (void)autoUpdateStringWithPage:(PDFPage *)page;
 
 @property (nonatomic, readonly) NSString *uniqueID;

Modified: trunk/PDFAnnotation_SKExtensions.m
===================================================================
--- trunk/PDFAnnotation_SKExtensions.m  2026-09-23 15:53:03 UTC (rev 16533)
+++ trunk/PDFAnnotation_SKExtensions.m  2026-09-23 16:37:00 UTC (rev 16534)
@@ -418,6 +418,8 @@
 
 - (BOOL)isText { return NO; }
 
+- (BOOL)isShape { return NO; }
+
 - (BOOL)isLine { return NO; }
 
 - (BOOL)isInk { return NO; }
@@ -488,8 +490,6 @@
         [self setModificationDate:[NSDate date]];
 }
 
-- (void)autoUpdateString {}
-
 - (void)autoUpdateStringWithPage:(PDFPage *)page {}
 
 - (NSString *)colorDefaultKey { return nil; }

Modified: trunk/SKMainWindowController_UI.m
===================================================================
--- trunk/SKMainWindowController_UI.m   2026-09-23 15:53:03 UTC (rev 16533)
+++ trunk/SKMainWindowController_UI.m   2026-09-23 16:37:00 UTC (rev 16534)
@@ -1755,7 +1755,7 @@
         return [self interactionMode] != SKPresentationMode && [self 
hasOverview] == NO && [annotation isSkimNote] && [annotation isEditable];
     } else if (action == @selector(autoSizeNote:)) {
         PDFAnnotation *annotation = [pdfView currentAnnotation];
-        return [self interactionMode] != SKPresentationMode && [self 
hasOverview] == NO && [annotation isResizable] && ([annotation isText] || 
[annotation isNote] || (([[annotation type] isEqualToString:SKNCircleString] || 
[[annotation type] isEqualToString:SKNSquareString]) && [[pdfView 
currentSelection] hasCharacters]));
+        return [self interactionMode] != SKPresentationMode && [self 
hasOverview] == NO && [annotation isResizable] && ([annotation isText] || 
[annotation isNote] || ([annotation isShape] && [[pdfView currentSelection] 
hasCharacters]));
     } else if (action == @selector(alignLeft:) || action == 
@selector(alignRight:) || action == @selector(alignCenter:)) {
         PDFAnnotation *annotation = [pdfView currentAnnotation];
         return [self interactionMode] != SKPresentationMode && [self 
hasOverview] == NO && [annotation isSkimNote] && [annotation isEditable] && 
[annotation isText];

Modified: trunk/SKPDFView.m
===================================================================
--- trunk/SKPDFView.m   2026-09-23 15:53:03 UTC (rev 16533)
+++ trunk/SKPDFView.m   2026-09-23 16:37:00 UTC (rev 16534)
@@ -3435,7 +3435,8 @@
     
     if (NSEqualRects(bounds, newBounds) == NO) {
         [currentAnnotation setBounds:newBounds];
-        [currentAnnotation autoUpdateString];
+        if ([currentAnnotation isShape] && NO == [[NSUserDefaults 
standardUserDefaults] boolForKey:SKDisableUpdateContentsFromEnclosedTextKey])
+            [currentAnnotation autoUpdateStringWithPage:page];
     }
 }
 
@@ -3692,7 +3693,8 @@
             }
             
             [currentAnnotation setBounds:newBounds];
-            [currentAnnotation autoUpdateString];
+            if ([currentAnnotation isShape] && NO == [[NSUserDefaults 
standardUserDefaults] boolForKey:SKDisableUpdateContentsFromEnclosedTextKey])
+                [currentAnnotation autoUpdateStringWithPage:page];
         }
     }
 }
@@ -4128,8 +4130,8 @@
     }
     
     if (currentAnnotation) {
-        if (draggedAnnotation)
-            [currentAnnotation autoUpdateString];
+        if (draggedAnnotation && [currentAnnotation isShape] && NO == 
[[NSUserDefaults standardUserDefaults] 
boolForKey:SKDisableUpdateContentsFromEnclosedTextKey])
+            [currentAnnotation autoUpdateStringWithPage:page];
         
         if (shouldAddAnnotation && (noteType == SKNoteTypeAnchored || noteType 
== SKNoteTypeFreeText))
             [self editCurrentAnnotation:self];          

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