Implement language-specific GSUB processing

This patch allows HarfBuzz to select language-specific features based
on the language. It is a fix for bug 7004056.

Change-Id: I63f01b9580250728b900f19f357cefdeb9d36c72
Don't clip keyguard security container children (e.g. glow pad)

BUG: 11112606
Change-Id: I5145004f16dd805161e530b8836cc9c1f177427b
Layoutlib: Update the wifi icon in the status bar.

Issue: https://code.google.com/p/android/issues/detail?id=60993

Change-Id: Ia43ed40b42c79f67dcd5809b827d4fecbc823c25
add accessibility string for location quicksetting

This gives the location quick setting the same ability that all the
other quick settings have: the accessibility text can now be
different from the display text.

Bug: 11010329
Change-Id: I0dee7b6f974b4e1dc314a35e39d907e90dc8dc3c
Fix assorted FastScroller regressions

Fixes the following bugs:
- Don't show preview if text is empty, e.g. whitespace
- Avoid transitioning decor from DRAGGING to DRAGGING
- Restore original font size
- Restore thumb position adjustment for last row

BUG: 11207575
Change-Id: I72fc031d1fd22a41d81e7f52ca0856cf82d1be27
Prune unneeded density resources from APK

When a preferred density is specified, prune all but the
closest matching density when the exact density resource does not
exist.

If a preferred density resource does not exist and a higher density
resource exists, prune all but the resource with the next highest
density relative to the preferred density.

If a preferred density resource does not exist and there is no
higher density resource, prune all but the resource with the next
lowest density relative to the preferred density.

bug:11224465
Change-Id: I99b3950fe3d8116a5625968ed383442315ae8526
Fix stale data in keyguard transport control display

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
Log view root, input and looper state in bug reports.

Bug: 10948648
Change-Id: I956cce2a0fb516c02f9bbbc021f6238bcb226891
Make dump messages asynchronous.

Prevents the dump actions from being blocked by traversals.

Removed a stale comment on queueOrSendMessage and renamed it to
reflect its current implementation since it no longer has a secondary
queue.  Removed an unnecessary lock as well.

Bug: 10948648
Change-Id: Ic5fcc567212fb9cc07566c12f5f419af13c2b0b1
Clear the caller identity when dumping print system state.

bug:11251806

Change-Id: I295db22f327bc81f911cf638295415689d54fe56
Input method root view should have BOTTOM gravity.

The window had BOTTOM gravity, but the root view was using the
LinearLayout default (START | TOP), meaning an IME with a tall
inputArea could effectively push the navigation bar guard view
off screen.

This change simply uses BOTTOM instead of TOP for the root view.

Bug:11237795
Change-Id: I681c2b1eddac53589e0d168f09a183d67b1e5322
Layoutlib Create: Remove references to non-std Java classes.

Do not add the non-standard Java classes. Updates the references to all
non-standard classes to new classes in
com.android.tools.layoulib.create package. This also treats
java.lang.AutoCloseable which is part of Java 7 similarly so that we can
still run on Java 6.

Change-Id: Iac5b272652e2780c9bb72d19f415d150948ca589
Fix CalendarView to show the right month and year label.

Change-Id: I95431f1054678d4192bd1621c1f69b29268f55e9
Fix DatePicker and Calendar widget in layoutlib.

Issue: https://code.google.com/p/android/issues/detail?id=59732
Change-Id: I281b3fdad88c591281a3645592c84f3e2cb61d09
Plumb through physical device UUID and label.

vold now parse out UUID and label for inserted physical devices,
and reports them to framework.  Add these to hidden StorageVolume
class for use by DocumentsUI and MediaProvider.

Remove last JNI method in FileUtils!

Bug: 11175082
Change-Id: I1cfcd1ade61767b103f693319ea2600008ee2e3c
Printer list items have wrong width.

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
All printers list has incorrect padding and item height.

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
Include external storage devices in DocumentsUI.

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
additional javadoc for NfcAdapter.ReaderCallback

Change-Id: I3cad8b43d53992bb3d53920abb510456ee72afb5
Fix bug #11252410 Recents items stuck behind hammerhead navigation panel in landscape

Right padding was wrong for the LinearLayout with id/recents_linear_layout. Its value
was first correctly set by the fitSystemWindows(Rect insets) call but then was reset
to "0" during padding resolution.

Thus make sure that the initial values for user padding left/righ are also set to the
ones coming from the computed ones.

Change-Id: I60390ff7a24286a8f7214eaff8606cb76268ee90