Revision: 15825
http://sourceforge.net/p/skim-app/code/15825
Author: hofman
Date: 2025-11-25 10:03:25 +0000 (Tue, 25 Nov 2025)
Log Message:
-----------
get pageIndex once
Modified Paths:
--------------
trunk/SKBasePDFView.m
Modified: trunk/SKBasePDFView.m
===================================================================
--- trunk/SKBasePDFView.m 2025-11-24 18:08:48 UTC (rev 15824)
+++ trunk/SKBasePDFView.m 2025-11-25 10:03:25 UTC (rev 15825)
@@ -487,32 +487,34 @@
}
- (void)scrollLineUp:(id)sender {
- PDFPage *page = ([self displayMode] & kPDFDisplaySinglePageContinuous) ?
nil : [self currentPage];
+ NSUInteger pageIndex = ([self displayMode] &
kPDFDisplaySinglePageContinuous) ? NSNotFound : [[self currentPage] pageIndex];
[super scrollLineUp:sender];
- if (page) {
+ if (pageIndex != NSNotFound) {
// Apple scrolls to the bottom of the next page rather than the top
// check whether we jumped pages
- if ([[self currentPage] pageIndex] > [page pageIndex])
+ NSUInteger currentPageIndex = [[self currentPage] pageIndex];
+ if (currentPageIndex > pageIndex)
[self verticallyScrollToTop];
- else if ([[self currentPage] pageIndex] < [page pageIndex])
+ else if (currentPageIndex < pageIndex)
[self verticallyScrollToBottom];
}
}
- (void)scrollLineDown:(id)sender {
- PDFPage *page = ([self displayMode] & kPDFDisplaySinglePageContinuous) ?
nil : [self currentPage];
+ NSUInteger pageIndex = ([self displayMode] &
kPDFDisplaySinglePageContinuous) ? NSNotFound : [[self currentPage] pageIndex];
[super scrollLineDown:sender];
- if (page) {
+ if (pageIndex != NSNotFound) {
// Apple scrolls to the top of the next page rather than the bottom
// check whether we jumped pages
- if ([[self currentPage] pageIndex] > [page pageIndex])
+ NSUInteger currentPageIndex = [[self currentPage] pageIndex];
+ if (currentPageIndex < pageIndex)
+ [self verticallyScrollToBottom];
+ else if (currentPageIndex > pageIndex)
[self verticallyScrollToTop];
- else if ([[self currentPage] pageIndex] < [page pageIndex])
- [self verticallyScrollToBottom];
}
}
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