Remove stale TODOs in CopyTextureForBrowser and ExternalTexture

Bug: chromium:1361363
Change-Id: I2ca3768d0fe3a418d79d74e20078469f6017a70b
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/142640
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Commit-Queue: Shaobo Yan <shaobo.yan@intel.com>
Kokoro: Kokoro <noreply+kokoro@google.com>
Reviewed-by: Austin Eng <enga@chromium.org>
diff --git a/dawn.json b/dawn.json
index 75580fc..f134bab 100644
--- a/dawn.json
+++ b/dawn.json
@@ -1371,10 +1371,9 @@
     "extent 2D": {
         "category": "structure",
         "tags": ["dawn"],
-        "_TODO": "crbug.com/1316671: Remove default value of 'width' after chromium side chagnes landed",
         "members": [
-            {"name": "width", "type": "uint32_t", "default": 0},
-            {"name": "height", "type": "uint32_t", "default": 1}
+            {"name": "width", "type": "uint32_t"},
+            {"name": "height", "type": "uint32_t"}
         ]
     },
     "extent 3D": {
diff --git a/src/dawn/native/CopyTextureForBrowserHelper.cpp b/src/dawn/native/CopyTextureForBrowserHelper.cpp
index 0013ba8..f0bd78c 100644
--- a/src/dawn/native/CopyTextureForBrowserHelper.cpp
+++ b/src/dawn/native/CopyTextureForBrowserHelper.cpp
@@ -695,15 +695,8 @@
     DAWN_TRY(source->externalTexture->ValidateCanUseInSubmitNow());
 
     Extent2D sourceSize;
-
-    // TODO(crbug.com/dawn/1694): Remove this workaround that use visible rect
-    // if natural size it not set after chromium side changes ready.
-    if (source->naturalSize.width == 0) {
-        sourceSize = source->externalTexture->GetVisibleSize();
-    } else {
-        sourceSize.width = source->naturalSize.width;
-        sourceSize.height = source->naturalSize.height;
-    }
+    sourceSize.width = source->naturalSize.width;
+    sourceSize.height = source->naturalSize.height;
 
     // All texture dimensions are in uint32_t so by doing checks in uint64_t we avoid
     // overflows.
@@ -742,13 +735,6 @@
     info.origin = source->origin;
     info.size = {source->naturalSize.width, source->naturalSize.height, 1};
 
-    // TODO(crbug.com/dawn/1694): Remove this workaround that use visible rect
-    // if natural size it not set after chromium side changes ready.
-    if (info.size.width == 0) {
-        const Extent2D& visibleSize = source->externalTexture->GetVisibleSize();
-        info.size = {visibleSize.width, visibleSize.height, 1};
-    }
-
     RenderPipelineBase* pipeline;
     DAWN_TRY_ASSIGN(pipeline, GetOrCreateCopyExternalTextureForBrowserPipeline(
                                   device, destination->texture->GetFormat().format));
diff --git a/src/dawn/tests/unittests/native/AllowedErrorTests.cpp b/src/dawn/tests/unittests/native/AllowedErrorTests.cpp
index 504a5e4..3702eaa 100644
--- a/src/dawn/tests/unittests/native/AllowedErrorTests.cpp
+++ b/src/dawn/tests/unittests/native/AllowedErrorTests.cpp
@@ -175,11 +175,13 @@
     externalTextureDesc.gamutConversionMatrix = placeholderConstantArray.data();
     externalTextureDesc.srcTransferFunctionParameters = placeholderConstantArray.data();
     externalTextureDesc.dstTransferFunctionParameters = placeholderConstantArray.data();
+    externalTextureDesc.visibleOrigin = {0, 0};
     externalTextureDesc.visibleSize = {4, 4};
     externalTextureDesc.plane0 = device.CreateTexture(&textureDesc).CreateView(&textureViewDesc);
 
     wgpu::ImageCopyExternalTexture src = {};
     src.externalTexture = device.CreateExternalTexture(&externalTextureDesc);
+    src.naturalSize = {4, 4};
     wgpu::ImageCopyTexture dst = {};
     dst.texture = device.CreateTexture(&textureDesc);
     wgpu::Extent3D size = {4, 4};