Disable Impeller when the manifest explicitly disables it (#53108) After https://github.com/flutter/engine/pull/53099, impeller is always enabled, even if the manifest disables it using `io.flutter.embedding.android.EnableImpeller`. This PR causes it to respect the manifest value if it is explicitly disabled. Fixes b/343603270 [C++, Objective-C, Java style guides]: https://github.com/flutter/engine/blob/main/CONTRIBUTING.md#style
diff --git a/shell/platform/android/io/flutter/embedding/engine/loader/FlutterLoader.java b/shell/platform/android/io/flutter/embedding/engine/loader/FlutterLoader.java index b540c20..c720f37 100644 --- a/shell/platform/android/io/flutter/embedding/engine/loader/FlutterLoader.java +++ b/shell/platform/android/io/flutter/embedding/engine/loader/FlutterLoader.java
@@ -340,8 +340,10 @@ shellArgs.add("--prefetched-default-font-manager"); if (metaData != null) { - if (metaData.getBoolean(ENABLE_IMPELLER_META_DATA_KEY, false)) { + if (metaData.getBoolean(ENABLE_IMPELLER_META_DATA_KEY, true)) { shellArgs.add("--enable-impeller"); + } else { + shellArgs.add("--enable-impeller=false"); } if (metaData.getBoolean(ENABLE_VULKAN_VALIDATION_META_DATA_KEY, false)) { shellArgs.add("--enable-vulkan-validation");