summaryrefslogtreecommitdiff
path: root/android/src/com/artifex/mupdfdemo/MuPDFActivity.java
diff options
context:
space:
mode:
authorPaul Gardiner <paulg.artifex@glidos.net>2013-03-29 11:18:49 +0000
committerPaul Gardiner <paulg.artifex@glidos.net>2013-03-29 11:18:49 +0000
commite6b829c3c7f64d8e68fa4a379b1011c13a4bf767 (patch)
tree75203d44230d743c77170ab35c12c4d9c316af48 /android/src/com/artifex/mupdfdemo/MuPDFActivity.java
parentae7ea7e93ee5998fa428ffa4340bcb28f7b76abb (diff)
downloadmupdf-e6b829c3c7f64d8e68fa4a379b1011c13a4bf767.tar.xz
Android: initial support for printing
This wont work for other than PDF documents Also, we should save the file before printing if it has been changed
Diffstat (limited to 'android/src/com/artifex/mupdfdemo/MuPDFActivity.java')
-rw-r--r--android/src/com/artifex/mupdfdemo/MuPDFActivity.java25
1 files changed, 25 insertions, 0 deletions
diff --git a/android/src/com/artifex/mupdfdemo/MuPDFActivity.java b/android/src/com/artifex/mupdfdemo/MuPDFActivity.java
index afeedaf0..d320befd 100644
--- a/android/src/com/artifex/mupdfdemo/MuPDFActivity.java
+++ b/android/src/com/artifex/mupdfdemo/MuPDFActivity.java
@@ -75,6 +75,7 @@ public class MuPDFActivity extends Activity
private ImageButton mInkButton;
private Button mSaveInkButton;
private ImageButton mCancelInkButton;
+ private ImageButton mPrintButton;
private ViewAnimator mTopBarSwitcher;
private ImageButton mLinkButton;
private TopBarMode mTopBarMode;
@@ -522,6 +523,12 @@ public class MuPDFActivity extends Activity
}
});
+ mPrintButton.setOnClickListener(new View.OnClickListener() {
+ public void onClick(View v) {
+ printDoc();
+ }
+ });
+
mSaveInkButton.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
MuPDFView pageView = (MuPDFView) mDocView.getDisplayedView();
@@ -928,6 +935,23 @@ public class MuPDFActivity extends Activity
mPageNumberView.setText(String.format("%d / %d", index+1, core.countPages()));
}
+ private void printDoc() {
+ Intent myIntent = getIntent();
+ Uri docUri = myIntent != null ? myIntent.getData() : null;
+
+ if (docUri == null) {
+ showInfo("Print failed");
+ }
+
+ if (docUri.getScheme() == null)
+ docUri = Uri.parse("file://"+docUri.toString());
+
+ Intent printIntent = new Intent(this, PrintDialogActivity.class);
+ printIntent.setDataAndType(docUri, "aplication/pdf");
+ printIntent.putExtra("title", mFileName);
+ startActivity(printIntent);
+ }
+
private void showInfo(String message) {
mInfoView.setText(message);
@@ -984,6 +1008,7 @@ public class MuPDFActivity extends Activity
mInkButton = (ImageButton)mButtonsView.findViewById(R.id.inkButton);
mSaveInkButton = (Button)mButtonsView.findViewById(R.id.saveInkButton);
mCancelInkButton = (ImageButton)mButtonsView.findViewById(R.id.cancelInkButton);
+ mPrintButton = (ImageButton)mButtonsView.findViewById(R.id.printButton);
mTopBarSwitcher = (ViewAnimator)mButtonsView.findViewById(R.id.switcher);
mSearchBack = (ImageButton)mButtonsView.findViewById(R.id.searchBack);
mSearchFwd = (ImageButton)mButtonsView.findViewById(R.id.searchForward);