From 9dbdb4be72342b40ae0f8ba925e3599d1bd96c7f Mon Sep 17 00:00:00 2001 From: irgendeinich Date: Thu, 23 May 2019 15:48:35 +0200 Subject: [PATCH 1/3] Add configuration for page mode and displaying the first page as a single page --- .../pspdfkit/react/ConfigurationAdapter.java | 29 ++++++++++++++++++- 1 file changed, 28 insertions(+), 1 deletion(-) diff --git a/android/src/main/java/com/pspdfkit/react/ConfigurationAdapter.java b/android/src/main/java/com/pspdfkit/react/ConfigurationAdapter.java index 0014dcec..0b1054f3 100644 --- a/android/src/main/java/com/pspdfkit/react/ConfigurationAdapter.java +++ b/android/src/main/java/com/pspdfkit/react/ConfigurationAdapter.java @@ -23,6 +23,7 @@ import com.pspdfkit.configuration.activity.PdfActivityConfiguration; import com.pspdfkit.configuration.activity.ThumbnailBarMode; import com.pspdfkit.configuration.page.PageFitMode; +import com.pspdfkit.configuration.page.PageLayoutMode; import com.pspdfkit.configuration.page.PageScrollDirection; import com.pspdfkit.configuration.page.PageScrollMode; @@ -58,7 +59,11 @@ public class ConfigurationAdapter { private static final String SHOW_PRINT_ACTION = "showPrintAction"; private static final String SHOW_DOCUMENT_INFO_VIEW = "showDocumentInfoView"; private static final String SHOW_DOCUMENT_TITLE_OVERLAY = "documentLabelEnabled"; - + private static final String PAGE_MODE = "pageMode"; + private static final String PAGE_MODE_SINGLE = "single"; + private static final String PAGE_MODE_DOUBLE = "double"; + private static final String PAGE_MODE_AUTO = "automatic"; + private static final String FIRST_PAGE_ALWAYS_SINGLE = "firstPageAlwaysSingle"; private final PdfActivityConfiguration.Builder configuration; @@ -134,6 +139,12 @@ public ConfigurationAdapter(@NonNull Context context, ReadableMap configuration) if (configuration.hasKey(SHOW_DOCUMENT_TITLE_OVERLAY)) { configureShowDocumentTitleOverlay(configuration.getBoolean(SHOW_DOCUMENT_TITLE_OVERLAY)); } + if (configuration.hasKey(PAGE_MODE)) { + configurePageMode(configuration.getString(PAGE_MODE)); + } + if (configuration.hasKey(FIRST_PAGE_ALWAYS_SINGLE)) { + configureFirstPageAlwaysSingle(configuration.getBoolean(FIRST_PAGE_ALWAYS_SINGLE)); + } } } @@ -294,6 +305,22 @@ private void configureShowDocumentTitleOverlay(boolean showDocumentTitleOverlay) } } + private void configurePageMode(String pageMode) { + PageLayoutMode pageLayoutMode = PageLayoutMode.AUTO; + if (pageMode.equalsIgnoreCase(PAGE_MODE_AUTO)) { + pageLayoutMode = PageLayoutMode.AUTO; + } else if (pageMode.equalsIgnoreCase(PAGE_MODE_SINGLE)) { + pageLayoutMode = PageLayoutMode.SINGLE; + } else if (pageMode.equalsIgnoreCase(PAGE_MODE_DOUBLE)) { + pageLayoutMode = PageLayoutMode.DOUBLE; + } + configuration.layoutMode(pageLayoutMode); + } + + private void configureFirstPageAlwaysSingle(boolean firstPageAlwaysSingle) { + configuration.firstPageAlwaysSingle(firstPageAlwaysSingle); + } + public PdfActivityConfiguration build() { return configuration.build(); } From d8c1ca8df66d8314e34a44f1050e3878100977a1 Mon Sep 17 00:00:00 2001 From: irgendeinich Date: Fri, 24 May 2019 11:42:48 +0200 Subject: [PATCH 2/3] Address review remarks --- .../java/com/pspdfkit/react/ConfigurationAdapter.java | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/android/src/main/java/com/pspdfkit/react/ConfigurationAdapter.java b/android/src/main/java/com/pspdfkit/react/ConfigurationAdapter.java index 0b1054f3..05c0606a 100644 --- a/android/src/main/java/com/pspdfkit/react/ConfigurationAdapter.java +++ b/android/src/main/java/com/pspdfkit/react/ConfigurationAdapter.java @@ -13,15 +13,15 @@ package com.pspdfkit.react; -import android.app.Activity; import android.content.Context; import android.support.annotation.NonNull; +import android.support.annotation.Nullable; import com.facebook.react.bridge.ReadableMap; import com.facebook.react.bridge.ReadableMapKeySetIterator; -import com.pspdfkit.configuration.activity.UserInterfaceViewMode; import com.pspdfkit.configuration.activity.PdfActivityConfiguration; import com.pspdfkit.configuration.activity.ThumbnailBarMode; +import com.pspdfkit.configuration.activity.UserInterfaceViewMode; import com.pspdfkit.configuration.page.PageFitMode; import com.pspdfkit.configuration.page.PageLayoutMode; import com.pspdfkit.configuration.page.PageScrollDirection; @@ -305,9 +305,10 @@ private void configureShowDocumentTitleOverlay(boolean showDocumentTitleOverlay) } } - private void configurePageMode(String pageMode) { + private void configurePageMode(@Nullable final String pageMode) { PageLayoutMode pageLayoutMode = PageLayoutMode.AUTO; - if (pageMode.equalsIgnoreCase(PAGE_MODE_AUTO)) { + if (pageMode == null || + pageMode.equalsIgnoreCase(PAGE_MODE_AUTO)) { pageLayoutMode = PageLayoutMode.AUTO; } else if (pageMode.equalsIgnoreCase(PAGE_MODE_SINGLE)) { pageLayoutMode = PageLayoutMode.SINGLE; @@ -317,7 +318,7 @@ private void configurePageMode(String pageMode) { configuration.layoutMode(pageLayoutMode); } - private void configureFirstPageAlwaysSingle(boolean firstPageAlwaysSingle) { + private void configureFirstPageAlwaysSingle(final boolean firstPageAlwaysSingle) { configuration.firstPageAlwaysSingle(firstPageAlwaysSingle); } From 5fb4c17f64ffd11f51b4b6ba624eeef02ca29e23 Mon Sep 17 00:00:00 2001 From: irgendeinich Date: Tue, 28 May 2019 11:35:56 +0200 Subject: [PATCH 3/3] Bump version to 1.23.15 --- package-lock.json | 2 +- package.json | 2 +- samples/Catalog/package.json | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/package-lock.json b/package-lock.json index e5e8a3c0..9166855b 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,6 +1,6 @@ { "name": "react-native-pspdfkit", - "version": "1.23.14", + "version": "1.23.15", "lockfileVersion": 1, "requires": true, "dependencies": { diff --git a/package.json b/package.json index 77a850a3..80cbd9ac 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "react-native-pspdfkit", - "version": "1.23.14", + "version": "1.23.15", "description": "A React Native module for the PSPDFKit library.", "keywords": [ "react native", diff --git a/samples/Catalog/package.json b/samples/Catalog/package.json index 681824ec..e7e73f18 100644 --- a/samples/Catalog/package.json +++ b/samples/Catalog/package.json @@ -1,6 +1,6 @@ { "name": "Catalog", - "version": "1.23.14", + "version": "1.23.15", "private": true, "scripts": { "start": "node node_modules/react-native/local-cli/cli.js start"