Browse Source

PDFTool(Android) - 调整单个Demo UI问题

liuxiaolong 1 year ago
parent
commit
638600d056

+ 9 - 0
Annotations/src/main/java/com/compdfkit/annotations/PDFAnnotationSampleActivity.java

@@ -10,6 +10,7 @@ import androidx.activity.result.ActivityResultLauncher;
 import com.compdfkit.annotations.databinding.AnnotationPdfSampleActivityBinding;
 import com.compdfkit.core.annotation.CPDFAnnotation;
 import com.compdfkit.tools.common.basic.activity.CBasicPDFActivity;
+import com.compdfkit.tools.common.pdf.config.AnnotationsConfig;
 import com.compdfkit.tools.common.utils.CFileUtils;
 import com.compdfkit.tools.common.utils.CPermissionUtil;
 import com.compdfkit.tools.common.utils.activitycontracts.CSelectPDFDocumentResultContract;
@@ -25,6 +26,7 @@ import com.compdfkit.tools.viewer.pdfsearch.CSearchResultDialogFragment;
 import com.compdfkit.ui.reader.CPDFReaderView;
 
 import java.util.ArrayList;
+import java.util.Arrays;
 
 
 public class PDFAnnotationSampleActivity extends CBasicPDFActivity {
@@ -91,7 +93,9 @@ public class PDFAnnotationSampleActivity extends CBasicPDFActivity {
     }
 
     private void initToolBarView() {
+        binding.pdfToolBar.addMode(CPreviewMode.Viewer);
         binding.pdfToolBar.addMode(CPreviewMode.Annotation);
+        binding.pdfToolBar.selectMode(CPreviewMode.Annotation);
         binding.pdfToolBar.setPreviewModeChangeListener((mode) -> {
             binding.pdfToolBar.selectMode(mode);
             screenManager.changeWindowStatus(mode);
@@ -176,6 +180,11 @@ public class PDFAnnotationSampleActivity extends CBasicPDFActivity {
 
     private void initAnnotToolbar() {
         binding.annotationToolBar.initWithPDFView(binding.pdfView);
+        binding.annotationToolBar.setTools(Arrays.asList(
+                AnnotationsConfig.AnnotationTools.Setting,
+                AnnotationsConfig.AnnotationTools.Undo,
+                AnnotationsConfig.AnnotationTools.Redo
+        ));
         binding.annotationToolBar.setFragmentManager(getSupportFragmentManager());
         binding.annotationToolBar.setAnnotationChangeListener(type -> {
             screenManager.changeWindowStatus(type);

+ 11 - 1
ContentEditor/src/main/java/com/compdfkit/contenteditor/PDFEditSampleActivity.java

@@ -23,6 +23,7 @@ import com.compdfkit.core.edit.CPDFEditManager;
 import com.compdfkit.core.edit.CPDFEditPage;
 import com.compdfkit.tools.common.basic.activity.CBasicPDFActivity;
 import com.compdfkit.tools.common.contextmenu.CPDFContextMenuHelper;
+import com.compdfkit.tools.common.pdf.config.AnnotationsConfig;
 import com.compdfkit.tools.common.utils.CFileUtils;
 import com.compdfkit.tools.common.utils.CPermissionUtil;
 import com.compdfkit.tools.common.utils.activitycontracts.CSelectPDFDocumentResultContract;
@@ -41,6 +42,7 @@ import com.compdfkit.tools.viewer.pdfsearch.CSearchResultDialogFragment;
 import com.compdfkit.ui.reader.CPDFReaderView;
 
 import java.util.ArrayList;
+import java.util.Arrays;
 
 public class PDFEditSampleActivity extends CBasicPDFActivity {
 
@@ -100,7 +102,11 @@ public class PDFEditSampleActivity extends CBasicPDFActivity {
     }
 
     private void initToolbarListener() {
-        binding.pdfToolBar.addMode(CPreviewMode.Edit);
+        binding.pdfToolBar.addModes(Arrays.asList(
+                CPreviewMode.Viewer,
+                CPreviewMode.Edit
+        ));
+        binding.pdfToolBar.selectMode(CPreviewMode.Edit);
         binding.pdfToolBar.addAction(R.drawable.tools_ic_thumbnail, v -> {
             CPDFBotaDialogFragment botaDialogFragment = CPDFBotaDialogFragment.newInstance();
             botaDialogFragment.initWithPDFView(binding.pdfView);
@@ -247,6 +253,10 @@ public class PDFEditSampleActivity extends CBasicPDFActivity {
                 menuHelper.dismissContextMenu();
             }
         });
+        binding.pdfEditToolBar.setTools(Arrays.asList(AnnotationsConfig.AnnotationTools.Setting,
+                AnnotationsConfig.AnnotationTools.Undo,
+                AnnotationsConfig.AnnotationTools.Redo
+        ));
         binding.pdfView.setEndScrollCallback(() -> {
             binding.pdfEditToolBar.updateUndoRedo();
         });

+ 2 - 1
DocsEditor/src/main/java/com/compdfkit/docseditor/MainActivity.java

@@ -24,6 +24,7 @@ import com.compdfkit.tools.viewer.pdfsearch.CSearchResultDialogFragment;
 import com.compdfkit.ui.reader.CPDFReaderView;
 
 import java.util.ArrayList;
+import java.util.Arrays;
 
 public class MainActivity extends CBasicPDFActivity {
 
@@ -86,7 +87,7 @@ public class MainActivity extends CBasicPDFActivity {
     }
 
     private void initToolbarListener() {
-        binding.pdfToolBar.addMode(CPreviewMode.PageEdit);
+        binding.pdfToolBar.addModes(Arrays.asList(CPreviewMode.Viewer, CPreviewMode.PageEdit));
         binding.pdfToolBar.addAction(R.drawable.tools_ic_thumbnail, v -> {
             CPDFBotaDialogFragment botaDialogFragment = CPDFBotaDialogFragment.newInstance();
             botaDialogFragment.initWithPDFView(binding.pdfView);

+ 21 - 12
Forms/src/main/java/com/compdfkit/forms/PDFFormSampleActivity.java

@@ -12,6 +12,7 @@ import androidx.core.content.ContextCompat;
 
 import com.compdfkit.forms.databinding.FormPdfSampleActivityBinding;
 import com.compdfkit.tools.common.basic.activity.CBasicPDFActivity;
+import com.compdfkit.tools.common.pdf.config.FormsConfig;
 import com.compdfkit.tools.common.utils.CFileUtils;
 import com.compdfkit.tools.common.utils.CPermissionUtil;
 import com.compdfkit.tools.common.utils.activitycontracts.CSelectPDFDocumentResultContract;
@@ -30,6 +31,7 @@ import com.compdfkit.ui.proxy.form.CPDFPushbuttonWidgetImpl;
 import com.compdfkit.ui.reader.CPDFReaderView;
 
 import java.util.ArrayList;
+import java.util.Arrays;
 
 public class PDFFormSampleActivity extends CBasicPDFActivity {
 
@@ -90,7 +92,7 @@ public class PDFFormSampleActivity extends CBasicPDFActivity {
             } else if (cpdfBaseAnnot instanceof CPDFComboboxWidgetImpl) {
                 // When the ComboBox form is created, display an editing dialog for adding list data
                 CPDFAnnotationManager annotationManager = new CPDFAnnotationManager();
-                annotationManager.showFormComboBoxEditFragment(getSupportFragmentManager(), cpdfBaseAnnot, cpdfPageView,true);
+                annotationManager.showFormComboBoxEditFragment(getSupportFragmentManager(), cpdfBaseAnnot, cpdfPageView, true);
             } else if (cpdfBaseAnnot instanceof CPDFPushbuttonWidgetImpl) {
                 // When the PushButton form is created, display a dialog for editing the action method
                 CPDFAnnotationManager annotationManager = new CPDFAnnotationManager();
@@ -102,11 +104,13 @@ public class PDFFormSampleActivity extends CBasicPDFActivity {
     }
 
     private void initToolBarView() {
-        binding.pdfToolBar.addMode(CPreviewMode.Form);
+        binding.pdfToolBar.addModes(Arrays.asList(CPreviewMode.Viewer,
+                CPreviewMode.Form));
+        binding.pdfToolBar.selectMode(CPreviewMode.Form);
         binding.pdfToolBar.setPreviewModeChangeListener((mode) -> {
-            if (mode == CPreviewMode.Viewer){
+            if (mode == CPreviewMode.Viewer) {
                 binding.pdfView.setViewMode(CPDFReaderView.ViewMode.VIEW);
-            }else {
+            } else {
                 binding.pdfView.setViewMode(CPDFReaderView.ViewMode.FORM);
             }
             screenManager.changeWindowStatus(mode);
@@ -172,15 +176,15 @@ public class PDFFormSampleActivity extends CBasicPDFActivity {
         });
     }
 
-    private void requestStoragePermissions(){
-        if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.TIRAMISU){
+    private void requestStoragePermissions() {
+        if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.TIRAMISU) {
             CPermissionUtil.openManageAllFileAppSettings(this);
-        }else {
+        } else {
             multiplePermissionResultLauncher.launch(STORAGE_PERMISSIONS, result -> {
                 if (CPermissionUtil.hasStoragePermissions(this)) {
                     selectDocument();
-                }else {
-                    if (!CPermissionUtil.shouldShowRequestPermissionRationale(this, Manifest.permission.WRITE_EXTERNAL_STORAGE)){
+                } else {
+                    if (!CPermissionUtil.shouldShowRequestPermissionRationale(this, Manifest.permission.WRITE_EXTERNAL_STORAGE)) {
                         showPermissionsRequiredDialog();
                     }
                 }
@@ -190,6 +194,10 @@ public class PDFFormSampleActivity extends CBasicPDFActivity {
 
     private void initFormToolbar() {
         binding.formToolBar.initWithPDFView(binding.pdfView);
+        binding.formToolBar.setTools(Arrays.asList(
+                FormsConfig.FormsTools.Undo,
+                FormsConfig.FormsTools.Redo
+        ));
         binding.formToolBar.setFragmentManager(getSupportFragmentManager());
     }
 
@@ -213,7 +221,7 @@ public class PDFFormSampleActivity extends CBasicPDFActivity {
     }
 
     private void selectDocument() {
-        if (binding.pdfView.getCPdfReaderView().getPDFDocument() == null){
+        if (binding.pdfView.getCPdfReaderView().getPDFDocument() == null) {
             selectDocumentLauncher.launch(null);
             return;
         }
@@ -241,7 +249,8 @@ public class PDFFormSampleActivity extends CBasicPDFActivity {
 
     @Override
     protected void onSaveInstanceState(@NonNull Bundle outState) {
-        binding.pdfView.savePDF(null,e -> {});
+        binding.pdfView.savePDF(null, e -> {
+        });
         super.onSaveInstanceState(outState);
     }
 
@@ -249,7 +258,7 @@ public class PDFFormSampleActivity extends CBasicPDFActivity {
     public void onBackPressed() {
         if (binding.pdfView != null) {
             binding.pdfView.savePDF((filePath, pdfUri) -> super.onBackPressed(), e -> super.onBackPressed());
-        }else {
+        } else {
             super.onBackPressed();
         }
     }

+ 1 - 0
PDFViewer/proguard-rules.pro

@@ -22,3 +22,4 @@
 -keep class com.compdfkit.ui.** {*;}
 -keep class com.compdfkit.core.** {*;}
 -keep class com.compdfkit.tools.** {*;}
+-keep class com.compdfkit.pdfviewer.** {*;}