History log of /frameworks/base/tools/layoutlib/bridge/src/android/view/IWindowManagerImpl.java
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
d46747a1c64b6ca3282e8841833980ab91829436 16-Apr-2015 Jeff Brown <jeffbrown@google.com> Add support for disabling display scaling for development.

Added two new options to the wm command.

1. Set the screen size based on dips rather than pixels using the
current screen density.

eg. adb shell wm size 320dpx320dp

2. Disable automatic scaling of the contents of the display.
When combined with the previous command, this is useful for seeing
how the UI would behave if the screen remained at its current density
but changed physical size.

eg. adb shell wm scaling off

Bug: 19899223
Change-Id: I545f893ba4861494e995cf0457ebeba1050d28dc
/frameworks/base/tools/layoutlib/bridge/src/android/view/IWindowManagerImpl.java
4025c96faceb38eae15bd7f9e54214417c1aa628 18-Mar-2015 Dianne Hackborn <hackbod@google.com> Fix build.

Change-Id: I6797bb2b5c85961c3bcb3fa8950bae121232f592
/frameworks/base/tools/layoutlib/bridge/src/android/view/IWindowManagerImpl.java
10e23ab61b820fb3149b2f89003753d98ebd6a80 12-Feb-2015 Chet Haase <chet@google.com> Add ClipReveal window transition for application launch

Issue #19362772 Better material launch animations

Change-Id: Ic94fde910b6b5554ee954dfbbf374949f9eb189d
/frameworks/base/tools/layoutlib/bridge/src/android/view/IWindowManagerImpl.java
83162a90278d9d52d8fca7ee20ba314b452261de 26-Jan-2015 Craig Mautner <cmautner@google.com> Eliminate groupId and add task to AppWindowToken

Simplifies access by eliminating indirect referencing.

Fixes bug 18088522 item #15.

Change-Id: I9049192a7f3e1028d60c4f2d4d4a0d4aad590aa4
/frameworks/base/tools/layoutlib/bridge/src/android/view/IWindowManagerImpl.java
044d52934e57a337665f707aa4be1d423ee3fb29 06-Nov-2014 Winson Chung <winsonc@google.com> Adding bounce animation for affiliated tasks. (Bug 16656169)

Change-Id: I39e4a57c4e6b707d15513dacde2d40c23bb05058
/frameworks/base/tools/layoutlib/bridge/src/android/view/IWindowManagerImpl.java
2e7f3bdcc9ec0b3e95b565b943ecee2210f4b937 05-Sep-2014 Winson Chung <winsonc@google.com> Removing unnecessary delays, ensuring transition thumbnail is the size of the header. (Bug. 16987565)

Change-Id: Ic104876c5fe16997eca00e0a2b3d8644c927120c
/frameworks/base/tools/layoutlib/bridge/src/android/view/IWindowManagerImpl.java
a4ccb86ddc8f9f486aee25fb836f4aff97bf7679 23-Aug-2014 Winson Chung <winsonc@google.com> Multiple performance changes to speed recents invocation/app launching time. (Bug 16987565)

- Reverting changes to the existing thumbnail transition to prevent breaking applications
that currently depend on that transition. As a result, we need to create a new, hidden,
aspect-scaled thumbnail transition, and instead use that thumbnail to animate the
recents header so that we don't have to wait to do that inside the Recents activity.

In order for this to work, we also have to ensure that the thumbnail surface destruction
is synchronized with the application that is currently closing (when going down to
recents) or opening (when coming back up). The current thumbnail is destroyed when the
animation ends, but that can be at least 1 frame before the surface for the animating
window is destroyed. We change this by deferring destruction of this thumbnail window
to the animation that is being closed.

Especially on the way up, not having to wait for us to hide the header before doing the
transition up can save us the duration of that first animation (> 100ms).

- Other optimizations:
* No longer creating a new stack view on each transition to calculate the target rect
* Removing unnecessary call to get the thumbnail when transitioning up/down (the actual
window does its own animation.
* We reduced numerous system calls per task by adding a flag to ignore home-stack tasks
and caching the activity label and icon (and task description icon). These caches
follow the same eviction schemes as the thumbnail and icon cache.

- Also tweaked the touch slop for the nav bar swiping gesture to prevent conflicting with
tapping on home (Bug 17109581)

Change-Id: Ica697aad788051a9203edd9351c583e1cb038a71
/frameworks/base/tools/layoutlib/bridge/src/android/view/IWindowManagerImpl.java
84a3e7aacf6dbeccf4afb36a29f2f069dca7d486 13-Aug-2014 Jorim Jaggi <jjaggi@google.com> Use different unlock animation when going to full shade

Also fixes a bug that the notify flag was not reset, and fix the
transition for the phone/camera affordance (in these cases, no
animation is needed).

Bug: 15991916
Change-Id: Idbb4fa40f86bda597cd66cc38da838ef4f75514d
/frameworks/base/tools/layoutlib/bridge/src/android/view/IWindowManagerImpl.java
a87863a8bddb033ca9ace11e7d78932d70d08ce3 29-Jul-2014 Sander Alewijnse <salewijnse@google.com> Fix deadlock window manager and device policy manager.

Removed all communication from wm to device policy manager.
Added initialization of cache in wm by dpms.

Change-Id: Ifa0b8bfcd625464b156d5cc0fb66d342deda1c27
/frameworks/base/tools/layoutlib/bridge/src/android/view/IWindowManagerImpl.java
d2a1eec400128f39e1b223a720a88dbd395f3e6e 09-Jul-2014 Sander Alewijnse <salewijnse@google.com> Add Device Policy API to disable screen capture.

WindowManager will set secure flag on SurfaceControl for
all windows of a flagged user to prevent screen capture.
API is consistent with the camera disable API.

Change-Id: Ib180f67f1ad827b6f4aca2af615274256cce58f4
/frameworks/base/tools/layoutlib/bridge/src/android/view/IWindowManagerImpl.java
bb742462781a73bb25516067c8fe6311c1c8a93e 08-Jul-2014 Craig Mautner <cmautner@google.com> Launch activity behind launching task.

Use ActivityOptions.makeLaunchTaskBehindAnimation() to launch tasks
behind the current task. Includes animations for launching and
launched tasks.

Fixes bug 16157517.

Change-Id: I0a94af70b4748592e94673b958ee824cfb3d7ec0
/frameworks/base/tools/layoutlib/bridge/src/android/view/IWindowManagerImpl.java
eb94fa7975b1e8742f3b00cec6bd4f9d6b329e3a 04-Jun-2014 Dianne Hackborn <hackbod@google.com> Improvements to low power mode.

Add new public API for monitoring low power mode.

BatteryService now puts device in to low power mode when
battery level is low.

Window manager now watches low power mode to turn off
animations.

Modifying the animator scale now gets propagated to all
processes.

Change-Id: I8fa566994764ddd4e1977631e28381ab9409f8ee
/frameworks/base/tools/layoutlib/bridge/src/android/view/IWindowManagerImpl.java
8a0da0184f6c5c95d94ab6adfee79bace4040abd 01-Jun-2014 Craig Mautner <cmautner@google.com> Force all windows to redraw before unblanking screen

The screen turning on would show windows as they were when the screen
turned off. This fix forces all showing windows to redraw first and
only then allow the screen to turn on.

Fixes bug 15092354.

Change-Id: I52c3f47438176a5ac00ba9a4d5205b56a5aa48f9
/frameworks/base/tools/layoutlib/bridge/src/android/view/IWindowManagerImpl.java
8bd94d502d2dfe17a2147ca4fd7c8baa6bbc06d5 29-May-2014 Craig Mautner <cmautner@google.com> implement keyguardGoingAway() fixes build.

Fix bug 15326529.

Change-Id: I9095fe70721bfb031dd1080da1d61ff4e1a8c8ab
/frameworks/base/tools/layoutlib/bridge/src/android/view/IWindowManagerImpl.java
8c9360f3aace9a6b158b0257655925d08d75fa02 29-May-2014 Brian Carlstrom <bdc@google.com> Tracking IWindowManager change 2ea3814083f27567ae07a1b449da3d596dd4d9d5

Change-Id: I6945cc9b4be174b55173ac2081edc5ee1bee6e67
/frameworks/base/tools/layoutlib/bridge/src/android/view/IWindowManagerImpl.java
d4d46587665ede9cdd26d12d37368a35232a31e1 11-Apr-2014 Colin Cross <ccross@android.com> resolved conflicts for merge of 90b39aba to master-lockscreen-dev

Change-Id: I2871a1e49c3b443cc7479f2352c652be3b0fb85b
0b65c56eb0d56f35f7404944370220450ccb450c 11-Apr-2014 Colin Cross <ccross@android.com> fix build

Fix make checkbuild.

Change-Id: Ie9335a9e8afe4dc13ec47b2e84ab433b19ff315f
/frameworks/base/tools/layoutlib/bridge/src/android/view/IWindowManagerImpl.java
dd137a85d3e0295989b5b9d1f67ff32027be867d 10-Apr-2014 Svetoslav <svetoslavganov@google.com> resolved conflicts for merge of 6be2f952 to master-lockscreen-dev

Conflicts:
core/java/android/view/IWindowManager.aidl
tools/layoutlib/bridge/src/android/view/IWindowManagerImpl.java

Change-Id: Idcbc581294cc52b53eabefd61e5c20cbcea611db
1376d600d8e0eefdbc0aa11d398cf7517fc77129 13-Mar-2014 Svetoslav <svetoslavganov@google.com> Adding render stats APIs to UiAutomation (framework).

bug:12927198

Change-Id: Iae21481c75ae58dcdab3731bf5f1e2844e29d434
/frameworks/base/tools/layoutlib/bridge/src/android/view/IWindowManagerImpl.java
cff0acb6b1eea23c3f44a078a0a5e81c11faea35 31-Mar-2014 Jorim Jaggi <jjaggi@google.com> Wait for Keyguard to be drawn after boot.

The old logic with waiting for the Keyguard to be drawn assumed that
it is in an own window, and just checked for the visibility. This is
no longer possible as the Keyguard is in the status bar, and the status
bar might have been drawn without the Keyguard. So we have to wait
explicitely until Keyguard told PhoneWindowManager that it has now been
drawn and we can turn on the screen.

In addition, the starting logic of SystemUI is moved into
SystemUIApplication such the we can make sure that the status bar
already exists when the callbacks from PhoneWindowManager reach
KeyguardService. This simplifies the logic a lot.

Bug: 13635952
Change-Id: Ifd6ba795647edcf3501641e39052e4d04bc826fb
/frameworks/base/tools/layoutlib/bridge/src/android/view/IWindowManagerImpl.java
1a5255d5475eaaf620078c60b0dddbf2657fcf27 20-Mar-2014 Svetoslav <svetoslavganov@google.com> Fixing yet another build breackage

Change-Id: I83597d5433fc6cc380d5ec1dd6f78e115e76db5b
/frameworks/base/tools/layoutlib/bridge/src/android/view/IWindowManagerImpl.java
24dffd0b0beb58d900bf232448596064f3c7d483 13-Nov-2013 Craig Mautner <cmautner@google.com> Support API change.

From
https://googleplex-android-review.git.corp.google.com/#/c/387811/.

Change-Id: I3958a55c72b095c53b054c11c5653ba581881188
/frameworks/base/tools/layoutlib/bridge/src/android/view/IWindowManagerImpl.java
47dcb469db6e81b733a3f2eaa6bc4396ebfb3fd0 08-Oct-2013 Alan Viverette <alanv@google.com> Manual merge of e4ccb864 from frameworks/base/tools to frameworks/tools

Change-Id: I4893e72caf3dfd68bd503fd8daeabc8550d770a2
/frameworks/base/tools/layoutlib/bridge/src/android/view/IWindowManagerImpl.java
492d16434acaaf050f676b6767fbf020fd6ff772 04-Oct-2013 John Reck <jreck@google.com> Update layoutlib

Change-Id: Ifafe5a47fbef7ff0894e679d04d71942eb8d1237
/frameworks/base/tools/layoutlib/bridge/src/android/view/IWindowManagerImpl.java
29e746211878d5204e983ef1fc2812d444052f63 02-Oct-2013 Jim Miller <jaggies@google.com> resolved conflicts for merge of fb2e3c8d to master

Change-Id: I159b529adae04a33a965ec0d43fc9a47e82b6417
/frameworks/base/tools/layoutlib/bridge/src/android/view/IWindowManagerImpl.java
282e181b58cf72b6ca770dc7ca5f91f135444502 24-Jan-2014 Adam Lesinski <adamlesinski@google.com> Revert "Move frameworks/base/tools/ to frameworks/tools/"

This reverts commit 9f6a119c8aa276432ece4fe2118bd8a3c9b1067e.
/frameworks/base/tools/layoutlib/bridge/src/android/view/IWindowManagerImpl.java
9f6a119c8aa276432ece4fe2118bd8a3c9b1067e 28-Aug-2013 Mike Lockwood <lockwood@google.com> Move frameworks/base/tools/ to frameworks/tools/

Change-Id: I3ffafdab27cc4aca256c3a5806b630795b75d5c8
/frameworks/base/tools/layoutlib/bridge/src/android/view/IWindowManagerImpl.java
ac6f843c917b68ea8805711965b149a9338e3a0e 17-Jul-2013 Craig Mautner <cmautner@google.com> Fix home activity and user switch interactions.

- Make sure Home activity goes in the correct task and on the correct
stack.
- Do not allow different users to be in the same task.
- Do not set stacks aside for each user.

Fixes bug 9775492.

Change-Id: I0e7954e917aac8482a1015a36923e02914e2b692
/frameworks/base/tools/layoutlib/bridge/src/android/view/IWindowManagerImpl.java
80f00c1f2375796dab09bc4ed5b7631c62f7e158 13-Jun-2013 John Spurlock <jspurlock@google.com> Remove concept of system bar from window manager.

It was already hardcoded to false, this change removes the dead code.

Change-Id: I5e543344e60f69cb9882a70ba29f7c09404ad9fc
/frameworks/base/tools/layoutlib/bridge/src/android/view/IWindowManagerImpl.java
04fe6ebb9f919f196ec06a19bebc09b8e943f95b 31-May-2013 Adam Powell <adamp@google.com> Fix a bug resolving the correct icon/logo in action bars

Remove some abstraction-breaking magic in ActionBarView and replace it
with proper resolution of the icon/logo when creating a window. The
old implementation relied on the ActionBarView's context being an
Activity.

Bug 9171554

Change-Id: Idbbb1942622195dcb55e8119f2d64287b07bb509
/frameworks/base/tools/layoutlib/bridge/src/android/view/IWindowManagerImpl.java
c849fbcf3ddd3cbb08840c72f7f325294c5d2802 02-Apr-2013 Brian Colonna <bcolonna@google.com> resolved conflicts for merge of 5856ee4b to master

Change-Id: I60ba85bc246b9cf25d467b2099535aad47f82ca7
b1b9a8ac07ea7d438eda613f4c798dd8b10a66ce 29-Mar-2013 Brian Colonna <bcolonna@google.com> FUL now restarts when flipping tablet 180 (bug 7484464)

When a tablet rotates, FUL must be stopped and restarted in a new
position. 90 degree rotations cause a configuration change, causing
FUL to be automatically reconstructed in the new location. However,
a 180 degree rotation is not a configuration change, so FUL was not
restarting. A 180 degree rotation happens more often than one might
think. If you set the tablet down and later picked it up in the
opposite orientation, FUL would not work prior to this fix.

This change adds a rotation watcher to KeyguardFaceUnlockView. It
watches for 180 degree rotations and stops and restarts FUL
accordingly.

The rotation watcher callback must be unregistered when
KeyguardFaceUnlockView is recreated (as during 90 degree rotation
changes), otherwise the number of rotation watcher callbacks will keep
growing and they will never go away. This is a problem not just
because there are many callbacks hanging around, but also because the
old callbacks end up trying to access biometric unlock views that no
longer exist, resulting in crashes. So, a simple function was added
to the window manager to unregister a rotation watcher.

Change-Id: Ie1ef20a9a22b8f4e39918987dff2b8ad444fcfd1
/frameworks/base/tools/layoutlib/bridge/src/android/view/IWindowManagerImpl.java
96f2fef2460adcf815baa1c2a74e417451fe1237 27-Mar-2013 Dianne Hackborn <hackbod@google.com> am 483ac9a7: am b404ecc9: Merge "Fix build." into jb-mr2-dev

* commit '483ac9a779af452d7ef4007d0e24c569ee894557':
Fix build.
f3d46ce88f0777dddfbecebc9bd7f2f216206365 27-Mar-2013 Dianne Hackborn <hackbod@google.com> Fix build.

Change-Id: I51b87ee5f0b7f396aad7e239893d9f0764f04bb6
/frameworks/base/tools/layoutlib/bridge/src/android/view/IWindowManagerImpl.java
124af2d816c5337000e60c4d5a9c6b0319e5a3e6 19-Mar-2013 Craig Mautner <cmautner@google.com> Update layoutlib to latest interface.

Fix build..

Change-Id: I3504e8b8e8431ad76333e852cf42494b2404f8ad
/frameworks/base/tools/layoutlib/bridge/src/android/view/IWindowManagerImpl.java
2ad920759b1981eaf526fd37a314fbc5a3ed90ae 26-Feb-2013 Craig Mautner <cmautner@google.com> Revert ActivityManager changes for tasks. DO NOT MERGE

Keeping all activity=>task changes in master and removing them
from jb-mr2.

Revert "Update histories simultaneously."
Revert "Add null check to setAppGroupId."
Revert "Fix crashing bug in validator."
Revert "Switch topRunning* and moveTaskTo*"
Revert "Begin switch over to task based history."
Revert "Reset and reuse Iterators and don't new() one."
Revert "Remove AppWindowToken lists."
Revert "Fix build."
Revert "Remove unused App methods."
Revert "Stop using AppToken movement and start using Task."
Revert "Replace access to mAppTokens with AppTokenIterator"
Revert "Refactor setAppOpVisibility implementation."
Revert "Add AppWindowTokens to TaskList."
Revert "Make ActivityStack.mHistory private."
Revert "Migrate AppWindowToken lists into DisplayContent."

Change-Id: I5722c9a4956dccb52864207e2967690bc58e4ebb
/frameworks/base/tools/layoutlib/bridge/src/android/view/IWindowManagerImpl.java
ee973c27e339a23e0b93d816a97b33954af66bea 19-Feb-2013 Dianne Hackborn <hackbod@google.com> Fix build.

Change-Id: I277de38a70f3a2e5c1997a3fe5c2e825692ae9e1
/frameworks/base/tools/layoutlib/bridge/src/android/view/IWindowManagerImpl.java
b0c0b1fd70e3edeb724e2b2fb2c7063eb943f05e 14-Feb-2013 Craig Mautner <cmautner@google.com> Remove unused App methods.

Now that the Task methods have replaced the App methods remove
the App methods.

Change-Id: I0e7432f2c6f99708759ed8c871d20eb5bd38c3c2
/frameworks/base/tools/layoutlib/bridge/src/android/view/IWindowManagerImpl.java
f5f7d9751a43b699b6e1c2e41ea0519bc54e39cd 29-Jan-2013 Svetoslav <svetoslavganov@google.com> Fixing the build

Change-Id: I8d47c7094efc8ff458cdac58a761d5f187c8fc32
/frameworks/base/tools/layoutlib/bridge/src/android/view/IWindowManagerImpl.java
2ec5093e5a908cea532e571aead6a5c024c553f7 15-Dec-2012 Svetoslav Ganov <svetoslavganov@google.com> Fixing the build

Change-Id: I01349d65ac5915da090cfb018f99e0a508f9d5ad
/frameworks/base/tools/layoutlib/bridge/src/android/view/IWindowManagerImpl.java
152e9bb81aa5b2ab4637f4b2dae04b3ce89fa891 13-Oct-2012 Svetoslav Ganov <svetoslavganov@google.com> Refactoring of the screen magnification feature.

1. The screen magnification feature was implemented entirely as a part of the accessibility
manager. To achieve that the window manager had to implement a bunch of hooks for an
external client to observe its internal state. This was problematic since it dilutes
the window manager interface and allows code that is deeply coupled with the window
manager to reside outside of it. Also the observer callbacks were IPCs which cannot
be called with the window manager's lock held. To avoid that the window manager had
to post messages requesting notification of interested parties which makes the code
consuming the callbacks to run asynchronously of the window manager. This causes timing
issues and adds unnecessary complexity.

Now the magnification logic is split in two halves. The first half that is responsible
to track the magnified portion of the screen and serve as a policy which windows can be
magnified and it is a part of the window manager. This part exposes higher level APIs
allowing interested parties with the right permissions to control the magnification
of a given display. The APIs also allow a client to be registered for callbacks on
interesting changes such as resize of the magnified region, etc. This part servers
as a mediator between magnification controllers and the window manager.

The second half is a controller that is responsible to drive the magnification
state based on touch interactions. It also presents a highlight when magnified to
suggest the magnified potion of the screen. The controller is responsible for auto
zooming out in case the user context changes - rotation, new actitivity. The controller
also auto pans if a dialog appears and it does not interesect the magnified frame.

bug:7410464

2. By design screen magnification and touch exploration work separately and together. If
magnification is enabled the user sees a larger version of the widgets and a sub section
of the screen content. Accessibility services use the introspection APIs to "see" what
is on the screen so they can speak it, navigate to the next item in response to a
gesture, etc. Hence, the information returned to accessibility services has to reflect
what a sighted user would see on the screen. Therefore, if the screen is magnified
we need to adjust the bounds and position of the infos describing views in a magnified
window such that the info bounds are equivalent to what the user sees.

To improve performance we keep accessibility node info caches in the client process.
However, when magnification state changes we have to clear these caches since the
bounds of the cached infos no longer reflect the screen content which just got smaller
or larger.

This patch propagates not only the window scale as before but also the X/Y pan and the
bounds of the magnified portion of the screen to the introspected app. This information
is used to adjust the bounds of the node infos coming from this window such that the
reported bounds are the same as the user sees not as the app thinks they are. Note that
if magnification is enabled we zoom the content and pan it along the X and Y axis. Also
recomputed is the isVisibleToUser property of the reported info since in a magnified
state the user sees a subset of the window content and the views not in the magnified
viewport should be reported as not visible to the user.

bug:7344059

Change-Id: I6f7832c7a6a65c5368b390eb1f1518d0c7afd7d2
/frameworks/base/tools/layoutlib/bridge/src/android/view/IWindowManagerImpl.java
4eeb4f664ac6b5901a8e874dcf70c0382295f792 08-Nov-2012 Jim Miller <jaggies@google.com> Add mechanism to kick keyguard to show the assistant

Fixes bug 7499778

Change-Id: Ic9ea514feb489feeee6716f40bdb9792842f9515
/frameworks/base/tools/layoutlib/bridge/src/android/view/IWindowManagerImpl.java
bfec0a8616bc197ee3b7b71be6fed1939d0c3c4d 06-Nov-2012 Jim Miller <jaggies@google.com> Add isSafeModeEnabled() API to WindowManagerService

This adds a means of determining when the device is in safe mode,
as required by keyguard to disabled some features.

Change-Id: I31d357e6738c92e1837f9e0263e5f3f4de66315a
/frameworks/base/tools/layoutlib/bridge/src/android/view/IWindowManagerImpl.java
6dfd0b39a63559999a769f93d5cdb48abe675344 15-Oct-2012 Xavier Ducrohet <xav@android.com> Fix SDK layout rendering in Eclipse.

Change-Id: I0e9e85632012c0929b987ee9d0ccf7c25eece322
/frameworks/base/tools/layoutlib/bridge/src/android/view/IWindowManagerImpl.java