The dummy animation is a place holder. When the task stack is being
removed treating it as a true animation forced us through a path
where we deferred the detachment and made a call to tmpRemoveWindows.
Also replaced call to tmpRemoveWindows with a real remove windows
call. The tmpRemoveWindows call does not clean up the Session
and this leaves a surface on the screen.
Fixes bug 15591610.
Change-Id: I05f7bc276bfed2366bbcd8443c92a4bbbc8a4491
Remove uid before calling into Window Manager. Restore afterwards.
Check for null stack value before dereferencing.
Fixes bug 15591112.
Change-Id: Ida3de556940440162c91b8c1614d0f21e364abd8
- Do not call IActivityContainer.release() from
ActivityView.finalize() if it has already been called from
ActivityView.release(). Eliminates IBinder finalized Exception.
- Call ActivityRecord.makeFinishing() before calling ActivityStack.
destroyActivityLocked(). Forces call to scheduleDestroyActivity()
and eventually removeFromHistory(). Otherwise removeFromHistory()
is never called and window manager AppWindowTokens become orphans.
- Defer call to ActivityContainer.detachLocked() until all
activities have finished or timed out. Fixes problem where Display
is removed while activities are still launching.
- Call ActivityStackSupervisor.deleteActivityContainer() when all
activities have finished or timed out. Fixes orphaned
ActivityContainers.
Fixes bug 15450798.
Fixes bug 15484154.
Fixes bug 15383479.
Fixes bug 15316558.
Fixes bug 15168560.
Fixes bug 15143914.
Change-Id: Id3c641976b6f825458690f9ee063c07818b56f23
Add Intent.FLAG_ACTIVITY_NO_AMINATION to all Intents passed into
ActivityView.
Fixes bug 15393526.
Change-Id: I1899a5019416109e982f0254aaba410bb1f4a38d
The change is specific to AT&T as they want no signaling from device during provisioning.
I've tested following cases:
- expired AT&T SIM to make sure provisioning flow works as expected.
- airplane mode on/off with both active and expired AT&T SIM.
- wifi <-> mobile transitions work okay.
- LTE with Verizon SIM (basic sanity).
bug: 13190133
Change-Id: I215963174ae6000ae71d1dda693f95413f3d6e81
Check that the BrightnessRamp animation has completed before updating
the display state to STATE_DOZING.
Bug: 13472578
Change-Id: Ib9751f7a987463e4df98571e846d829ec8e73b5e
Signed-off-by: Prashant Malani <pmalani@google.com>
Users of ActivityViews can now be informed when there are no more
active activities in ActivityView by registering a callback.
Fixes bug 15330616.
Change-Id: I39d55bdb0db8b0a12ee751cdcb039b7fbb899c85
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: I349995bf6446d6c462dccdc2b599bab9ab0ab2c8
Minor refactoring of dock observer to allow its state to be
inspected and modified via dumpsys for debugging purposes.
eg. View current state.
adb shell dumpsys DockObserver
eg. Simulate being docked.
adb shell dumpsys DockObserver set state 1
eg. Reset back to normal.
adb shell dumpsys DockObserver reset
Change-Id: Ie48db775290ebed9aa4d9d9d5ac5a6fcb6122ac9
New tasks were being started on ActivityViews because they
matched packages. This fix enforces a rule that new tasks
can only be started on ActivityViews if they are explicitly
targeted for that ActivityView.
Fixes bug 15162447.
Change-Id: I9ccb72171b5cda0897a0b9ffe4cbebfbb0d92c2c
Allow power button to be used to either go to sleep as usual,
which may doze, or skip that completely and really go to sleep.
May also really go to sleep and go home all at once.
Bug: 14406056
Change-Id: Ia19e2551b9c2a72271bb2eddd5c0d1749761e019
When the device enters a non-interactive state, we normally
cancel all active vibrations as a safety precaution. However if
the system is performing haptic feedback then we want to allow
it to run to completion.
Bug: 14319563
Change-Id: I673781bbf32562e45c1595689e6b423bd178ea73
Instead of requiring the kernel to join last_kmsg and the reboot
reason together, allow both to be passed to userspace and have
userspace combine them the way the log parsers want them.
Existing devices with no ro.boot.bootreason property and kernel
support for putting the reason in last_kmsg will continue to
use the kernel's formatting.
Bug: 13813279
Change-Id: I079b0107feb1533c6a54044ca6a114741127dfbc
(cherry picked from commit 431614cb6b2170fc715757dc6f964fdbb140ee7d)
AmbientMode attempting to send message to DozeHardware no longer results in an
uncaught IllegalStateException. The exception was crashing Android Wear when
DozeHardware had already been released by PowerManagementService at time of
AmbientMode's message.
Change-Id: I5956a453802b5b764e88638f6b6d899cbc94cc8d
Fixes an issue where dozing was treated the same as the screen
being fully on. Now dozing is treated the same as the screen
being fully off which is slightly better. The decision of how
to represent this state is now internal to the battery stats
so it can be improved later.
Removed noteInputEvent() since it is unused.
Bug: 14480844
Change-Id: Iee8cf8dce1a1f91c62678bb6d3d9fe567ad6db42
If the component being checked has been removed an NPE will be
thrown. This checks for that situation and handles it.
Fixes bug 14562234.
Change-Id: Ica5713378f356ac8441862d455b7d284ea111212
Once a Surface has been established the activity in an ActivityView
must be paused and resumed as the view goes in and out of visibility
= View.GONE.
Fixes bug 14034658.
Change-Id: Icab43678053c225db70f051dceacd4d024df2153
The ActivityView.startActivity method may defer calling
ActivityContainer.startActivity if the ActivityView is not yet
visible. If the activity being started doesn't have allowEmbedded
attribute set to true then the SecurityException will not be
thrown until the ActivityView is visible. In such a case the caller
of ActivityView.startActivity cannot catch the SecurityException.
This fix checks the attribute at the time ActivityView.startActivity
is called.
Fixes bug 14317210.
Change-Id: I7fff23e39b67a9a0aa1b2e555920d02ae38906d9
WallpaperManager should always do a null check on the service object.
SystemServer should always bring up the DevicePolicyManagerService,
and let the service do appropriate default no-ops if the feature
is not supported.
Change-Id: Iaaf12b60ed375fe2e341ec11faa10c9344d7d9da
Throw a SecurityException if it is not true for an activity launched
using ActivityContainer.startActivity().
Change-Id: Id1d70e630195a49a3eccdc64a0beccc420400332
Activities were associating with existing tasks when their
components matched. This was causing them to be launched
into existing stacks rather than into their ActivityView. Adding
these flags forces the launches to be in unique tasks on their
ActivityView.
Fixes bug 14252286.
Change-Id: I9ba65a4a2da198435748c0a17396d3f7f8c75f5e