From 0a6e802365ac6f4fa8a9ecc5d675dfd3a759dcca Mon Sep 17 00:00:00 2001 From: Amir Hardon Date: Mon, 15 Jul 2019 12:52:48 -0700 Subject: [PATCH] Make the virtual display's window translucent --- .../plugin/platform/SingleViewPresentation.java | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/shell/platform/android/io/flutter/plugin/platform/SingleViewPresentation.java b/shell/platform/android/io/flutter/plugin/platform/SingleViewPresentation.java index 7acd66b3b4fc5..3fd1e04577460 100644 --- a/shell/platform/android/io/flutter/plugin/platform/SingleViewPresentation.java +++ b/shell/platform/android/io/flutter/plugin/platform/SingleViewPresentation.java @@ -96,7 +96,11 @@ public SingleViewPresentation( Object createParams, OnFocusChangeListener focusChangeListener ) { - super(outerContext, display); + // By default alpha is not preserved for the VD's contents. + // We make the window translucent as a side effect of doing so is preserving alpha. + // There should not be extra performance cost for setting the window to be translucent as + // there is only a single window within the VD. + super(outerContext, display, android.R.style.Theme_Translucent_NoTitleBar_Fullscreen); this.viewFactory = viewFactory; this.accessibilityEventsDelegate = accessibilityEventsDelegate; this.viewId = viewId; @@ -109,6 +113,7 @@ public SingleViewPresentation( ); } + /** * Creates a presentation that will attach an already existing view as * its root view. @@ -124,7 +129,11 @@ public SingleViewPresentation( OnFocusChangeListener focusChangeListener, boolean startFocused ) { - super(outerContext, display); + // By default alpha is not preserved for the VD's contents. + // We make the window translucent as a side effect of doing so is preserving alpha. + // There should not be extra performance cost for setting the window to be translucent as + // there is only a single window within the VD. + super(outerContext, display, android.R.style.Theme_Translucent_NoTitleBar_Fullscreen); this.accessibilityEventsDelegate = accessibilityEventsDelegate; viewFactory = null; this.state = state;