e50d7fcd9796329bded8c39f2666b6c3ee021ff3 |
|
18-Mar-2013 |
Craig Mautner <cmautner@google.com> |
Properly close Surface when done. Surface.destroy was not being called. Leading to warning from StrictMode. Fixes bug 8388527. Change-Id: I472fb57ed2c3f6389e53d8f020f3b22b2d0740c8
/frameworks/base/services/java/com/android/server/wm/ScreenRotationAnimation.java
|
11e7d88d1441c20605d7f06ab31ef2c81590d5c4 |
|
05-Mar-2013 |
Mathias Agopian <mathias@google.com> |
remove suppor for SurfaceControl.FX_SURFACE_SCREENSHOT the window manager can now use the SurfaceControl.screenshot API with a "regular" surface. Change-Id: I76bed81d5e7b078ea1b3e8f96814aba32e9d5405
/frameworks/base/services/java/com/android/server/wm/ScreenRotationAnimation.java
|
3c1743705c4df816089e07a17753c6043b4d8e66 |
|
22-Feb-2013 |
Craig Mautner <cmautner@google.com> |
Create rotation animation modes. Allow fullscreen windows to specify crossfade or jumpcut animations that override the default rotation animation. Only if the incoming and outgoing topmost windows are fullscreen and both specify the same animation to use. Fixes bug 8182773. Change-Id: I6b3c0020d7bd2cdfba5c66189e114ec62cd54fcf
/frameworks/base/services/java/com/android/server/wm/ScreenRotationAnimation.java
|
29479ebe1007361222bf6ab4d5e2a27927d4b8e8 |
|
14-Feb-2013 |
Mathias Agopian <mathias@google.com> |
clean-up following Surface split Change-Id: I853a76d92d957ee38a36fcdd280d6407ec316987
/frameworks/base/services/java/com/android/server/wm/ScreenRotationAnimation.java
|
3866f0d581ceaa165710feeee9f37fe1b0d7067d |
|
12-Feb-2013 |
Mathias Agopian <mathias@google.com> |
split Surface in two classes: SurfaceControl and Surface SurfaceControl is the window manager side; it can control the attributes of a surface but cannot push buffers to it. Surface on the other hand is the application (producer) side and is used to push buffers to the surface. Change-Id: Ib6754c968924e87e8dd02a2073c7a447f729f4dd
/frameworks/base/services/java/com/android/server/wm/ScreenRotationAnimation.java
|
0bf6ec9e377f9fafb67a36f7fb54d3f6676634fc |
|
18-Dec-2012 |
Craig Mautner <cmautner@google.com> |
Clean up warnings. Change-Id: I1dfe21e5f64364c90565b594e28074cabe7daa64
/frameworks/base/services/java/com/android/server/wm/ScreenRotationAnimation.java
|
4b16969b006613bff4901a6e979f29a0f501430b |
|
30-Nov-2012 |
Dianne Hackborn <hackbod@google.com> |
Don't apply transformation fudge when not rotating. There is this stupid fudge factor applied to window transformations when doing a screen rotation animation. We need this when rotating, but when not rotating it causes very visible artifacts. Historically the non-rotation case only happened due to configuration changes, so wasn't that big a deal. Now however that we use this when switching users, it is more annoying. So get rid of it for such cases. Change-Id: I6b343866c1bad9b16984b4a629917c2f1bb37b9e
/frameworks/base/services/java/com/android/server/wm/ScreenRotationAnimation.java
|
9d9ece3c1e16001b63244459cdf4b428f4272d2e |
|
11-Sep-2012 |
Dianne Hackborn <hackbod@google.com> |
Animations for user switching. The window manager now has a facility to provide a full-screen animation, which the activity manager uses every time a user switch happens. The current animation is just a simple dumb slide until we get a design from UX. Also some cleanup: moved the portrait task animations to the default config so we always have an animation for them, and finally got the java symbol stuff out of public.xml. Change-Id: I726f77422b2ef5f2d98f961f8da003e045f0ebe8
/frameworks/base/services/java/com/android/server/wm/ScreenRotationAnimation.java
|
4ed8fe75e1dde1a2b9576f3862aecc5a572c56b5 |
|
31-Aug-2012 |
Jeff Brown <jeffbrown@google.com> |
More improvements to the display manager. Added more complete support for logical displays with support for mirroring, rotation and scaling. Improved the overlay display adapter's touch interactions. A big change here is that the display manager no longer relies on a single-threaded model to maintain its synchronization invariants. Unfortunately we had to change this so as to play nice with the fact that the window manager wants to own the surface flinger transaction around display and surface manipulations. As a result, the display manager has to be able to update displays from the context of any thread. It would be nice to make this process more cooperative. There are already several components competing to perform surface flinger transactions including the window manager, display manager, electron beam, overlay display window, and mouse pointer. They are not manipulating the same surfaces but they can collide with one another when they make global changes to the displays. Change-Id: I04f448594241f2004f6f3d1a81ccd12c566bf296
/frameworks/base/services/java/com/android/server/wm/ScreenRotationAnimation.java
|
64a55af0ac700baecb0877235eb42caac59a3560 |
|
26-Aug-2012 |
Jeff Brown <jeffbrown@google.com> |
Add plumbing for new surface flinger display API. Cleaned up the implementation of Surface and SurfaceSession to use more consistent naming and structure. Added JNI for all of the new surface flinger display API calls. Enforced the requirement that all Surfaces created by the window manager be named. Updated the display manager service to use the new methods. Change-Id: I2a658f1bfd0437e1c6f9d22df8d4ffcce7284ca2
/frameworks/base/services/java/com/android/server/wm/ScreenRotationAnimation.java
|
b47bbc3d80badb94229bc4ce7a2d5006faa9ef15 |
|
23-Aug-2012 |
Craig Mautner <cmautner@google.com> |
Clean up displayId and layerStack usage. Make better use of Display object by saving it in DisplayContent. Only use layerStack when referring to Surfaces. Get displayId from default Display or default DisplayContent. Remove warnings. Fixes bug 7038151. Change-Id: Ie493f0f5e755dc9b91ee969ff561c2a098283ead
/frameworks/base/services/java/com/android/server/wm/ScreenRotationAnimation.java
|
98365d7663cbd82979a5700faf0050220b01084d |
|
20-Aug-2012 |
Jeff Brown <jeffbrown@google.com> |
Refactor for multi-display support. Split WindowManagerImpl into two parts, the WindowManager interface implementation remains where it is but the global communications with the window manager are now handled by the WindowManagerGlobal class. This change greatly simplifies the challenge of having separate WindowManager instances for each Context. Removed WindowManagerImpl.getDefault(). This represents the bulk of this change. Most of the usages of this method were either to perform global functions (now handled by WindowManagerGlobal) or to obtain the default display (now handled by DisplayManager). Explicitly associate each new window with a display and make the Display object available to the View hierarchy. Add stubs for some new display manager API features. Start to split apart the concepts of display id and layer stack. since they operate at different layers of abstraction. While it's true that each logical display uniquely corresponds to a surface flinger layer stack, it is not necessarily the case that they must use the same ids. Added Display.getLayerStack() and started using it in places where it was relatively easy to do. Change-Id: I29ed909114dec86807c4d3a5059c3fa0358bea61
/frameworks/base/services/java/com/android/server/wm/ScreenRotationAnimation.java
|
6881a10557acf3b0270de54799d6f19437acf584 |
|
27-Jul-2012 |
Craig Mautner <cmautner@google.com> |
Small step towards supporting multiple displays Change-Id: I353449c2b464394988c7e0203656b5851a0c9127
/frameworks/base/services/java/com/android/server/wm/ScreenRotationAnimation.java
|
924d9b75d6ec4597264a7af3f8be5b5a7d3a3dd2 |
|
06-May-2012 |
Craig Mautner <cmautner@google.com> |
Force BlackSurface to be a black surface. BlackSurface transparency was tracking animation transparency causing background images to peek around the corners. Fixes bug 4998851. Change-Id: I48ac7bf5d0cc560b655c9f12faccda411985cbad
/frameworks/base/services/java/com/android/server/wm/ScreenRotationAnimation.java
|
3255a28b6a18bb97f0e533dc1673c5e28837b4f2 |
|
17-Apr-2012 |
Craig Mautner <cmautner@google.com> |
Clear orientation variable until rotation is done. In the old code orientationChangeComplete was set to true on each pass through perfomLayout. If any window was rotating the variable was set to false on the way through the performLayout. Since we can now make passes through performLayout before any animation step occurs we were seeing mOrientationChangeComplete true prior to rotation completing. This change sets mOrientationChangeComplete false at the start of a rotation and sets it to true if we ever get through an animation step without encountering any rotating windows. Change-Id: I37690cf20868dfbaac94a81640bc4d9cb9fb8f00
/frameworks/base/services/java/com/android/server/wm/ScreenRotationAnimation.java
|
7d8df3905d294127cc58100912a57c816bfb2502 |
|
07-Apr-2012 |
Craig Mautner <cmautner@google.com> |
Animate from Choreographer only. Animation steps are now executed on a Thread launched from the Choreographer rather than being called at the end of the WindowManager layout process. Animations and layout are still tightly coupled in that they share considerable state information and neither can be executed without holding a lock on WindowServiceManager.mWindowMap. Change-Id: Ie17d693706971507b50aa473da1b7258e9e67764
/frameworks/base/services/java/com/android/server/wm/ScreenRotationAnimation.java
|
187ae2105eb771e10ef54e0e9f2796e7fb7cb4e9 |
|
12-Apr-2012 |
Dianne Hackborn <hackbod@google.com> |
Revert to ICS screen rotation animation. Change-Id: Ida76f17a00e4c8ab828deae51095107e4eeaa321
/frameworks/base/services/java/com/android/server/wm/ScreenRotationAnimation.java
|
d6b32b6178238361ffd1b428120942858de78428 |
|
16-Mar-2012 |
Dianne Hackborn <hackbod@google.com> |
More work on rotation animation. Change-Id: Ib8206db98b68cb1e0b16e4c55d949e80ff31bd9f
/frameworks/base/services/java/com/android/server/wm/ScreenRotationAnimation.java
|
bf90eaa5d2410bfb60ef84a0efcf3b5eb5022d9f |
|
15-Mar-2012 |
Craig Mautner <cmautner@google.com> |
Separate layout ops from surface ops. Further work to isolate layout from animation and surface operations. Remove cruft and minor refactoring. Change-Id: I6f910ed72c7c614996641c353870c2b2ab5e8bb4
/frameworks/base/services/java/com/android/server/wm/ScreenRotationAnimation.java
|
e32c30784191a9244a08450759471c934c85034c |
|
12-Mar-2012 |
Craig Mautner <cmautner@google.com> |
Separate out animations from layout. (Dianne) pulled the animation steps out of the layout. Changes to exposed layers cause repeated calls to layout code. Combined animation steps into start and finish animation code. Change-Id: I3602d1d6249d20987d102a54e3a67a7a39361b55
/frameworks/base/services/java/com/android/server/wm/ScreenRotationAnimation.java
|
191874e37106ca503003ef3d4bec392ca2627cbe |
|
09-Mar-2012 |
Dianne Hackborn <hackbod@google.com> |
Improved rotation animation. Change-Id: Id21686be8b2b229dc61c5d01f888c9b5deabb857
/frameworks/base/services/java/com/android/server/wm/ScreenRotationAnimation.java
|
c3b91e9afd981f1a994a1024c3e822cf909f070d |
|
05-Mar-2012 |
Dianne Hackborn <hackbod@google.com> |
Merge "More work on rotation animation."
|
9fd74805c8be91df78f3eccc40ab2466c8114fc9 |
|
02-Mar-2012 |
Dianne Hackborn <hackbod@google.com> |
More work on rotation animation. The black frame is now a separate animation element. This allows us to have it move through the aspect ratio change, without the old and new screen elements doing weird aspect ratio scalings. This makes the animation generally look different (more like a reveal), not sure if it is better or worse, but definitely has less artifacts in things like the gallery. Also tweaked the animation definitions a bit. Change-Id: I94c274ba04bbc7a675946dc6c1778e19386e4a66
/frameworks/base/services/java/com/android/server/wm/ScreenRotationAnimation.java
|
a731cd302dc39deaf835aeb52af12f391806a4bf |
|
03-Mar-2012 |
Craig Mautner <cmautner@google.com> |
Fix rotation so orientation changes aren't dropped. Modify test so that rotation animation is entered one final time after rotation completes. This last time causes mUpdateRotation to be set true forcing a test for orientation change. Fixes bug 6109189. Change-Id: I25475f336a3439a56b1c540205d09ee48c1d2b7c
/frameworks/base/services/java/com/android/server/wm/ScreenRotationAnimation.java
|
dbb7991b4e4638b284814b50e79cacc1e1c9d8cd |
|
02-Mar-2012 |
Craig Mautner <cmautner@google.com> |
Separate animation steps into start, step and finish phases. Fixes bug 6089126. Change-Id: Iafbde36ff719640335a7ecf762e1d991cf7915e4
/frameworks/base/services/java/com/android/server/wm/ScreenRotationAnimation.java
|
4dcece8e509027cd28e20b1f9f14d2c0446d84c0 |
|
10-Feb-2012 |
Dianne Hackborn <hackbod@google.com> |
Fix issue where screen rotations would stop animating. If we went through the update loop multiple times, and had finished animating the first time, we would blow away that information the second time and never kill the animation. Also moved killing the animation back up to the animation step -- this involves destroying surfaces and such, and so really should be done as part of the surface transaction. We can also consider the screen rotation animation object to be owned by the animation, so it can destroy it when done. Change-Id: If24356c509c66d046f2ddfd9ad5bfe12504d7716
/frameworks/base/services/java/com/android/server/wm/ScreenRotationAnimation.java
|
fd1c5ed3705b885ce50b5ecad04ce699248b1d84 |
|
13-Jan-2012 |
Dianne Hackborn <hackbod@google.com> |
New screen rotation animation design. We now have an animation that can start as soon as we detect to rotate the screen, and have a different phase once the new UI is ready to complete the transition into it. Change-Id: I05b9c12a699232acbddc36b4a994a4452db71476
/frameworks/base/services/java/com/android/server/wm/ScreenRotationAnimation.java
|
e65beaabe4be554683417839594dd41b6c979cbb |
|
01-Nov-2011 |
Mathias Agopian <mathias@google.com> |
Fix rotation displays frame N-1 briefly while rotating The ScreenShot layer is now created hidden. The screenshot itself is aquired during the transaction when the layer is made visible. This guarantees the screenshot and the layer happen atomically with respect to screen updates. Bug: 5534521 Change-Id: Ida23e1f13d5716ec83b78a15712e0646d6cf8729
/frameworks/base/services/java/com/android/server/wm/ScreenRotationAnimation.java
|
0ab84ef507f23505a72798fbe25cf4bb2c507ea3 |
|
14-Oct-2011 |
Mathias Agopian <mathias@google.com> |
Add a LayerScreenshot A LayerScreenshot is a special type of layer that contains a screenshot of the screen acquired when its created. It works just like LayerDim. Make sure to call compositionComplete() after rendering into a FBO. Bug: 5446982, 5467587, 5466259 Change-Id: I5d8a1b4c327f9973d950cd4f4c0bca7f62825cd4
/frameworks/base/services/java/com/android/server/wm/ScreenRotationAnimation.java
|
840b8a678537519c27ddf2f818494eaa20a135d4 |
|
17-Oct-2011 |
Mathias Agopian <mathias@google.com> |
Revert "Add a LayerScreenshot" This reverts commit d6809f40cf61203573ec5dbc437f695cd132cc18.
/frameworks/base/services/java/com/android/server/wm/ScreenRotationAnimation.java
|
d6809f40cf61203573ec5dbc437f695cd132cc18 |
|
14-Oct-2011 |
Mathias Agopian <mathias@google.com> |
Add a LayerScreenshot A LayerScreenshot is a special type of layer that contains a screenshot of the screen acquired when its created. It works just like LayerDim. Bug: 5446982 Change-Id: I7814aff2380e7e146937f2b641907be2a30c76cc
/frameworks/base/services/java/com/android/server/wm/ScreenRotationAnimation.java
|
36991744a221c30a47085442e6416bdde40b85e8 |
|
12-Oct-2011 |
Dianne Hackborn <hackbod@google.com> |
Fix issue #5445966: WindowManager reporting -long on prime when it shouldn't be. The window manager now uses the app screen dimensions to compute the various configuration properties, as it should. This means that prime is official a "not long" device. Poor prime. It probably feels inadequate now. Because it is. Oh and all that other stuff? Debugging logs. Turned off. And why the heck not, debugging logs are great. Change-Id: Iaaf8ef270d986d34fd046d699ef4c0ecea1981fc
/frameworks/base/services/java/com/android/server/wm/ScreenRotationAnimation.java
|
8962028b6e2f4176e6ceded281e584d223e44982 |
|
11-Sep-2011 |
Dianne Hackborn <hackbod@google.com> |
Fix inflating of animations. Need to define attributes for animation set, to have correct indices. Also small fixes elsewhere. Change-Id: If596147e8aee4ebffe4e184872070341eff6df73
/frameworks/base/services/java/com/android/server/wm/ScreenRotationAnimation.java
|
d040edbae968d826aa2c82d382345811a45c646b |
|
31-Aug-2011 |
Dianne Hackborn <hackbod@google.com> |
Use floating point window positions. Gets rid of gapps between windows during animations. Change-Id: I17d2ef0af214008f0eabd7eb19268f145fe83b39
/frameworks/base/services/java/com/android/server/wm/ScreenRotationAnimation.java
|
bc68a59c024bdb745dac8e2ec7408a9f30595f1a |
|
25-Jul-2011 |
Jeff Brown <jeffbrown@google.com> |
Report the external display size to the input reader. The input reader needs this information so that it knows how to interpolate touches on an external touch screen. Changed Display so that it asks the WindowManager what the real display size is (as opposed to the raw display size). This means it now takes into the forced display size set by adb shell am display-size. Replaced all calls to getRealWidth() / getRealHeight() / getRealMetrics() in the WindowManager and replaced them with direct usages of the mCurDisplayWidth / mCurDisplayHeight so that the WM doesn't end up making a reentrant Binder call into itself. Fixed the table status bar HeightReceiver so that it updates the height on all configuration changes since it is possible that the display size changed independently of an external HDMI display being plugged / unplugged. Improved the Display class documentation to make the distinctions betweeen the various sizes clearer. Change-Id: I3f75de559d3ebffed532ab46c4ae52c5e7f1da2b
/frameworks/base/services/java/com/android/server/wm/ScreenRotationAnimation.java
|
5fd2169eabd77e6bfafaf456e58051a3bafb2bca |
|
07-Jun-2011 |
Dianne Hackborn <hackbod@google.com> |
Work on issue #4518815: Compatibility mode introduces compatibility regression... ...for Market App iRunner There were a lot of serious issues with how we updated (or often didn't update) the display and resource state when switching compatibility mode in conjunction with restarting and updating application components. This addresses everything I could find. Unfortunately it does *not* fix this particular app. I am starting to think this is just an issue in the app. This change does fix a number of other problems I could repro, such as switching the compatibility mode of an IME. Also a few changes here and there to get rid of $#*&^!! debug logs. Change-Id: Ib15572eac9ec93b4b9966ddcbbc830ce9dec1317
/frameworks/base/services/java/com/android/server/wm/ScreenRotationAnimation.java
|
784707187d96b731df5256c1c2adb0aaf9037239 |
|
28-May-2011 |
Dianne Hackborn <hackbod@google.com> |
Fix various places that were using the wrong display metrics. Change-Id: I1ac2a0c4a1b7c851dbc99d26f295c7dd49b0bd5c
/frameworks/base/services/java/com/android/server/wm/ScreenRotationAnimation.java
|
7916ac65dc492e4e1431879875c77d7121fbf82e |
|
17-May-2011 |
Dianne Hackborn <hackbod@google.com> |
Add new command line option to change global screen size. For example: adb shell am display-size 1024x600 Change-Id: I5df462acd3323bdaaaefa3126faea7dd8595b726
/frameworks/base/services/java/com/android/server/wm/ScreenRotationAnimation.java
|
de75cb4738376c4cfe15c56aba7cd78d90e3100e |
|
03-Mar-2011 |
Dianne Hackborn <hackbod@google.com> |
Fix issue #3400119: API to specify a black background behind a window transition There is now an API, which is used for task switching. Also improved how we handle rotation animation when we can't take a screen shot, to cleanly revert to the old freeze behavior. This removes the need to special case the emulator. Change-Id: I7227432a2309370437ec6ac78db02c6f1e7eedd5
/frameworks/base/services/java/com/android/server/wm/ScreenRotationAnimation.java
|
6e1eb76f02ccc9dbc309b938f62d39312da8cafe |
|
18-Feb-2011 |
Dianne Hackborn <hackbod@google.com> |
Explode WindowManagerService. Change-Id: I3d73ed4c9a1b5d730aeffeb2df24ce5e6117d698
/frameworks/base/services/java/com/android/server/wm/ScreenRotationAnimation.java
|
a924dc0db952fe32509435fdb8dc9c84a9e181f3 |
|
17-Feb-2011 |
Dianne Hackborn <hackbod@google.com> |
Start window manager refactoring. Move all of the pieces into a new com.android.server.wm package. Change-Id: I942b7bcfb84ee0f843f47d58e55ffc5a93c0da94
/frameworks/base/services/java/com/android/server/wm/ScreenRotationAnimation.java
|