Skip to content

Commit b5a4544

Browse files
committed
Merge branch 'mclillill-master'
2 parents 389c1e4 + 47e38cf commit b5a4544

File tree

4 files changed

+57
-1
lines changed

4 files changed

+57
-1
lines changed

android-pdf-viewer/src/main/java/com/github/barteksc/pdfviewer/DragPinchManager.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -189,7 +189,7 @@ private void onScrollEnd(MotionEvent event) {
189189

190190
@Override
191191
public void onLongPress(MotionEvent e) {
192-
192+
pdfView.callbacks.callOnLongPress(e);
193193
}
194194

195195
@Override

android-pdf-viewer/src/main/java/com/github/barteksc/pdfviewer/PDFView.java

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -45,6 +45,7 @@
4545
import com.github.barteksc.pdfviewer.listener.OnPageScrollListener;
4646
import com.github.barteksc.pdfviewer.listener.OnRenderListener;
4747
import com.github.barteksc.pdfviewer.listener.OnTapListener;
48+
import com.github.barteksc.pdfviewer.listener.OnLongPressListener;
4849
import com.github.barteksc.pdfviewer.model.PagePart;
4950
import com.github.barteksc.pdfviewer.scroll.ScrollHandle;
5051
import com.github.barteksc.pdfviewer.source.AssetSource;
@@ -1284,6 +1285,8 @@ public class Configurator {
12841285

12851286
private OnTapListener onTapListener;
12861287

1288+
private OnLongPressListener onLongPressListener;
1289+
12871290
private OnPageErrorListener onPageErrorListener;
12881291

12891292
private LinkHandler linkHandler = new DefaultLinkHandler(PDFView.this);
@@ -1379,6 +1382,11 @@ public Configurator onTap(OnTapListener onTapListener) {
13791382
return this;
13801383
}
13811384

1385+
public Configurator onLongPress(OnLongPressListener onLongPressListener) {
1386+
this.onLongPressListener = onLongPressListener;
1387+
return this;
1388+
}
1389+
13821390
public Configurator linkHandler(LinkHandler linkHandler) {
13831391
this.linkHandler = linkHandler;
13841392
return this;
@@ -1448,6 +1456,7 @@ public void load() {
14481456
PDFView.this.callbacks.setOnPageScroll(onPageScrollListener);
14491457
PDFView.this.callbacks.setOnRender(onRenderListener);
14501458
PDFView.this.callbacks.setOnTap(onTapListener);
1459+
PDFView.this.callbacks.setOnLongPress(onLongPressListener);
14511460
PDFView.this.callbacks.setOnPageError(onPageErrorListener);
14521461
PDFView.this.callbacks.setLinkHandler(linkHandler);
14531462
PDFView.this.setSwipeEnabled(enableSwipe);

android-pdf-viewer/src/main/java/com/github/barteksc/pdfviewer/listener/Callbacks.java

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -64,6 +64,11 @@ public class Callbacks {
6464
*/
6565
private OnTapListener onTapListener;
6666

67+
/**
68+
* Call back object to call when the user does a long tap gesture
69+
*/
70+
private OnLongPressListener onLongPressListener;
71+
6772
/**
6873
* Call back object to call when clicking link
6974
*/
@@ -153,6 +158,16 @@ public boolean callOnTap(MotionEvent event) {
153158
return onTapListener != null && onTapListener.onTap(event);
154159
}
155160

161+
public void setOnLongPress(OnLongPressListener onLongPressListener) {
162+
this.onLongPressListener = onLongPressListener;
163+
}
164+
165+
public void callOnLongPress(MotionEvent event) {
166+
if (onLongPressListener != null) {
167+
onLongPressListener.onLongPress(event);
168+
}
169+
}
170+
156171
public void setLinkHandler(LinkHandler linkHandler) {
157172
this.linkHandler = linkHandler;
158173
}
Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,32 @@
1+
/**
2+
* Copyright 2017 Bartosz Schiller
3+
* <p>
4+
* Licensed under the Apache License, Version 2.0 (the "License");
5+
* you may not use this file except in compliance with the License.
6+
* You may obtain a copy of the License at
7+
* <p>
8+
* http://www.apache.org/licenses/LICENSE-2.0
9+
* <p>
10+
* Unless required by applicable law or agreed to in writing, software
11+
* distributed under the License is distributed on an "AS IS" BASIS,
12+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13+
* See the License for the specific language governing permissions and
14+
* limitations under the License.
15+
*/
16+
package com.github.barteksc.pdfviewer.listener;
17+
18+
import android.view.MotionEvent;
19+
20+
/**
21+
* Implement this interface to receive events from PDFView
22+
* when view has been long pressed
23+
*/
24+
public interface OnLongPressListener {
25+
26+
/**
27+
* Called when the user has a long tap gesture, before processing scroll handle toggling
28+
*
29+
* @param e MotionEvent that registered as a confirmed long press
30+
*/
31+
void onLongPress(MotionEvent e);
32+
}

0 commit comments

Comments
 (0)