merge in jb-mr1-factory-release history after reset to jb-mr1-dev
merge in jb-mr1-factory-release history after reset to jb-mr1-dev
merge in jb-mr1-factory-release history after reset to jb-mr1-dev
merge in jb-mr1-factory-release history after reset to jb-mr1-dev
merge in jb-mr1-factory-release history after reset to jb-mr1-dev
Reconcile with jb-mr1-factory-release jb-mr1-release - do not merge

Change-Id: I355e91c06f0958f1baec5923324dcbcdf408d3f2
am 5d2556b9: Reset the IME if requested by the app.

* commit '5d2556b93286f5f1d7d829b586b84a8b7ae55743':
  Reset the IME if requested by the app.
Reconcile with jb-mr1-release - do not merge

Change-Id: I105d8e6a795dd5b38d42051196581896e7ea4f30
Don't restrict reset composing state to non-identical setText

Bug: 7497063
Change-Id: Ifbd5c37408131867458fd921bdef46ef90d81478
Refactor all phantom-space-inserted spaces in one place

Bug: 7164981
Change-Id: If1635c212b2d5d9cf51f5fb074f3b20dd7ec7b2a
Merge "Don't restrict reset composing state to non-identical setText" into jb-mr1.1-dev
Make sure all FDs are correctly closed.

In this kind of series of calls, it's possible that an outer call to a
constructor fails, but the inner succeeded.
Example:
try {
    is = new A(new B());
} finally {
    if (null != is) is.close();
}
In this case, if new B() succeeds but new A() throws an
exception, is stays null and the intermediate object is never
closed. This is what was happening in this instance.

Bug: 7377336
Change-Id: I3fae9fec1135244982fcf5098c76d93f3e0f2add
Merge "Make sure all FDs are correctly closed." into jb-mr1.1-dev
Fix a bug with some text fields

Not sure when this happens exactly, but it is possible that
InputConnection#getTextBeforeCursor returns null. This
happens for example upon rotating the screen with the
composing field empty in Gmail.
In this case, StringBuilder#append will convert the null
pointer into the string "null", which is sure better than a
crash, but can have a number of bad side-effects, like
auto-caps not working.

Bug: 7533034
Change-Id: Ia1cfab432c13a12ff1c2f013c59bac05a587f553
Correctly add double quote to the space strippers

This is a format error >.>

Bug: 7531719
Change-Id: I34b4c496192a32862c1ecb85bb6f6f38a06d6c61
[DO NOT MERGE] Correct a wrong base character in Russian

Bug: 7516306
Change-Id: I80cee4b2b11e5bfa68c12923049cb612abd0bc7e
Fix language switch key behavior (DO NOT MERGE)

Bug: 7075923
Change-Id: If139411db4aa65eed64337bf2a79387cfcd04496
Update shift state only when input field is restarted

Bug: 7482766
Change-Id: Ifdfa110c44b95acfbcd3e0aa34f675c70b7d7285
DO NOT MERGE - Fix an error in the base char table for LETTER L WITH STROKE

Cherrypick of I67a431d8

bug: 7539944
Change-Id: I0d1f9649f30c36b8e464944a5b881c2cb9c05ccf
Merge "Fix language switch key behavior (DO NOT MERGE)" into jb-mr1.1-dev