From fb6ff5bbf28837bfdb0094102ead65d16469d89f Mon Sep 17 00:00:00 2001 From: Xiao Yu Date: Thu, 3 Dec 2020 14:27:17 -0800 Subject: [PATCH 1/2] Handle null platform plugin delegate for v1 embedding --- .../io/flutter/plugin/platform/PlatformPlugin.java | 2 +- .../flutter/plugin/platform/PlatformPluginTest.java | 12 ++++++++++++ 2 files changed, 13 insertions(+), 1 deletion(-) diff --git a/shell/platform/android/io/flutter/plugin/platform/PlatformPlugin.java b/shell/platform/android/io/flutter/plugin/platform/PlatformPlugin.java index 5dba56b4fc920..2140ce39f7a78 100644 --- a/shell/platform/android/io/flutter/plugin/platform/PlatformPlugin.java +++ b/shell/platform/android/io/flutter/plugin/platform/PlatformPlugin.java @@ -310,7 +310,7 @@ private void setSystemChromeSystemUIOverlayStyle( } private void popSystemNavigator() { - if (platformPluginDelegate.popSystemNavigator()) { + if (platformPluginDelegate != null && platformPluginDelegate.popSystemNavigator()) { // A custom behavior was executed by the delegate. Don't execute default behavior. return; } diff --git a/shell/platform/android/test/io/flutter/plugin/platform/PlatformPluginTest.java b/shell/platform/android/test/io/flutter/plugin/platform/PlatformPluginTest.java index fd67f7e38fa4e..e41236abdd579 100644 --- a/shell/platform/android/test/io/flutter/plugin/platform/PlatformPluginTest.java +++ b/shell/platform/android/test/io/flutter/plugin/platform/PlatformPluginTest.java @@ -222,4 +222,16 @@ public void setRequestedOrientationFlutterFragment() { verify(mockFragmentActivity, times(1)).setRequestedOrientation(0); } + + @Test + public void performsDefaultBehaviorWhenNoDelegateProvided() { + Activity mockActivity = mock(Activity.class); + PlatformChannel mockPlatformChannel = mock(PlatformChannel.class); + PlatformPlugin platformPlugin = + new PlatformPlugin(mockActivity, mockPlatformChannel); + + platformPlugin.mPlatformMessageHandler.popSystemNavigator(); + + verify(mockActivity, times(1)).finish(); + } } From 0324b3b4c0ddd31e79d3c563c1f356e18554c334 Mon Sep 17 00:00:00 2001 From: Xiao Yu Date: Thu, 3 Dec 2020 14:55:11 -0800 Subject: [PATCH 2/2] autoformat --- .../test/io/flutter/plugin/platform/PlatformPluginTest.java | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/shell/platform/android/test/io/flutter/plugin/platform/PlatformPluginTest.java b/shell/platform/android/test/io/flutter/plugin/platform/PlatformPluginTest.java index e41236abdd579..b57d12bac6f81 100644 --- a/shell/platform/android/test/io/flutter/plugin/platform/PlatformPluginTest.java +++ b/shell/platform/android/test/io/flutter/plugin/platform/PlatformPluginTest.java @@ -227,8 +227,7 @@ public void setRequestedOrientationFlutterFragment() { public void performsDefaultBehaviorWhenNoDelegateProvided() { Activity mockActivity = mock(Activity.class); PlatformChannel mockPlatformChannel = mock(PlatformChannel.class); - PlatformPlugin platformPlugin = - new PlatformPlugin(mockActivity, mockPlatformChannel); + PlatformPlugin platformPlugin = new PlatformPlugin(mockActivity, mockPlatformChannel); platformPlugin.mPlatformMessageHandler.popSystemNavigator();