Flutter 2.13 candidate.10 (#33229)

* [flutter_releases] Apply flutter-2.13 candidate.7 CPs to latest roll (#33169)

* [flutter_releases] Fix condition in OpacityLayer where it inherits opacity twice (#33085) (#33105)

Co-authored-by: Jim Graham <flar@google.com>

* [flutter_releases] Remove reference to FX_LOG_ALL (#33027) (#33147)

It was partially removed in
https://fuchsia-review.googlesource.com/c/fuchsia/+/674049; this commit
allows remaining references to be removed.

Co-authored-by: Tamir Duberstein <tamird@google.com>

Co-authored-by: Jim Graham <flar@google.com>
Co-authored-by: Tamir Duberstein <tamird@google.com>

* Fix SparseArray lookup in PlatformViewsController (#32947)

Co-authored-by: Casey Hillers <chillers@google.com>
Co-authored-by: Jim Graham <flar@google.com>
Co-authored-by: Tamir Duberstein <tamird@google.com>
Co-authored-by: Emmanuel Garcia <egarciad@google.com>
diff --git a/shell/platform/android/io/flutter/plugin/platform/PlatformViewsController.java b/shell/platform/android/io/flutter/plugin/platform/PlatformViewsController.java
index d675d50..08c8138 100644
--- a/shell/platform/android/io/flutter/plugin/platform/PlatformViewsController.java
+++ b/shell/platform/android/io/flutter/plugin/platform/PlatformViewsController.java
@@ -541,16 +541,18 @@
   public void attachToView(@NonNull FlutterView newFlutterView) {
     flutterView = newFlutterView;
     // Add wrapper for platform views that use GL texture.
-    for (int viewId = 0; viewId < viewWrappers.size(); viewId++) {
-      flutterView.addView(viewWrappers.get(viewId));
+    for (int index = 0; index < viewWrappers.size(); index++) {
+      final PlatformViewWrapper view = viewWrappers.valueAt(index);
+      flutterView.addView(view);
     }
     // Add wrapper for platform views that are composed at the view hierarchy level.
-    for (int viewId = 0; viewId < platformViewParent.size(); viewId++) {
-      flutterView.addView(platformViewParent.get(viewId));
+    for (int index = 0; index < platformViewParent.size(); index++) {
+      final FlutterMutatorView view = platformViewParent.valueAt(index);
+      flutterView.addView(view);
     }
     // Notify platform views that they are now attached to a FlutterView.
-    for (int platformViewId = 0; platformViewId < platformViews.size(); platformViewId++) {
-      final PlatformView view = platformViews.valueAt(platformViewId);
+    for (int index = 0; index < platformViews.size(); index++) {
+      final PlatformView view = platformViews.valueAt(index);
       view.onFlutterViewAttached(flutterView);
     }
   }
@@ -564,12 +566,14 @@
    */
   public void detachFromView() {
     // Remove wrapper for platform views that use GL texture.
-    for (int viewId = 0; viewId < viewWrappers.size(); viewId++) {
-      flutterView.removeView(viewWrappers.get(viewId));
+    for (int index = 0; index < viewWrappers.size(); index++) {
+      final PlatformViewWrapper view = viewWrappers.valueAt(index);
+      flutterView.removeView(view);
     }
     // Remove wrapper for platform views that are composed at the view hierarchy level.
-    for (int viewId = 0; viewId < platformViewParent.size(); viewId++) {
-      flutterView.removeView(platformViewParent.get(viewId));
+    for (int index = 0; index < platformViewParent.size(); index++) {
+      final FlutterMutatorView view = platformViewParent.valueAt(index);
+      flutterView.removeView(view);
     }
     destroyOverlaySurfaces();
     removeOverlaySurfaces();
@@ -577,8 +581,8 @@
     flutterViewConvertedToImageView = false;
 
     // Notify that the platform view have been detached from FlutterView.
-    for (int platformViewId = 0; platformViewId < platformViews.size(); platformViewId++) {
-      final PlatformView view = platformViews.valueAt(platformViewId);
+    for (int index = 0; index < platformViews.size(); index++) {
+      final PlatformView view = platformViews.valueAt(index);
       view.onFlutterViewDetached();
     }
   }
diff --git a/shell/platform/android/test/io/flutter/plugin/platform/PlatformViewsControllerTest.java b/shell/platform/android/test/io/flutter/plugin/platform/PlatformViewsControllerTest.java
index c9e293d..f4e5f4a 100644
--- a/shell/platform/android/test/io/flutter/plugin/platform/PlatformViewsControllerTest.java
+++ b/shell/platform/android/test/io/flutter/plugin/platform/PlatformViewsControllerTest.java
@@ -785,7 +785,7 @@
     PlatformViewsController platformViewsController = new PlatformViewsController();
     platformViewsController.setSoftwareRendering(true);
 
-    int platformViewId = 0;
+    int platformViewId = 100;
     assertNull(platformViewsController.getPlatformViewById(platformViewId));
 
     PlatformViewFactory viewFactory = mock(PlatformViewFactory.class);