14807 Commits

Author SHA1 Message Date
Craig Mautner
faf1a40382 Restore wallpaper positioning between apps.
Simplification where wallpaper was behind all apps didn't work when
keyguard and associated wallpaper needed to be above phone screen when
phone screen animated in and out. Instead phone screen was instantly
hiding the wallpaper.

Fixes most of bug 10932680.

This fixes the wallpaper disappearing as soon as the animation begins
when going from keyguard to phone. There remains jank going from phone
to lockscreen where the animation is not occurring and the phone
blanks out immediately.

Change-Id: Ie5f464acb2f6cefd2fb91f3b920a687ec7c15d76
2013-10-12 15:43:07 -07:00
Svetoslav Ganov
9b6d3a153f Fail only scheduled print jobs, i.e. handed to a service, if the service is disabled.
When a print service is disabled we assume all print jobs for it failed as we have
no way to know what happens to them. However we are also failing created print jobs,
i.e. ones not given to the service. Such jobs are in process of construction and
the print dialog is up. We should not fail such jobs as the dialog can still modify
their state and potentially select a print from a different service. Therefore, we
leave them alone and they will be failed if when constructed are passed to a
disabled/uninstalled service.

bug:11197432

Change-Id: Ie4fe54327e3e25776b1dd572be2dfafdd700c2e5
2013-10-12 12:35:44 -07:00
Craig Mautner
2219b751b6 Only return to home if the foreground task is removed.
The previous fix that returned to home when a task on top of home was
removed was too broad. If that task was not the foreground task it was
not a good idea to bring the home screen to the front.

Fixes bug 11198552.

Change-Id: I14e5fdc167011f25e0e8490c3e52c5c1dcbffbff
2013-10-12 11:26:08 -07:00
Craig Mautner
166434eca5 Merge "When removing a task that was on home, put home on top." into klp-dev 2013-10-12 02:42:38 +00:00
Craig Mautner
8e5695778f When removing a task that was on home, put home on top.
Killing an app that was launched from home was not relaunching home.
Previous situations relaunched the next app (i.e. home) based on the
task flag. However, when an app dies the relaunch is deferred until
the TaskRecord has long been forgotten. This fix rearranges the stacks
immediately upon the TaskRecord being removed from the stack. Then the
next resumeTopActivities() call will start the home task.

Fixes bug 11189555.

Change-Id: I0e09350a7db55ea8b38cce7bf4b69923a6b99494
2013-10-11 17:36:59 -07:00
Matthew Williams
32551ae519 Merge "Fix infinite boot-loop bug in SM." into klp-dev 2013-10-11 21:26:19 +00:00
Matthew Williams
632515b9d0 Fix infinite boot-loop bug in SM.
Bug:11064918
If the ContentResolver sync API is used with the empty ("")
string as a provider, the ContentService will throw an RTE.
This cl addresses all the entry points of the API that could
allow this, as well as adds an ifEmpty check at the point of
failure.
Also removed RTE throws from public functions(no point in
crashing the phone).

Change-Id: I57427d12a6cafb3e6d7a32ca0c10b05315b20580
2013-10-11 13:18:22 -07:00
Craig Mautner
09cb9bdcc8 Merge "Add test for topmost home stack activity being home." into klp-dev 2013-10-11 19:50:03 +00:00
Craig Mautner
760b2314d9 Add test for topmost home stack activity being home.
And restarts home if test fails.

Fixes bug 11118615.

Change-Id: I3b6c544d479b467f10febff512798c2db8e32f74
2013-10-11 11:57:07 -07:00
Craig Mautner
ab3276ddd9 Merge "Make an exception for screenshot optimization." into klp-dev 2013-10-11 18:41:45 +00:00
Craig Mautner
3474040486 Make an exception for screenshot optimization.
Screenshots were not being made for tasks with the flag
FLAG_EXCLUDE_FROM_RECENTS set. But if the task is in the foreground
the shot should be taken even with the flag set. This fix adds a test
for tasks being in the foreground.

Fixes bug 11170567.

Change-Id: If42db7f43ed1dd8d2b16b68824adc813b31c94f0
2013-10-11 11:05:35 -07:00
Svetoslav
8f34715b94 Merge "Refactor how the print dialog activity is started." into klp-dev 2013-10-11 17:01:15 +00:00
Craig Mautner
d69417d2f6 Merge "Reduce jank on incoming phone call during dream." into klp-dev 2013-10-11 16:49:55 +00:00
Svetoslav
7bfbbcb04b Refactor how the print dialog activity is started.
1. Before the print job activity was started asyncronously with
   respect to the print call on to the print manager. This was
   creating a situation where the starting activity may finish
   before the print dialog appears which may lead to an orphaned
   print document adapter with no data to print (as the UI is
   is gone), or strange behaviors where the print dialog starts
   on as a separate task.

   To address this the pending intent for starting the print
   dialog is not started by the print spooler since we cannot
   call into it synchronously as we have to start its process
   and bind to the spooler service which leads to jankyness in
   the client app. Now the pending intent is created by the
   print manager service in the synchronous print call so
   from an app's perspective calling print starts the activity.

   The side effect of this design is that the print dialog
   activity may start before the system is bound to the spooler
   service. In such a case the print activity cannot start
   poking the print spooler state as the system registers
   callback to observe the spooler state. To address this
   the print spooler activity disables the UI and also binds
   to the spooler service which happenes immediately after it
   is started. As soon as the print dialog binds to the
   service it starts the UI.

2. Fixed an bug in the printer adapter of the print dialog that
   was leading to a crash if the only item in the adater is the
   all pritners option and it is selected.

3. Piping the package name that started the printing so we can
   pass it to the storage UI as a hint to open the last location
   the app used.

bug:11127269

Change-Id: Ia93820bdae0b0e7600a0930b1f10d9708bd86b68
2013-10-11 09:11:24 -07:00
Craig Mautner
2881630af9 Reduce jank on incoming phone call during dream.
- Include dreams in the conditions that disable transition animations.
  This way there is no visibility of activities that are closing
  behind the keyguard when an activity that dismisses the keyguard
  starts up.

- Do not notify the keyguard mediator when the keyguard is dismissed
  because a dream is starting up. This keeps activities from resuming
  just because the keyguard is being dismissed.

Fixes bug 11064847.

Change-Id: I9d32fc96d518b1cdab511e187226a3cb889cf6d4
2013-10-10 20:31:00 -07:00
Dianne Hackborn
fa8830715d Merge "Fix issue #11175600: Proc stats is aggregating stats in the wrong direction" into klp-dev 2013-10-11 01:29:26 +00:00
Dianne Hackborn
59da67900d Fix issue #11175600: Proc stats is aggregating stats in the wrong direction
Change-Id: I7f06fbde8f52296cb2932003b4da77b2c68a6011
2013-10-10 18:27:24 -07:00
Dianne Hackborn
2c09e8cdf6 Merge "Fix issue #11157301: Bad process stats when apps are binding to long-running services" into klp-dev 2013-10-10 23:11:59 +00:00
Dianne Hackborn
32366b29c4 Fix issue #11157301: Bad process stats when apps are binding to long-running services
We now treat PROCESS_STATE_TOP more specially.  When a process has another
client bound to it that is TOP, it will only allow itself to go in the TOP
state if it is not already running for another significant reason.

Change-Id: Ia3856406bd481bf6e98d55100a5513ccf4060e0d
2013-10-10 16:10:32 -07:00
Jason Monk
8b81a63810 Merge "getProxy in ConnectivityService returns port w/PAC" into klp-dev 2013-10-10 22:52:03 +00:00
Matthew Xie
64be26fad7 Merge "Check callback null condition for register/unregsiter state change callback" into klp-dev 2013-10-10 21:56:20 +00:00
Jason Monk
decd295b13 getProxy in ConnectivityService returns port w/PAC
Changes the PacManager to report message back to ConnectivityService
to send a broadcast once the download has completed.  This allows the
ConnectivityService to store the correct proxy info for getProxy().

This made the problem arise that ProxyProperties was not handling port
while it had PAC.  Added small fix for equals() and parcelization.

The combination of these fixes seems to resolve Bug: 11028616.

Bug: 11168706
Change-Id: I92d1343a8e804391ab77596b8167a2ef8d76b378
2013-10-10 17:01:45 -04:00
Matthew Xie
9b69399399 Check callback null condition for register/unregsiter state change callback
Fix BluetoothPan closing sequence for unregsiter state change callback
bug 11160007

Change-Id: I405ec91a938289fe9541de2ebd9abc1fb938f44a
2013-10-10 12:12:04 -07:00
Alan Viverette
90abd6d1df Merge "Ensure accessibility node cache is synced with service state" into klp-dev 2013-10-10 18:19:25 +00:00
Jeff Sharkey
635892fe35 Merge "Guard against NPE when using existing process." into klp-dev 2013-10-10 17:17:14 +00:00
Jeff Sharkey
2ffa50df6f Guard against NPE when using existing process.
Bug: 11167561
Change-Id: I51ca7daa71504119fb64bc7bc2b7da4e03b13861
2013-10-10 09:52:48 -07:00
Svetoslav Ganov
a18661d592 Coalescing multiple print job notifications.
1. We used to show a single notificaiton for every print job but
   this is against th UX guidelines. Since we have to lead by
   example, this change adds coalescing of multiple notifications.

bug:11155212

2. Print job state callback in the PrintManager now correctly
   invoked on the main thread.

bug:10983508

Change-Id: I906e9e62198fa37cb4d2f71fce07ed475d61e1bd
2013-10-09 23:43:11 -07:00
Craig Mautner
4ca2aec2be Merge "Add task to list before looking it up." into klp-dev 2013-10-10 00:20:08 +00:00
Alan Viverette
3d1c5a7236 Ensure accessibility node cache is synced with service state
BUG: 11152210
Change-Id: Ibffd2909b6b06568de9344e536a200d8a7abac9d
2013-10-09 17:10:21 -07:00
Craig Mautner
8e79734ba3 Add task to list before looking it up.
Rearranging the order of operations allows a newly added task to be
bumped to the top during window sorting. Also, redundant calls moving
the home task to the bottom when moving an app task to the top are
removed.

Maybe fix 10858941.

Change-Id: Ic42d2e7045175384591644675dd0e8013a7c7528
2013-10-09 16:39:42 -07:00
Christopher Tate
d606be2562 Merge "Don't crash when component enable/disable broadcasts race with uninstall" into klp-dev 2013-10-09 22:18:41 +00:00
Jeff Sharkey
b3da3db34a Merge "Surface outgoing Uri permission grants." into klp-dev 2013-10-09 22:07:11 +00:00
Christopher Tate
06e5fed139 Don't crash when component enable/disable broadcasts race with uninstall
Bug 11154482

Change-Id: I55107fec51bf5efada136052c451f293976360d6
2013-10-09 15:02:17 -07:00
Jeff Sharkey
bcaac0adec Surface outgoing Uri permission grants.
This enables apps to discover and clean up persisted Uri grants when
the underlying Uri becomes invalid, such as when an account is
removed.

Bug: 11142566
Change-Id: Ieeb36cb1155acf226327ebe91cdd30b822d69d1b
2013-10-09 14:32:11 -07:00
Amith Yamasani
b0975540a4 Merge "Avoid deadlock between mUsers and cacheLock" into klp-dev 2013-10-09 20:57:35 +00:00
Dianne Hackborn
efeb6f3c1b Merge "Fix issue #11087316: Can't run dumpsys procstats on user builds in some cases!" into klp-dev 2013-10-09 19:15:35 +00:00
Dianne Hackborn
08b36a47cf Fix issue #11087316: Can't run dumpsys procstats on user builds in some cases!
Once we pass the dump perm check, we are safe.

Change-Id: I58f483573874ca9f8f914fb94137f8a2afafaf25
2013-10-09 12:14:11 -07:00
Craig Mautner
e8a057a9ae Merge "Remove overly tight constraint on drawn Keyguard." into klp-dev 2013-10-09 19:10:45 +00:00
Jeff Sharkey
fcd8a39edb Merge "Install providers enabled after app started." into klp-dev 2013-10-09 17:45:11 +00:00
Adam Lesinski
9d958f6993 Merge "Allow killed task to remove itself" into klp-dev 2013-10-09 17:36:57 +00:00
Craig Mautner
4e8a19c73a Remove overly tight constraint on drawn Keyguard.
The requirement that a window that is invisible will not be drawn is
incorrect. In particular the test fails before a surface has even been
added (mHasSurface == false) or shown (mPolicyVisibility == false).
This was causing the screen to turn on before Keyguard had been drawn
and exposing surfaces that would have normally remained hidden.

Also, don't pass null into KeyguardServiceDelegate.onShown() or we
will immediately turn the screen on before Keyguard is drawn.

Fixes bug 11062635.

Change-Id: I964c7ef186d0a94678020b9c27ca6b79e5433350
2013-10-08 21:32:37 -07:00
Lorenzo Colitti
2845e5196a Merge "Fix captive portal detection on IPv6 networks." into klp-dev 2013-10-09 02:14:43 +00:00
Jeff Sharkey
dd97f4233f Install providers enabled after app started.
When an app has already been started, and a ContentProvider component
is enabled with DONT_KILL_APP, use the existing ProcessRecord to
install the provider.

Bug: 11118692
Change-Id: I990f18b337eb19768ee1db895f1e2eb982046cce
2013-10-08 17:02:26 -07:00
Adam Lesinski
aa52437745 Allow killed task to remove itself
When killing a task from the recents UI, the activities in
the task would be scheduled for destruction, and the task would
be forcefully removed from the ActivityStack, destroying the
ActivityStack in the process if this was the last task. Since the
ActivityStack was removed, any activities calling back to report
their onDestroy was called (or any timeouts that trigger if
activities fail to do this) would be dropped and certain cleanup
routines would not be called.

Tasks and their ActivityStacks are removed automatically when the
activities within them are removed, so this manual removal was
preventing the cleanup routines from running.

bug:10920157
Change-Id: Ied9d4f8fea761a373a9a80a0dfe810590ab411d8
2013-10-08 15:41:18 -07:00
Jeff Sharkey
a6af40cda2 Merge "Add secondary external storage support." into klp-dev 2013-10-08 21:05:36 +00:00
Jeff Sharkey
44cbdec292 Add secondary external storage support.
When SECONDARY_STORAGE is defined by the hardware configuration,
include those paths in the new getExternalCacheDirs() and
getExternalFilesDirs() APIs.  Give secondary volumes valid state
until vold reports back.

Bug: 10330128, 10330229
Change-Id: Ifa55bfda47fd7c750f462dd26c98792ad462ab91
2013-10-08 12:57:11 -07:00
Lorenzo Colitti
143a2cf413 Fix captive portal detection on IPv6 networks.
Currently the captive portal check URL is generated by
concatenating scheme, "://", IP address, and port. This breaks
for IPv6 because IPv6 addresses in URLs must be enclosed in
square brackets (e.g., http://2001:db8::1/generate_204 is
invalid; should he http://[2001:db8::1]/generate_204 instead).
The resulting MalformedURLException causes isMobileOk to report
that there is no captive portal, even if there is one.

Fortunately the three-arg URL constructor already knows how to
construct URLs with IPv6 addresses. Use that instead of
generating the URL ourselves.

Bug: 10801896
Change-Id: I02605ef62f493a34f25bb405ef02b111543a76fd
2013-10-08 14:15:14 +09:00
Alan Viverette
6930d3805e Merge "Ignore certain WindowManager flags when touch exploration is enabled" into klp-dev 2013-10-08 00:47:23 +00:00
Craig Mautner
b729e99578 Merge "Yet more debugging for 10858941." into klp-dev 2013-10-08 00:16:41 +00:00
Craig Mautner
e2dd83a5b4 Yet more debugging for 10858941.
Change-Id: I258957044cb1a8331124f6abbe53428429c33355
2013-10-07 17:01:41 -07:00