Revision: 15435
          http://sourceforge.net/p/skim-app/code/15435
Author:   hofman
Date:     2025-06-11 14:47:33 +0000 (Wed, 11 Jun 2025)
Log Message:
-----------
Set page to nil when reloading doucment during presentation to clear predrawn 
images. Save scroll point when new document is locked.

Modified Paths:
--------------
    trunk/SKMainWindowController.m

Modified: trunk/SKMainWindowController.m
===================================================================
--- trunk/SKMainWindowController.m      2025-06-11 14:27:36 UTC (rev 15434)
+++ trunk/SKMainWindowController.m      2025-06-11 14:47:33 UTC (rev 15435)
@@ -1096,6 +1096,7 @@
         [self removeAllObjectsFromNotes];
         [self setThumbnails:@[]];
         [self clearWidgets];
+        placeholderPdfDocument = nil;
         
         // remember snapshots and close them, without animation
         snapshotDicts = [snapshots valueForKey:SKSnapshotCurrentSetupKey];
@@ -1118,7 +1119,8 @@
             [savedNormalSetup setObject:@YES forKey:LOCKED_KEY];
         }
         
-        placeholderPdfDocument = nil;
+        if ([self interactionMode] == SKPresentationMode)
+            [presentationView setPage:nil];
     }
     
     if ([pdfDocument isLocked] == NO) {
@@ -1192,8 +1194,8 @@
             }
             if ([pdfDocument isLocked]) {
                 [savedNormalSetup setObject:[NSNumber 
numberWithUnsignedInteger:dest.pageIndex] forKey:PAGEINDEX_KEY];
-                if ([self interactionMode] == SKPresentationMode)
-                    [presentationView setPage:nil];
+                if (NSEqualPoints(dest.point, SKUnspecifiedPoint) == NO)
+                    [savedNormalSetup setObject:NSStringFromPoint(dest.point) 
forKey:SCROLLPOINT_KEY];
             } else if ([self interactionMode] == SKPresentationMode) {
                 [presentationView setPage:[pdfDocument 
pageAtIndex:dest.pageIndex]];
             } else {
@@ -1226,6 +1228,9 @@
     undoGroupOldPropertiesPerNote = nil;
     [rightSideController.noteOutlineView reloadData];
     [pdfView resetPDFToolTipRects];
+    
+    if ([self interactionMode] == SKPresentationMode && [pdfDocument isLocked])
+        [self exitPresentation];
 }
 
 #pragma mark Accessors

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



_______________________________________________
Skim-app-commit mailing list
Skim-app-commit@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/skim-app-commit

Reply via email to