Bug description:
1) Start Car Dock app.
2) Drop phone into Desk Dock
3) Press back to quit Desk Dock app.
Car Dock Notification doesn't go away if I select it from the shade.
Change-Id: I9d3ad4dbbe8f886fc8d523d104676194c3943473
Fixes bug #2507582 by doing the following:
- Un-@hide the FLAG_ALLOW_BACKUP, FLAG_KILL_AFTER_RESTORE, and
FLAG_RESTORE_ANY_VERSION mask constants in ApplicationInfo. These
correspond, respectively, to the <application> manifest tag's
android:allowBackup, android:killAfterRestore, and
android:restoreAnyVersion attributes.
- Remove the android:restoreNeedsApplication attribute and the
corresponding FLAG_RESTORE_NEEDS_APPLICATION constant [which was still
marked @hide]. We now always use the application's own Application
class when performing a normal restore. In the future when we support
an externalized full-filesystem backup/restore operation, we will use
an OS-defined agent class with a base-class Application instance, but
this will not happen until a future release.
Also expands real documentation on the above ApplicationInfo constants;
that work is part of bug #2465360
Change-Id: I735d07a963ae80a01343637d83bef84e4c23fdcc
Fixes issue #2437252: Starting activity by means of startActivityForResult
causes 5 seconds delay if "android:windowIsTranslucent" is true
The optimization to avoid showing an activity window when a new
activity is being started was a little too aggressive. Now it
avoids doing this if there is not actually a fullscreen activity
on top to cover it.
Change-Id: I630e37a1f1d3b874b5a25572cbf887cebc2e3e91
Shelling out to logcat from the system server makes me queasy,
so this is turned off by default -- it must be enabled individually
for each error type (system_app_anr, etc) via a secure settings
value (which I plan to poke into from gservices for internal use).
Even when enabled, it happens in a side thread, unless the system
server is about to die anyway (system server restart).
Change-Id: Id6d88bcd78d3625f0364a5fe9c771046601a5a14
Now Tethering gets notified of UMS changes. Turns out UMS Broadcasts
have attached data with a file scheme and the filter had to be set
correctly.
bug:2504908
Change-Id: I67d979000196c90068fe59846b4fa2bbf6ea00d8
ShutdownThread.reboot() does return so we need to block after calling it
to prevent PowerManager.reboot() from returning.
Since PowerManager.reboot() can now take significantly longer than before,
we now ignore ANRs during shutdown.
Change-Id: Ibceeb265ae382567215f6a399108d8be3a7bbc95
Signed-off-by: Mike Lockwood <lockwood@android.com>
The provider determined by getBestProvider may not have a LastKnownLocation and
therefore the system might use a fake location, even if one provider will have
a location.
Change-Id: Iec4a377b141b0260af5611f51affa5f0c4a84ed2
getProvider() needs to work for providers that are disabled.
It should only return null if the provider does not exist.
Change-Id: Ieb9fbd8965a10329377bc8ac9d8061cebe519ab5
Signed-off-by: Mike Lockwood <lockwood@android.com>
Fixes issue #2507124:
cts.PackageManagerRequiringPermissionsTest:testClearPackagePreferredActivities
is failing with NPE
Also introduce some compatibility code to simple ignore calls to set
preferred packages from old applications, and changes some package manager
logs to Slog.
Change-Id: Id3f98ac8e106da526ba4c12879a9ddaabf28f462
Make sure that we have a window redraw itself after resizing its
surface.
Also includes a little optimization to avoid having an extra thread
for the ImageWallpaper.
Change-Id: I88d1eb66e3116077f48e6f9086a5b6459505ef69
I can't believe I let this slip through. And in the SDK no less. :(
The APIs for setting preferred activities will now throw a security
exception when used. This may break some apps, we'll see how it
goes. If it is too bad we can just make these log and not throw
anything, but I would much prefer they throw an exception.
Change-Id: I3aed434750eef8b202aa9d5bd774a0121be521c6
Fix issue #2493497: Stuck in the Emergency dialer - Home/Back keys doesn't work
This was another case of not updating the window focus when needed, this time
when the lock screen was hidden.
Also re-arrange the layout/animate flow to address issues where you would see
a flicker of whatever was behind the lock screen when showing a new activity that
hides the lock screen. This was because we were deciding to hide the lock screen
during the layout phase, which meant we had to do it without considering whether
it had drawn. So we could hide the lock screen before the window is shown for the
first time after being drawn. Now we can do this in the policy during animate, so
we can wait until the window is drawn and actually being shown.
The flow in perform layout is thus significantly changed, where the layout and
animate loops are both under the same repeating loop. The actual flow from this
should be the same, but it now allows the policy to request a new layout after
the animation loop is done. This actually cleans up a number of things in this
code as the complexity has increased.
Finally this includes a change to the ui mode manager when switching modes, to do
the resource configuration switch at a different time. This makes transitions
between modes much cleaner (though not yet perfect).
Change-Id: I5d9e75c1e79df1106108dd522f8ffed6058ef82b
Driver commands should be issued when driver has started.
Supplicant commands should be issued when Wi-Fi is enabled
Bug: 2339709
Bug: 2371609
Change-Id: I9ba6ddfa0cf4c4b8ca049b0eb7eaaa8edb42bad1
A recent change made the HiPri MobileDataStateTracker listen for notifications
about the default connection (which HiPri shadows). Local code was sending
itself a notification using the old HiPri badging instead of the new Default
badging and those notifications where therefore ignored.
Manifested itself on HiPri connections when we were already on 3g.
See change 42422 on master platform/frameworks/base for the change this is completing.
Change-Id: I375026048724d0035297287c61c6c2f58d4e0294
Several functions operate on variables to which access needs to be
synchronized. However, it happens that the functions in question
are only ever called from places which have already synchronized.
Therefore, nothing is really wrong, but the functions ought to
have 'Locked' appended to their names, to indicate that it is the
caller's responsibility to synchronize before calling them.
Change-Id: I44e7dc0dff6da9436677cb10908dce41ffeba195