diff options
| author | Craig Mautner <cmautner@google.com> | 2014-01-08 17:33:42 +0000 |
|---|---|---|
| committer | Android (Google) Code Review <android-gerrit@google.com> | 2014-01-08 17:33:42 +0000 |
| commit | 88bfc6ddc846d714bc15518ef6741e39145a1687 (patch) | |
| tree | 0faa96292fce1b3f9605a74b7c552da14a0f8f61 /core/java/android/app/ActivityThread.java | |
| parent | 43bc1c07d25b7f278a860bbb9118f46ac732593a (diff) | |
| parent | e0a3884cb627efc650e19fbe76b1b3343468cf57 (diff) | |
| download | frameworks_base-88bfc6ddc846d714bc15518ef6741e39145a1687.zip frameworks_base-88bfc6ddc846d714bc15518ef6741e39145a1687.tar.gz frameworks_base-88bfc6ddc846d714bc15518ef6741e39145a1687.tar.bz2 | |
Merge "Extend stack management to other displays." into klp-modular-dev
Diffstat (limited to 'core/java/android/app/ActivityThread.java')
| -rw-r--r-- | core/java/android/app/ActivityThread.java | 15 |
1 files changed, 13 insertions, 2 deletions
diff --git a/core/java/android/app/ActivityThread.java b/core/java/android/app/ActivityThread.java index 97baf9a..9ae2543 100644 --- a/core/java/android/app/ActivityThread.java +++ b/core/java/android/app/ActivityThread.java @@ -2219,15 +2219,26 @@ public final class ActivityThread { ContextImpl appContext = new ContextImpl(); appContext.init(r.packageInfo, r.token, this); appContext.setOuterContext(activity); + Context baseContext = appContext; + + final DisplayManagerGlobal dm = DisplayManagerGlobal.getInstance(); + try { + IActivityContainer container = + ActivityManagerNative.getDefault().getEnclosingActivityContainer(r.token); + final int displayId = container.getDisplayId(); + if (displayId > Display.DEFAULT_DISPLAY) { + Display display = dm.getRealDisplay(displayId, r.token); + baseContext = appContext.createDisplayContext(display); + } + } catch (RemoteException e) { + } // For debugging purposes, if the activity's package name contains the value of // the "debug.use-second-display" system property as a substring, then show // its content on a secondary display if there is one. - Context baseContext = appContext; String pkgName = SystemProperties.get("debug.second-display.pkg"); if (pkgName != null && !pkgName.isEmpty() && r.packageInfo.mPackageName.contains(pkgName)) { - DisplayManagerGlobal dm = DisplayManagerGlobal.getInstance(); for (int displayId : dm.getDisplayIds()) { if (displayId != Display.DEFAULT_DISPLAY) { Display display = dm.getRealDisplay(displayId, r.token); |
