History log of /frameworks/base/services/core/java/com/android/server/wm/RootWindowContainer.java
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
743fcc11848034c2f87729696913049349d46850 06-Jun-2017 Wale Ogunwale <ogunwale@google.com> Revert "Temporarily enable screen wakelock logging in WM"

This reverts commit efe1b94acd97d6c0c70208d482887de4329ff3de.

Bug: 38416971
Change-Id: I6e038d5a24485a5348de8d1558b94a7b5a31bdaf
Test: No change in logic
/frameworks/base/services/core/java/com/android/server/wm/RootWindowContainer.java
efe1b94acd97d6c0c70208d482887de4329ff3de 26-May-2017 Andrii Kulian <akulian@google.com> Temporarily enable screen wakelock logging in WM

Enable DEBUG_KEEP_SCREEN_ON flag to get additional wakelock logs
to investigate b/38416971.

Bug: 38416971
Test: No change in logic
Change-Id: I83c45a26befb6a767b5d9fc30b1cde07a2432ebe
/frameworks/base/services/core/java/com/android/server/wm/RootWindowContainer.java
0214ed9b119cdbc87cfc12908635deaf16603fe5 16-May-2017 Andrii Kulian <akulian@google.com> Don't report displays that are going to be removed

When display is removed from system, it is immediately removed from
AM, but removal can be deferred in WM if there is an active animation
on that display. If AM then requests display ids in focus order from
WM, it might get a display that was already deleted in AM.
This CL skips displays marked for deferred removal.

Bug: 38166277
Test: DisplayContentTests#testDontReportDeferredRemoval
Change-Id: I49544963f476fc58a609094781ed46541af8a238
/frameworks/base/services/core/java/com/android/server/wm/RootWindowContainer.java
86c39f9edee88baa912c694061010483c7da9daf 02-May-2017 Jorim Jaggi <jjaggi@google.com> Fix lock contention: Call into power manager service from handler

Make sure to not hold the wm lock when calling into power manager
service, because PWM will acquire a lock that might be contended.

Test: Make sure user activity timeout is still respected on
Keyguard
Test: Have activity with screenBrightness=1.0, make sure screen
is fully bright when opened

Bug: 37888898
Bug: 36631902
Change-Id: I4b5433dbaf8aa151465ae32232d3b3b8597715df
/frameworks/base/services/core/java/com/android/server/wm/RootWindowContainer.java
89a28ab018d5ee3e16c99f2d5b4f4f8e05ca6125 25-Apr-2017 Robert Carr <racarr@google.com> WindowManager: Take care with Surface lifetime during relayout to invisible.

In the relayout to invisible case where we choose not to apply an exit
animation, we would call to WindowState#destroyOrSaveSurface bypassing
the app stopped check. Notice WindowManagerService.java L1953 we could
enter the relayout to invisible even if the client has not requested it
if clientHidden were set to true (but not yet processed by the client). This means
we can destroy the surface ahead of any notification to the client. We instead
need to use the WindowState#destroySurface variant
and respect the app token mAppStopped flag. #destroySurface expects
mDestroying to have been set by the exit animation, so we will also need
to set that. If destruction is deferred, it will be completed later by
AppWindowToken#notifyAppStopped

Bug: 36561071
Bug: 37533373
Test: Manual from repro in bug.
Change-Id: If91b4c75fdbcbf87007551860f9eb64dbec9e032
/frameworks/base/services/core/java/com/android/server/wm/RootWindowContainer.java
325cac4382259fd9b1f6b8e14840fe27d2d739e9 21-Apr-2017 Andrii Kulian <akulian@google.com> Always create display content with system identity

If an app tried to use a virtual display that it had just created
and add a window to it before it was registered in WM, WM would try
to create a DisplayContent instance. This would be executed with
app's calling identity and fail permission check.
This CL ensures that we always clear the calling identity before
creating display content.

Bug: 37422998
Test: android.display.cts.VirtualDisplayTest#testPrivateVirtualDisplay
Change-Id: I442cca65055886b384a28eeefcc35f2a36e482d0
/frameworks/base/services/core/java/com/android/server/wm/RootWindowContainer.java
469395638813abdb7423d0b91d6c42c2b1dcb78a 24-Mar-2017 David Stevens <stevensd@google.com> Compute the focused window in display focus order

A WindowContainer's children are sorted so the focused child is at the
end of the list, so RootWindowContainer needs to iterate from end to
start when looking for the focused window.

Bug: 36590788
Test: DisplayContentTests#testFocusedWindowMultipleDisplays
Change-Id: I56e6b7d2054bc1e74b54a4f99706a08d278fa2e1
/frameworks/base/services/core/java/com/android/server/wm/RootWindowContainer.java
06d07d6c73f5cf2d7f4975cda4d29870b4f34c3b 14-Mar-2017 Andrii Kulian <akulian@google.com> Move rotation methods to DisplayContent

This moves some of the rotation logic applied to displays
from WindowManagerService to DisplayContent. No changes in
logic.

Bug: 34242678
Test: android.server.cts.ActivityManagerDisplayTests
Test: #testRotationNotAffectingSecondaryScreen
Test: android.server.cts.ActivityManagerAppConfigurationTests
Change-Id: Ica8b5d700dea82edfc6b51b10be3362fc89854b0
/frameworks/base/services/core/java/com/android/server/wm/RootWindowContainer.java
8ee7285128c3843401d4c4d0412cd66e86ba49e3 10-Mar-2017 Andrii Kulian <akulian@google.com> Move rotation tracking to DisplayContent

This CL moves rotation tracking from WindowManagerService to
DisplayContent. This way displays can be rotated independently and
rotation of the main display won't affect rotation of secondary
ones.

Bug: 34242678
Test: android.server.cts.ActivityManagerDisplayTests
Test: testRotationNotAffectingSecondaryScreen
Change-Id: Ic46aaa523482b31ff5ec77f0c2908ceda1156fc0
/frameworks/base/services/core/java/com/android/server/wm/RootWindowContainer.java
ee9e277033d959211ba733a480355d41a2f32705 10-Feb-2017 David Stevens <stevensd@google.com> Handle focused tasks on multiple displays

When the focused task changes displays, make sure to mark the whole
previous display as not part of a focused task.

This change also adds an adb am command to change the task focus.

Test: android.server.cts.ActivityManagerDisplayTests
Test: #testStackFocusSwitchOnTouchEvent
Bug: 35214007
Change-Id: I9cb7372c21a0b592abb6f6d910077ff5097dd6cf
/frameworks/base/services/core/java/com/android/server/wm/RootWindowContainer.java
367ff7fd5251790ad8dc086bd386be8cba1dda5c 26-Jan-2017 Andrii Kulian <akulian@google.com> Fix shared dim layer not cleared when all users removed

For secondary display, shared fullscreen dim layer user is
the only stack that is present on the display. When this stack
is removed the shared dim layer was not cleared. Because of
that it was crashing when trying to obtain DisplayContent from it.

Now when we're removing a dim layer user we check if we've removed
the last one and clear shared fullscreen dim layer if needed.

Bug: 34367817
Test: bit FrameworksServicesTests:com.android.server.wm.DimLayerControllerTests
Change-Id: I415196a345c491eddd26a55370bb819ce6485151
/frameworks/base/services/core/java/com/android/server/wm/RootWindowContainer.java
1666e317dc1a17e9435246ec6c8209dbb6ee3696 16-Dec-2016 Wale Ogunwale <ogunwale@google.com> Added StackWindowContainerController

For linking ActivityStack in AMS to TaskStack window container in WMS.

Change-Id: I8b9eaef49e62854d59b22d27f80f5935a5a4d7fc
Bug: 30060889
Test: bit FrameworksServicesTests:com.android.server.wm.StackWindowContainerControllerTests
Test: bit FrameworksServicesTests:com.android.server.wm.TaskWindowContainerControllerTests
Test: Existing test pass and manual testing.
/frameworks/base/services/core/java/com/android/server/wm/RootWindowContainer.java
4ede3e0d0a9e76c701db19e073d2d1ff487d2a64 12-Jan-2017 Andrii Kulian <akulian@google.com> Add unit tests for 180 degree rotation

These tests if an app window token reports resize when device is
rotated from landscape to seascape.
There is also some additional plumbing to be able to perform a
rotation in unit test. Also dynamic stacks are now allowed to
influence the orientation of the device.

Test: bit FrameworksServicesTests:com.android.server.wm.AppWindowTokenTests
Bug: 33607506
Change-Id: I7b23e2de48d56c9fe485eae6a165378dbbbd08bb
/frameworks/base/services/core/java/com/android/server/wm/RootWindowContainer.java
b6aa0cc60ccfb4e1d8bd02f5a05ebae15fc55713 11-Jan-2017 Andrii Kulian <akulian@google.com> Merge "Fix typo that caused excessive display config updates"
d68501e66dabe30dd7bb2ac9e50f8cbac29f698c 11-Jan-2017 Andrii Kulian <akulian@google.com> Fix typo that caused excessive display config updates

Applied incorrect configuration object while doing original
configuration refactoring.

Test: bit FrameworksServicesTests:com.android.server.wm.DisplayContentTests
Test: #testDisplayOverrideConfigUpdate
Change-Id: Ief5979feebb50f689b6cb532e1dba93e47dcbc40
/frameworks/base/services/core/java/com/android/server/wm/RootWindowContainer.java
ba41f4b9e3629c097cdd7b6538c5bcf4602728b8 15-Dec-2016 Jorim Jaggi <jjaggi@google.com> Clean up starting window to prepare for saved surfaces

- Move all starting window logic to AppWindowContainerController
- Use startingView to hold any kind of contents for startingWindow
- Remove some conflicting code which looks very old and doesn't
apply anymore.

Test: Make sure starting window still works.

Bug: 31339431
Change-Id: I018dd013ab7e64a44932b6d54ae9bb4a47f315d3
/frameworks/base/services/core/java/com/android/server/wm/RootWindowContainer.java
7fc22812ce8ef74f9d005f33c30dbeb2ea837ab3 28-Dec-2016 Andrii Kulian <akulian@google.com> Fix selecting focused stack with secondary displays

When the last activity finishes in the stack we're looking for other
stacks and making it focused. However we weren't doing that if the
stack was on a secondary display, so the focused stack records were
not updated in stack supervisor.

Now we're looking for other stacks on the same display first. If there
is nothing focusable left - shifting focus to next focusable display.

Test: android.server.cts.ActivityManagerDisplayTests
Test: #testStackFocusSwitchOnDisplayRemoved
Test: #testStackFocusSwitchOnStackEmptied
Change-Id: Ifbb893e12cbe9c4928b949a86fc8bc027de181e4
/frameworks/base/services/core/java/com/android/server/wm/RootWindowContainer.java
1e129a4212ec3b388c65db8f6ce18896362ac35c 21-Nov-2016 Wale Ogunwale <ogunwale@google.com> Reduce object allocations in WM in some frequently called methods

With the use of lambdas to get all windows in the window container
hierarchy, we need to be careful in frequently called code paths to
make sure the number of objects we allocate isn't crazy. This CL
converts some commonly called code paths that use lambda to use a
method reference for the lambda so we only need to allocate once vs.
each time the code path is executed.

Test: Perform some common operations on the phone and make sure
the object allocations that show-up in Allocator Tracker for
window manager seems reasonable

Change-Id: Ie0f245980de96ec68a4e62e76130db7d98c3f7d9
/frameworks/base/services/core/java/com/android/server/wm/RootWindowContainer.java
6213caa42d89cc446de4f8f9ba00630f166f23cc 02-Dec-2016 Wale Ogunwale <ogunwale@google.com> Revert "Revert "WindowList be gone!""

This reverts commit ffa5a9de0c127cb77ddec625fea101ddddb7ad32.

Bug: 33098800
Bug: 33098294
Test: Existing tests pass.
Change-Id: I5803a010c5a224dd1cf452a4a7beb3a4c0a043f4
/frameworks/base/services/core/java/com/android/server/wm/RootWindowContainer.java
ffa5a9de0c127cb77ddec625fea101ddddb7ad32 23-Nov-2016 Jorim Jaggi <jjaggi@google.com> Revert "WindowList be gone!"

This reverts commit 4551c8bbee4114fa884938dbe90ac0d06ca78fc5.

Reason for revert: Broke a lot of things!

Bug: 33098800
Bug: 33098294
Change-Id: I307b1c7ee39445d6155a4bbce2bf5f289de55285
/frameworks/base/services/core/java/com/android/server/wm/RootWindowContainer.java
4551c8bbee4114fa884938dbe90ac0d06ca78fc5 10-Nov-2016 Wale Ogunwale <ogunwale@google.com> WindowList be gone!

The use of DisplayContent.mWindow list to track all windows is
no longer needed as we can now get windows through the window
container hierarchy with methods like forAllWindows. The window
list was also a very complicated logic to understand and maintain,
so it won't be missed :)

Bug: 30060889
Test: Existing tests pass
Change-Id: I590cb33aa0f42bcd4a26ddce102f05e657f54144
/frameworks/base/services/core/java/com/android/server/wm/RootWindowContainer.java
d1880960581d526cbaed0566d522987d9301b293 08-Nov-2016 Wale Ogunwale <ogunwale@google.com> Removed used of DisplayContent.getReadOnlyWindowList()

Changed the call points to use DisplayContent.forAllWindows() to
get windows on the display.

Test: Existing tests pass.
Change-Id: I6f8bf15ba246fac69c4a496ebb1d9e0b9b6a95a2
/frameworks/base/services/core/java/com/android/server/wm/RootWindowContainer.java
879ff721bed9999540c0b03acf4843886b7c3a75 05-Nov-2016 Jorim Jaggi <jjaggi@google.com> Move wallpaper related methods to WallpaperToken

It was a bit weird to have them in WindowToken, so we create
WallpaperToken where they have a better home.

Test: Device still boots, wallpaper scrolling still
works.
Change-Id: I81576420f31e01a0ac615f6dcb73fec201b14be8
/frameworks/base/services/core/java/com/android/server/wm/RootWindowContainer.java
839def9b549b6279aabd4150b304999e58d15762 02-Nov-2016 Andrii Kulian <akulian@google.com> Add shell command to move activity stacks between displays

Also rename "stack movetask" command to be consistent with other
shell commands.

Test: New CTS tests coming soon.
Change-Id: I3d7e04e0ae8ea76c27c3e4c1e286d5cd4539870c
/frameworks/base/services/core/java/com/android/server/wm/RootWindowContainer.java
ac2561e8206ac42921bb6ddbb0a5972fb360e394 01-Nov-2016 Wale Ogunwale <ogunwale@google.com> Make window token add/remove APIs require displayId

Window tokens can now only be on one display, so we now require clients
that want to add/remove window tokens to specify the display they would
like the token to be created on. This simplifies the token handling code
in WM and will be useful moving forward for clients that want to add
windows to external displays.

Test: Existing tests pass
Change-Id: I6b2d8d58a913b3624f1a9a7bebbb99315613f103
/frameworks/base/services/core/java/com/android/server/wm/RootWindowContainer.java
5a108c225a81cedacb1cec9b5b1986f2f3eff75c 13-Oct-2016 Jorim Jaggi <jjaggi@google.com> The big keyguard transition refactor (2/n)

Introduce UnknownVisibilityController, which keeps track of apps that
may or may not be visible when launching an activity behind Keyguard.
When Keyguard is occluded and we launch another activity, we don't
know whether we still have to keep Keyguard occluded until the app
has gone through the resume path and issued a relayout call to update
the Keyguard flags.

This class keeps track of that state and defers the app transition
until the unknown visibility of all apps is resolved.

Test:
1) Have an occluding activity that starts another occluding
activity, ensure that there is no flicker.
2) Have an occluding activity while the Keyguard is insecure, start
a DISMISS_KEYGUARD activity, ensure there is no flicker.
3) runtest frameworks-services -c com.android.server.wm.UnknownVisibilityControllerTest

Bug: 32057734
Change-Id: I5145b272722ab8c31dd7c5383286f5c9473e26a4
/frameworks/base/services/core/java/com/android/server/wm/RootWindowContainer.java
f7cab10b796d0f66eb690867ba327b4bb00165e3 26-Oct-2016 Wale Ogunwale <ogunwale@google.com> Introduced ReadOnlyWindowList

7th and Final step in making the modification of a display's
WindowList private to DisplayContent.
ReadOnlyWindowList provides an interface for external classes to
DisplayContent to access the window list without being able to
modify it. This will be important in upcoming CLs where it is
important for us to keep track of when the window list changes.

Bug: 30060889
Test: Manual testing and existing tests pass.

Change-Id: I4de0b258a40fd4b21ef9cc9e3401488f76d25f83
/frameworks/base/services/core/java/com/android/server/wm/RootWindowContainer.java
5406e7ade87c33f70c83a283781dcc48fb67cdb9 21-Oct-2016 Andrii Kulian <akulian@google.com> Apply display override config for secondary displays

Now display-specific settings, such as dimensions and orientation,
are stored in display override config. For default display it is
mirroring the global config. Each time when global config is updated,
override of the default display should be updated too and vice versa.

Test: Existing and manual tests still pass.
Change-Id: Ic6c2190092d328820f314a05bed43c875db18170
/frameworks/base/services/core/java/com/android/server/wm/RootWindowContainer.java
0303c5723edfdb4f2db37543544d7cbe9b14df97 20-Oct-2016 Wale Ogunwale <ogunwale@google.com> Have DisplayContent be the call point for adjusting wallpaper windows

4th step in trying to make the WindowList private to DisplayContent
Have the rest of the system call DisplayContent when they need to
adjust the position of the wallpaper windows in the window list
instead of calling WallpaperController directly. That way the display
content can control the window list that the wallpaper controller sees.

Test: Existing tests pass and manual testing.
Change-Id: Iaa7f421d7cd24d36e5a83e091f77b4a08d0ae123
/frameworks/base/services/core/java/com/android/server/wm/RootWindowContainer.java
c69694abbdbfa3f0bedb034e7cc86823a72ff781 18-Oct-2016 Wale Ogunwale <ogunwale@google.com> Have DisplayContent be the call point for assigning window layers

First step in trying to make the WindowList private to DisplayContent
Have the rest of the system call DisplayContent when they need to
assign layers to windows instead of calling WindowLayersController
directly. That way all the various call points don't need to get
the WindowList from DisplayContent to pass on to WindowLayersController.

Test: Existing tests pass.
Change-Id: If869abf7ba1c33b575908006ae5ad1557abc361c
/frameworks/base/services/core/java/com/android/server/wm/RootWindowContainer.java
b0f3b836b9fe98d395fdbadf2cdd3603f4e0145a 17-Oct-2016 Wale Ogunwale <ogunwale@google.com> Clean up use of DisplayContent from WindowState.

Follow up to ag/1483993 where WindowTokens can now only be on one display.
Clean-up some existing code that dealt with having WindowTokens on
multiple displays.

Test: Existing tests pass.
Change-Id: Ie908eda37bc44097dea773b0fc163d35cc9baf35
/frameworks/base/services/core/java/com/android/server/wm/RootWindowContainer.java
011c85729ae5799b85c694b831ad6a8e632878cd 15-Oct-2016 Winson Chung <winsonc@google.com> Merge "Adding PIP input consumer."
412754816d2b8e83f0f5f860b13f09f53d2da05f 11-Oct-2016 Winson <winsonc@google.com> Adding PIP input consumer.

- This CL provides the framework for manipulating the pinned stack using
an input policy (to be determined later) provided by the SystemUI.

Test: android.server.cts.ActivityManagerPinnedStackTests
Test: #testNonTappablePipActivity

Change-Id: I025c41fff26ed05a35d68e59f10330680ed11ea8
/frameworks/base/services/core/java/com/android/server/wm/RootWindowContainer.java
19e452eabd66c4a72e31dbc085927776fcf8bf3a 12-Oct-2016 Wale Ogunwale <ogunwale@google.com> Added non-app window tokens to window container hierarchy

WindowContainer only allows its sub-classes to have homogenerous
children, however DisplayContent needs to have app window containers
that are managed by TaskStack and non-app window containers that are
managed by WindowToken. To do this we create a pass through class
DisplayChildWindowContainer that any container that wants to be a child
of DisplayContent needs to inherit from. Then, we can have DisplayContent
contain DisplayChildWindowContainer types and have sub-class children
like TaskStackContainers and NonAppWindowContainers

Bug: 30060889
Test: Existing tests pass.
Change-Id: I3848958eddcd51030cfe20bb1337476d203bbed3
/frameworks/base/services/core/java/com/android/server/wm/RootWindowContainer.java
02319a61927041cc4d3632e94c501b7277f0bda5 27-Sep-2016 Wale Ogunwale <ogunwale@google.com> Associate WindowToken object with only one display at a time

WindowTokens were global objects that contained windows that could
be on multiple displays. This model does not work with the
WindowContainer hierarachy as children (window tokens) can not have
mulitple parents (displays).
We now:
- Track the mapping of binder tokens to window tokens per display
instead of globally . So, you can have a binder token map to
individual WindowToken objects per display.
- WMS.addWindowToken is used to create a WindowToken that clients
can then later add windows to. However, when addWindowToken is called
we don't know the display the client(s) would like to add window to.
So, we track binder tokens that we are allowed to add window for in
the RootWindowContainer and create a window token for the binder on
a specific display when we try to add a window.

Bug: 30060889
Test: Manual testing and existing tests pass.
Change-Id: I81a52a32b01c33ed32169d2da0506b688ea9bc8a
/frameworks/base/services/core/java/com/android/server/wm/RootWindowContainer.java
e92c3f639893acbd9994ed50e592bc3109301099 12-Oct-2016 TreeHugger Robot <treehugger-gerrit@google.com> Merge "power: PowerHAL support for HIDL interfaces."
d4a00a027265e5abfae335e38bd17fd744e3a2c3 10-Oct-2016 Wale Ogunwale <ogunwale@google.com> Cleaned-up some code in WindowManager

This CL has no functional changes and I am just breaking this change
out of another large CL I am working on.

Test: existing tests pass.
Change-Id: I4c93e2b1820dc31ba28f81692f2f8f6081e1f315
/frameworks/base/services/core/java/com/android/server/wm/RootWindowContainer.java
0d43404a07c1372fef71181ab9daa8fa960fdd4c 03-Oct-2016 Ruchi Kandoi <kandoiruchi@google.com> power: PowerHAL support for HIDL interfaces.

Bug: 31177288
Change-Id: I3ce5a71958f47d26855513cf7523922e80dd25d2
Signed-off-by: Ruchi Kandoi <kandoiruchi@google.com>
/frameworks/base/services/core/java/com/android/server/wm/RootWindowContainer.java
9d9d8f1c0f66172d89e50e8fd12a8c2a3de221ac 29-Sep-2016 Wale Ogunwale <ogunwale@google.com> Cleaned-up RootWindowContainer.applySurfaceChangesTransaction

- Move functionality for determining interesting and all drawn states
of an app token based on the current window we are processing into
AppWindowToken.updateDrawnWindowStates() since it is mostly touching
AppWindowToken variables. Some of the fields can now be made private.
- Removed WindowContainer.updateAllDrawn() and related overrides. We
now have RootWindowContainer collect the app tokens that need to be
processed and call them directly.
- Move code to report window move to client into
WindowState.reportWindowMovedIfNeeded().
- Move WMS.updateResizingWindows() functionality to
WindowState.updateResizingWindow() as it mostly updates window state
internals.

Bug: 31794753
Test: Manual testing and existing unit tests pass.
Change-Id: I7588217d05d3e8971ce61795cb8568d835779c5e
/frameworks/base/services/core/java/com/android/server/wm/RootWindowContainer.java
834bbbd753b73e7a84403910cab9e27f688b74a8 30-Sep-2016 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Add override and merged config to WindowContainer"
441e4494682144aec2ec7f19060464af3d29c319 30-Sep-2016 Andrii Kulian <akulian@google.com> Add override and merged config to WindowContainer

This consolidates usages of override and full (merged)
configs in WM objects and also adds support of per-display
configurations. Having full configs allows us to get
current applied config at any level.

Test: Manual tests pass. Added some new to WindowContainerTests.
Change-Id: I996770433c80da41265f3e14048bd23cead097f9
/frameworks/base/services/core/java/com/android/server/wm/RootWindowContainer.java
2b06bfc6e90aa293c7058fc6b1d1cf22fbb2ada2 28-Sep-2016 Wale Ogunwale <ogunwale@google.com> Made DisplayContent.mLayoutNeeded private scoped.

And, added accessor methods for it to make it easier to
debug who is setting it.

Bug: 31794753
Test: Existing tests pass.
Change-Id: I517c3e5cc7535cb90c47c112d42fa1dbf0b81583
/frameworks/base/services/core/java/com/android/server/wm/RootWindowContainer.java
de84743c8c1aeadad99bf41420a61cc6be753081 24-Sep-2016 TreeHugger Robot <treehugger-gerrit@google.com> Merge "resolve merge conflicts of c6bbbed to master"
67e7b40f8485eadf4fa02877af790033f0c08e69 24-Sep-2016 Robert Carr <racarr@google.com> resolve merge conflicts of c6bbbed to master

Change-Id: I1a82efc63aefc22a634ed48ec236a9f11b6d413c
d9eb6ce22aa631699fb3ca9af5bfc037ca3f3733 24-Sep-2016 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Fixed some test failure and log warnings."
ba51ca2c8c100ccd5f1bb7a5f34f674b12184399 23-Sep-2016 Wale Ogunwale <ogunwale@google.com> Fixed some test failure and log warnings.

- Make DisplayContent.attachStack and moveStack use the same code
path for adding child stack so they both account for the presence
of pinnded stack.
- Don't call DC.attachStack on a stack that is already on the
display. Use DC.removeStack instead to just make sure it is at the
right z-order on the display.
- Use WindowContainer.getName() when for exception messages to have
a more concise print-out for the error.
- Only try to remove a task from a stack when positioning if the task
is contained in the stack.
- Throw an exception if we try to remove a task that isn't contained
in a stack.
- Skip checking of exiting or waiting for replacement when rebuilding
window list for app tokens that are exiting.
- Properly display and intent output from WC.dumpChildrenNames().
- Have DisplayContent WindowContainer type always return true for
fillsParent() and isVisible() as displays always fill their parent
and always visible for now.

Bug: 31624623
Test: Failing test passes.
Change-Id: I8a84770feb1fd278716755cdec2900fddb9940de
/frameworks/base/services/core/java/com/android/server/wm/RootWindowContainer.java
11c26c22a25701391d740e1c945ac9b183631999 23-Sep-2016 Robert Carr <racarr@google.com> resolve merge conflicts of 668ac75 to master

Test: This is a merge resolution.
Change-Id: I553b8fcdc661a6ea26cdcf1ae31f774ba7750c79
eaabfabd84bda2975ef5bb9a9bff6d10c328913c 17-Sep-2016 Wale Ogunwale <ogunwale@google.com> Switched RootWindowContainer to use WindowContainer.

This completes the first pass of defining a hierarchy in
window manager :)

WindowManagerService is now less than 10,000 line \o/

Bug: 30060889
Test: Manual testing and existing tests still pass.
Change-Id: Ib349220e9355d1894bd62294e7696827f033887f
/frameworks/base/services/core/java/com/android/server/wm/RootWindowContainer.java
e05f5014905569d69d33ff323a3c62c046552789 17-Sep-2016 Wale Ogunwale <ogunwale@google.com> Added RootWindowContainer

RootWindowContainer will be the root/head of the window hierarchy.
Also, moved all access of DisplayContent into RootWindowContainer.

Bug: 30060889
Test: Manual testing and existing tests still pass.
Change-Id: Icdf80a4c053578fb91221e6f2b672e197054a6bf
/frameworks/base/services/core/java/com/android/server/wm/RootWindowContainer.java