61841 Commits

Author SHA1 Message Date
Romain Guy
39fe17c8fb Cache drawable constant states instead of drawables
Bug #5678369

Caching drawables directly in a static map was responsible for runtime
restarts. If two different UI threads requested the same drawable, the
first thread to issue the request would be given a drawable callback
belonging to the second thread. This would cause an exception in
ViewRootImpl on invalidate.

The solution is to store the drawable states and to create a new
drawable instance every time a drawable is requested from the
cache. This is similar to how preloaded resources are handled.

Change-Id: I47e24e2a168cf67a3589185c6cd77b70f9a1c7cf
2011-11-30 10:34:07 -08:00
Svetoslav Ganov
2f504d9ea8 Merge "NumberPicker incorrectly shown for the old theme." into ics-mr1 2011-11-30 10:25:42 -08:00
Dianne Hackborn
db904b4782 Merge "Fix issue #5628789: Cannot set static/custom wallpaper after clearing Settings data" into ics-mr1 2011-11-30 10:20:29 -08:00
satok
4c3fa642ef Fix ConcurrentModificationException in TextServicesManagerService
Bug: 5687402
Change-Id: I59086f956b6ee618ff0e1b1034d767d9ae295848
2011-11-30 22:46:16 +09:00
Narayan Kamath
cc084f1d73 Fix superfluous onError callbacks.
When stop() is called twice or after done().This relates
to bug 5662598 because users using the old deprecated API
will see two calls to onUtteranceCompleted.

bug:5662598
Change-Id: I5d59cf66b4f4c8650d3f8f9e503ac3f33132c0d0
2011-11-30 12:32:15 +00:00
Daniel Sandler
b64cb88c32 Expanding NotificationManager's event logging.
Specifically, add the "tag" and "mustNotHaveFlags" columns.

(Hunting bug 5444859.)

Change-Id: Ic9ece44ed4697f7a8ef54e7870f72c9f94518cd9
2011-11-29 23:48:29 -05:00
Svetoslav Ganov
d116d7c78a Fixing memory leaks in the accessiiblity layer.
1. AccessibilityInteractionConnections were removed from the
   AccessiiblityManagerService but their DeathRecipents were
   not unregistered, thus every removed interaction connection
   was essentially leaking. Such connection is registered in
   the system for every ViewRootImpl when accessiiblity is
   enabled and inregistered when disabled.

2. Every AccessibilityEvent and AccessiilbityEventInfo obtained
   from a widnow content querying accessibility service had a
   handle to a binder proxy over which to make queries. Hoewever,
   holding a proxy to a remote binder prevents the latter from
   being garbage collected. Therefore, now the events and infos
   have a connection id insteand and the hindden singleton
   AccessiiblityInteaction client via which queries are made
   has a registry with the connections. This class looks up
   the connection given its id before making an IPC. Now the
   connection is stored in one place and when an accessibility
   service is disconnected the system sets the connection to
   null so the binder object in the system process can be GCed.
   Note that before this change a bad implemented accessibility
   service could cache events or infos causing a leak in the
   system process. This should never happen.

3. SparseArray was not clearing the reference to the last moved
   element while garbage collecting thus causing a leak.

bug:5664337

Change-Id: Id397f614b026d43bd7b57bb7f8186bca5cdfcff9
2011-11-29 18:51:30 -08:00
Svetoslav Ganov
9f086d812f NumberPicker incorrectly shown for the old theme.
1. NumberPicker is trying to greedily grow to its max size
   but if the max size is not specified the default value
   was the max integer which makes the widget get quite
   tall in some cases. Now the widget tries to reach the
   max size only if it has been specified.

2. NumberPicker was not computing its min width when the array
   of display values is set.

3. DatePicker' layout for the old Theme was adding a margin on
   the right of the group of spinners and if the calendar view
   is not shown the spinners were not centered. Added the spinners
   right margin to the left margin of the calendar view.

4. TimePickerDialog was using the wrong conext and was not dismissable
   on an outside touch. Same for the DatePickerDialog context.

bug:5646161

Change-Id: Ic15f9b3e6291b76493604230ceb4f783a04d4ac7
2011-11-29 18:40:05 -08:00
Gilles Debunne
8615ac9e04 Invalidated bounds tightened in TextView
New invalidateRegion method, with better horizontal invalidate
bounds in case the region is on one line.

Use by SpellChecker when a new SuggestionSpan is added.

Change-Id: Ide11f1d3d2b1350032b475db0641018a49c08d13
2011-11-29 18:05:05 -08:00
Dianne Hackborn
ebac48c6ad Fix issue #5628789: Cannot set static/custom wallpaper after clearing Settings data
Need to make sure the "files" directory is created.

Change-Id: I8d5b374a5a03590a5ce7fafb5171705414f7b2f9
2011-11-29 18:01:50 -08:00
Mathias Agopian
cadd325aff add a way to access the version string of the h/w implementation of EGL
we use a hidden egl extension. the version string is printed
in SF's dumpsys log.

Change-Id: I123eb4bde6de462bb2404c67b74d6d6219a48d6a
2011-11-29 18:00:35 -08:00
Gilles Debunne
8a439ac7a3 Performance improvement in TextView
Using a SpanSet to minimize the number the calls to getSpans.

This is a cherry pick of 145653 in ICS-MR1

Change-Id: I0a6e1fc7bd7a89325c2925bf98d59626d5e12995
2011-11-29 17:53:40 -08:00
Gilles Debunne
70b34a1e05 Scroll performance improved in multiline TextEdit
Measuring line widths, glyph by glyph slows down the scrolling
process for long text (for some reason, width measure efficiency
is affectedi by text length, maybe because the whole text has to
be passed to JNI layers).

This optimization avoids this computation in the case where there
is no possible horizontal scroll.

This is a cherry pick of 145957 into ICS-MR1

Change-Id: I2082e3d0eedace1a86122a03e4b21f90f3bc8522
2011-11-29 17:48:19 -08:00
Mathias Agopian
bb1e7d4324 Merge changes I7e973a35,Ib3386fcc into ics-mr1
* changes:
  SurfaceTexture: add EGL_KHR_fence_sync option
  SurfaceTexture: add a blit-to-FBO test
2011-11-29 17:46:35 -08:00
Jamie Gennis
6f1dd757cb Merge "SurfaceMediaSource: use the vid enc usage bit" into ics-mr1 2011-11-29 17:25:09 -08:00
Jamie Gennis
77cec6132a SurfaceTexture: add EGL_KHR_fence_sync option
This change adds a compile-time option for SurfaceTexture to use the
EGL_KHR_fence_sync extension to synchronize access to Gralloc buffers.

Bug: 5122031
Change-Id: I7e973a358631fff5308acf377581b811911fe790
2011-11-29 17:09:01 -08:00
Chris Craik
f296ee6974 Merge "Send animation start notification back to webkit from ui thread" into ics-mr1 2011-11-29 16:55:47 -08:00
Dianne Hackborn
1808f214b0 Merge "Fix issue #5636525: ANR observed in setup wizard after changing language" into ics-mr1 2011-11-29 15:28:41 -08:00
Chris Craik
d0051c06c2 Send animation start notification back to webkit from ui thread
bug:5239801

depends on external/webkit CL: https://android-git.corp.google.com/g/#/c/152559/

Change-Id: I647b5a82680f570c918227dbf57521b862dcfe25
2011-11-29 15:25:47 -08:00
Jamie Gennis
d6c938f04e SurfaceTexture: add a blit-to-FBO test
This change adds a test for blitting (via GL rendering) from a
SurfaceTexture to an FBO.

Change-Id: Ib3386fcc3f37153277f3e37a26347441bb80ab58
2011-11-29 14:52:36 -08:00
Teng-Hui Zhu
d3788b97c9 Merge "WebView animation support" into ics-mr1 2011-11-29 14:18:27 -08:00
Romain Guy
a9a91ad356 Merge "Improve screenshot animation performance Bug #5525888" into ics-mr1 2011-11-29 14:14:44 -08:00
Andreas Huber
564fee3666 Merge "Make sure we can properly shutdown even if" into ics-mr1 2011-11-29 14:09:10 -08:00
Andreas Huber
d12dc28460 Merge "If an error occurs that prevents us from reallocating buffers during a format change" into ics-mr1 2011-11-29 14:09:03 -08:00
Andreas Huber
351143fb0e Merge "Updated (internal) API for IStreamSource to signal discontinuities" into ics-mr1 2011-11-29 14:08:45 -08:00
Andreas Huber
405a4e3403 Merge "Finer granularity discontinuity support." into ics-mr1 2011-11-29 14:08:13 -08:00
Romain Guy
8279acb965 Improve screenshot animation performance
Bug #5525888

Uses only 25% of the original amount of OpenGL API calls
Fillrate usage is now 1x the screen size instead of 5x

Change-Id: Icc7d2793f276fb7ce23c7f652079e54e3d4779d5
2011-11-29 13:56:25 -08:00
Dianne Hackborn
8bf0aa9b2b Fix issue #5636525: ANR observed in setup wizard after changing language
We could sometimes allow a process to be killed while still waiting for
an activity in it to finish stopping.

Change-Id: Ibf89665c4ad6da6be22de04a82b19ef778a7fda0
2011-11-29 13:54:43 -08:00
Jeff Brown
be6ab576ff Merge "Fix application launch shortcuts." into ics-mr1 2011-11-29 13:13:33 -08:00
Dianne Hackborn
50b2042502 Merge "Another attempt at getting OOM reports to batch." into ics-mr1 2011-11-29 13:05:26 -08:00
Dianne Hackborn
672342c309 Another attempt at getting OOM reports to batch.
We now generate a stack-trace looking thing at the top of the report.

Also fix a bug I hit where the phone window manager was sending a
broadcast before the boot had completed.

Change-Id: I0cee16180e4d05c9bd3fe715212a28f504ec91ac
2011-11-29 12:55:50 -08:00
Jeff Brown
6651a63834 Fix application launch shortcuts.
Improved quick launch bookmarks to support category-based shortcuts
instead of hardcoding package and class names for all apps.

Added a set of Intent categories for typical applications on the
platform.

Added support for some of the HID application launch usages to
reduce reliance on quick launch for special purpose keys.  Some
keyboard vendors have hardcoded launch keys that synthesize
"Search + X" type key combos.  The goal is to encourage them
to stop doing this by implementing more of HID.

Bug: 5674723
Change-Id: I79f1147c65a208efc3f67228c9f0fa5cd050c593
2011-11-29 12:17:22 -08:00
Andreas Huber
a10613fea8 Updated (internal) API for IStreamSource to signal discontinuities
Change-Id: Idd4b9d8e7cec16b3e3c91c70e75144d42be30f96
related-to-bug: 5553055
2011-11-29 11:59:10 -08:00
Eric Fischer
9ab3c62499 Merge "Import revised translations. DO NOT MERGE" into ics-mr1 2011-11-29 11:44:59 -08:00
Eric Fischer
fa56c714f2 Import revised translations. DO NOT MERGE
Change-Id: Ia50fd44ea4492188f481e652caae940acaf961e2
2011-11-29 11:42:53 -08:00
Mathias Agopian
3f2730c531 Merge "temporarily hardcode Nexus S refresh rate" into ics-mr1 2011-11-29 11:35:07 -08:00
Dianne Hackborn
9b518d9304 Merge "Fix issue #5642121: Proximity sensor didn't turn the screen on in call" into ics-mr1 2011-11-29 10:16:11 -08:00
Jaikumar Ganesh
eb701df88c Merge "Cleanup references when turning BT off." into ics-mr1 2011-11-29 10:05:27 -08:00
Jaikumar Ganesh
ff33b94e23 Merge "Cleanup static references when quitting." into ics-mr1 2011-11-29 10:05:13 -08:00
Gilles Debunne
10232fe639 Merge "Extracted text problems" into ics-mr1 2011-11-29 09:59:00 -08:00
Gilles Debunne
7be31bd96a Merge "IOOB in text selection." into ics-mr1 2011-11-29 09:56:58 -08:00
Daniel Sandler
fed7a99a52 Merge "Quick fix for bug 5646217 blocking automation tests" into ics-mr1 2011-11-29 05:49:11 -08:00
Yu Shan Emily Lau
4e5d3f2ca0 Merge "Add the min fps option to set the min fps in the media recorder test. Add the procmem log to the media memory stress test." into ics-mr1 2011-11-28 19:53:58 -08:00
Christopher Tate
051606150a Merge "Add iteration-limited mode to FrameworkPerf" into ics-mr1 2011-11-28 17:56:18 -08:00
Yu Shan Emily Lau
99b4523b75 Add the min fps option to set
the min fps in the media recorder test.
Add the procmem log to the media
memory stress test.

Change-Id: Icf82f12adeca7072a171991d1d6a994e4bb7764a
2011-11-28 17:56:02 -08:00
Christopher Tate
80a682bc3d Add iteration-limited mode to FrameworkPerf
You can run tests for exactly N iterations regardless of duration now,
in addition to the previous time-limited behavior.

(Clean cherry-pick to break a dependency on a previous patch that
needs work before being committed.)

Change-Id: I2e6cf511bbe968a6f95391567658722e87dfa1fe
2011-11-28 17:48:55 -08:00
Dianne Hackborn
81de8b99f5 Fix issue #5642121: Proximity sensor didn't turn the screen on in call
Turning animations back on exposed this.  The problem is that when the
screen brightness changes, it initiates a brightness animation.  When
we force the screen to black as we wait for it to be ready to display,
it sees that an animation is running so stops it and thinks this means
it should now turn the display off.

To fix this, don't modify the screen brightness while we are waiting
to show the screen.  This is good anyway because the whole point is to
avoid showing the screen until ready, and modifying the brightness at
that point would turn it on prematurely.

Change-Id: I84b296f8ca5705c2d237ea7741cdeb95c5521df9
2011-11-28 16:57:37 -08:00
Xia Wang
e571552123 am 2d9f4620: Fix build
* commit '2d9f4620625405b916aa27177a6b5f82f8e5b15d':
  Fix build
2011-11-28 16:53:50 -08:00
Dianne Hackborn
b54980d1d4 Merge "Fix issue #5588689: Black camera preview after coming back from gmail" into ics-mr1 2011-11-28 16:53:00 -08:00
Xia Wang
2d9f462062 Fix build
Change-Id: I465d85e4783763f311ed6ec0a09c1edde9712405
2011-11-28 16:49:06 -08:00