Loading core/java/android/window/WindowProviderService.java +13 −2 Original line number Diff line number Diff line Loading @@ -34,6 +34,7 @@ import android.content.res.Configuration; import android.hardware.display.DisplayManager; import android.os.Bundle; import android.os.IBinder; import android.util.Log; import android.view.Display; import android.view.WindowManager; import android.view.WindowManager.LayoutParams.WindowType; Loading @@ -52,6 +53,8 @@ import android.view.WindowManagerImpl; @UiContext public abstract class WindowProviderService extends Service implements WindowProvider { private static final String TAG = WindowProviderService.class.getSimpleName(); private final Bundle mOptions; private final WindowTokenClient mWindowToken = new WindowTokenClient(); private final WindowContextController mController = new WindowContextController(mWindowToken); Loading Loading @@ -194,8 +197,16 @@ public abstract class WindowProviderService extends Service implements WindowPro public final Context createServiceBaseContext(ActivityThread mainThread, LoadedApk packageInfo) { final Context context = super.createServiceBaseContext(mainThread, packageInfo); final Display display = context.getSystemService(DisplayManager.class) .getDisplay(getInitialDisplayId()); final DisplayManager displayManager = context.getSystemService(DisplayManager.class); final int initialDisplayId = getInitialDisplayId(); Display display = displayManager.getDisplay(initialDisplayId); // Fallback to use the default display if the initial display to start WindowProviderService // is detached. if (display == null) { Log.e(TAG, "Display with id " + initialDisplayId + " not found, falling back to " + "DEFAULT_DISPLAY"); display = displayManager.getDisplay(DEFAULT_DISPLAY); } return context.createTokenContext(mWindowToken, display); } Loading Loading
core/java/android/window/WindowProviderService.java +13 −2 Original line number Diff line number Diff line Loading @@ -34,6 +34,7 @@ import android.content.res.Configuration; import android.hardware.display.DisplayManager; import android.os.Bundle; import android.os.IBinder; import android.util.Log; import android.view.Display; import android.view.WindowManager; import android.view.WindowManager.LayoutParams.WindowType; Loading @@ -52,6 +53,8 @@ import android.view.WindowManagerImpl; @UiContext public abstract class WindowProviderService extends Service implements WindowProvider { private static final String TAG = WindowProviderService.class.getSimpleName(); private final Bundle mOptions; private final WindowTokenClient mWindowToken = new WindowTokenClient(); private final WindowContextController mController = new WindowContextController(mWindowToken); Loading Loading @@ -194,8 +197,16 @@ public abstract class WindowProviderService extends Service implements WindowPro public final Context createServiceBaseContext(ActivityThread mainThread, LoadedApk packageInfo) { final Context context = super.createServiceBaseContext(mainThread, packageInfo); final Display display = context.getSystemService(DisplayManager.class) .getDisplay(getInitialDisplayId()); final DisplayManager displayManager = context.getSystemService(DisplayManager.class); final int initialDisplayId = getInitialDisplayId(); Display display = displayManager.getDisplay(initialDisplayId); // Fallback to use the default display if the initial display to start WindowProviderService // is detached. if (display == null) { Log.e(TAG, "Display with id " + initialDisplayId + " not found, falling back to " + "DEFAULT_DISPLAY"); display = displayManager.getDisplay(DEFAULT_DISPLAY); } return context.createTokenContext(mWindowToken, display); } Loading