The wakelock will be kept held if there is outstanding requests
in request list. When WAKE_LOCK_TIMEOUT occurs, all requests
in mRequestList already waited at least DEFAULT_WAKE_LOCK_TIMEOUT
but no response. Those lost requests return GENERIC_FAILURE and
request list is cleared.
bug:3292426
Change-Id: I369c6ba4d6836d65ef616140e48c7304faf888f0
Rewrote interceptKeyBeforeQueueing to make the handling more systematic.
Behavior should be identical except:
- We never pass keys to applications when the screen is off and the keyguard
is not showing (the proximity sensor turned off the screen).
Previously we passed all non-wake keys through in this case which
caused a bug on Crespo where the screen would come back on if a soft key
was held at the time of power off because the resulting key up event
would sneak in just before the keyguard was shown. It would then be
passed through to the dispatcher which would poke user activity and
wake up the screen.
- We propagate the key flags when broadcasting media keys which
ensures that recipients can tell when the key is canceled.
- We ignore endcall or power if canceled (shouldn't happen anyways).
Changed the input dispatcher to not poke user activity for canceled
events since they are synthetic and should not wake the device.
Changed the lock screen so that it does not poke the wake lock when the
grab handle is released. This fixes a bug where the screen would come
back on immediately if the power went off while the user was holding
one of the grab handles because the sliding tab would receive an up
event after screen turned off and release the grab handles.
Bug: 3144874
Change-Id: Iebb91e10592b4ef2de4b1dd3a2e1e4254aacb697
Korean phones write to the ADN record of the SIM in a non-standard way.
When UCS2 is not used, the alphaTag will be written in the KSC5601
encoding. This contribution adds support for reading that format when
a Korean SIM card is used.
Also adds support for KSC5601 in SMS.
Change-Id: I81a4a6949359b4d23a937ac2d813bafed2b85ff6
- Check for active phone in ICC handler before processing messages.
- Boundary check for gsm/cdma subscription app index
while retrieving the ICC Card App.
Change-Id: I3d54447e8d48e3482763e78eeb2a737a34cec321
Android telephony does not release the partial wakelock right away if
there is an error in sending the RIL request. The wake lock is released
only after EVENT_WAKE_LOCK_TIMEOUT occurs that prevents the phone to go
in power collpase. The change is to release the wake lock as soon as the
error in send is detected.
Also, change RIL#send not not send a request if there is no connection to
vendor RIL, as the request will always fail.
Change-Id: Ia39a4b9ac12f4064e301a65abfd26409d49babe1
For bug #3164802.
CallManager allow a new phone call only if ALL of the following are true:
- Phone is not powered off
- There's no incoming or waiting call
- There's available call slot in either foreground or background
- The foreground call is ACTIVE or IDLE or DISCONNECTED.
Change-Id: I0124d600fd8c63b8c608301f3889b3faec47f1db
Adding a simple API enabling applications to control SMS-CB reception.
Implementing parsing, assembly and dispatching of SMS-CB messages over GSM.
Change-Id: Iee841605a45a3af60c7602af175056afb03a38da
Wait until all APN's have been tried before checking for permanent errors
and then, don't do retires only if all of the APN's had permanent errors.
Also, don't disable the requested apn type because if we do we won't
be able to setup data because there won't be an apn type.
This was tested by creating a new non existent APN, I chose:
Name="badapn1"
APN="badapn1"
Server="noapn.com"
Then selecting "badapn1" will cause a permanent error.
bug: 3202729
Change-Id: I182c7197456c849176ce08d7d1459359f8c3b30e
Fix bug # 3136179.
Keep audio mode as IN_CALL during hangup DISCONNECTING state
to prevent the NORMAL and IN_CALL glitch in auiod setMode.
Change-Id: I5513a3d5c65bd13ac054c9718c4dbd7d6db9eaf3
instead of silently returning null and causing NPE in applications as returning
null is not documented in the javadoc.
Add connection to the connection list in SipCall after dial() succeeds so that
we don't need to clean up if it fails. The original code will cause the failed
connection to continue to live in the SipCall and in next dial() attempt, a new
connection is created and the in-call screen sees two connections in the call
and thus shows conference call UI.
Bug: 3157234, 3157387
Change-Id: Iabc3235f781c4f1e09384a67ad56b09ad2c12e5e
In order to reduce object creation the RILRequest objects are
stored in an array when it is unused (max 4). This avoids GC
of the object. The object in turn has references to other
objects which sometimes hold large memory chunks. This fix
releases these references since they are not used anyway.
This will make it possible to GC the Message (mResult) which
in some cases holds references to a Bitmap which sometimes
leads to OutOfMemoryException. The reference is cleared
anyway in RILRequest.obtain(...)
Change-Id: I3b895bc39b5e2f3ab7cc8297c3583ea78e0ebc77
The problem was that when we did a contact lookup based on a SIP address,
the resulting CallerInfo object did not have the person_id field set
correctly. That meant we had no way to look up the photo for that person.
This was because of a missing case in the logic to determine which column
(in the resulting cursor) to use for the person_id lookup. We were
handling lookups fine in the PhoneLookup and Phone tables, but were
missing a case for direct lookups in the Data table (which is how we look
up SIP addresses.)
The fix is to add a case for URIs like
"content://com.android.contacts/data" when looking up the person_id.
Also, since the person_id lookup is pretty hairy (and includes ~20 lines
of comments to explain what it's doing!) refactor it out into a helper
method.
TESTED: Both SIP and PSTN calls; verified that contact name *and* photo
are displayed correctly in all cases.
Bug: 3121292
Change-Id: I2b0083cc5394c1a49bbdc9a4e5651854aedb82f7
When a SIP call is put on hold and no other call is active, the audio mode should not be
switched to incall.
Change-Id: I1307330f10cbfb9c4223bcb9dc4faa79778750af