summaryrefslogtreecommitdiff
path: root/android/src/com/artifex/mupdfdemo/MuPDFReaderView.java
diff options
context:
space:
mode:
authorPaul Gardiner <paulg.artifex@glidos.net>2013-02-18 16:22:25 +0000
committerPaul Gardiner <paulg.artifex@glidos.net>2013-02-22 12:21:25 +0000
commit4553555e8bab6f749ae007664ad6745ee816e4bf (patch)
tree0992cac8b4d53339cbc6d8e07816da299930849f /android/src/com/artifex/mupdfdemo/MuPDFReaderView.java
parent860f401dc6c349d9f838d6dc90bc921876dca58e (diff)
downloadmupdf-4553555e8bab6f749ae007664ad6745ee816e4bf.tar.xz
Android: add annotation-editing menu, triggered on annotation selection
Diffstat (limited to 'android/src/com/artifex/mupdfdemo/MuPDFReaderView.java')
-rw-r--r--android/src/com/artifex/mupdfdemo/MuPDFReaderView.java70
1 files changed, 36 insertions, 34 deletions
diff --git a/android/src/com/artifex/mupdfdemo/MuPDFReaderView.java b/android/src/com/artifex/mupdfdemo/MuPDFReaderView.java
index 95298b6c..dfb7cf0b 100644
--- a/android/src/com/artifex/mupdfdemo/MuPDFReaderView.java
+++ b/android/src/com/artifex/mupdfdemo/MuPDFReaderView.java
@@ -18,6 +18,7 @@ public class MuPDFReaderView extends ReaderView {
protected void onTapMainDocArea() {}
protected void onDocMotion() {}
+ protected void onHit(Hit item) {};
public void setLinksEnabled(boolean b) {
mLinksEnabled = b;
@@ -52,40 +53,41 @@ public class MuPDFReaderView extends ReaderView {
if (!mSelecting && !tapDisabled) {
MuPDFView pageView = (MuPDFView) getDisplayedView();
- if (MuPDFCore.javascriptSupported()
- && pageView.passClickEvent(e.getX(), e.getY())) {
- // If the page consumes the event do nothing else
- } else if (mLinksEnabled && pageView != null
- && (link = pageView.hitLink(e.getX(), e.getY())) != null) {
- link.acceptVisitor(new LinkInfoVisitor() {
- @Override
- public void visitInternal(LinkInfoInternal li) {
- // Clicked on an internal (GoTo) link
- setDisplayedViewIndex(li.pageNumber);
- }
-
- @Override
- public void visitExternal(LinkInfoExternal li) {
- Intent intent = new Intent(Intent.ACTION_VIEW, Uri
- .parse(li.url));
- mContext.startActivity(intent);
- }
-
- @Override
- public void visitRemote(LinkInfoRemote li) {
- // Clicked on a remote (GoToR) link
- }
- });
- } else if (e.getX() < tapPageMargin) {
- super.smartMoveBackwards();
- } else if (e.getX() > super.getWidth() - tapPageMargin) {
- super.smartMoveForwards();
- } else if (e.getY() < tapPageMargin) {
- super.smartMoveBackwards();
- } else if (e.getY() > super.getHeight() - tapPageMargin) {
- super.smartMoveForwards();
- } else {
- onTapMainDocArea();
+ Hit item = pageView.passClickEvent(e.getX(), e.getY());
+ onHit(item);
+ if (item == Hit.Nothing) {
+ if (mLinksEnabled && pageView != null
+ && (link = pageView.hitLink(e.getX(), e.getY())) != null) {
+ link.acceptVisitor(new LinkInfoVisitor() {
+ @Override
+ public void visitInternal(LinkInfoInternal li) {
+ // Clicked on an internal (GoTo) link
+ setDisplayedViewIndex(li.pageNumber);
+ }
+
+ @Override
+ public void visitExternal(LinkInfoExternal li) {
+ Intent intent = new Intent(Intent.ACTION_VIEW, Uri
+ .parse(li.url));
+ mContext.startActivity(intent);
+ }
+
+ @Override
+ public void visitRemote(LinkInfoRemote li) {
+ // Clicked on a remote (GoToR) link
+ }
+ });
+ } else if (e.getX() < tapPageMargin) {
+ super.smartMoveBackwards();
+ } else if (e.getX() > super.getWidth() - tapPageMargin) {
+ super.smartMoveForwards();
+ } else if (e.getY() < tapPageMargin) {
+ super.smartMoveBackwards();
+ } else if (e.getY() > super.getHeight() - tapPageMargin) {
+ super.smartMoveForwards();
+ } else {
+ onTapMainDocArea();
+ }
}
}
return super.onSingleTapUp(e);