Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(5910)

Unified Diff: chrome/browser/resources/pdf/gesture_detector.js

Issue 2855953003: Handle long press in PDF documents. (Closed)
Patch Set: Rebase to master Created 3 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « chrome/browser/pdf/pdf_extension_test.cc ('k') | chrome/browser/resources/pdf/pdf.js » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: chrome/browser/resources/pdf/gesture_detector.js
diff --git a/chrome/browser/resources/pdf/gesture_detector.js b/chrome/browser/resources/pdf/gesture_detector.js
index b8b1a7b87547add04aa5ba592f8b5683a6cd0ab2..091707649d2072235ef1aae33be0f23886b12f09 100644
--- a/chrome/browser/resources/pdf/gesture_detector.js
+++ b/chrome/browser/resources/pdf/gesture_detector.js
@@ -26,6 +26,7 @@ class GestureDetector {
'touchcancel', this.onTouch_.bind(this), { passive: true });
this.pinchStartEvent_ = null;
+ this.lastTouchTouchesCount_ = 0;
this.lastEvent_ = null;
this.listeners_ = new Map([
@@ -47,6 +48,14 @@ class GestureDetector {
}
/**
+ * Returns true if the last touch start was a two finger touch.
+ * @return {boolean} True if the last touch start was a two finger touch.
+ */
+ wasTwoFingerTouch() {
+ return this.lastTouchTouchesCount_ == 2;
+ }
+
+ /**
* Call the relevant listeners with the given |pinchEvent|.
* @private
* @param {!Object} pinchEvent The event to notify the listeners of.
@@ -64,14 +73,16 @@ class GestureDetector {
* @param {!TouchEvent} event Touch event on the element.
*/
onTouchStart_(event) {
- if (event.touches.length == 2) {
- this.pinchStartEvent_ = event;
- this.lastEvent_ = event;
- this.notify_({
- type: 'pinchstart',
- center: GestureDetector.center_(event)
- });
- }
+ this.lastTouchTouchesCount_ = event.touches.length;
+ if (!this.wasTwoFingerTouch())
+ return;
+
+ this.pinchStartEvent_ = event;
+ this.lastEvent_ = event;
+ this.notify_({
+ type: 'pinchstart',
+ center: GestureDetector.center_(event)
+ });
}
/**
« no previous file with comments | « chrome/browser/pdf/pdf_extension_test.cc ('k') | chrome/browser/resources/pdf/pdf.js » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698