Commit Graph

22789 Commits

Author SHA1 Message Date
Chet Haase
4bf8b20995 Merge "Optimizing DisplayList properties" 2012-03-16 09:21:14 -07:00
Chet Haase
9d1992deae Optimizing DisplayList properties
DisplayList properties are still disabled default (flags in View.java
and DisplayListRenderer.h). When they are enabled, and when a View has
a DisplayList, invalidations due to property changes are now optimized
to avoid causing DisplayList recreation. This eliminates the drawing step
of invalidation (due to changes in these properties), only requiring
issuing the previously-created DisplayList to the GL renderer. Invalidation
is slightly faster (less overhead as we walk up the hierarchy), getDisplayList()
is potentially much faster (going down to ~0ms), depending on the complexity
of the View being redrawn and the size of the invalidated hierarchy.

Change-Id: I57587d5b810c3595bdd72a6c52349c2a3d1bdf25
2012-03-16 09:14:52 -07:00
George Mount
ddc421d19c Merge "Update edit text size when the text changes so scroll works." 2012-03-16 07:00:42 -07:00
Wu-cheng Li
8d3c318b2d Merge "Add a new camera open API that allows taking the ownership." 2012-03-15 21:23:24 -07:00
Romain Guy
51e4d4db29 Better implementation to clear display lists
Change-Id: I58f9af4bae70a8117db1455a50c0c5daf19b2f4a
2012-03-15 18:30:47 -07:00
Romain Guy
cde6adf45c Fix the build
Change-Id: I6de62c7bfaecd85810178f58707157466291eca3
2012-03-15 17:04:47 -07:00
George Mount
c6c549d8d2 Update edit text size when the text changes so scroll works.
Bug 6176413
 Webkit Change: I487322ca9578c003f937b92ca4e8d46d34ea8c78

Change-Id: I6b8f244cd747d6d19c261d685a3cfb9ef4d71ec3
2012-03-15 16:43:14 -07:00
Gilles Debunne
590924e10a Merge "Multiple display lists for editable text" 2012-03-15 16:35:56 -07:00
Romain Guy
c6e8811cb4 Merge "Postpone DisplayList recycling when detached from window" 2012-03-15 16:20:25 -07:00
Jeff Brown
c0102b7a7d Merge "Port the SQLite locale setting code to Java." 2012-03-15 16:07:08 -07:00
Jeff Brown
1d9f742e00 Port the SQLite locale setting code to Java.
Make the database opening code more robust in the case of
read-only database connections.

Check whether a PRAGMA needs to be issues before doing it.
Mostly it's harmless but it can grab a transaction on the
database unnecessarily.

Change-Id: Iab2cdc96c785e767f82966b00597e19337163f2f
2012-03-15 16:02:58 -07:00
Scott Main
d45f5b5843 am af2827ba: am 714d655c: am eb1d42e4: Merge "docs: Fix a bunch of misc doc issues from external tracker" into ics-mr1
* commit 'af2827ba96361a63eac792e679027f8d6f2c8482':
  docs: Fix a bunch of misc doc issues from external tracker
2012-03-15 16:02:29 -07:00
Scott Main
af2827ba96 am 714d655c: am eb1d42e4: Merge "docs: Fix a bunch of misc doc issues from external tracker" into ics-mr1
* commit '714d655ccfcc0d465a1a8c190d407e3d97261d76':
  docs: Fix a bunch of misc doc issues from external tracker
2012-03-15 15:59:37 -07:00
Scott Main
714d655ccf am eb1d42e4: Merge "docs: Fix a bunch of misc doc issues from external tracker" into ics-mr1
* commit 'eb1d42e4faa34c2acf76200913920fd5ca46a39e':
  docs: Fix a bunch of misc doc issues from external tracker
2012-03-15 15:56:12 -07:00
Romain Guy
bc7616eae9 Postpone DisplayList recycling when detached from window
This was causing a crash in apps that remove views during a draw pass.

Change-Id: I1c4621639fe920291b2c6fb7bfd17a69101a1329
2012-03-15 15:56:11 -07:00
Romain Guy
8e06f3e7ab Merge "Cleanup ListView glow's optimized invalidates" 2012-03-15 13:15:46 -07:00
Romain Guy
a8bfeaf4f4 Cleanup ListView glow's optimized invalidates
Change-Id: Ie9759fd95366866512ec55072aa482f972650d15
2012-03-15 13:14:14 -07:00
Amith Yamasani
0791335443 Merge "Fix sync tests failure." 2012-03-15 12:38:40 -07:00
Gilles Debunne
33b7de85b6 Multiple display lists for editable text
Bug 5763685

Long text in a ScrollView (not when the View's internal
scroll is used) is cached as a unique display list when hardware
rendering is on.

As a result, each time the text is edited, the entire display
list has to be updated, which takes a significant amount of
time (up to 500ms for a few thousand lines), proportional to the
size of the text.

This CL splits the text into multiple display lists as the
text is edited. The boundaries of the display list are aligned
with paragraphs.

There is still an issue when the number of lines changes: onLayout()
is called which invalidates all the display list. When the source
of that change is line wrapping and not a change in the view's
dimensions, we should be able to simply shift down the previous DL
instead of re-creating everything.

Change-Id: I7de49a1e5637cdfc9ef06b64b1ec4b61d9ea2415
2012-03-15 11:32:50 -07:00
George Mount
f63c52ac87 Merge "Add scrolling editable text with a finger drag." 2012-03-15 10:54:30 -07:00
George Mount
f70276a259 Add scrolling editable text with a finger drag.
Bug 6156451

 WebKit change: Ie08712fb17b237fbb2d520d745ef8a2e489fd728

Change-Id: I1a16c708e5ea2ef8bd1f99197dacbc7831764ef4
2012-03-15 10:00:44 -07:00
Chet Haase
e82a54aedc Merge "Fix bug with transform Animations" 2012-03-15 09:25:35 -07:00
Chet Haase
bcbec0ccd0 Fix bug with transform Animations
A recent change to enable View properties at the native DisplayList level
mistakenly cuased Animation transforms get be ignored for any View with
a DisplayList. The correct code should have checked whether DL properties
were enabled for the view (disabled by default for now).

Issue #6173975 Animations are gone

Change-Id: I5d5f53f854fb1b533a3150158e84392d7283d2a8
2012-03-15 09:22:17 -07:00
Wu-cheng Li
a1c41e13b5 Add a new camera open API that allows taking the ownership.
The purpose is to let face unlock always get the camera
successfully. What happened was the camera applications may
have opened the camera in onResume under the lock screen.
This API lets face unlock take the camera from the camera
application. A new permission will be added, so other
applicatoins won't be able to take the camera from the face
unlock.

bug:5584464

Change-Id: Ib3d9dcbc2161815b68db42327dc01148453704c6
2012-03-15 14:50:48 +08:00
Jeff Brown
5571ffdd9d Merge "Prefetch column names in bulk cursor adaptor." 2012-03-14 18:56:07 -07:00
Jeff Brown
fb5a4964b8 Prefetch column names in bulk cursor adaptor.
If the remote end of a bulk cursor died, then it was possible
for getColumnNames() to return null, violating the invariant
that it never returns null.  As a result, the application could
crash in strange ways due to an NPE.

Since we are often interested in the column names anyhow, prefetch
them when setting up the bulk cursor adaptor.  This way, a
remote cursor will never return null even if the remote end died.

It is possible for an application to continue to use a remote cursor
even after the provider has died unless it needs to requery it
for some reason.  Of course at that point, bad things will
happen... but usually the app is better prepared for it than
if it just randomly encounters a null array of column names.

This change also optimizes the bulk cursor adaptor to return the
initial cursor window back to the client, potentially saving
an extra RPC.  Because the communication protocol between
the CursorToBulkCursorAdaptor and BulkCursorToCursorAdaptor was
getting a little hard to follow, introduced a new type called
BulkCursorDescriptor to hold all of the necessary parameters.

Deleted several unnecessary IBulkCursor methods that are never
actually called remotely.

Bug: 6168809
Change-Id: I9aaf6f067c6434a575e2fdbf678243d5ad10755f
2012-03-14 18:51:07 -07:00
Selim Gurun
146059898b Merge "Fix file path calculation for asset files." 2012-03-14 17:36:37 -07:00
Philip Milne
b269aaf860 Merge "Fix for bug 6170890." 2012-03-14 17:36:21 -07:00
Philip Milne
edd69518ff Fix for bug 6170890.
Also fix logic for consistency checking. Prior to this CL
GridLayout was causing Launcher to issue warnings to the logs
incorrectly.

Change-Id: I9d4017388e7c80c8bc5fa6cab97970835ff261fe
2012-03-14 17:27:26 -07:00
Romain Guy
c3da1b44e6 Merge "Optimize invalidate calls in lists." 2012-03-14 17:24:04 -07:00
Romain Guy
9d849a2f63 Optimize invalidate calls in lists.
AbsListView was doing too many invalidates during scrolls/flings.
Some of them were also covering too large an area of the screen.

Change-Id: I68fe5dda3657bddd673996e7cf4f3c3672c66cfc
2012-03-14 17:19:35 -07:00
Selim Gurun
658dcd87db Fix file path calculation for asset files.
Bug: 6019611
filter out query params and URI fragments from file path.

Change-Id: Ia5892490a5ffa89d82b52c2a5e6956a244566a4a
2012-03-14 16:24:31 -07:00
Amith Yamasani
1b6ae002a5 Fix sync tests failure.
Bug: 6156819 Contacts initial sync test fails

Earlier commit was incorrectly cloning the currentSyncs list, so it
wasn't being updated.

Change-Id: I23cea8a190127746e9a1218e7bfda630599cef17
2012-03-14 14:53:36 -07:00
Teng-Hui Zhu
5a080e2207 Live streaming video may not have the right size at prepared
The fix is add the OnVideoSizeChangedListener.
bug:5420327

Change-Id: I1e0b371b8b95b86a1c0903f4bdb1d8f38de793b7
2012-03-14 13:54:59 -07:00
Dianne Hackborn
5108b1b3cf Merge "Add new "options" argument to all startActivity APIs." 2012-03-14 13:48:51 -07:00
Jake Hamby
f98f68d5ad Merge "Add support for CMAS warning notifications over CDMA." 2012-03-14 13:25:18 -07:00
Dianne Hackborn
a4972e951b Add new "options" argument to all startActivity APIs.
This will be used to allow new features to be requested...  such as,
say, a special kind of animation.  Right now there are no options
defined.

Change-Id: I4eb6f27275cdd4bf186f6da316ab93a2372ad4b7
2012-03-14 12:57:14 -07:00
Gilles Debunne
48b050a213 Merge "Use SpanSet to accelerate Layout.drawBackground" 2012-03-14 10:40:02 -07:00
Eino-Ville Talvala
0016813784 Merge "Add references to MediaActionSound in Camera documentation." 2012-03-14 10:34:05 -07:00
Michael Jurka
605eabf6a2 Merge "Fix hardware layer redraw bug" 2012-03-13 19:56:33 -07:00
Michael Jurka
952e02b430 Fix hardware layer redraw bug 2012-03-13 18:35:10 -07:00
Gilles Debunne
60e3b3fa60 Use SpanSet to accelerate Layout.drawBackground
The main performance improvement should come from the fact
that we entirely skip the loop (which calls getLineStart, getLineTop
and getLineDescent on each line) in the frequent case where there
are no LineBackgroundSpans.

Change-Id: Ie2d3168521e88d43f1a4236da2b3e8447606df1e
2012-03-13 15:58:33 -07:00
Gilles Debunne
6810a2442b Merge "New SpanSet class extracted from TextLine." 2012-03-13 15:56:07 -07:00
Philip Milne
b001475fc5 Merge "Fixes for bugs: #6103660, #6103957, #6104457 and #6104322." 2012-03-13 15:32:20 -07:00
Jake Hamby
3e3c3f80a9 Add support for CMAS warning notifications over CDMA.
Refactor SMS Cell Broadcast support to enable receiving CMAS warning
notifications over CDMA. The CellBroadcastReceiver app must also be
updated with the corresponding change. All cell broadcasts are now
delivered as a Parcelable SmsCbMessage object in the "message" extra
of the SMS_CB_RECEIVED_ACTION or SMS_EMERGENCY_CB_RECEIVED_ACTION,
instead of as a GSM/UMTS "pdu" byte array.

Existing functionality for ETWS and CMAS alerts over GSM/UMTS continues
to be supported using the new radio-technology independent SmsCbMessage
and related objects. Test cases are added to verify that valid and
invalid broadcast data is handled appropriately.

Unit testing discovered a bug in the BitwiseOutputStream utility class
used by the added test cases. When the BitwiseOutputStream object must be
expanded (in the private possExpand() method), the mEnd field is not
updated to the new array size. This causes a new array to be allocated
on every new write, and for all data beyond the original array allocation
to be replaced with zeroes. Fixed by adding a line to possExpand() to
update mEnd. Added a test case to BitwiseStreamsTest to verify the fix.
Besides the test cases, BitwiseOutputStream is only used by BearerData in
two places, both of which allocate a sufficient initial buffer. So the
bug in BitwiseOutputStream is not critical to fix for normal operation,
but should be fixed so that the test cases using it function correctly.

Bug: 5856308
Change-Id: I201ecbf11607fd200aaae3cbb32561efabf65672
2012-03-13 15:31:33 -07:00
Philip Milne
1018fb42cb Fixes for bugs: #6103660, #6103957, #6104457 and #6104322.
Add getters and setters to the layout widgets so as to mirror their XML apis.

Change-Id: Ie2237fd55e1c3e4ec0d08b4f8154ea7e122c1e79
2012-03-13 15:22:07 -07:00
Gilles Debunne
4ffb879f48 New SpanSet class extracted from TextLine.
Change-Id: I424dbd7ff0693fd465b6c83ebabba221b2eca6fe
2012-03-13 14:58:37 -07:00
Eino-Ville Talvala
586d365e00 Merge "Check for null characters being used in camera parameters." 2012-03-13 13:03:48 -07:00
George Mount
e5359373e0 Merge "Support "prev" for IME input." 2012-03-13 11:16:47 -07:00
Siva Velusamy
4faaed97ab Merge "ActivityManager: add option to allow OpenGL trace." 2012-03-12 18:10:36 -07:00