Commit Graph

8702 Commits

Author SHA1 Message Date
Muyuan Li
5b2b567a28 Prevents screenshot layer from dismissing IME. am: 36ca72c6c2 am: 4e6d496674
am: e0e89c3655

Change-Id: I995bb5f1569a187649adf8991c50c98ca24c4d0a
2016-08-08 18:09:45 +00:00
Muyuan Li
e0e89c3655 Prevents screenshot layer from dismissing IME. am: 36ca72c6c2
am: 4e6d496674

Change-Id: Ica057285c78c0c67183e1e50f7d22a7e684214e2
2016-08-08 18:01:55 +00:00
Muyuan Li
4e6d496674 Prevents screenshot layer from dismissing IME.
am: 36ca72c6c2

Change-Id: I0eb890d51edf58ac4e18d26af5331429a305c4f2
2016-08-08 17:54:57 +00:00
Muyuan Li
36ca72c6c2 Prevents screenshot layer from dismissing IME.
Add code to adjustWindowLw to force the flag
FLAG_NOT_FOCUSABLE to be set for layer type
TYPE_SCREENSHOT.

Bug: 30485483
Change-Id: I11725eb89fda59b6d50fa1700845cdfe9ffb930b
2016-08-06 20:49:51 -07:00
Yohei Yukawa
5efe6c4f6d Make sure IME focus is synced to View focus am: dd228fbb4d am: 9f3e418f92
am: 6a63c70ecc

Change-Id: Iac6b4466bd57969f5f49facf203d0bade3d8a64b
2016-08-06 18:37:53 +00:00
Yohei Yukawa
6a63c70ecc Make sure IME focus is synced to View focus am: dd228fbb4d
am: 9f3e418f92

Change-Id: I3f1091f0e7f8e7f2087f87a0ed8947a2978877d4
2016-08-06 18:32:40 +00:00
Yohei Yukawa
9f3e418f92 Make sure IME focus is synced to View focus
am: dd228fbb4d

Change-Id: Ic1bd5be0bb52dc4692ef5dedce90d0b71c1ab013
2016-08-06 18:26:19 +00:00
Yohei Yukawa
dd228fbb4d Make sure IME focus is synced to View focus
This CL fixes an edge case that my previous CL [1] forgot to handle.

The goal of my previous CL was to avoid InputMethodManager from getting
confused by a false focus-in event from temporarily detached Views.
However, my CL forgot to take care of the case where the temporarily
detached View is still focused even after the temporary detach mode is
done.

The bad news is that such a situation is relatively easy to trigger by
having a ListView that has EditText as follows, which seems to be
known to be a common technique in Android developer community to put an
EditText in a ListView.
  ListView#listView.addHeaderView(new EditText(context), null, true);

If the ListView is initialized as above, and the EditText has input
focus, View focus and IME focus start to disagree immediatelly after the
ListView's layout is re-evaluated.  This is really easy to trigger, for
example just by dismissing the IME window.

In summary, the root cause is that InputMethodManager#focusIn(View) is
now always ignored as long as the View is temporarily detached, under an
assumption that IMM#focusIn(View) will be called back again with a View
that is not temporarily detached when everything is stable.  Hence the
fix is to do so by hooking up View#dispatchFinishTemporaryDetach() to
call IMM#focusIn(View) again when the View is actually focused in the
final state.

 [1]: Ia79bbd8468f768d546354382b47b39dd31ef7bb5
      a4ed0cfcb6

Bug: 30022872
Bug: 30578745
Bug: 30706985
Change-Id: Iecbdb00dcef8c72e4f7b31035c9bf0f4a40a578f
2016-08-05 15:38:55 -07:00
Adrian Roos
92c9c4f3e6 Keyguard: Refactoring for improving trusted unlock while occluded am: d88eb2693b am: cb5642afae
am: bfe5166ac3

Change-Id: I760b5f4d780231b06ec8ef733a8a002c3dd2420d
2016-08-05 21:19:30 +00:00
Adrian Roos
bfe5166ac3 Keyguard: Refactoring for improving trusted unlock while occluded am: d88eb2693b
am: cb5642afae

Change-Id: Id60ae0e1bfcfb2297855810781d8ca040cf46def
2016-08-05 18:53:14 +00:00
Adrian Roos
cb5642afae Keyguard: Refactoring for improving trusted unlock while occluded
am: d88eb2693b

Change-Id: I91f6bfe7a0573ad31785c5a3d1bff03a24d1107c
2016-08-05 18:45:41 +00:00
Adrian Roos
c49dfaf4d6 Merge changes from topic 'smooth_unlock' into nyc-mr1-dev
* changes:
  Keyguard: Improve trusted unlock while occluded
  Keyguard: Refactoring for improving trusted unlock while occluded
2016-08-05 18:37:29 +00:00
Anthony Hugh
f0976121d9 Add panic detection to back button am: 96e9cc5700
am: c1de1b6dde

Change-Id: I523e7719483840c4fb4fe39827b3a6652bdc1a39
2016-08-05 01:02:33 +00:00
Anthony Hugh
c1de1b6dde Add panic detection to back button
am: 96e9cc5700

Change-Id: I60553d88e1e1c42c11dae92d35c4ad761d188fda
2016-08-05 00:55:38 +00:00
Anthony Hugh
bfacf7ce2e Merge "Add panic detection to back button" into cw-f-dev 2016-08-05 00:47:08 +00:00
Adrian Roos
d88eb2693b Keyguard: Refactoring for improving trusted unlock while occluded
- Adds a trusted signal from Keyguard to PhoneWindowManager
- Allows PhoneWindowManager to exempt DISMISS_KEYGUARD windows from force hiding
- Allows PhoneWindowManager to dismiss Keyguard while occluded

Bug: 27410215
Change-Id: I3ad490b64a5805b6f3888a9f37fcfbdd0116395e
2016-08-05 00:04:07 +00:00
John Reck
9ffce33024 Fix NPE in TextureView am: 3c2587f26e am: 8fe31ec0e0
am: 2f072bae6e

Change-Id: I8c1a2c4505086f5022fb4e0893cf32e201c2a31b
2016-08-04 16:54:33 +00:00
John Reck
2f072bae6e Fix NPE in TextureView am: 3c2587f26e
am: 8fe31ec0e0

Change-Id: I1f36262f8c09b4d75910bd5b3943b0931f57f477
2016-08-04 16:49:04 +00:00
John Reck
8fe31ec0e0 Fix NPE in TextureView
am: 3c2587f26e

Change-Id: I79f35e5029cb3abb5fa74a60e448cd09835e2112
2016-08-04 16:43:29 +00:00
John Reck
3c2587f26e Fix NPE in TextureView
Bug: 30651595
Change-Id: Ic6cc2a1598de173aaadb4061562236a563a662b3
2016-08-04 07:55:38 -07:00
sergeyv
024cdbc740 TextureView: destroy layer on destroyHardwareResources event am: 1c16c37d86 am: ab7b865ef6
am: 221b1f7b46

Change-Id: I7f7d9133e168906524b892a5c4e5388e0b3a33bc
2016-08-03 22:32:28 +00:00
Anthony Hugh
96e9cc5700 Add panic detection to back button
Adds "panic" detection to the back button.  Implemented solution
uses 4x button presses in a short duration to detect for "panic".
The value used to determine the duration between key up and key down
that still count as a multi-button press is configurable via the
Settings Provider.

BUG: 28027764

Change-Id: Ibf1370ff3cb539a9a54002a8704922744a3ca5d7
2016-08-03 15:24:58 -07:00
sergeyv
221b1f7b46 TextureView: destroy layer on destroyHardwareResources event am: 1c16c37d86
am: ab7b865ef6

Change-Id: Idb0c2484c3ef2230bc4637c6b9cfaa9fe636e95e
2016-08-03 22:24:23 +00:00
sergeyv
ab7b865ef6 TextureView: destroy layer on destroyHardwareResources event
am: 1c16c37d86

Change-Id: I75a9c06c81f696b8a65d128f4ec20ca9d3083a07
2016-08-03 22:08:13 +00:00
Sergei Vasilinetc
ba3d4f6ea1 Merge "TextureView: destroy layer on destroyHardwareResources event" into nyc-mr1-dev 2016-08-03 21:54:10 +00:00
Yigit Boyar
bb1115f1ff Target API check for margin params fix am: 2dd20a61e9 am: 6efd207022
am: 5eede8910b

Change-Id: I748d223c4dcec4f0234b0e4e808ae982efbd0bd5
2016-08-03 19:46:33 +00:00
sergeyv
1c16c37d86 TextureView: destroy layer on destroyHardwareResources event
bug:30468770
Change-Id: I5174808e3fa6e4a87e3522246522c4e6d7ee2c3c
2016-08-02 15:40:27 -07:00
Yigit Boyar
5eede8910b Target API check for margin params fix am: 2dd20a61e9
am: 6efd207022

Change-Id: Ic05edff9014a74cd543d0eef03ba8862a198613a
2016-08-02 20:57:22 +00:00
Yigit Boyar
6efd207022 Target API check for margin params fix
am: 2dd20a61e9

Change-Id: I745d44946585e08143e76b7d9da1a7302b4d66b9
2016-08-02 20:50:52 +00:00
Yigit Boyar
828d4ff61d Merge "Target API check for margin params fix" into nyc-mr1-dev 2016-08-02 20:41:08 +00:00
John Reck
a25e710181 Fix FrameMetricsObserver crash am: 65ddb154c7 am: 6e30f4c789
am: c7a8458205

Change-Id: If95aff273d4a32a7434042a13b8d373276f05d6a
2016-08-02 18:32:12 +00:00
Yigit Boyar
2dd20a61e9 Target API check for margin params fix
Prior to N, our widgets were not converting MarginLayoutParams
properly between ViewGroups. The fix intrudced some issues in
older apps as the broken conversion code would hide developer
errors. This CL guards the change with a target API check so
that we don't affect older apps.

Bug: 30378230
Change-Id: I215281d261b553c3b4cedcd29ea0a861df809471
2016-08-02 11:27:18 -07:00
John Reck
c7a8458205 Fix FrameMetricsObserver crash am: 65ddb154c7
am: 6e30f4c789

Change-Id: Ic1bc80f8bbd20ce73f9e32c3a7457ad876c28476
2016-08-02 18:24:34 +00:00
John Reck
6e30f4c789 Fix FrameMetricsObserver crash
am: 65ddb154c7

Change-Id: I48a04e9ba2674da351d227ba7f6d6069fd3e4727
2016-08-02 18:15:39 +00:00
TreeHugger Robot
0d8f164cde Merge "Fix FrameMetricsObserver crash" into nyc-mr1-dev 2016-08-02 18:06:08 +00:00
Phil Weaver
f546b86584 Reduce extra a11y events when alpha changes. am: 9937f81ac6 am: 2dd6ce7aff
am: fc5164a615

Change-Id: If23ebf9b114d1d9f7fcf3c76e1f39dede082dc67
2016-08-02 17:56:57 +00:00
Phil Weaver
fc5164a615 Reduce extra a11y events when alpha changes. am: 9937f81ac6
am: 2dd6ce7aff

Change-Id: I70adc04b7890ce4a9b207c34d77461bcf22d413c
2016-08-02 17:15:20 +00:00
Phil Weaver
2dd6ce7aff Reduce extra a11y events when alpha changes.
am: 9937f81ac6

Change-Id: I23a097e1de51449b7dfa4a4986255fec4c8c3b05
2016-08-02 17:10:03 +00:00
Phil Weaver
41e185e73b Merge "Reduce extra a11y events when alpha changes." into nyc-mr1-dev 2016-08-02 16:54:43 +00:00
John Reck
65ddb154c7 Fix FrameMetricsObserver crash
Bug: 30587465

Someday maybe the technology will exist to
allow sharing a simple constant between
Java and C++, but today is not that day.

Change-Id: I17694746cb8712058133cd5ea10c47b9909f740b
2016-08-02 09:38:26 -07:00
Svetoslav Ganov
e1c3ca5270 Revert "Prevent apps to overlay other apps via toast windows" am: 2fc661a453
am: 74b90c7d85

Change-Id: I6829cf6f04155a951bcfe79fcc13dbc2104a00ae
2016-08-02 02:17:56 +00:00
Svetoslav Ganov
74b90c7d85 Revert "Prevent apps to overlay other apps via toast windows"
am: 2fc661a453

Change-Id: I37bfb7dc01ad512f34332e83f6cc6be31d1feaab
2016-08-02 02:01:40 +00:00
Svetoslav Ganov
a2f247e6a6 Merge "Revert "Prevent apps to overlay other apps via toast windows"" into nyc-mr1-dev 2016-08-02 01:56:10 +00:00
Svetoslav Ganov
2fc661a453 Revert "Prevent apps to overlay other apps via toast windows"
bug:30150688

This reverts commit dc24f937b0.

Change-Id: Id7e8ddbf82ab426f55a5296791f1e8ebb61514bc
2016-08-02 01:55:01 +00:00
Phil Weaver
9937f81ac6 Reduce extra a11y events when alpha changes.
Changes in alpha only matter if they affect visibility,
so only 0 <-> nonzero changes are worth reporting. Report
them as subtree changes, as visibility affects subviews.

Not reporting every change greatly reduces the number of
event reported when alpha is animated.

Bug: 30183085
Change-Id: I905d53aa81ca8248b3aed86a91842ef499f303a8
2016-08-01 17:41:19 -07:00
Svet Ganov
a0030632f8 Prevent apps to overlay other apps via toast windows am: dc24f937b0
am: fd8ffb62a9

Change-Id: I94077046a2f38a7cffce5cc73f805f671c35db23
2016-08-01 19:02:53 +00:00
Svet Ganov
fd8ffb62a9 Prevent apps to overlay other apps via toast windows
am: dc24f937b0

Change-Id: Ib3a97103f0f9aa980ab72412d4881d609178e641
2016-08-01 18:56:37 +00:00
Svetoslav Ganov
fea7cfce8b Merge "Prevent apps to overlay other apps via toast windows" into nyc-mr1-dev 2016-08-01 18:48:11 +00:00
Svet Ganov
dc24f937b0 Prevent apps to overlay other apps via toast windows
It was possible for apps to put toast type windows
that overlay other apps which toast winodws aren't
removed after a timeout.

Now for apps targeting SDK greater than N MR1 to add a
toast window one needs to have a special token. The token
is added by the notificatoion manager service only for
the lifetime of the shown toast and is then removed
including all windows associated with this token. This
prevents apps to add arbitrary toast windows.

Since legacy apps may rely on the ability to directly
add toasts we mitigate by allowing these apps to still
add such windows for unlimited duration if this app is
the currently focused one, i.e. the user interacts with
it then it can overlay itself, otherwise we make sure
these toast windows are removed after a timeout like
a toast would be.

We don't allow more that one toast window per UID being
added at a time which prevents 1) legacy apps to put the
same toast after a timeout to go around our new policy
of hiding toasts after a while; 2) modern apps to reuse
the passed token to add more than one window; Note that
the notification manager shows toasts one at a time.

bug:30150688

Change-Id: Icc8f8dbd060762ae1a7b1720e96c5afdb8aff3fd
2016-08-01 11:46:02 -07:00
Prashant Malani
e481885e18 Let Rotary encoder events skip IME am: fecbc67e0d
am: a6bc98c003

Change-Id: Iecf4f32e56e3fac398b8ded665285af5e3632d2f
2016-07-31 02:59:11 +00:00