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
1. For an app to print it creates a PrintDocumentAdapter implementation
which is passed to the print dialog activity. If the activity that
created the adapter is destroyed then the adapter, which may rely on
the activity state, may be in an invalid state. For example, an app
creates an adapter and calls print resuting in the app activity and
the print dialog activity being stacked. Now the user rotates the
device which triggers the recreating of the activity stack (assume the
app does not handle rotation). The recreated print dialog activity
receives the intent that originally created it with containing the
adapter that was constructed in the context of the old, now destroyed,
app activity instance.
To handle this we are limiting an app to be able to print only from
and activity and when this activity is destroyed we mark the adapter
as invalid which will result in hiding the print dialog activity. Note
that if the app process is killed we already handle this in the print
dialog activiy by registering a death recipient on the adapter binder.
2. In the PrintManager.PrintDocumentAdapterDelegate some of the state is
accessed only on the main thread and some from miltiple threads. The
code was trying to avoid locking for state that is not accessed by
multiple threads but this is error prone and the benefit does not
justify the complexity and added fragility. Now grabbing a lock all
the time.
3. The PrintJobConfigActivity waits for it to bind to the print spooler
service before instantiating its print controller and editor. However,
these can be accessed by invoking some of the activity cycle callbacks.
This change is adding null checks for the case where the activity
callbacks are called before the binding to the spooler is completed.
bug:11242661
Change-Id: Id906b3170e4f0a0553772dfa62686f06fdca0eaf
This occurs when switching users on devices that
don't have a rotation lock quick settings tile.
Change-Id: I738ca15ca754be90cec7eaf3a8eda3e38ed96b33
(cherry picked from commit e8f50a1400d288e6fd7c20ec7947270e204ee57d)
Include volume UUID in generated document IDs to uniquely identify
volumes over time. Show volume label to users. Watch for mount
changes to update available roots.
Bug: 11175082
Change-Id: Ia151bde768587468efde0c1d97a740b5353d1582
1. We were using the layout for the printer drop down from the
print dialog as the list item in the all printers activity.
This layout was not high enough. Now we have a separate
layout for the drop down and for the list. Note that they
are almost identical but this is better that writing java
code to lookup the height from the theme and change it
programatically since the java code is almost half the size
of the layout and leads to spreading the logic in both the
layout file and the java code.
2. The padding of the printers list was not correct. Now it
mimics the bahavior in settings where we change the padding
based on orientation.
bug:11261157
Change-Id: I8507c4ee86e9196fe1777cf9577f1886ccfbb1ad
While under heavy system load, keyguard was able to create widgets before
before ActivityManagerService was ready. The result was a race
between keyguard adding widgets and ActivityManagerService being
ready to send broadcasts.
This fix provides keyguard with an additional signal to know when
the system is booted and widgets are safe to load.
Fixes bug b/11217169
Change-Id: I7a714d65b068678f961e52bdde4e1c20f9c287f0
1. There was leftover code in the printers adapter that was
hard coding the item width with no reason to do so.
2. Changed the icon view visibility to invisible to allow
the text of all list items including save to PDF and all
printers to be left aligned.
bug:11225340
Change-Id: I5b51d0d30577699f5cd73c7c58521358653d135b
This fixes an issue where the mUpdateSeekBars runnable was being
repeatedly posted to the handler while keeping a reference to
the transport control (and hence keyguard). Even after the view
was detached from keyguard it would continue to post events that
would ultimately keep the instance of keyguard from being GC'd and
cause keyguard to slow down.
Fixes 11169793
Change-Id: If2bb238adf6d78101589926b60a61d9f187c6d1c
Make sure that caches are cleared at the right times and views have
their data populated correctly. Also fix a caching issue in
RemoteController.
Bug 11218218
Change-Id: Ieb833b5dc440ccd1b82050f12eb7059a4e0a412f
If a layout has already been requested when we want to show the
correct widget pane, post the event for later and immediately return.
This works because PagedView has some interesting ideas about
maintaining a consistent state. It will attempt to recalculate the
current page position during measurement, but thanks to a reliance on
this measurement to establish scrolling boundaries that scrollTo uses
for clamping plus other code that depends on the idea that it can add
a new widget pane view and immediately scroll to it, this attempt to
scroll fails if the target page was added and measurement is not yet
complete. This patch ensures we don't hit these edge cases in a few
known ways.
While this ends things in the correct state, it predictably has a few
visual artifacts. Situations where things would completely fail
before, positioning pages incorrectly or fading out wrong pages now
will briefly flash and fade the widget frames or in some cases will
visibly animate from the starting page to the correct one. We should
address these issues in a future release.
Bug 11217368
Bug 9760604
Change-Id: I989d03b5bfdd5b6403a6b67a8aae7585ca0c8ae0
This fixes an issue where keyguard isn't showing but tells
PhoneWindowManager to wait anyway. The fix is to send a null token
when keyguard isn't showing.
Fixes bug 11216030
Change-Id: I4985fe50c63819415d9d5a1de0b741c8aa6391d8
These files were dropped by the translation
pipelines because they do not contain any
translated elements, but in reality they
are needed.
Bug: 11226380
Currently it's possible for the home application to suggest new
wallpaper dimensions and the WallpaperService to request the bitmap
between when the new dimensions have been propagated and the old
bitmap has been forgotten. This leads to the WallpaperService
drawing a Bitmap with the old dimensions into a Surface with the new
dimensions.
By forcing the WallpaperManager to forget the old Bitmap immediately
before we reload it, we can ensure that we always have a Bitmap of
the correct size.
Bug: 10853302
Change-Id: I298ac5f3f8bcde54eeb1e45d21bf2ba3cbb618c9
This is a resource file cotaining the media sizes for the Catalan
locale. Without it the print spooler crashes all the time for that
locale since it cannot construct the PDF printer correctly.
bug:11226380
Change-Id: I7fa9c9bf4ed073e5f4ddf0d0fe9de4998e3467d4
- store desserts as ALPHA_8, saving 75% of bitmap memory
- run DessertCase in its own process, avoiding bloating
systemui every time the daydream or platlogo activity run
- lock orientation in DessertCase to stop thrashing around
when the device is rotated
Bug: 10918599
Change-Id: Ia2fb0696b903ae355c75b53d3a0c45b70784d00c
If a printer disappears or we do not get its capabilities, we
show the user a message that the printer is unavailable. This
message was appended after the printer name but they tend to
be very long and the user does not see that the printer is not
available due to ellipsis. Now we append the message after the
subtitle which tends to be much shorter.
bug:10983508
Change-Id: Ib3f7ad3bd82ff6decd49dc45461fb5131338e8c2