113971 Commits

Author SHA1 Message Date
Chet Haase
df32aa8715 Fix leak with transitions when views get removed
Transitions, when started, add an OnPreDrawListener to the current
ViewTreeObserver (which is global to the view hierarchy). This listener
is removed when the listener is called.

It is possible to add this listener and then remove the view from
the hierarchy before the listener is called. This could result in
either the listener not getting called at all (since there was no
drawing event) or (in the case of this bug) the listener getting called
when the sceneRoot had no AttachInfo (which is the case when that
root has been removed from the hierarchy). This results in the listener
trying to remove itself from a *different* ViewTreeObserver than the one
it added itself to, leaving the actual listener still sitting on a list
of listeners in that original VTO. This can result in a growing list of
listeners and a growing amount of work that gets done on every frame.
It can also lead to a serious memory leak, since the objects referred to
by the transition may be non-trivial (as in the case of this bug).

The fix is to add another mechanism for the listener to get removed.
Specifically, we now listen for detach events on the sceneRoot. If that
view gets detached before the listener is called, then we have a chance to
remove it from the correct VTO before the AttachInfo becomes null.

Issue #11307391 keyguard is slow after updating to krt16c and playing music

Change-Id: I108413ea2f18f5351df0a11d4ae56fec0b4aa154
2013-10-22 16:27:56 -07:00
Christopher Tate
9f08820025 Edge case: overriden system package moved & became privileged in OTA
Because properly continuing permission grants post-OTA has changed
policy to include privilege considerations based on install location,
make sure that we re-evaluate when we determine that the apk has
moved from its pre-OTA location.

Bug 11271490

Change-Id: I6c09986e2851a67504268b289932588457c05dfc
2013-10-22 15:36:01 -07:00
Craig Mautner
798adeffb0 Don't use transient states for wallpaper animation.
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
2013-10-22 14:50:52 -07:00
Craig Mautner
4000630999 Merge "Check for home activity when switching focus." into klp-dev 2013-10-22 20:01:12 +00:00
Baligh Uddin
d94b7ffc2e Merge "Import translations. DO NOT MERGE" into klp-dev 2013-10-22 19:48:12 +00:00
Baligh Uddin
f56d8694f2 Merge "Import translations. DO NOT MERGE" into klp-dev 2013-10-22 19:48:05 +00:00
John Spurlock
42197263bc Optimize system bar background drawable.
Out with TransitionDrawable.

The new background drawable knows about all possible
background styles, and optimizes the transitions
between them - including picking up from the current
state, force finishing on screen off, and using
SystemClock.elapsedRealtime() for timing.

Bug:11254317
Change-Id: Ice83dc966f6674ef97f7008f2a1b62d67ec59e7d
2013-10-22 15:39:54 -04:00
Craig Mautner
04f0b70c13 Check for home activity when switching focus.
When finishing or stopping an activity the code was automatically
refocusing to the next activity on the same stack independent of the
task's onTopOfHome flag. When the activity eventually finished or
stopped it would then honor the onTopOfHome flag.

This fix examines the onTopOfHome flag and arranges the focus
correctly if home is the next activity to run.

Fixes bug 11318263.

Change-Id: I73a8f5e82de04b01acaffe366b085f9e475e1451
2013-10-22 12:31:01 -07:00
John Spurlock
a81736a74d Ensure the simple CAB appears below the status bar.
When the contextual action bar is not in overlay mode,
the screen layout is a linear layout.  (screen_simple.xml)

Ensure the standalone CAB appears below the status bar,
consumes the top offset (to avoid content application below it)
and fill in the status area with a guard view for background
protection.

Bug:10014069
Change-Id: I614f16dfa77367a94808aef54710ffebd66e1ca8
2013-10-22 13:51:52 -04:00
Craig Mautner
7408234985 Merge "Make sure mFocusedStack is never the home stack." into klp-dev 2013-10-22 17:36:57 +00:00
Craig Mautner
d1bbdb462a Make sure mFocusedStack is never the home stack.
There were circumstances where mFocusedStack could be assigned the
home stack. If this were ever to occur then all subsequent tasks would
be put on the home stack. This fix ensures that there is no way that
mFocusedStack will ever be assigned to the home task.

Fixes bug 11271189.

Change-Id: I7ddd9b6bcbf2787cbe2f44b461ad057ae2241f00
2013-10-22 09:53:20 -07:00
Roman Nurik
acc642bce9 Merge "Add Nexus 5 to Device Art Generator." into klp-dev 2013-10-22 16:06:20 +00:00
Brett Chabot
305258da75 Add 'no system permission' test app.
Used in PackageManagerOTATests to verify upgraded system apps
are granetd new permissions.

Bug 11271490

Change-Id: Idbc07bc043d06ea15dc41285ecbfb8186a7ecc95
2013-10-22 04:58:50 +00:00
Craig Mautner
24ba3234ca Merge "Do not delete stacks that are not empty." into klp-dev 2013-10-22 04:31:12 +00:00
Craig Mautner
19d9bd54d3 Do not delete stacks that are not empty.
The possibility existed that an activity was set to a task that it was
already being set to. If that were to happen, and it was the only
activity in the only task of the stack the stack would be deleted.
This fixes that situation and logs it as well to confirm that it does
fix bug 11272935. Logging to be deleted upon successful monkey run
exhibiting the log.

Change-Id: I436fdcc9a3734adad81d3ef90f29b93b3ac4dfcd
2013-10-21 20:05:26 -07:00
Jeff Brown
534103d400 Merge "Fix issues catching up to touch events after a short pause." into klp-dev 2013-10-22 01:03:55 +00:00
Robert Greenwalt
4d8a8392f7 Merge "Don't set same country code on supplicant again and again" into klp-dev 2013-10-22 00:59:40 +00:00
Christopher Tate
7eb83c597f Merge "Preserve window sizes when rebatching alarms" into klp-dev 2013-10-22 00:58:42 +00:00
Vinit Deshapnde
da40d92766 Don't set same country code on supplicant again and again
Setting the same code is redundant, and may cause supplicant to drop
currently connected connection.

Bug: 11303252
Change-Id: I1af57b3af2d0b8cc51939a8b9872fb3fe0105a91
2013-10-21 17:55:12 -07:00
Christopher Tate
3e04b47216 Preserve window sizes when rebatching alarms
The existing code wasn't retaining the requested window bounds, if any,
and so could wind up rebatching alarms into much longer potential
delivery windows than originally demanded by the caller.  This could
wind up delivering alarms outside their designated windows entirely.

Bug 11324357

Change-Id: I4d418cd08702e397b3c7692b412d4bf51d5d9e4b
2013-10-21 17:51:31 -07:00
Jim Miller
1693f6a563 Prevent having multiple seek runnables in flight.
This fix ensures that only one runnable is running at a time, no matter how
many events come in.  There's probably a better way to do this, but this is a
safe fix.

Fixes bug 11307391

Change-Id: I007c95062b20285571f39603c95fb9174b9a2da3
2013-10-21 17:17:40 -07:00
Adam Lesinski
e17e0f0e6c Merge "Fix jank for translucent window transitions" into klp-dev 2013-10-22 00:13:17 +00:00
Adam Lesinski
43d8d3355b Fix jank for translucent window transitions
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
2013-10-21 16:41:48 -07:00
Jim Miller
644696f0a0 Merge "Workaround for corner case in TransitionManager" into klp-dev 2013-10-21 23:10:01 +00:00
Matthew Xie
ce39e8ced8 Merge "Change pairing api/intent permission from PRIVILEGED to ADMIN" into klp-dev 2013-10-21 22:58:53 +00:00
Jim Miller
ee186de4b2 Workaround for corner case in TransitionManager
This works around a problem where removing a review with unfinished
transitions results in leaked object references to KeyguardTransportControlView.

The workaround disables transitions until we have a better fix.

Fixes bug 11307391

Change-Id: I1df82f2c6f1cd9f5c9076d4c76cfd4aec3b6806c
2013-10-21 15:36:54 -07:00
Jay Shrauner
8d51c2f6fa Merge "Fix CountryDetector NPE" into klp-dev 2013-10-21 22:23:55 +00:00
Roman Nurik
e81bd59d01 Add Nexus 5 to Device Art Generator.
Change-Id: I101ec82b1d50c6437e96165fb8ac6c73d451ff84
2013-10-21 18:11:58 -04:00
Matthew Xie
ac2c6c3a16 Change pairing api/intent permission from PRIVILEGED to ADMIN
The APIs are createBond, setPin, setPairingConfirmation
The intent is ACTION_PAIRING_REQUEST
bug 11101076

Change-Id: I3a314efd973b3ce078ab5347159c336f222d9f15
2013-10-21 14:56:33 -07:00
Jason Monk
0aeca87233 Merge "Make setting PAC require CONNECTIVITY_INTERNAL" into klp-dev 2013-10-21 21:40:17 +00:00
Winson Chung
1bab99c8ce Merge "DO NOT MERGE Fix null pointer exception when updating rotation tile. (Bug 11111473)" into klp-dev 2013-10-21 21:16:23 +00:00
Alan Viverette
ba55106148 Merge "Don't clip keyguard security container children (e.g. glow pad)" into klp-dev 2013-10-21 20:48:57 +00:00
Jason Monk
1aeaf84a38 Make setting PAC require CONNECTIVITY_INTERNAL
Also disables all setting of PAC networks through the internal AsyncChannel
methods.  PAC can only be saved through addOrUpdateNetwork for permission
checks.

Bug: 11316946
Change-Id: I51016b578080c342a5e5d536ea9a3fdd4fe16644
2013-10-21 15:28:44 -04:00
Wink Saville
089959a063 Merge "Fix typo for radio technology" into klp-dev 2013-10-21 19:03:18 +00:00
Jay Shrauner
a2c93480e3 Fix CountryDetector NPE
Fix CountryDetector NPE by calling CallerInfo.getCurrentCountryIso() which
checks for potential nulls.

Bug:11291034
Change-Id: I0a4412c432551c64ec30652d69636442653ee337
2013-10-21 11:57:20 -07:00
Christopher Tate
d570dae577 Merge "Fix priv-app edge case across OTAs" into klp-dev 2013-10-21 18:31:14 +00:00
Sungmin Choi
46401a312d Fix typo for radio technology
Bug: 11317677
Change-Id: I792517f4c3aa568b014d6c2bc0023ce5255f8abb
2013-10-21 10:13:42 -07:00
Victoria Lease
a80d642498 Merge "Implement language-specific GSUB processing" into klp-dev 2013-10-21 15:55:30 +00:00
Baligh Uddin
13d111c925 Import translations. DO NOT MERGE
Change-Id: Ifefb5cc2d2e9545e3a3c89ec8b2284a04c1bff39
Auto-generated-cl: translation import
2013-10-21 08:39:26 -07:00
Baligh Uddin
d33e5f4d99 Import translations. DO NOT MERGE
Change-Id: I1609ae278c6e7fe7af1d440df91940e0a0b07e45
Auto-generated-cl: translation import
2013-10-21 08:29:27 -07:00
Deepanshu Gupta
bf3acff10a Merge "Don't run the async query if being rendered in EditMode." into klp-dev 2013-10-21 02:51:20 +00:00
Scott Main
bab3348fc3 Merge "add xml attributes to IME javadoc" into klp-dev 2013-10-20 22:28:11 +00:00
John Spurlock
d4595bd1e6 Merge "Move the IME navigation guard view up to decor." into klp-dev 2013-10-19 17:03:55 +00:00
Christopher Tate
628946a6ef Fix priv-app edge case across OTAs
In this case:

   1. Privileged system app FOO is overlain by an installed update,
   2. FOO was replaced during an OTA,
   3. The new in-system FOO introduced new privileged permission requests
      that had not been requested by the original FOO,
   4. the update version of FOO still had a higher version code than
      the new FOO on the system disk, and
   5. the update version of FOO had been requesting these same (newly-
      added-to-system-apk) permissions all along;

then the newly-added privileged permission requests were incorrectly being
refused.  FOO should be able to use any privileged permission used by the
APK sited on the system disk; but instead, it was only being granted the
permissions used by the *original* version of FOO, even though the system
FOO now attempted to use them.

Still with me?

The fix is to (a) properly track privileged-install state when processing
known-to-be-hidden system packages, and (b) to tie the semantics of the
permission grant more explicitly to that evaluated state, rather than
using the prior (rather fragile) fixed-up privilege calculation applied
to the overlain apk's parse records.

Bug 11271490

Change-Id: Id8a45d667e52f3b5d18109e3620d5865f85bb9c9
2013-10-18 18:11:05 -07:00
Jim Miller
42b7b6927c Merge "Revert "Fix dodgy states of keyguard transport controls"" into klp-dev 2013-10-19 01:08:12 +00:00
Jim Miller
4d20ed3f26 Revert "Fix dodgy states of keyguard transport controls"
This reverts commit bdb5ac7ddbabec0ba947a32937d8b95738d513dc.

Change-Id: Iea8db9a590a2a3b65d941b2918345eb27f690240
2013-10-19 01:00:16 +00:00
Jonathan Dixon
43e533dea9 Merge "Restore 4 classes that were accidentally deleted" into klp-dev 2013-10-19 00:35:23 +00:00
Svetoslav Ganov
237575278d Merge "Hide the print dialog if the printing activity is destroyed." into klp-dev 2013-10-19 00:26:44 +00:00
Jonathan Dixon
74fc73f62b Restore 4 classes that were accidentally deleted
Bug 11291911

These deleted classes were previously public APIs and so need to remain
in the build (but hidden) in order to keep existing apps working.
(Partially reverts Change-Id: I02549a71104b35d86d99058c71f43e054730ec7d)

Change-Id: I28e53b056f41e66645136f5e18fba2ff55a65fe5
2013-10-18 17:10:34 -07:00
Scott Main
5df0631003 add xml attributes to IME javadoc
Change-Id: I7a3505753188ba23777391a286d8595ed64777cb
2013-10-18 16:09:51 -07:00