Move SSD save viewport selection to typed Kotlin
ober
56a3c2834f40ed3f83f2648f6ef137451b5baf1b
--- a/templates/ssd-review.ss +++ b/templates/ssd-review.ss @@ -4416,7 +4416,7 @@ selectionIgnoredLoadingStatus shouldShowFiringArc shouldFocusFiringArc canvasLabelPresent canvasLabelMissing groupIdSelected - shouldCaptureViewport pdfUriLoaded uriOrEmpty + shouldCaptureViewport viewportForSave pdfUriLoaded uriOrEmpty intentDataUriPresent intentDataUriOrEmpty intentFlagsOrZero sessionMissing viewportStatePresent viewportStateOrEmpty @@ -4474,6 +4474,7 @@ (type DocumentFile) (type JSONObject) (type SsdSession) + (type SsdReviewView) (type TruthStore) (type ViewportState) (extern (fileIsFile (file : File)) : Bool @@ -4506,6 +4507,8 @@ (extern (truthStoreLoadTruth (store : TruthStore) (session : SsdSession)) : (Nullable JSONObject) (kotlin-member-call loadTruth)) + (extern (reviewViewCaptureViewport (view : SsdReviewView)) : (Nullable ViewportState) + (kotlin-member-call captureViewport)) (def (normalizeFiringArc (value : String)) : String (string-uppercase (string-trim value))) (def (normalizeLabel (value : String)) : String @@ -4943,6 +4946,11 @@ (equal? groupId (nullable-get selectedGroupId)))) (def (shouldCaptureViewport (includeViewport : Bool)) : Bool includeViewport) + (def (viewportForSave (view : SsdReviewView) + (includeViewport : Bool)) : (Nullable ViewportState) + (if (shouldCaptureViewport includeViewport) + (reviewViewCaptureViewport view) + (nullable-none ViewportState))) (extern (uriParse (text : String)) : Uri (kotlin-call Uri parse)) (extern (intentDataUri (intent : Intent)) : (Nullable Uri) @@ -7733,7 +7741,7 @@ " .putString(PREF_LAST_PDF_SHA1, pdfSha1)" " .putInt(PREF_LAST_PAGE_INDEX, pageIndex)" " .putInt(PREF_LAST_PAGE_COUNT, pageCount)" - " val viewport = if (shouldCaptureViewport(includeViewport)) reviewView.captureViewport() else null" + " val viewport = viewportForSave(reviewView, includeViewport)" " if (viewportStatePresent(viewport)) {" " val savedViewport = viewportStateOrEmpty(viewport)" " edit.putInt(PREF_LAST_VIEWPORT_PAGE_INDEX, pageIndex)"