Revert "Support downsampling in ViewResourceAdapter"

This reverts commit 2bc512d784405143447c593b80b9728b117cd516.

Reason for revert: Cause of https://crbug.com/966859

Original change's description:
> Support downsampling in ViewResourceAdapter
> 
> Bug: 965609
> Change-Id: I148d5fe8b7371a529b612ed2e9b407ced0062f82
> Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1623139
> Commit-Queue: Wei-Yin Chen (陳威尹) <wychen@chromium.org>
> Reviewed-by: David Trainor <dtrainor@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#662915}

TBR=dtrainor@chromium.org,wychen@chromium.org

Change-Id: I1f97b70d1a5432bb303b5a5daece91daf11899c4
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: 965609
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1629327
Reviewed-by: Brian Sheedy <bsheedy@chromium.org>
Commit-Queue: Brian Sheedy <bsheedy@chromium.org>
Cr-Commit-Position: refs/heads/master@{#663268}
diff --git a/ui/android/java/src/org/chromium/ui/resources/ResourceManager.java b/ui/android/java/src/org/chromium/ui/resources/ResourceManager.java
index 9471e12..2e1fa08 100644
--- a/ui/android/java/src/org/chromium/ui/resources/ResourceManager.java
+++ b/ui/android/java/src/org/chromium/ui/resources/ResourceManager.java
@@ -137,7 +137,6 @@
         if (mNativeResourceManagerPtr == 0) return;
 
         nativeOnResourceReady(mNativeResourceManagerPtr, resType, resId, resource.getBitmap(),
-                resource.getBitmapSize().width(), resource.getBitmapSize().height(),
                 resource.createNativeResource());
     }
 
@@ -194,7 +193,7 @@
     }
 
     private native void nativeOnResourceReady(long nativeResourceManagerImpl, int resType,
-            int resId, Bitmap bitmap, int width, int height, long nativeResource);
+            int resId, Bitmap bitmap, long nativeResource);
     private native void nativeRemoveResource(long nativeResourceManagerImpl, int resType,
             int resId);
     private native void nativeClearTintedResourceCache(long nativeResourceManagerImpl);
diff --git a/ui/android/java/src/org/chromium/ui/resources/dynamics/ViewResourceAdapter.java b/ui/android/java/src/org/chromium/ui/resources/dynamics/ViewResourceAdapter.java
index e9561ae..6e7c9c9 100644
--- a/ui/android/java/src/org/chromium/ui/resources/dynamics/ViewResourceAdapter.java
+++ b/ui/android/java/src/org/chromium/ui/resources/dynamics/ViewResourceAdapter.java
@@ -27,8 +27,7 @@
     private final Rect mDirtyRect = new Rect();
 
     private Bitmap mBitmap;
-    private Rect mViewSize = new Rect();
-    protected float mScale = 1;
+    private Rect mBitmapSize = new Rect();
 
     /**
      * Builds a {@link ViewResourceAdapter} instance around {@code view}.
@@ -72,19 +71,7 @@
 
     @Override
     public Rect getBitmapSize() {
-        return mViewSize;
-    }
-
-    /**
-     * Set the downsampling scale. The rendered size is not affected.
-     * @param scale The scale to use. <1 means the Bitmap is smaller than the View.
-     */
-    public void setDownsamplingScale(float scale) {
-        assert scale <= 1;
-        if (mScale != scale) {
-            invalidate(null);
-        }
-        mScale = scale;
+        return mBitmapSize;
     }
 
     /**
@@ -156,10 +143,7 @@
      * @param canvas The {@link Canvas} that will be drawn to.
      */
     protected void capture(Canvas canvas) {
-        canvas.save();
-        canvas.scale(mScale, mScale);
         mView.draw(canvas);
-        canvas.restore();
     }
 
     /**
@@ -172,8 +156,8 @@
      * @return Whether |mBitmap| is corresponding to |mView| or not.
      */
     private boolean validateBitmap() {
-        int viewWidth = (int) (mView.getWidth() * mScale);
-        int viewHeight = (int) (mView.getHeight() * mScale);
+        int viewWidth = mView.getWidth();
+        int viewHeight = mView.getHeight();
         boolean isEmpty = viewWidth == 0 || viewHeight == 0;
         if (isEmpty) {
             viewWidth = 1;
@@ -188,8 +172,8 @@
         if (mBitmap == null) {
             mBitmap = Bitmap.createBitmap(viewWidth, viewHeight, Bitmap.Config.ARGB_8888);
             mBitmap.setHasAlpha(true);
-            mViewSize.set(0, 0, mView.getWidth(), mView.getHeight());
-            mDirtyRect.set(mViewSize);
+            mDirtyRect.set(0, 0, viewWidth, viewHeight);
+            mBitmapSize.set(0, 0, mBitmap.getWidth(), mBitmap.getHeight());
         }
 
         return !isEmpty;
diff --git a/ui/android/junit/src/org/chromium/ui/resources/dynamics/ViewResourceAdapterTest.java b/ui/android/junit/src/org/chromium/ui/resources/dynamics/ViewResourceAdapterTest.java
index c511853b..8661287 100644
--- a/ui/android/junit/src/org/chromium/ui/resources/dynamics/ViewResourceAdapterTest.java
+++ b/ui/android/junit/src/org/chromium/ui/resources/dynamics/ViewResourceAdapterTest.java
@@ -79,19 +79,6 @@
     }
 
     @Test
-    public void testSetDownsamplingSize() {
-        float scale = 0.5f;
-        mAdapter.setDownsamplingScale(scale);
-        Bitmap bitmap = mAdapter.getBitmap();
-        assertEquals(mViewWidth * scale, bitmap.getWidth(), 1);
-        assertEquals(mViewHeight * scale, bitmap.getHeight(), 1);
-
-        Rect rect = mAdapter.getBitmapSize();
-        assertEquals(mViewWidth, rect.width());
-        assertEquals(mViewHeight, rect.height());
-    }
-
-    @Test
     public void testIsDirty() {
         assertTrue(mAdapter.isDirty());
 
@@ -113,21 +100,6 @@
     }
 
     @Test
-    public void testOnLayoutChangeDownsampled() {
-        mAdapter.setDownsamplingScale(0.5f);
-
-        mAdapter.getBitmap();
-        assertFalse(mAdapter.isDirty());
-
-        mAdapter.onLayoutChange(mView, 0, 0, 1, 2, 0, 0, mViewWidth, mViewHeight);
-        assertTrue(mAdapter.isDirty());
-
-        Rect dirtyRect = mAdapter.getDirtyRect();
-        assertEquals(1, dirtyRect.width());
-        assertEquals(2, dirtyRect.height());
-    }
-
-    @Test
     public void testInvalidate() {
         mAdapter.getBitmap();
         assertFalse(mAdapter.isDirty());
@@ -152,19 +124,6 @@
     }
 
     @Test
-    public void testInvalidateRectDownsampled() {
-        mAdapter.setDownsamplingScale(0.5f);
-
-        mAdapter.getBitmap();
-        assertFalse(mAdapter.isDirty());
-
-        Rect dirtyRect = new Rect(1, 2, 3, 4);
-        mAdapter.invalidate(dirtyRect);
-        assertTrue(mAdapter.isDirty());
-        assertEquals(dirtyRect.toString(), mAdapter.getDirtyRect().toString());
-    }
-
-    @Test
     public void testInvalidateRectUnion() {
         mAdapter.getBitmap();
         assertFalse(mAdapter.isDirty());
@@ -256,18 +215,4 @@
         assertEquals(mViewWidth, rect.width());
         assertEquals(mViewHeight, rect.height());
     }
-
-    @Test
-    public void testGetDirtyRectDownsampled() {
-        mAdapter.setDownsamplingScale(0.5f);
-
-        mAdapter.getBitmap();
-        Rect rect = mAdapter.getDirtyRect();
-        assertTrue(rect.isEmpty());
-
-        mAdapter.invalidate(null);
-        rect = mAdapter.getDirtyRect();
-        assertEquals(mViewWidth, rect.width());
-        assertEquals(mViewHeight, rect.height());
-    }
 }
diff --git a/ui/android/resources/resource_manager_impl.cc b/ui/android/resources/resource_manager_impl.cc
index bc900780..78e6e86 100644
--- a/ui/android/resources/resource_manager_impl.cc
+++ b/ui/android/resources/resource_manager_impl.cc
@@ -205,8 +205,6 @@
                                           jint res_type,
                                           jint res_id,
                                           const JavaRef<jobject>& bitmap,
-                                          jint width,
-                                          jint height,
                                           jlong native_resource) {
   DCHECK_GE(res_type, ANDROID_RESOURCE_TYPE_FIRST);
   DCHECK_LE(res_type, ANDROID_RESOURCE_TYPE_LAST);
@@ -224,7 +222,7 @@
   resource->SetUIResource(
       cc::ScopedUIResource::Create(ui_resource_manager_,
                                    cc::UIResourceBitmap(skbitmap)),
-      gfx::Size(width, height));
+      jbitmap.size());
 }
 
 void ResourceManagerImpl::RemoveResource(
diff --git a/ui/android/resources/resource_manager_impl.h b/ui/android/resources/resource_manager_impl.h
index 44a0827..9eb3998 100644
--- a/ui/android/resources/resource_manager_impl.h
+++ b/ui/android/resources/resource_manager_impl.h
@@ -49,8 +49,6 @@
                        jint res_type,
                        jint res_id,
                        const base::android::JavaRef<jobject>& bitmap,
-                       jint width,
-                       jint height,
                        jlong native_resource);
   void RemoveResource(
       JNIEnv* env,
diff --git a/ui/android/resources/resource_manager_impl_unittest.cc b/ui/android/resources/resource_manager_impl_unittest.cc
index 077a050..0d3a3f7 100644
--- a/ui/android/resources/resource_manager_impl_unittest.cc
+++ b/ui/android/resources/resource_manager_impl_unittest.cc
@@ -55,7 +55,7 @@
     small_bitmap.setImmutable();
 
     OnResourceReady(nullptr, nullptr, res_type, res_id,
-                    gfx::ConvertToJavaBitmap(&small_bitmap), 1, 1,
+                    gfx::ConvertToJavaBitmap(&small_bitmap),
                     reinterpret_cast<intptr_t>(new Resource()));
   }