squashed: revert DocumentsUI changes

Revert "Fix DocumentsUI FC"

This reverts commit cd48d8b3d713eff1e1f986228b55b79f51be2487.

Revert "DocumentsUI: Handle NPE gracefully"

This reverts commit 8ba53655cf460690a80c6988baced9ad9bcd6322.

Revert "DocumentsUI: Remove catch-all statements"

This reverts commit 13a67f83ae8db62575461956a5507f1a33d7391d.

Change-Id: I1365d1be4c017b2b65e31b8dba46ce6ee6b1226d
[View] Clear Hardware-Layers before system destroys HardwareRenderer​.

Symptom: Sometimes HardwareLayer display is corrupted.

Root Cause: In some cases, ViewRootImpl destroys HardwareRenderer​ without
clearing HardwareLayers in the view hirarchy. If the system trims memory fully
and kill the glContext at the same time, HardwareLayer may corrupt.

Solution: Clear Hardware-Layers before system destroys HardwareRenderer​.

Reproduce steps: Modify the cache's trim memory mechanism to make it easier to
trim fully, HardwareLayers implemented in app will easily be corrupted.
Modification of the cache is not required but make it easier to reproduce.

Change-Id: If57c802cdacf8dc37cbbcc199e74f9482834f981
Skip broadcasting to a receiver if the receiver seems to be dead

If an application that has a broadcast receiver is killed
during broadcasting, thread variable of ProcessRecord becomes null
so that IIntentReceiver#performReceive() is called
in BroadcastQueue#performReceiveLocked(). But if binder driver has not
noticed the death of the application yet, it can't throw
DeadObjectException. After that, binder driver notices. But it can't
notify DeadObjectException to the caller because performReceive() is
async call. So broadcasting keeps on waiting for finishing
performReceive() until timeout.

This change checks the death of the application before calling
performReceive() and skips broadcasting to the receiver
if the application has already died.

Change-Id: Ifa02b8b1a7e7b6fd314de90fedff5b7a5326825d
Themes: Add STYLE_THUMBNAIL to PreviewColumns

Change-Id: Ie18264cbede92220335400428e67735866cd442d
Themes: Add helper methods for creating complete component maps

These methods can be used to apply a theme while replacing any
components not found in the theme with the defaults.

Default components come from the default theme for the system
with any missing components in that default theme coming from HOLO.

Change-Id: Idea55cc684ccc8304b01a991c36b6993f55b8880
server: make clat interface name public

modify clat interface name from private to public

Change-Id: Ib937c1dd7b4bc215fba57703fc2f4d694b336e6f
CRs-Fixed: 536223
(cherry picked from commit 43a76564f0a2771f4a09ba86edefec3fc66badbc)
(cherry picked from commit 0448fd4b63a179c953449c3e8b40345eec9727b1)
(cherry picked from commit cbde0fcd3fb6882f0572afb3200e122a4d30d909)
Add CAP_BLOCK_SUSPEND Linux capability to system server

Add block suspend capability to system server to allow
system server to hold wake locks in more recent Linux
kernels.

Change-Id: If37e6b3db43cde6b185e699926a940f6717aa05b
Reduce total number of background apps for low memory devices

Due to memory constraints, we anyway cannot fit the default number
of BG apps. So instead of killing background apps to
free up memory when launching, start with an already
reduced background set of apps.

Another side-effect is that launch latencies also improve.
This change is for low memory devices. (512MB RAM or less)

Change-Id: I9de0cb1734c0a386fc47cde71723e5c16825f5a3
frameworks/base: Update timelapse quality check

Updated timelapse quality check to include WQVGA

Change-Id: Ic2ef9ad78cbbc2daa14ff5e95ff3cfb6e10a7529
libmediaplayer: update MIME types to include DASH support

Update MIME types to include DASH support

CRs-Fixed: 539815
Change-Id: I300e3bec1425ec1e1170bd489097237218c52baf
When mInputText isn't on focus, hide the soft keyboard

Flash english keyboard quickly when press selected the
number of the date of each month in data usage

Change-Id: I0d2cbde1a72a575b009a2d84d2e020ad101ce5a3
Make sure that items are visible

Sometimes item is not visible in messaging recipient in landscape mode.

Change-Id: Icc96fe25fdba0d52aa3d4a62009b8a2e8b68a0be
SystemUI (MSIM): Fix Airplane mode toggle issue using Quick Access menu.

onAirplaneModeChanged() in QuickSettingsModel class needs to be called from
MSimNetworkController class (for MSIM) to update Airplane widget in Quick
Access menu. Same code is missing in MSimNetworkController class.
Add notifySignalsChangedCallbacks() at MSimNetworkController class.

Change-Id: I214f679b377f26fb58b6165a52c5e12c860f5111
CRs-Fixed: 543170
framework/base: Create surface based on the panel orientation.

  - Create Surface for boot animation based on panel orientation
  - Set the display projection values based on panel orientation.

Change-Id: Iaf66ac13cc44cf7910ff150b3a104eb52bcefdbf
DialogFragement: Add null pointer check for mDialog for protection

DialogFragement can be dissmissed just after the Dialog is
established. This will cause NullPointerException.

Add null pointer check for mDialog for protection

CRs-fixed: 549689

Change-Id: If57f81d03a8ec2906598363b681ea38806fb2a90
ChooseTypeAndAccountActivity: Fix the Null pointer Exception of monkey test

ChooseTypeAndAccountActivity crashed during monkey test, due to Null
pointer exception occurred.

To fix this issue, Add Null pointer check before we use it.

CRs-Fixed: 478250

Change-Id: Iae3e331edfda238ecb0c6d5d32b15329b1dfee0b
Bluetooth: Fix to avoid object leaks during BT OFF

A case where script is running to do BT ON/OFF 2000 times,
Each time while turning off BT FULL_CONNECTED_ASYNC_CHANNEL
is disconnected by Pan Service. HALF_CONNECTED_ASYNC_CHANNEL
is not disconnected, which leads memory leak in Pan Service
object as messenger passed by PanService & ASYNC Channel object.
which are still referred from BT tethering framework code. So GC
does not claim for these objects. HALF_CONNECTED_ASYNC_CHANNEL
should be disconnected, once FULL_CONNECTED_ASYNC_CHANNEL
is disconnected to solve this issue.

Change-Id: I5a7a2beb0169a755cf4f3f37fd0a0ab7d08fd9e5
CRs-Fixed: 591180
 Audio: SetForceUse config check in AudioService

 - Audio is routed to headset when BT is turned off while audio is
   played on speaker
 - Mediarouter does not have setForce device information when app forces
   audio to speaker. So while disconnecting BT, MediaRouter is routing
   audio to headset instead of speaker.
 - Added check for setforce config in AudioService.

 CRs-Fixed: 578316

Change-Id: Ie929f407bfa12eacd29cf36031024a4a6a979b63
Mms: Fix FC issue that when tapping contact icon many times

Add protection to check the extra string info from bundle before making
the URI, to avoid null pointer exception.

CRs-Fixed: 534089

Change-Id: Ie8c78ca42c290e16afa1fefeb01ea67c8e963b06
QuickBoot: don't wake up screen when usb connected

Don't wake up screen in QuickBoot mode when usb connected.

Change-Id: If65936a0edbbc3b36a0768294e5c3bd7d741018a