Mms: Handle Disk Storage Full Crash

- When a device is out of disk storage space, the messages apk will crash
and become unresponsive
- This changes now handles the SQLiteFullException thrown by
the app and displays a toast to the user to indicate that the
storage is full.
CRs-Fixed: 487749

Change-Id: I89956d06e5fdd008a31802c10f33364eb327dff7
(cherry picked from commit 999891459b98e5747108424eac3bf54d66a1255d)
(cherry picked from commit 640fea192b8dcaf90d637f1ffe9d694203db16da)
(cherry picked from commit 30112177d241cfc076e7c036e9ee08ddedd1787f)
MMS: Handle case when mobile data is not available

mmsNetworkInfo is null on devices without a modem where mobile data is not available
causing a null pointer crash

CRs-Fixed: 517339

Change-Id: I2522d9da3cea1599d7b865e12134b508b636bde9
(cherry picked from commit eae5bd0bad88c16b98a353eccd66dd38e26b3b97)
(cherry picked from commit f6f5777a6e8f5edee1befe45aa8a69c4447b4dbd)
(cherry picked from commit ed1560a24deeaf4df8034b1851a1c4afe2a30d9c)
Mms(MSIM): Add support for MSIM.

Add multi SIM support to SMS and MMS
 - Send SMS/MMS on selected preferred subscription.
 - Display SUB information in message conversation.
 - In MT message extract SUB information.
 - Save SUB information in provider.

MMS Auto Download Feature
 - new implemenation to carry out following
  operations seemlessly.
 - Activate MMS PDP on all subs and send/received
   MT MMS on all other sub.
 - Deactivate the MMS PDP and revert back to original
   sub post the successful MMS operation.

Add prompt support for SMS
 - Add prompt option in SMS multi sim settings.
 - New iterface API to get SMS prompt is enabled or not.
 - Disply prompt while sending SMS, if user selects
   prompt mode in multi sim settings.

Change-Id: I248a9c6f3fe40b663c3b7fd3ed8fbbb07bc26c8f
Merge "Mms(MSIM): Add support for MSIM."
Fix Null pointer expection when Phone is in low memory

ThumbnailManager tries to get the bitmap and throws null
pointer exception when cache is null.

Change-Id: Iba557e5d9aa6c0990ee47c79788c4c1c55121c63
CRs-Fixed: 539366
Merge "Fix Null pointer expection when Phone is in low memory"
MMS: Update database message size info for retrived MMS.

Get the message size value from M-Notification.Ind and
update message size of retrived MMS in db for both
Deferred Retrieval case and Immediate Retrieval case

CRs-fixed: 569584

Change-Id: Ib9395bd335fa0181b3f2df8d53b3b709979d4fb5
The subject disappears after adding Sildeshow

If we create a new slideshow. We drop the old
workingMessage and create a new one. So subject will
disappear.

Keep the subject from the old mWorkingMessage before we
reassign.

Change-Id: I1cc175f8143e702d432d86ae1d69841e8a3a7a47
CRs-Fixed: 568261
Fix the send button disappearance after selecting the forward recipient

During onRestart method the bottom panel is hidden for the
ComposeMessageActivity.

Change-Id: Ica243945237003a37d0832c556e45c5b43dd0497
CRs-Fixed: 568266
The draft still exists after forwarding mms to the same sender

Forward message will be saved as draft before sent, and it will reload
this draft after come back to the current thread.

Do not load the draft for the same recipient address when forwarding
mms.

Change-Id: I2cc873a9bcbdf0e6481391a0237eb1d19f40d137
CRs-Fixed: 568255
Merge "The subject disappears after adding Sildeshow"
Merge "Fix the send button disappearance after selecting the forward recipient"
Merge "The draft still exists after forwarding mms to the same sender"
Display message type properly for MMS and SMS

When a message is showed details, android will search it in mms
& sms list according to its message id. But sometime the message
id of sms message is the same with that of mms message and the
special mms message is before the sms message in mms & sms list,
so the sms is displayed as mms.

To fix this bug, message type is to be checked at the same time.

Change-Id: I35f8586bf97a553a53424adb2458a8c7fd9ba0e9
CRs-Fixed: 568258
Android denial of service attack using class 0 SMS messages

Bug 9702645
Bug 11970403 - Change to ClassZeroActivity to singleTask

Cherry pick the change from master.

Making every AlertDialog immediately visible can lead to exhaustion
of graphics-related resources, typically memory, resulting in a
broken bufferqueue/hw renderer, and subsequent system crash.

Make ClassZeroActivity a singleTask activity, and queue incoming
messages if one is already being displayed.

Change-Id: I0aef7b857364acc404e79581ba5e503571065483
Merge "MMS: Update database message size info for retrived MMS."
Resize the image in background

Decoding and resizing of the image is done in
Adapter-getView method which runs in the main
thread. As a result edit screen resumes after
few seconds, mean time if user flings on that
activity it leads to ANR.

From getView method, adopt lazy loading - spawn
the thread which will decode and resize the
image, upon receiving the requested resized-image
set the image to the view.

Change-Id: I7500afc2fcc4fd7bed8f256d19cbc22ee9baeda0
CRs-Fixed: 550421
Merge "Display message type properly for MMS and SMS"
Merge commit 'android-4.4.1_r1' into merge_branch

* commit 'android-4.4.1_r1':
  Import translations. DO NOT MERGE
  Import translations. DO NOT MERGE
  Import translations. DO NOT MERGE
Merge "Resize the image in background"