Merge "Import translations. DO NOT MERGE"
diff --git a/chromium/java/com/android/webview/chromium/WebViewChromium.java b/chromium/java/com/android/webview/chromium/WebViewChromium.java
index 0201aeb..8706e4a 100644
--- a/chromium/java/com/android/webview/chromium/WebViewChromium.java
+++ b/chromium/java/com/android/webview/chromium/WebViewChromium.java
@@ -32,6 +32,7 @@
 import android.os.Build;
 import android.os.Bundle;
 import android.os.Looper;
+import android.os.Handler;
 import android.os.Message;
 import android.print.PrintDocumentAdapter;
 import android.text.TextUtils;
@@ -70,6 +71,7 @@
 import org.chromium.android_webview.AwSettings;
 import org.chromium.android_webview.AwPrintDocumentAdapter;
 import org.chromium.base.ThreadUtils;
+import org.chromium.content.browser.SmartClipProvider;
 import org.chromium.content_public.browser.LoadUrlParams;
 import org.chromium.net.NetworkChangeNotifier;
 
@@ -93,7 +95,7 @@
  * and a small set of no-op deprecated APIs.
  */
 class WebViewChromium implements WebViewProvider,
-          WebViewProvider.ScrollDelegate, WebViewProvider.ViewDelegate {
+          WebViewProvider.ScrollDelegate, WebViewProvider.ViewDelegate, SmartClipProvider {
 
     private class WebViewChromiumRunQueue {
         public WebViewChromiumRunQueue() {
@@ -2256,4 +2258,19 @@
             return mWebViewPrivate.super_onHoverEvent(event);
         }
     }
+
+    // Implements SmartClipProvider
+    @Override
+    public void extractSmartClipData(int x, int y, int width, int height) {
+        checkThread();
+        mAwContents.extractSmartClipData(x, y, width, height);
+    }
+
+    // Implements SmartClipProvider
+    @Override
+    public void setSmartClipResultHandler(final Handler resultHandler) {
+        checkThread();
+        mAwContents.setSmartClipResultHandler(resultHandler);
+    }
+
 }
diff --git a/chromium/proguard.flags b/chromium/proguard.flags
index 6401a8c..b19519f 100644
--- a/chromium/proguard.flags
+++ b/chromium/proguard.flags
@@ -80,6 +80,12 @@
   *** startFinalizer(java.lang.Class,java.lang.Object);
 }
 
+# Keep support framework support for SmartClip.
+-keep class com.android.webview.chromium.WebViewChromium {
+  public void extractSmartClipData(int,int,int,int);
+  public void setSmartClipResultHandler(android.os.Handler);
+}
+
 # We need to explicitly keep classes and constructors referenced only in
 # layout resources.
 -keep class com.android.org.chromium.ui.ColorPickerAdvanced {