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
1. Implemented the advanced printer options integration. Now a print service
may declare an advanced print options activity which may be launched by
the user if the current printer supports advanced print options. These options
are visible only to the print service that added them and it is the only party
that will interpret the options.
2. Fixed a couple of bugs in the saved print jobs parsing. One was that if there
are more than one page range, a half of the print job properties was not
properly parsed. The other was that the media size constructor was using
incorrect argument order, thus creating a media size with wring width.
3. Fixed and edge case where old print jobs and their docs can get stuck in
the spooler. If the app did not write the requested pages we were not showing
an error message, rather just finish the activity without canceling the print
job and this print job is stuck in the spooler. Now we show an error message
and the user may retry, cancel. If the user cancels the print job is also
cancelled, thus no leftover in the spooler.
4. Fixed the background color of the print dialog to meet UX spec.
bug:11241800
Change-Id: I352440bc86aec824a805883fc9579d96a06d11e6
When ConnectivityService checks the mobile data connection and notices that
there is no connectivity, first do a check to see if a valid carrier app for
the current MCC/MNC exists. If so, launch that app instead of checking for a
provisioning URL or hoping for a DNS redirect in the browser. If no such app
exists, continue on as normal.
Bug: 9622645
Change-Id: Ic88b06250af89825d8eee7e4945fb8d7c28d16e1
The startService() and stopServie() calls had a redundant check for
the incoming user ID being valid, but with its own custom implementation
that doesn't match the normal handleIncomingUser flow. In fact, for
both of these we are going to do handleIncomingUser anyway when we get
to retrieveServiceLocked(), so there was just no need for this.
Change-Id: I14409a03781a14a5f1a786aceb31dcc77efb062c
The effects of the flag, Intent.FLAG_ACTIVITY_TASK_ON_HOME was being
overwritten by the call immediately after it was set. Changing the
order of operations leaves the effect intact.
Fixes bug 11376962.
Change-Id: I27371e0efeb0c08d1e14514a9e3a63157f6d34d8
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
We need to be able to perform very lengthy operations on some threads
(e.g. the I/O thread responsible for installing multi-gigabyte APKs) but
still have long-run deadlock/hang detection applied to those threads.
Previously the watchdog mechanism applied the same policy to all
monitored threads: unresponsive after 60 seconds => restart the system.
Now, each monitored entity can have its own independent timeout after
which the watchdog declares deadlock and restarts the runtime. The
halfway-finished intermediate thread stacks are dumped based on the
specific entity's declared timeout, not the global 30 second checking
interval.
With that new mechanism in place, the Package Manager's lengthy-I/O
thread watchdog timeout is raised to 10 minutes.
Bug 11278188
Change-Id: I512599260009c31416b2385f778681e5b9597f05
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