Fix deadlock of WebViewCoreThread

There was a deadlock in destroy process.
Investigation showed that WebViewCoreThread is waiting some
callbacks but in this case WebViewCoreThread can not resume
itself not to call notify method.

Flow:
1. CallbackProxy.sendMessageToUiThreadSync
2. WebViewClassic.destroy()
3. CallbackProxy.blockMessages()
4. CallbackProxy.handleMessage is called via MainThread
5. The WebViewCoreThread deadlock is occured.

The cases we have to call notify method are followings.
OVERRIDE_URL
CREATE_WINDOW
SAVE_PASSWORD
NOTIFY
OPEN_FILE_CHOOSER
JS_ALERT
JS_CONFIRM
JS_PROMPT
JS_UNLOAD
JS_TIMEOUT

Change-Id: I9d95ae500bf6338d77b32b5fa15de7cff5720d0f
Avoid adding FORWARD_LOCK flag to an updated system app

Consider the following case:
1. An app exists in /system/app or /vendor/app. (i.e, it's a system app)
2. If the app would be updated as a forward-lock app by downloading from
   market(google play), then it would be installed in /data/app-private.
3. Moreover, if it would be updated by the whole system image (i.e, FOTA
   or something like that), then the app would be applied a FORWARD_LOCK
   flag.

The app SHOULD NOT have a FORWARD_LCOK flag. Because the resource path
of such app does not refer to the proper resources to access.

Change-Id: I0750f69a93a3115f4201029796b598507de3555f
Lockscreen : Reference correct layout

Include correct layout for portrait.

Change-Id: I6de511357aec0f4364cd68c3ed740c7d4f47379d
New Event: ACTION_NEW_OUTGOING_SMS

Change-Id: I8be01ad6251ca25e4d00ebffd876bb6ce7f3c283
QuickSettings: FavContact & UserTile: Open full contact page

QuickContact popup can only be used for phoning/messaging/emailing,
which doesn't make sense when you're opening your own contact.

Opening the full contact directly makes it easier to beam or share
with other (one less click)

Also added this change to include FavContact

Change-Id: Ifd31b8c14ccb9f07e10e5bb2079bbc2f1296414b
Signed-off-by: Rohan Mathur <rohanmathur34@gmail.com>
Signed-off-by: Brandon McAnsh <brandon.mcansh@gmail.com>
Revert "PackageInfo class incorrectly referenced as a struct."

This reverts commit b9b5d8c32e738d3607eec61e5d5bd95ca1521c2e.
Fixes for clang:
PackageInfo is a class, not a struct.
String16 is contained in the android namespace. Do not namespace prefix it
within the android namespace.
Explicitly specify which std classes are necessary to prevent ambiguous
type errors. (map, set)

Change-Id: I0d01477a976e770821ebae8847f8d11b132a15d6