Changes included in this CL:
- remove the WAR for face detect mode null case.
- make the sanity check assert to warnings.
- make number of faces to be the minimal length of face metadata array length to
avoid out of bound access, since we relax the sanity check.
Bug: 11206459
Change-Id: Ifd9f7f79617039c1b3ad631f202b48076d775e09
Delete all the Java classes used only by the old WebView implementation,
and also sections of common classes that were only needed for the old
WebView.
Bug: 10427705
Change-Id: I02549a71104b35d86d99058c71f43e054730ec7d
WebViewFactory remains as an abstraction layer, but will now always
creates Chromium WebView instances.
Bug: 10427705
Change-Id: I045e43eb35462567fecd29d04e7b61902baef547
- Faces are reported differently from other rectangles, so the mapping
has to be specialized for them
- Use Key.equals for key comparison.
Bug: 11206459
Change-Id: I9a2a408dad981c2911048191ec30977020953146
IMEs recently gained the ability to layout out under the nav bar,
but our core measuring logic does not give height=WRAP_CONTENT windows
the entire screen height when computing desired window height.
Since IMEs can be identified by type, let them use the entire screen
height for measuring purposes, to properly handle the cases where
space is constrained, making that unaccounted-for nav bar height
important.
Bug:11215678
Change-Id: I1d0b73454c0c629e7d669b9de70641c7e8c4d333
...bad cleanup of crashing processes
We now have a special path for crashing processes, to silently
clean up their state.
Also some tweaks to Log/Slog.wtf to get better stack crawl
summaries in APR.
Change-Id: Ieced26989907a6e7615b6fa033813fced78d7474
getCropAndSetWallpaperIntent should only accept URIs with
the content:// scheme, so that the receiving application
doesn't crash opening a file it can't access.
bug:11173560
Change-Id: I855496633b646373db757e9d8e6e425568103b8b
AssetFileDescriptor augments a ParcelFileDescriptor with details
about how it should be interpreted, so extend it to support a Bundle
of extras. Then use these extras to share thumbnail orientation
metadata.
The raw image data of EXIF thumbnails matches the orientation of
the enclosing image, but the thumbnail data doesn't repeat the EXIF
flags. This meant that receivers of openDocumentThumbnail() would
get an image that needed to be transformed, but without enough
context to actually transform it.
Instead of transforming and recompressing the image on the fly on
the provider side, send a transformation hint that the receiver
side can interpret.
Bug: 11205688
Change-Id: Ibc5a7ad002377a55e6ffcb5ac5c8829841002e06
A measurement optimization has exposed some apps that are relying
on incidental layout requests to have themselves update. With the
optimization enabled, these apps break.
Apps targetted at older versions of Android should not
break due to this optimization.
bug:11192311
Change-Id: Id5fc7f83ec2cb1541d3d0d16f951cd57c0afaccd
Migrate transient bar mode to IMMERSIVE_STICKY, and
introduce new behavior for IMMERSIVE: namely the
opaque bars are revealed by clearing the flags on swipe.
Remove low-profile optimization that confuses api demos
and other apps using low-profile as a signal.
TransientNavigationConfirmation renamed to
ImmersiveModeConfirmation, and its associated resources,
since the confirmation is now shown when the nav bar is
shown in either of the two immersive modes.
Remove unused Toast.makeBar and associated hidden framework
bits now that the confirmation uses a cling instead.
Bug:11062108
Change-Id: Iae49d31973940b9bee9f5b1827756db5eaa76aa3
Only looking for old/new count changes is incomplete with the current
state of things. The observer's onChanged method will update this in
some cases, stomping the different values needed to trigger a fast
scroller update. Also update the fast scroller if the data change flag
is set.
Also fix the positioning of the legacy text overlay.
Bug 11188512
Change-Id: I35b3915ce49f8494c6d82f6be6d6df7169deddd7
We have become too aggressive about not allowing windows to draw while windw
animations are running, basically not allowing any drawing in any window when
there is any window animation. So if you did a relayout while the status bars
were being animated, your window would stop drawing until that status bar
animation was complete.
This change relaxes those rules in two ways:
- A particular window will only be told to stop updating when *it* is
currently involved in a window animation. So animations in status bars
will not stop app windows from update, and vice versa.
- If a window receives input events while it is in the "do not update"
state, we will immediately terminate that state and start allowing it to
draw. If the user is actually interacting with a window, we don't want
to wait to show feedback.
Change-Id: I72574eec048aee53115b46a78686cf27f42c42f7
1. The getActivePrintJobs() method in print service is designed to return
the active print job i.e. ones scheduled to be processed by the print
service. Now the correct list is returned.
2. The listeners for observing the state of print jobs may be called even
after being unregistered. Ex: state change occurs and we schedule a
message on the app's main thread to make the notificaion. Now the app
unregisretes the callback and on the next loop the notification message
is handled.
bug:11200258
Change-Id: I4a497b5c9a7287a22023cafe41ce966d14300ca6
We persist ongoing print jobs so they can be restarted if the device
dies. The data size of the printed document was not persisted to disc.
bug:11199352
Change-Id: I53ef1ee285aa4808917dd6a5c7335226aba1ef0a
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
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
bug:11121809
Fading edges, such as drawn by a scrolling marquee TextView, don't
behave correctly when their view is modulated, as done by the view
system when alpha is set on a view that returns false from
hasOverlappingRendering.
To work around this, always return true from hasOverlappingRendering
if a TextView has horizontal fading edges enabled.
Change-Id: I64c9b8c653aa1d9ca320292306fd24333e3ee225
1. In my previous change I fixed a typo in the Java constant with
intent action to launch the print dialog but failed to updated
the print spooler manifest.
2. Removed dead code - the user id is no longer needed since the
spooler is an app that runs per user. Every user has its spooler.
This code was not referenced from anywhere.
3. Added a default icon to the print spooler.
4. Fixed a bug where if the print history is empty the UI goes
to the all pritners activity.
bug:11059554
Change-Id: If74c23b418a8c67620ba14435ee7f3b2c4527099
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