Merge commit '56bc71565ecd72bf7a3e45b5c871b0407ed9f781'
* commit '56bc71565ecd72bf7a3e45b5c871b0407ed9f781':
Add a test for SharedPreferencesBackupHelper
Backup & restore is still enabled by default, but with the expectation that it
will be enabled during the course of the Setup Wizard or some other privileged
entity that has notified the user about the ramifications. While disabled,
data-changed notices will still be collected, but no backup pass will be
scheduled. When the backup manager is later enabled, any pending data-changed
notices will then be processed and the apps invoked for backup.
The user is on wifi, then enables SUPL APN. When wifi is switched off,
we try to establish DATA connection on the Default APN. If this fails,
we were not retrying as the mRequestedApnType variable was not being reset.
This was happening because the SUPL APN and the data connection APN
were the same.
There is a compatibility issue with the cupcake IME where the generic
input connection would just consume actions. Late in cupcake this
stuff was reworked so that the IME would send an action command
to the app instead of an enter key event, and the compatibility code
got lost.
* changes:
The BACKUP permission should have the signatureOrSystem protectionLevel, because the setup wizard isn't signed by the same cert as the framework.
1. Fix and remove CodeDuplication TODO
2. Fix crash while unpairing.
3. For array properties, make it a bit more efficient by passing,
lesser String objects from JNI.
4. Remove void pointer usage and use union to make code more readble.
* changes:
Add in TTS engine interface the methods to query the availability for a language, to set the synthesis audio format, to query the current language, country and variant setting.
We already remove the blinking caret, implying that if the user
types with the cursor on another textfield, the keys will go there.
This way, the WebView will see the key, and rebuild the WebTextView,
so we no longer use the data from the first textfield. This fixes
a bug where moving from a focused textfield and pressing delete
with the cursor on another was deleting a character from the
first (initially focused) textfield. Also, in WebView::onKeyDown,
only check if the native cursor is a textfield before deciding
whether to send a CLICK, since plugins will be handled differently
(this is part of a different change), and now the cursor may match
the focus, but we still want the click (to make the focusController
active - i.e. make the cursor blink).
* Changes
+ Make VpnService get dns info from vpn.dns1/dns2 and set
net.dns1/dns2.
+ Make VpnService wait on vpn.up instead of monitoring on ip-up-vpn.
+ Change commands sent to racoon.
+ Remove original sendCommand() from AndroidServiceProxy and rename
sendCommand2() to sendCommand().
+ Add L2tpIpsecPskService.java.
+ Add short stop after sending ipsec command.
This change retools the transport selection mechanism a fair bit. Transports
are now specified by name rather than by numeric ID, and the name of the
currently selected transport is stored in a persistent system property under the
name "persist.service.bkup.trans".
The name -> IBackupTransport translation is now handled by maintaining a map
from the names to the live IBackupTransport objects that correspond. The Google
transport service observer now registers and unregisters the transport as the
service goes up and down.
The bmgr command has been expanded to include real transport interrogation and
selection by name, and some documentation has been written for it.
Fiddle around with event dispatching to remove calling permissions when we
enter event injection, and prevent callers from going to the PhoneWindowManager's
event processing code unless they are allowed at that point.