Commit Graph

73851 Commits

Author SHA1 Message Date
TreeHugger Robot
0bb700914c Merge "Rely on com.android.internal.os.SomeArgs" 2017-02-13 09:32:34 +00:00
Yohei Yukawa
ce82eb2d86 Rely on com.android.internal.os.SomeArgs
Before introducing new state tracking IDs to IInputConnectionWrapper,
this CL cleans up IInputConnectionWrapper to use
com.android.internal.os.SomeArgs instead of local-defined one in favor
of possible performance improvement thanks to the process grobal
object pool that com.android.internal.os.SomeArgs has.

This is a mechanical refactoring CL. No behavior change is intended.
Test: No new warnings in `adb logcat` from the following TAGs
      - IInputConnectionWrapper
      - InputMethodManager
      - InputMethodManagerService
      - InputMethodService
Bug: 35079353
Change-Id: Ic614f112f960382280acd8891b3af56d47679f08
2017-02-12 23:16:47 -08:00
TreeHugger Robot
d2c4784359 Merge "Hide logspam due to redundant finishComposingText" 2017-02-13 06:49:52 +00:00
Yohei Yukawa
77e51831a4 Hide logspam due to redundant finishComposingText
Currently we see two warning messages
  "finishComposingText on inactive InputConnection"
  "finishComposingText on inactive InputConnection"
every time every time the View focus is switched from one EditText
to another EditText on the same window, which is really spammy.

This is actually not critical if IInputConnectionWrapper was already
finished, because with my previous CL [1] it is guaranteed that
InputConnection#finishComposingText() was already called followed by
InputConnection#closeConnection(), which means that the connection
is closed and should not accept any further requests. Thus ignoring
further #finishComposingText() only means that the system and/or IME
is calling #finishComposingText() unnecessarily, which is worth
showing spammy warnings in production builds.

To reduce logspam this CL hides warnings from the above case behind
DEBUG flag.

 [1]: If2a03bc84d318775fd4a197fa43acde086eda442
      aaa38c9f1a

Test: Make sure `adb logcat -s IInputConnectionWrapper:*` does not
      show "finishComposingText on inactive InputConnection" warnings
      while switching focus across different EditText on the same
      window.
Bug: 35079353
Bug: 35301295
Change-Id: I17f3a4f500bc19ebf8bae771bf658a93627b3ba3
2017-02-12 20:08:13 -08:00
TreeHugger Robot
639c371e96 Merge "Introduce @SoftInputModeFlags annotation" 2017-02-13 03:36:07 +00:00
TreeHugger Robot
618b7a9aec Merge "Track the last softInputMode in IMMS" 2017-02-13 03:31:45 +00:00
TreeHugger Robot
06c84f95f0 Merge "Merge restartInput into startInput in internal IPC" 2017-02-13 03:28:57 +00:00
Yohei Yukawa
22dac1c8df Introduce @SoftInputModeFlags annotation
Doing this allows us to annotate integer values that should corresponds
to WindowManager.LayoutParams#softInputMode.

Test: There should be no behavior change.  RetentionPolicy.SOURCE
      annotation should change nothing in production code.
Test: checkbuild
Bug: 32784563
Bug: 35079353
Change-Id: I96300b090edce327d0515c740183abe91ded6bac
2017-02-12 16:54:16 -08:00
Yohei Yukawa
22a8923368 Track the last softInputMode in IMMS
A field in WindowManager.LayoutParams softInputMode is something that
definitely needs to be kept tracking in historical debugging
infrastructure across IME-related processes (Bug 35079353) [1].  As a
preparation, this CL enables InputMethodManagerService (IMMS) to
include the last softInputMode specified in IMMS#windowGainedFocus()
in the dumpsys in human readable format.

 [1]: As explained in b.android.com/224318, softInputMode misspecified
      by app developers is a typical root cause of unexpected behavior
      in keyboard visibility.  Bugs such as Bug 23168250, Bug 27275709,
      and Bug 31770400 fall into this category.

Test: `adb shell dumpsys input_method | grep softInputMode=`
Bug: 35079353
Change-Id: I485ced030def179dad78b4b811c6eb52b5e5c951
2017-02-12 16:38:59 -08:00
TreeHugger Robot
9b66112906 Merge "Add tweaks to smooth out swipe to dismiss." 2017-02-12 23:57:29 +00:00
Michael Kwan
2e11adaac3 Add tweaks to smooth out swipe to dismiss.
Bug: 34673753
Change-Id: I5a9d420c70d124fc764803d505291e66818b1aa2
2017-02-12 13:43:45 -08:00
TreeHugger Robot
f700fb1f23 Merge "Explicit API for allocating disk space." 2017-02-12 13:17:31 +00:00
TreeHugger Robot
389505fdb9 Merge "Switch RecoverableSE over to using RemoteAction." 2017-02-12 12:52:09 +00:00
Jeff Sharkey
500ce9ea58 Explicit API for allocating disk space.
Now that we're giving apps better guidance around how much cached
disk space they can use, we also need to provide a way to help clear
some of those cached files.  The final logic is coming in a future
CL, but it will be designed to prevent abuse.

Test: newly added CTS tests
Bug: 34690590
Change-Id: I1e46ade0cdabbc33162fc7bfa76abec711992f92
2017-02-12 04:02:28 -07:00
Jeff Sharkey
72ec448307 Switch RecoverableSE over to using RemoteAction.
Now that RemoteAction supports PendingIntent, we should be using it
instead of rolling our own fields.  Continue offering legacy
constructor for some existing unit tests.

Create a notification channel for each remote app that throws at a
client app.  All apps targeting O must now use channels, which give
the user better control over notifications.

Mention in docs that strings should be localized.

Test: builds
Bug: 33749182, 35012253, 34676491
Change-Id: Ic57e32025bc6caf784d3746d9f97f6595b0edb69
2017-02-12 03:21:39 -07:00
Yohei Yukawa
f7526b5896 Merge restartInput into startInput in internal IPC
This is the 2nd attempt to merge restartInput into startInput in
internal IPC after fixing the mistake in new parameter order in
the previous CL [1].

As a preparation to start tracking all the event flows that
cause InputMethodManagerService#setImeWindowStatus(), this CL
merges an internal IPC method IInputMethod#restartInput() into
IInputMethod#startInput() in favor of simplicity.

This is a refactoring CL that should have no behavior change.

 [1]: Ifda6f74ac1b1370d9e9a9fe60354b692121fdcb9
      1a5838e966

Test: Set true to InputMethodService#DEBUG and make sure startInput()
      and restartInput() are called in the following scenario.
      1. Complete the setup wizard.
      2. adb shell am start -a android.app.action.SET_NEW_PASSWORD
      3. Proceed to "Choose your password" page
      4. Make sure startInput() gets called.
      5. Type "aaaa" then hit "CONTINUE" button.
      6. Make sure restartInput() gets called.
Bug: 35079353
Change-Id: I476d0cf8cbb0a0134941854f9337d9ad15e66a71
2017-02-11 20:57:10 -08:00
TreeHugger Robot
9a49f85ae4 Merge "Revert "Merge restartInput into startInput in internal IPC"" 2017-02-12 02:08:10 +00:00
Yohei Yukawa
3eaf867487 Revert "Merge restartInput into startInput in internal IPC"
This reverts commit 1a5838e966 [1].

Reason of revert:
There was a mistake in the parameter order of MSG_START_INPUT.

 [1]: Ifda6f74ac1b1370d9e9a9fe60354b692121fdcb9

Test: none. This is a revert.
Bug: 35079353
Change-Id: Ic1487768932febe0f1f1b6e71929464e91f357e0
2017-02-11 23:42:15 +00:00
Yohei Yukawa
aab4e11c0a Merge "Inline IMMS#resetAllInternalStateLocked()" 2017-02-11 23:09:37 +00:00
Yohei Yukawa
d5c1d92eb5 Merge "Merge restartInput into startInput in internal IPC" 2017-02-11 23:07:51 +00:00
Yohei Yukawa
1a5838e966 Merge restartInput into startInput in internal IPC
As a preparation to start tracking all the event flows that
cause InputMethodManagerService#setImeWindowStatus(), this CL
merges an internal IPC method IInputMethod#restartInput() into
IInputMethod#startInput() in favor of simplicity.

Test: Done some quick manual testing to make sure that IME is
      still working
Bug: 35079353
Change-Id: Ifda6f74ac1b1370d9e9a9fe60354b692121fdcb9
2017-02-11 02:56:48 +00:00
TreeHugger Robot
f98c2f2aa3 Merge "Clarified requirements for cross-user calls" 2017-02-11 02:40:04 +00:00
Doris Liu
69ca150144 Merge changes from topic 'API_AnimatorSet_getCurrentPlayTime'
* changes:
  Add getter for current play time
  Fix reverse with start delay
2017-02-11 01:41:50 +00:00
Jesse Hall
01f47c116c resolve merge conflicts of b3a1417663 to nyc-mr2-dev-plus-aosp
am: 516274249f

Change-Id: Ifd131fb69d3fb2fe31bd0f06c074fdf15408dece
2017-02-11 01:24:32 +00:00
Jesse Hall
516274249f resolve merge conflicts of b3a1417663 to nyc-mr2-dev-plus-aosp
Test: mmma frameworks/base
Change-Id: I2e1e04f55d05fd8aa33da304bdb951713b37793c
2017-02-10 17:15:15 -08:00
Fyodor Kupolov
cdb3c2fd04 Clarified requirements for cross-user calls
Test: make
Bug: 35199390
Change-Id: Ie997c690dd24439cc0e8d7fedfc58bd26b2c067f
2017-02-10 16:53:29 -08:00
Doris Liu
dd65ab0407 Add getter for current play time
BUG: 30993532
Test: cts tests in the same topic branch
Change-Id: I45ee9c61f53051fcac3399eebc378aa2c0ce056d
2017-02-10 16:06:42 -08:00
Jesse Hall
b3a1417663 Zygote: Restore GL preload
Preloading GLES drivers in Zygote was removed previously since it is
incompatible with updatable drivers. That caused some app startup
latency and system memory use regressions. This change re-adds GLES
driver preloading, but only on devices that don't support driver
updates.

Bug: 34611670
Bug: 35052548
Test: boot angler, systrace of Calculator app startup
Change-Id: Ibdc6b3c0ba4473574722641d4bfad4b375f908a3
(cherry picked from commit ba0370eef3)
2017-02-10 12:59:10 -08:00
Andrii Kulian
3d227ad86c Merge "Allow destroying display content on removal" 2017-02-10 20:49:49 +00:00
Evan Rosky
187706f3e4 Merge "Don't notify parents of views made focusable off UI thread" 2017-02-10 20:36:13 +00:00
Doris Liu
6d45209205 Fix reverse with start delay
Test: cts in the same topic branch

Change-Id: Ie8793f25d39e0104c880f1a873f68650b918bffa
2017-02-10 12:21:11 -08:00
TreeHugger Robot
ca4e4e5eae Merge "Fix incorrect header highlight when in single-pane." 2017-02-10 20:02:57 +00:00
TreeHugger Robot
077bf66250 Merge "Clear mExtraDataKeys when clearing A11yNodeInfo." 2017-02-10 19:58:09 +00:00
Yohei Yukawa
0d7aff8ab2 Inline IMMS#resetAllInternalStateLocked()
Currently IMMS#resetAllInternalStateLocked(boolean, boolean) has
only two call sites, and the first parameter is the constant for
each call site.  We can get much simpler code by inlining the
method in question into those two call sites. It actually revealed
that UNBIND_REASON_RESET_IME should have been called
UNBIND_REASON_SWITCH_USER.

Test: no behavior change
Test: adb shell dumpsys input_method | grep "mMethodMapUpdateCount="
      to make sure that switching users can cause the same count
      increase.
Test: adb shell dumpsys input_method | grep "mMethodMapUpdateCount="
      to make sure that switching the device locale can cause the
      same count increase.
Bug: 35079353
Change-Id: I63388402369f58d11fdb21b508eb2051ff39fa5b
2017-02-10 10:50:32 -08:00
Alan Viverette
07a6ff6989 Merge "Don't scroll popup parent in response to parent scrolling" into nyc-mr2-dev
am: 41023417e7

Change-Id: I4e42386e1f227e2cb48bf37eb05bcf7f81b6d709
2017-02-10 18:43:47 +00:00
TreeHugger Robot
41023417e7 Merge "Don't scroll popup parent in response to parent scrolling" into nyc-mr2-dev 2017-02-10 18:35:37 +00:00
Phil Weaver
9b83ffbfae Clear mExtraDataKeys when clearing A11yNodeInfo.
Bug: 35244501
Test: Ran Accessibilitiy CTS. I can no longer get the test mentioned
in the bug to fail.

Change-Id: I69e5e1b5c8f12226837ced928fbd10ff77bcd235
2017-02-10 10:10:01 -08:00
Filip Pavlis
eadd5a9084 Fix incorrect header highlight when in single-pane.
Bug: 35216626
Test: Case will be covered in ag/1761868

Change-Id: I877823762a44d6545c80f4f59b29f190c389ba09
2017-02-10 18:00:43 +00:00
TreeHugger Robot
35d5e36f14 Merge "Move auto-fill shell command off IPC" 2017-02-10 17:52:10 +00:00
Daniel Nishi
e767e087d5 Merge "Add storage management days to retain to settings for backup." 2017-02-10 17:50:22 +00:00
Narayan Kamath
b8a33125b4 Merge "Partially revert commit ff5659fbc3026e621bdd926e96096e2957cfd42e." 2017-02-10 17:07:46 +00:00
Makoto Onuki
b23cd8ece5 Merge "Stop using IntentService and use async receiver (2/2 - contract)" 2017-02-10 16:27:52 +00:00
Mikhail Naganov
7b79b6313b Merge "SchedulingPolicyService: specify the beneficiary of priority boost" 2017-02-10 16:19:46 +00:00
Julia Reynolds
71b60b86e3 Merge "Let apps link to noti settings and vice versa." 2017-02-10 16:05:10 +00:00
Abodunrinwa Toki
fd9d0ee9f8 Merge changes from topic 'smartselect'
* changes:
  Introduce a model file for language detection.
  Change package for LangId and SmartSelection.
2017-02-10 15:56:40 +00:00
Stefano Tommasini
afcea28827 Merge "Add instrumentation for BackupManager during restore." 2017-02-10 15:46:06 +00:00
Svet Ganov
ef0c1885cb Move auto-fill shell command off IPC
Auto-fill has a shell command that is useful for development
which is currently exposed as a remote method allowing any app
to call it reflectively. Since only case this method is called
is when handling a shell command there is no need to expose it
to IPC over binder.

Test: manual

Change-Id: Iac20b4a39c7065e254f8aa277d1f2fd1c38b24a8
2017-02-10 15:14:49 +00:00
Narayan Kamath
e714927b19 Partially revert commit ff5659fbc3.
ff5659fbc was intended to be a clean revert of 660cf30e21
that fixed a DOA issue. However, the author incorrectly rebased that
revert and picked up pieces of a separate change as well. This reverts
those sections of the change so that they can be submitted with the
correct attribution and with proper review.

Bug: 34415265
Bug: 34914977
Test: make

Change-Id: I977c3ba10bb05f04ac8cfd95d17954c454c83340
2017-02-10 14:56:57 +00:00
Stefanot
f4e237c685 Add instrumentation for BackupManager during restore.
This CL adds more instumentation to
backup/restore operation in the BackupManager. For more details please
point to:
https://docs.google.com/document/d/1sUboR28LjkT1wRXOwVOV3tLo0qisiCvzxIGmzCVEjbI/edit#
This first Cl introduces 3 events that we sent to the monitor.
The base cl is ag/1835775

Test: TODO

BUG: 34873525
Change-Id: I127fe739a7522078eecce2ae689a4607203a98da
2017-02-10 13:52:02 +00:00
TreeHugger Robot
02d3a61690 Merge "AutoSize TextView (part 9) - sanitize APIs naming" 2017-02-10 13:38:25 +00:00