Commit Graph

4927 Commits

Author SHA1 Message Date
John Spurlock
3ec7e54c8a am 646f19c9: am de50a5e7: am 927d854f: Merge "Optimize sysui ui queue during keyguard unlock." into klp-dev
* commit '646f19c929ae85ab703533c36962292fa6c990ca':
  Optimize sysui ui queue during keyguard unlock.
2013-10-29 14:59:35 -07:00
John Spurlock
927d854ff4 Merge "Optimize sysui ui queue during keyguard unlock." into klp-dev 2013-10-29 20:55:04 +00:00
Michael Wright
0160bcbe53 am 0116f08b: am 961cc671: am 3f836741: Merge "Speculatively schedule input consumption" into klp-dev
* commit '0116f08b387d237c334b10bb0266426e1ab3c793':
  Speculatively schedule input consumption
2013-10-29 13:29:34 -07:00
John Spurlock
e7c285725d Optimize sysui ui queue during keyguard unlock.
Target the two biggest offenders:
 - Coalesce keyguard setHidden(false) calls during unlock.
 - Make sysui->WM call async.

Found during investigation into b/11221659.

Bug: 11221659
Change-Id: Icab48376bc356a933e0f9940bc2f924e2e77ab22
2013-10-29 14:27:41 -04:00
Michael Wright
62ce65d6ed Speculatively schedule input consumption
With the new tuned vsync offset, vsyncs are likely to occur shortly
after the input is received, meaning we will empty the input queue,
and thus won't schedule input consumption until more input is
received. If an application then speculatively posts draw commands to
the main looper faster than 60 hz, it will eventually end up blocking
in eglSwapBuffers. Since we're blocking in eglSwapBuffers, we won't
even schedule consumption until after the current frame (8-16ms), and
it's entirely likely we won't actually get around to consuming input
until after the next frame (another 16 ms of latency). This means we
can often go 16-32ms without processing any input events, causing
very noticeable amounts of jank.

Rather than waiting for the next input event to schedule input
consumption, speculatively schedule it every frame as long as we've
consumed some motion batch during this frame.

Bug: 11398045
Change-Id: I25e46308e00e9f9de00a1d8906f6b0e0f2e845b4
2013-10-26 12:18:00 -07:00
Satoshi Kataoka
b5c2092c4c Merge "Notify commitText event to InputMethodManagerService" 2013-10-23 18:36:14 +00:00
Satoshi Kataoka
d7443c83ce Notify commitText event to InputMethodManagerService
for the intelligent subtype switching

Bug: 7043015
Change-Id: I11ed9a767588f8080753cd9bce011dac7db579ad
2013-10-23 04:14:43 +09:00
Scott Main
942d0d6a8c am 48f2a25a: am e26c353c: am bab3348f: Merge "add xml attributes to IME javadoc" into klp-dev
* commit '48f2a25a7ffd2c89ca54e7b1873545a4e3b476f4':
  add xml attributes to IME javadoc
2013-10-20 15:34:59 -07:00
Scott Main
5df0631003 add xml attributes to IME javadoc
Change-Id: I7a3505753188ba23777391a286d8595ed64777cb
2013-10-18 16:09:51 -07:00
Scott Main
200223cd0e am 24512c85: am 6f756e56: am 96844ed8: fix javadoc link
* commit '24512c8586f8a3e0d3c9bff07639f968fe1b3e25':
  fix javadoc link
2013-10-18 14:56:37 -07:00
Scott Main
96844ed886 fix javadoc link
Change-Id: I509fb12393ee0b8bf78ff4110fc18420739f7c58
2013-10-18 14:43:02 -07:00
Jeff Brown
b1eb620219 am 83bf4404: am 3e3296e5: am 82f31701: Merge "Log view root, input and looper state in bug reports." into klp-dev
* commit '83bf440440309a394f792e3d8a6acb98197d9d7c':
  Log view root, input and looper state in bug reports.
2013-10-17 19:28:23 -07:00
Satoshi Kataoka
03e1c70802 Merge "Introduce an API to get the recommended height of the InputMethodWindow" 2013-10-17 05:24:01 +00:00
Alan Viverette
e5799cbec2 Merge "Lazily create AccessibilityEvent record list" 2013-10-16 18:19:54 +00:00
Alan Viverette
502cb33f8d Lazily create AccessibilityEvent record list
Change-Id: Id4e0a403da811498f2b0f748d86e330fff774154
2013-10-16 11:11:11 -07:00
Jeff Brown
5182c780a8 Log view root, input and looper state in bug reports.
Bug: 10948648
Change-Id: I956cce2a0fb516c02f9bbbc021f6238bcb226891
2013-10-15 20:31:52 -07:00
John Spurlock
b45bdac340 am 5a87a4e3: am 30408434: am f8033360: Merge "Give IMEs the entire screen to use for measuring purposes." into klp-dev
* commit '5a87a4e3554872dced265ee32551656f0a9643ac':
  Give IMEs the entire screen to use for measuring purposes.
2013-10-15 04:03:20 -07:00
Adam Lesinski
e81f80ad94 am 04e2a47a: am 461f06f4: am 53a5e317: Merge "Wrap measurement optimization in targetSdk check" into klp-dev
* commit '04e2a47ab72038672647a9994f19e1254c90413a':
  Wrap measurement optimization in targetSdk check
2013-10-15 04:02:16 -07:00
Satoshi Kataoka
658c7b896a Introduce an API to get the recommended height of the InputMethodWindow
Bug: 11035379
Bug: 5137498

Change-Id: I0e920ee79c526c3aea6872b063cf294e2ab081c8
2013-10-15 14:35:18 +09:00
John Spurlock
f803336028 Merge "Give IMEs the entire screen to use for measuring purposes." into klp-dev 2013-10-15 01:27:42 +00:00
John Spurlock
f8508272ad Give IMEs the entire screen to use for measuring purposes.
IMEs recently gained the ability to layout out under the nav bar,
but our core measuring logic does not give height=WRAP_CONTENT windows
the entire screen height when computing desired window height.

Since IMEs can be identified by type, let them use the entire screen
height for measuring purposes, to properly handle the cases where
space is constrained, making that unaccounted-for nav bar height
important.

Bug:11215678
Change-Id: I1d0b73454c0c629e7d669b9de70641c7e8c4d333
2013-10-14 21:06:52 -04:00
Adam Lesinski
cf18b47ed4 Wrap measurement optimization in targetSdk check
A measurement optimization has exposed some apps that are relying
on incidental layout requests to have themselves update. With the
optimization enabled, these apps break.

Apps targetted at older versions of Android should not
break due to this optimization.

bug:11192311
Change-Id: Id5fc7f83ec2cb1541d3d0d16f951cd57c0afaccd
2013-10-14 13:32:02 -07:00
Dianne Hackborn
9d343c2606 am f2896e28: am 9e4403d4: am ef53fcc3: Merge "Fix issue #11199654: Action bar enter animation skips frames when cleared by the system" into klp-dev
* commit 'f2896e2897cace31d82d917f73b787a9d87b21cb':
  Fix issue #11199654: Action bar enter animation skips frames when cleared by the system
2013-10-14 10:52:33 -07:00
Chris Craik
37c4687190 am e0db6fc6: am 8d56f667: am 709129ba: Merge "Document special case in hasOverlappingRendering" into klp-dev
* commit 'e0db6fc6847f0404b704c179d4795b27d9025693':
  Document special case in hasOverlappingRendering
2013-10-14 10:48:57 -07:00
Dianne Hackborn
021d243d6d Fix issue #11199654: Action bar enter animation skips frames when cleared by the system
We have become too aggressive about not allowing windows to draw while windw
animations are running, basically not allowing any drawing in any window when
there is any window animation.  So if you did a relayout while the status bars
were being animated, your window would stop drawing until that status bar
animation was complete.

This change relaxes those rules in two ways:

- A particular window will only be told to stop updating when *it* is
  currently involved in a window animation.  So animations in status bars
  will not stop app windows from update, and vice versa.

- If a window receives input events while it is in the "do not update"
  state, we will immediately terminate that state and start allowing it to
  draw.  If the user is actually interacting with a window, we don't want
  to wait to show feedback.

Change-Id: I72574eec048aee53115b46a78686cf27f42c42f7
2013-10-13 15:56:29 -07:00
Chris Craik
c09127a7c3 Document special case in hasOverlappingRendering
bug:11121809

Change-Id: I074ac47aa510bd2362cfda7dffc73930f07e925c
2013-10-11 17:00:16 -07:00
Alan Viverette
46b2cc1323 am 66b5b5b2: am cb38a97c: am 90abd6d1: Merge "Ensure accessibility node cache is synced with service state" into klp-dev
* commit '66b5b5b2b74baa9b7c26d5d72eaa2b6f9f5675dc':
  Ensure accessibility node cache is synced with service state
2013-10-10 11:28:43 -07:00
Alan Viverette
90abd6d1df Merge "Ensure accessibility node cache is synced with service state" into klp-dev 2013-10-10 18:19:25 +00:00
Alan Viverette
a393d6750c am 1cac53fa: am b8a140f3: am 1e2b6438: Merge "Fix accessibility state callbacks" into klp-dev
* commit '1cac53fa63060ec3fa3b0249b941ccf8544b3333':
  Fix accessibility state callbacks
2013-10-09 17:48:10 -07:00
Alan Viverette
7e361d22e3 Fix accessibility state callbacks
BUG: 11141708
Change-Id: Ieff1fb90c4f894eba3c203089dd61e1dabdb7982
2013-10-09 17:20:43 -07:00
Alan Viverette
3d1c5a7236 Ensure accessibility node cache is synced with service state
BUG: 11152210
Change-Id: Ibffd2909b6b06568de9344e536a200d8a7abac9d
2013-10-09 17:10:21 -07:00
Alan Viverette
359404288c am 9f57774e: am 972de252: am 24305da7: Merge "Add listener for changes to touch exploration state" into klp-dev
* commit '9f57774ebb3b400b6597a9dbe854b4b6b1c8afd4':
  Add listener for changes to touch exploration state
2013-10-09 15:21:22 -07:00
Alan Viverette
24305da7d6 Merge "Add listener for changes to touch exploration state" into klp-dev 2013-10-09 22:13:29 +00:00
Alan Viverette
5baeb9ad1e Add listener for changes to touch exploration state
BUG: 11141708
Change-Id: I353dfa2542ebd5e2ac89029dcd88623cc4c688e7
2013-10-09 14:42:05 -07:00
Alan Viverette
b44c4439ad am 606fadc8: am 6d1e4522: am d9f53c02: Merge "Clear accessibility focus when view becomes invisible" into klp-dev
* commit '606fadc84a96b7e0a1f0b95bc03c9430b32ad22f':
  Clear accessibility focus when view becomes invisible
2013-10-09 13:37:49 -07:00
Alan Viverette
d9f53c0276 Merge "Clear accessibility focus when view becomes invisible" into klp-dev 2013-10-09 20:25:15 +00:00
John Spurlock
4d873d87cc am bba545e7: am 4f241a29: am 92128144: Merge "Introduce View.SYSTEM_UI_FLAG_IMMERSIVE_STICKY." into klp-dev
* commit 'bba545e73ca63be2e275b6e982251ab930d0a644':
  Introduce View.SYSTEM_UI_FLAG_IMMERSIVE_STICKY.
2013-10-09 11:45:54 -07:00
John Spurlock
92128144d9 Merge "Introduce View.SYSTEM_UI_FLAG_IMMERSIVE_STICKY." into klp-dev 2013-10-09 18:27:53 +00:00
Svetoslav
67c8d20ed2 am fdcd50f1: am 53f16ba2: am 0cc8276d: Merge "Add missing locking when updating the accessibility node info cache." into klp-dev
* commit 'fdcd50f13d961514ed1a47573b627b6b3184c1fc':
  Add missing locking when updating the accessibility node info cache.
2013-10-09 11:04:23 -07:00
John Spurlock
a12dccc098 Introduce View.SYSTEM_UI_FLAG_IMMERSIVE_STICKY.
The existing View.SYSTEM_UI_FLAG_IMMERSIVE flag will be somewhat
redefined.  Swiping will clear the flags, revealing the normal bars.

The new View.SYSTEM_UI_FLAG_IMMERSIVE_STICKY flag will enable
hideybars - the auto-hiding, semi-transparent bar mode.

Bug:11062108
Change-Id: Ibf8be9072f0075953baa4580cd976e7562d44455
2013-10-09 12:35:52 -04:00
Svetoslav
3edcd8cfdf Add missing locking when updating the accessibility node info cache.
bug:10489954

Change-Id: Iccf55d074ea712566f441b9f6616a4c1fe847e0a
2013-10-08 18:31:58 -07:00
Alan Viverette
e94ec3e79a am 57cc6283: am 76597552: am 3a407fad: Merge "Fix HIDE_DESCENDANTS accessibility importance mode" into klp-dev
* commit '57cc628355e434d4b313e9b60e1a68a0643fda04':
  Fix HIDE_DESCENDANTS accessibility importance mode
2013-10-08 16:02:29 -07:00
Alan Viverette
2e84a99467 Clear accessibility focus when view becomes invisible
BUG: 10912882
Change-Id: I8c7c6906fcf7688ecdfac6649464f088dd812c41
2013-10-08 14:25:42 -07:00
Alan Viverette
3a407fad35 Merge "Fix HIDE_DESCENDANTS accessibility importance mode" into klp-dev 2013-10-08 20:14:21 +00:00
Alan Viverette
24cafbc56c Fix HIDE_DESCENDANTS accessibility importance mode
Ensures accessibility framework is notified when subtree visibility
changes as a result of hiding descendants. Fixes collision between
HAS_TRANSIENT_STATE flag and IMPORTANT_FOR_ACCESSIBILITY mask.

BUG: 11087525
Change-Id: I92dba27350970a09e76b5a878c7604ea06cae197
2013-10-07 18:28:45 -07:00
Alan Viverette
550b89e6de am 80fad292: am 6d774ac6: am bdae8148: Merge "Provide example actions in AccessibilityEvent.setAction() docs" into klp-dev
* commit '80fad292318ac2e1e76435bb8334017a702a62d7':
  Provide example actions in AccessibilityEvent.setAction() docs
2013-10-07 18:17:37 -07:00
Alan Viverette
bdae814816 Merge "Provide example actions in AccessibilityEvent.setAction() docs" into klp-dev 2013-10-08 01:09:00 +00:00
Alan Viverette
516f953a82 resolved conflicts for merge of e4ccb864 to master
Change-Id: I50c41c712c4eb4f68b22777efb2e5d5370536b22
2013-10-07 18:05:09 -07:00
Alan Viverette
5a0f4eccfb Ignore certain WindowManager flags when touch exploration is enabled
Specifically, ignore any flags that alter the visibility of the navigation
bar and transparency.

BUG: 11082573
Change-Id: I17264dc55a1c6c3cb9b9cf92d5121799cecee5b8
2013-10-07 15:12:57 -07:00
John Spurlock
2b5a190d2d am 64157f23: am 1fc7bd3e: am 619fc89a: Merge "Fix transparent -> translucent reference in private docs." into klp-dev
* commit '64157f23d808f44d304020c7e0c43dfc42b398e8':
  Fix transparent -> translucent reference in private docs.
2013-10-07 10:15:58 -07:00