| Index: chrome/android/java/src/org/chromium/chrome/browser/contextmenu/ContextMenuParams.java
|
| diff --git a/chrome/android/java/src/org/chromium/chrome/browser/contextmenu/ContextMenuParams.java b/chrome/android/java/src/org/chromium/chrome/browser/contextmenu/ContextMenuParams.java
|
| index 58ae91dc2b7201840ecdd89b6f6820b0564e36c3..2f52aad7f3770a0186d69e40001116e6c7b2f71e 100644
|
| --- a/chrome/android/java/src/org/chromium/chrome/browser/contextmenu/ContextMenuParams.java
|
| +++ b/chrome/android/java/src/org/chromium/chrome/browser/contextmenu/ContextMenuParams.java
|
| @@ -43,6 +43,9 @@ public class ContextMenuParams {
|
| private final boolean mIsVideo;
|
| private final boolean mCanSavemedia;
|
|
|
| + private final int mTriggeringTouchXDp;
|
| + private final int mTriggeringTouchYDp;
|
| +
|
| /**
|
| * @return The URL associated with the main frame of the page that triggered the context menu.
|
| */
|
| @@ -134,10 +137,27 @@ public class ContextMenuParams {
|
| return false;
|
| }
|
|
|
| + /**
|
| + * @return The x-coordinate of the touch that triggered the context menu relative to the render
|
| + * view; 0 corresponds to the left edge.
|
| + */
|
| + public int getTriggeringTouchXDp() {
|
| + return mTriggeringTouchXDp;
|
| + }
|
| +
|
| + /**
|
| + * @return The y-coordinate of the touch that triggered the context menu relative to the render
|
| + * view; 0 corresponds to the left edge.
|
| + */
|
| + public int getTriggeringTouchYDp() {
|
| + return mTriggeringTouchYDp;
|
| + }
|
| +
|
| @VisibleForTesting
|
| ContextMenuParams(int mediaType, String pageUrl, String linkUrl, String linkText,
|
| String unfilteredLinkUrl, String srcUrl, String titleText, boolean imageWasFetchedLoFi,
|
| - Referrer referrer, boolean canSavemedia) {
|
| + Referrer referrer, boolean canSavemedia, int triggeringTouchXDp,
|
| + int triggeringTouchYDp) {
|
| mPageUrl = pageUrl;
|
| mLinkUrl = linkUrl;
|
| mLinkText = linkText;
|
| @@ -151,16 +171,19 @@ public class ContextMenuParams {
|
| mIsImage = mediaType == MediaType.MEDIA_TYPE_IMAGE;
|
| mIsVideo = mediaType == MediaType.MEDIA_TYPE_VIDEO;
|
| mCanSavemedia = canSavemedia;
|
| + mTriggeringTouchXDp = triggeringTouchXDp;
|
| + mTriggeringTouchYDp = triggeringTouchYDp;
|
| }
|
|
|
| @CalledByNative
|
| private static ContextMenuParams create(int mediaType, String pageUrl, String linkUrl,
|
| String linkText, String unfilteredLinkUrl, String srcUrl, String titleText,
|
| boolean imageWasFetchedLoFi, String sanitizedReferrer, int referrerPolicy,
|
| - boolean canSavemedia) {
|
| + boolean canSavemedia, int triggeringTouchXDp, int triggeringTouchYDp) {
|
| Referrer referrer = TextUtils.isEmpty(sanitizedReferrer)
|
| ? null : new Referrer(sanitizedReferrer, referrerPolicy);
|
| return new ContextMenuParams(mediaType, pageUrl, linkUrl, linkText, unfilteredLinkUrl,
|
| - srcUrl, titleText, imageWasFetchedLoFi, referrer, canSavemedia);
|
| + srcUrl, titleText, imageWasFetchedLoFi, referrer, canSavemedia, triggeringTouchXDp,
|
| + triggeringTouchYDp);
|
| }
|
| }
|
|
|