Since SurfaceView layers are located below application layers,
SurfaceView is not captured by screenshotApplications()
when the application is running in fullscreen.
Moreover, ws.isFullscreen(dw, dh) returns mostly true
on the devices which do not use the navigation bar.
Change-Id: Ia1036c79054950384a97504714929fd85c8147de
Signed-off-by: Sangkyu Lee <sk82.lee@lge.com>
Activities that handle their own configuration get layout when hidden
and the configuration changes but not when the content insets change
if they are hidden. They need to get a fresh layout for both
situations.
Fixes bug 11544694.
Change-Id: Iff3a9adb72ea7dfc3e5cd38e1b9cd7cf2006f8f5
There is still a flash of black when going to a non-wallpaper activity
from keyguard. This is not a regression from jb-mr2 and any fixes to
clean it up are too risky at this late date.
Fixes (partially) bug 11570753.
Change-Id: I17aaae4ab8be570f7e28276a7b8ac4b8685e7551
Prior to this change any attempts to set the app transition when the
screen was off would fail. That would cause the
SOFT_INPUT_IS_FORWARD_NAVIGATION flag to be incorrect when launching
an activity such as the alarm before the screen turns on.
Without SOFT_INPUT_IS_FORWARD_NAVIGATION in the correct state the
android:windowSoftInputMode="stateHidden" attribute would be
mishandled leaving an IME on the screen along with the alarm activity.
Fixes bug 10817166.
Change-Id: I8ad97e67ebab2069e753e957b5d253e36dcdd3e5
* commit '1fbb5da29a4ebef1d758dffad9c2704a5932d223':
Fix a JNI local reference leak in JNIMediaPlayerListener::notify.
Add null pointer check.
Import translations. DO NOT MERGE
Small DocumentsProvider doc improvements.
Keyguard isn't visible if it hasn't been drawn.
Enable fast camera transition when launched from navbar
Reduce camera launch time by about 250ms.
camera2: Remove prior repeating request when setting.
Reduces jank in multiuser lock from QuickSettings. The launcher and
wallpaper were being hidden as soon as the surface for the keyguard
was created. Now they are not hidden until the keyguard has been
drawn. This still leaves a short time where there is a black screen
but it is considerably shorter than it was. Comparable to jb now.
Fixes bug 11046339.
Change-Id: I349d95dba72da27e5c05a7a64c95a2774d17a34e
If a window claims to handle its own configuration change then we
won't destroy and recreate its window on a configuration change.
Normally that recreation triggers the first layout following
orientation change because mHaveFrame is false. Windows that handle
their own configuration changes never got a relayout pass following a
change in orientation.
This change passes the configuration changes that an application
handles into the AppWindowToken. If the app says it handles
orientation or screen size changes then a relayout will occur when the
configuration has changed.
Fixes bug 11647107.
Change-Id: Ie8d49fd050442ebbdcf0b805087894e3a2fc4be9
In setAppVisibility add wtoken to mOpeningApps even if the requested
visibility already matches requestedHidden. When Keyguard hides an app
requestedHidden will mismatch and mOpeningApps will end up empty where
it should have the app that will become visible.
Add mAnimateWallpaperWithTarget = true to another situation where
wallpaper animation needs it.
Fixes bug 11570753.
Change-Id: I70b93bbb580386eb912613f0ce11e582eff8c449
When the keyguard or a dream is visible, we usually block content
from showing on secondary displays by mirroring the primary display
contents to them. However, the keyguard may wish to show a
presentation on a secondary display in which case we should not
mirror.
This change adds an exemption for keyguard dialogs when the full
screen is obscured. The keyguard can then create presentations with
the TYPE_KEYGUARD_DIALOG window type in order to show special
content on other displays selectively.
The old code used to cause all secondary displays to mirror, which
isn't quite what we want.
Bug: 11257292
Change-Id: I55429002b2233ae25fe80db149636d6f41f2a112
Return to old way of only laying out Keyguard on configuration change
and add a new qualifier that does a layout if a window is part of an
opening app. This qualifier allows apps that handle their own
configuration changes to be notified of screen changes after the
configuration has changed. Apps that do not handle their own
configuration changes find their way into this code because their
surfaces are recreated by default and mHaveFrame is false.
This fixes bug 11544694 and passes the test of all bugs listed in CL
ag/383579.
Change-Id: I3a679b27eb4a2c5210957bcd4ae2f10b46f6e076
Apply the test for configuration change to all windows. A year ago
this was the test but CL ag/247731 which fixed b/7428221 limited the
test to just Keyguard windows. A week later CL ag/248223 which fixed
b/7444971 applied the test to Wallpaper as well. Then two days after
that CL ag/249762 which fixed b/7453222 reverted the wallpaper. This
fix reverts the Keyguard qualification and restores the test to all
windows.
This fix has been tested against the repro steps for all three bugs
above. In addition this fixes bug 11033407. The fix for the bug is
described in the bug.
Change-Id: Ie0f4c7cd4697c1689c4f331d572359cf7ce934cf
A final layout pass should be done whenever the status bar has
completed its incoming animation.
Fixes bug 10387660.
Change-Id: I48c19015c53116b58cf73e20be32d1f64dd682ca
Activities launch starting windows before they are resumed. If another
activity is started after a first activity has launched its starting
window then it was possible that the starting window will never be
removed. An earlier fix, ag/368411, solved this by posting a delayed
message that would remove orphaned starting windows after 10 seconds.
This fix immediately removes starting windows that have been orphaned
through the above sequence.
A few code cleanups are also included in this CL.
Fixes bug 11029212.
Change-Id: I7a9befca92888aefe4000b90716c57c2aa572634
Windows were previously ordered by TaskStack/ActivityStack order. This
change provides a data structure in DisplayContent that tracks task
movement. Previously Recents and Home activity windows were always
adjacent because they were on the same stack. With this change windows
from other activities can be placed between the two.
Fixes bug 11338594.
Change-Id: Ie34443ff22f330d015141d97db79370c54920d28
The previous jank improvement only worked when closing
an app, not when bringing one forward (hitting home button).
This should cover the specific case that is being missed: Having the
Home task being brought to front over a translucent window, with
a wallpaper behind both tasks.
bug:11253262
Change-Id: I200ef6fe2dda8d9ab4e1f82059b4f888c59007f4
The WindowManagerService member mLowerWallpaperTarget is not stable
throughout an app transition. Relying on it to be stable causes the
intra-wallpaper animation to start out right but after the windows
have been relayed out there is no longer a lower wallpaper target.
This causes the wallpaper to start tracking the animation of the
current wallpaper target rather than remain stable.
Switching to a new variable that saves the state of wallpaper
animation at the start of the animation fixes bug 11240590.
Change-Id: I336a59c47665fcf61019f567b8663956ff0e4940
When a translucent window is closing, the transition
animation to Launcher is janky because Launcher is
expected to be 'opening' but it has always been open
underneath the translucent window. Therefore, the
animation applied to the translucent app appears
janky.
bug:11253262
Change-Id: I9b6af3291d119e6927401f63785b12f25573f4eb