Merge "Revert "Expose setDrawGLFunctionDetachedCallback to webview"" into nyc-dev
diff --git a/api/system-current.txt b/api/system-current.txt
index a8afd96..3344b52 100644
--- a/api/system-current.txt
+++ b/api/system-current.txt
@@ -48971,7 +48971,6 @@
     method public int getPackageId(android.content.res.Resources, java.lang.String);
     method public void invokeDrawGlFunctor(android.view.View, long, boolean);
     method public boolean isTraceTagEnabled();
-    method public java.lang.Runnable setDrawGlFunctionDetachedCallback(android.view.View, java.lang.Runnable);
     method public void setOnTraceEnabledChangeListener(android.webkit.WebViewDelegate.OnTraceEnabledChangeListener);
   }
 
diff --git a/core/java/android/view/View.java b/core/java/android/view/View.java
index 5b757d3..4e7d1914 100644
--- a/core/java/android/view/View.java
+++ b/core/java/android/view/View.java
@@ -3906,7 +3906,6 @@
      * cleanup.
      */
     final RenderNode mRenderNode;
-    private Runnable mRenderNodeDetachedCallback;
 
     /**
      * Set to true when the view is sending hover accessibility events because it
@@ -16065,20 +16064,6 @@
      * @hide
      */
     public void onRenderNodeDetached(RenderNode renderNode) {
-        if (renderNode == mRenderNode && mRenderNodeDetachedCallback != null) {
-            mRenderNodeDetachedCallback.run();
-        }
-    }
-
-    /**
-     * Set callback for functor detach. Exposed to WebView through WebViewDelegate.
-     * Should not be used otherwise.
-     * @hide
-     */
-    public final Runnable setRenderNodeDetachedCallback(@Nullable Runnable callback) {
-        Runnable oldCallback = mRenderNodeDetachedCallback;
-        mRenderNodeDetachedCallback = callback;
-        return oldCallback;
     }
 
     /**
diff --git a/core/java/android/webkit/WebViewDelegate.java b/core/java/android/webkit/WebViewDelegate.java
index 85d7cd0..9e73af2 100644
--- a/core/java/android/webkit/WebViewDelegate.java
+++ b/core/java/android/webkit/WebViewDelegate.java
@@ -131,24 +131,6 @@
     }
 
     /**
-     * Set the Runnable callback the DrawGlFunction functor is detached and free to be destroyed.
-     * This will replace the previous callback, if any.
-     *
-     * @param view The view to set the callback. Should be the view where onDraw inserted
-     *        DrawGLFunctor.
-     * @param callback The new callback to set on the view.
-     * @throws IllegalArgumentException if view is null.
-     * @return The previous callback on this view.
-     */
-    public Runnable setDrawGlFunctionDetachedCallback(
-        @NonNull View view, @Nullable Runnable callback) {
-        if (view == null) {
-            throw new IllegalArgumentException("View cannot be null");
-        }
-        return view.setRenderNodeDetachedCallback(callback);
-    }
-
-    /**
      * Detaches the draw GL functor.
      *
      * @param nativeDrawGLFunctor the pointer to the native functor that implements