2020import com .facebook .react .bridge .ReadableMapKeySetIterator ;
2121import com .pspdfkit .configuration .activity .HudViewMode ;
2222import com .pspdfkit .configuration .activity .PdfActivityConfiguration ;
23- import com .pspdfkit .configuration .annotations . AnnotationEditingConfiguration ;
23+ import com .pspdfkit .configuration .activity . ThumbnailBarMode ;
2424import com .pspdfkit .configuration .page .PageFitMode ;
2525import com .pspdfkit .configuration .page .PageScrollDirection ;
2626import com .pspdfkit .configuration .page .PageScrollMode ;
@@ -40,6 +40,9 @@ public class ConfigurationAdapter {
4040 private static final String SHOW_SEARCH_ACTION = "showSearchAction" ;
4141 private static final String INLINE_SEARCH = "inlineSearch" ;
4242 private static final String SHOW_THUMBNAIL_BAR = "showThumbnailBar" ;
43+ private static final String SHOW_THUMBNAIL_BAR_DEFAULT = "default" ;
44+ private static final String SHOW_THUMBNAIL_BAR_SCROLLABLE = "scrollable" ;
45+ private static final String SHOW_THUMBNAIL_BAR_NONE = "none" ;
4346 private static final String SHOW_THUMBNAIL_GRID_ACTION = "showThumbnailGridAction" ;
4447 private static final String SHOW_OUTLINE_ACTION = "showOutlineAction" ;
4548 private static final String SHOW_ANNOTATION_LIST_ACTION = "showAnnotationListAction" ;
@@ -91,9 +94,6 @@ public ConfigurationAdapter(@NonNull Activity activity, ReadableMap configuratio
9194 if (configuration .hasKey (IMMERSIVE_MODE )) {
9295 configureImmersiveMode (configuration .getBoolean (IMMERSIVE_MODE ));
9396 }
94- if (configuration .hasKey (SHOW_THUMBNAIL_BAR )) {
95- configureShowThumbnailBar (configuration .getBoolean (SHOW_THUMBNAIL_BAR ));
96- }
9797 if (configuration .hasKey (SHOW_THUMBNAIL_GRID_ACTION )) {
9898 configureShowThumbnailGridAction (configuration .getBoolean (SHOW_THUMBNAIL_GRID_ACTION ));
9999 }
@@ -127,6 +127,9 @@ public ConfigurationAdapter(@NonNull Activity activity, ReadableMap configuratio
127127 if (configuration .hasKey (ENABLE_TEXT_SELECTION )) {
128128 configureEnableTextSelection (configuration .getBoolean (ENABLE_TEXT_SELECTION ));
129129 }
130+ if (configuration .hasKey (SHOW_THUMBNAIL_BAR )) {
131+ configureShowThumbnailBar (configuration .getString (SHOW_THUMBNAIL_BAR ));
132+ }
130133 }
131134 }
132135
@@ -191,12 +194,16 @@ private void configureImmersiveMode(boolean immersiveMode) {
191194 configuration .useImmersiveMode (immersiveMode );
192195 }
193196
194- private void configureShowThumbnailBar (boolean showThumbnailBar ) {
195- if (showThumbnailBar ) {
196- configuration .showThumbnailBar ();
197- } else {
198- configuration .hideThumbnailBar ();
197+ private void configureShowThumbnailBar (String showThumbnailBar ) {
198+ ThumbnailBarMode thumbnailBarMode = ThumbnailBarMode .THUMBNAIL_BAR_MODE_DEFAULT ;
199+ if (showThumbnailBar .equals (SHOW_THUMBNAIL_BAR_DEFAULT )) {
200+ thumbnailBarMode = ThumbnailBarMode .THUMBNAIL_BAR_MODE_DEFAULT ;
201+ } else if (showThumbnailBar .equals (SHOW_THUMBNAIL_BAR_SCROLLABLE )) {
202+ thumbnailBarMode = ThumbnailBarMode .THUMBNAIL_BAR_MODE_SCROLLABLE ;
203+ } else if (showThumbnailBar .equals (SHOW_THUMBNAIL_BAR_NONE )) {
204+ thumbnailBarMode = ThumbnailBarMode .THUMBNAIL_BAR_MODE_NONE ;
199205 }
206+ configuration .setThumbnailBarMode (thumbnailBarMode );
200207 }
201208
202209 private void configureShowThumbnailGridAction (boolean showThumbnailGridAction ) {
@@ -240,13 +247,11 @@ private void configureInvertColors(boolean invertColors) {
240247 }
241248
242249 private void configureEnableAnnotationEditing (boolean enableAnnotationEditing ) {
243- AnnotationEditingConfiguration .Builder annotationEditingConfiguration = new AnnotationEditingConfiguration .Builder (activity );
244250 if (enableAnnotationEditing ) {
245- annotationEditingConfiguration .enableAnnotationEditing ();
251+ configuration .enableAnnotationEditing ();
246252 } else {
247- annotationEditingConfiguration .disableAnnotationEditing ();
253+ configuration .disableAnnotationEditing ();
248254 }
249- configuration .annotationEditingConfiguration (annotationEditingConfiguration .build ());
250255 }
251256
252257 private void configureShowShareAction (boolean showShareAction ) {
@@ -280,6 +285,7 @@ public static PdfActivityConfiguration.Builder getDefaultConfiguration(Context c
280285 final PageFitMode pageFitMode = PageFitMode .FIT_TO_WIDTH ;
281286 final int searchType = PdfActivityConfiguration .SEARCH_INLINE ;
282287 final HudViewMode hudViewMode = HudViewMode .HUD_VIEW_MODE_AUTOMATIC ;
288+ final ThumbnailBarMode thumbnailBarMode = ThumbnailBarMode .THUMBNAIL_BAR_MODE_DEFAULT ;
283289 int startPage = 0 ;
284290
285291 PdfActivityConfiguration .Builder configuration = new PdfActivityConfiguration .Builder (context )
@@ -288,10 +294,9 @@ public static PdfActivityConfiguration.Builder getDefaultConfiguration(Context c
288294 .fitMode (pageFitMode )
289295 .setHudViewMode (hudViewMode )
290296 .setSearchType (searchType )
297+ .setThumbnailBarMode (thumbnailBarMode )
291298 .page (startPage );
292299
293- AnnotationEditingConfiguration .Builder annotationEditingConfiguration = new AnnotationEditingConfiguration .Builder (context );
294- configuration .annotationEditingConfiguration (annotationEditingConfiguration .build ());
295300 return configuration ;
296301 }
297302}
0 commit comments