Commit Graph

2527 Commits

Author SHA1 Message Date
Dianne Hackborn
5eb37241fe Merge "Work on more low memory reporting to apps." 2012-03-06 19:06:25 -08:00
Dianne Hackborn
27ff913d56 Work on more low memory reporting to apps.
There are now some new trim memory levels that are sent to
non-background applications as RAM becomes low.

There is a new API for an application to retrieve information
about memory trimming and such on demand.

Fixed various checks against the memory trim level to be
robust (not compare against exact values).

Change-Id: Ifd1c6151124350168aef20a94e517166fd2e03eb
2012-03-06 18:46:32 -08:00
John Reck
1ecebbb27f Fix FOCUS_BACKWARD search if view had no id
Bug: 6126875

Change-Id: I113a7125d71dc3e6cc34d31a669e844a4a882266
2012-03-06 16:08:54 -08:00
Jeff Brown
1b0cc3ca65 Merge "Rename remove callback methods." 2012-03-05 20:38:12 -08:00
Jeff Brown
97a355a9a1 Merge "Support posting delayed animation/draw callbacks." 2012-03-05 19:05:02 -08:00
Jeff Brown
5bebea436e Rename remove callback methods.
Change-Id: Ib9ef32fedbe0db2ea5efd250693915d626d7d8ae
2012-03-05 18:09:04 -08:00
Jeff Brown
2b6cb9a27e Support posting delayed animation/draw callbacks.
This is especially useful for slow animations such as blinking the
cursor, which only needs to happen after a certain amount of time
has elapsed.

Change-Id: If1163a3480078c75d6461eb8f96d8bf8b625534f
2012-03-05 17:21:01 -08:00
Jeff Brown
faeac2737d Merge "Change widgets to post invalidate to the animation timer." 2012-03-05 15:38:47 -08:00
Jeff Brown
6cb7b46c56 Change widgets to post invalidate to the animation timer.
Change-Id: I8377e924529fb9d8afd8a834003a17de616e8e87
2012-03-05 15:19:31 -08:00
Fabrice Di Meglio
21452d1ada Merge "Fix bug #6029615 Update Javadoc for onPaddingChanged()" 2012-03-05 13:36:20 -08:00
Fabrice Di Meglio
085585f466 Fix bug #6029615 Update Javadoc for onPaddingChanged()
Change-Id: I5d66bc76d7084777342e66e6370bf3a52e878ba1
2012-03-05 13:33:57 -08:00
Romain Guy
fb9c41c206 Merge "Deferred layer updates" 2012-03-05 13:20:46 -08:00
Scott Main
b8b36b8b78 am dc022a6f: am 08e91352: am 93dc642e: docs: fix misc bugs from external tracker
* commit 'dc022a6f9aa30d9282c4f82c1cc4d1c8bde7e808':
  docs: fix misc bugs from external tracker
2012-03-05 10:09:44 -08:00
Scott Main
08e9135216 am 93dc642e: docs: fix misc bugs from external tracker
* commit '93dc642eaf48e3db58c4929df26283fbc5fd663f':
  docs: fix misc bugs from external tracker
2012-03-05 10:06:00 -08:00
Scott Main
93dc642eaf docs: fix misc bugs from external tracker
Change-Id: I2be617be23d0ac50baabac561d510633fa9f162a
2012-03-02 16:55:41 -08:00
Romain Guy
2bf68f063b Deferred layer updates
Change-Id: I83d9e564fe274db658dcee9e0cc5bbf9223ebb49
2012-03-02 13:37:47 -08:00
Adam Powell
1a7dd039f1 Unhide transient state APIs on View
Change-Id: I0f14728c94cd3461431352e6f01311934aec9858
2012-03-02 10:44:36 -08:00
Teng-Hui Zhu
ec418d3eae Merge "Make sure egl context is valid for the onTrimMemory call" 2012-03-02 09:41:14 -08:00
Fabrice Di Meglio
dd3ef2c573 Improve RTL APIs
- follow changed / reset pattern

Change-Id: I1c5e9b39196029bd78add2ab13b984da124822ca
2012-03-01 17:34:56 -08:00
Teng-Hui Zhu
4a00ab2563 Make sure egl context is valid for the onTrimMemory call
It turns out that terminateHardwareResources can call into destroySurface
to make the current context 0, like in Gmail.

bug:6079959
Change-Id: I07b2f3e91d6276b6c8e1b48f72bc87d28337fe2f
2012-03-01 16:46:32 -08:00
Fabrice Di Meglio
ac5a3a1c12 Merge "Make layoutDirection API public" 2012-03-01 16:23:29 -08:00
Fabrice Di Meglio
98aec1c7ef Make layoutDirection API public
Change-Id: Ie125513e4ea72b33b42355dbc43f9b9b6d46d7eb
2012-03-01 16:21:55 -08:00
Teng-Hui Zhu
b22d6c11ef Merge "Allow webview to delete GL resource in a valid EGL context" 2012-03-01 16:04:18 -08:00
Teng-Hui Zhu
d962413872 Allow webview to delete GL resource in a valid EGL context
bug:6079959

Change-Id: Idee1031b0bcc4aeb498a18eb01970a8ed7efd285
2012-03-01 15:37:58 -08:00
Steve Block
8a7259bdc2 Prevent a 'TODO' from appearing in the JavaDoc
Change-Id: I3fdd46263cea413d519c56f4bd0e9d873f6fbfa6
2012-03-01 11:25:27 +00:00
satok
592c85cd6c Merge "Handle sentence level spell checking hidden APIs" 2012-03-01 00:25:03 -08:00
satok
8898358bfd Handle sentence level spell checking hidden APIs
Change-Id:  Ia91f1771c0b8ef458dd5b023f4c372cc36a15657
2012-03-01 15:56:58 +09:00
Fabrice Di Meglio
c97f9c14a5 Merge "Fix bug #5217606 LocaleUtils constants TEXT_LAYOUT_DIRECTION_LTR_DO_NOT_USE and TEXT_LAYOUT_DIRECTION_RTL_DO_NOT_USE should be renamed" 2012-02-29 12:37:13 -08:00
Fabrice Di Meglio
3fb824bae3 Fix bug #5217606 LocaleUtils constants TEXT_LAYOUT_DIRECTION_LTR_DO_NOT_USE and TEXT_LAYOUT_DIRECTION_RTL_DO_NOT_USE should be renamed
- replace them by the View constants

Change-Id: I7c2bf0213319247d3db369b6f7c36771fdf3e509
2012-02-28 18:08:11 -08:00
Gilles Debunne
1b3d01de38 Merge "InputConnection is warned when finished" 2012-02-28 18:05:28 -08:00
Robert Ly
e6c118b5d0 am 61a9a83a: am 40226da7: am f4994b3e: Merge "fix bug 5911175" into ics-mr1
* commit '61a9a83ac09246f815806fa4f64cc65a7e876f96':
  fix bug 5911175
2012-02-28 15:45:40 -08:00
Robert Ly
40226da7ae am f4994b3e: Merge "fix bug 5911175" into ics-mr1
* commit 'f4994b3eb03e1e772d7d46e8b6dcfc88593db792':
  fix bug 5911175
2012-02-28 15:39:39 -08:00
Robert Ly
f4994b3eb0 Merge "fix bug 5911175" into ics-mr1 2012-02-28 15:37:21 -08:00
Adam Powell
035a1fcd5e View pressed state dispatching tweaks
Bugs 6075823, 6050563

Revise pressed state dispatch logic:

Only propagate pressed state to non-clickable views. This should
eliminate the "double glow" problem in some list items where a
clickable child button has a secondary glow along with a clickable
parent. This only applies to setPressed(true) calls; setPressed(false)
must propagate. Don't early-out in setPressed to support this use
case.

Change-Id: Ibbe2309f5030282fad8d23e4a9bc4616b3f5dc7c
2012-02-27 16:30:19 -08:00
Romain Guy
765dcf3230 Small optimization for the battery status screen
Change-Id: I2833ba4009f6c284c9ef33c45a4dd7365423fb5f
2012-02-27 13:28:22 -08:00
Romain Guy
778f67f7c0 Merge "Add hooks to implement Canvas.drawTextOnPath() in GL" 2012-02-24 18:01:22 -08:00
Adam Powell
b98a81f86a Add support for optional titles in action modes
Optional titles will only be displayed in the CAB if they entirely fit
instead of ellipsizing.

Fixes bug 5821883

Change-Id: I0cfd6d4fd34a4fa9f520499d577706da30606811
2012-02-24 16:59:03 -08:00
Romain Guy
325740fb44 Add hooks to implement Canvas.drawTextOnPath() in GL
Change-Id: I165c9e05facf5365aa6850605688e538640c7fcc
2012-02-24 16:48:34 -08:00
Gilles Debunne
9d69ecbf61 InputConnection is warned when finished
As said in https://android-git.corp.google.com/g/#/c/155992
finishComposingText is indeed too broad of a method.

Introducing a new dedicated method to warn the InputConnection.

Should solve the problems with a negative counter value.

Change-Id: I5525d776916f0c42d5e6d4a4282aed590d7f0e9a
2012-02-24 16:12:52 -08:00
Dianne Hackborn
0aec3ea6de am 911b505f: am dc5fa185: am 133dc2d7: Merge "Fix issue #6048808: sometimes auto-correct is inactive" into ics-mr1
* commit '911b505f11c719906985f169a4f45930bdec8695':
  Fix issue #6048808: sometimes auto-correct is inactive
2012-02-24 15:44:55 -08:00
Dianne Hackborn
dc5fa1859d am 133dc2d7: Merge "Fix issue #6048808: sometimes auto-correct is inactive" into ics-mr1
* commit '133dc2d7aecc68990c363c861716b134910a4ced':
  Fix issue #6048808: sometimes auto-correct is inactive
2012-02-24 15:38:07 -08:00
Dianne Hackborn
7663d80f6b Fix issue #6048808: sometimes auto-correct is inactive
My previous change to speed up the time the IME is dismissed was
fundamentally flawed.  That change basically switched the order
the application called the input method manager service from doing
startInput() and then windowGainedFocus(), to first windowGainedFocus()
and then startInput().

The problem is that the service relies on startInput() being done
first, since this is the mechanism to set up the new input focus,
and windowGainedFocus() is just updating the IME visibility state
after that is done.  However, by doing the startInput() first, that
means in the case where we are going to hide the IME we must first
wait for the IME to re-initialize editing on whatever input has
focus in the new window.

To address this, the change here tries to find a half-way point
between the two.  We now do startInput() after windowGainedFocus()
only when this will result in the window being hidden.

It is not as easy as that, though, because these are calls on to
the system service from the application.  So being able to do that
meant a fair amount of re-arranging of this part of the protocol
with the service.  Now windowGainedFocus() is called with all of
the information also needed for startInput(), and takes care of
performing both operations.  The client-side code is correspondingly
rearranged so that the guts of it where startInput() is called can
instead call the windowGainedFocus() entry if appropriate.

So...  in theory this is safer than the previous change, since it
should not be impacting the behavior as much.  In practice, however,
we are touching and re-arranging a lot more code, and "should" is
not a promise.

Change-Id: Icb58bef75ef4bf9979f3e2ba88cea20db2e2c3fb
2012-02-24 13:18:23 -08:00
Svetoslav Ganov
00d0c14a0f Regression: Cannot query the content of certain windows.
1. A bad merge on my part caused ViewRootImpl not to register
   for accessibility state change.

bug:6064348

Change-Id: Idf7b8b444e9021e9d9ec3749164cfe448c8268ab
2012-02-24 11:31:17 -08:00
Svetoslav Ganov
afd5fab3ab AccessibilityNodeInfos node properly cached.
1. AccessibilityNodeInfo were not cloned when cached
   and obtained from the cache. This was causing a
   problem when the client calls #recycle() as he
   should since this results in wiping the data of
   the cached node info.

bug:6026952

Change-Id: I5807b09d95ef6f310327192ff91f036adf337e33
2012-02-24 10:22:00 -08:00
Svetoslav Ganov
42d840b91d Merge "Fixing issues with the AccessibilityNodeInfo cache." 2012-02-23 19:04:41 -08:00
Svetoslav Ganov
57c7fd5a43 Fixing issues with the AccessibilityNodeInfo cache.
1. Before there were two caches one in the app process that
   kept track only the ids of infos that were given to a
   querying client and one in the querying client that
   holds the infos. This design requires precise sync
   between the caches. Doing that is somehow complicated
   since the app has cache for each window and it has
   to intercept all accessibility events from that window
   to manage the cache. Each app has to have a cache for
   each querying client. This approach would guarantee that
   no infos are fetched twice but due to its stateful nature
   and the two caches is tricky to implement and adds
   unnecessary complexity. Now there is only one cache in
   the client and the apps are stateless. The client is
   passing flags to the app that are a clue what nodes to
   prefetch. This approach may occasionally fetch a node
   twice but it is considerably simpler and stateless
   from the app perspective - there is only one cache.
   Fetching a node more than once does not cause much
   overhead compared to the IPC.

Change-Id: Ia02f6fe4f82cff9a9c2e21f4a36747de0f414c6f
2012-02-23 18:51:04 -08:00
Romain Guy
cfef12374c Perform early intersect to avoid unnecessary draws
Change-Id: I48d61c4488e622f93733d8e53a50c93e6a20166d
2012-02-23 13:50:37 -08:00
Michael Jurka
b7ee8e2cb4 am 6ad5d69d: am 0a232673: am bf378fd7: Don\'t allow screen invalidations to go outside bounds of screen
* commit '6ad5d69da5cff2e4b5fb7acdb2699e2315b83307':
  Don't allow screen invalidations to go outside bounds of screen
2012-02-23 12:26:16 -08:00
Scott Main
3fcf93b037 am cb4ebcb2: am ce980d8e: am 68d97aa2: Merge "docs: fix broken link" into ics-mr1
* commit 'cb4ebcb20b8540cc8027ae03dd578ce3846e9af1':
  docs: fix broken link
2012-02-23 12:25:53 -08:00
Michael Jurka
0a23267337 am bf378fd7: Don\'t allow screen invalidations to go outside bounds of screen
* commit 'bf378fd7d7a91085685fe9e5528b84c485041c77':
  Don't allow screen invalidations to go outside bounds of screen
2012-02-23 08:07:22 -08:00