7207 Commits

Author SHA1 Message Date
John Reck
623d223193 Fix bytesPerPixel for SurfaceTexture
Bug: 27158985
Change-Id: I148a86d76314681eb778292dd0eb64503375f328
2016-02-12 08:08:29 -08:00
Derek Sollenberger
67b1684a07 Merge "Update HWUI makefiles to support use by other targets (e.g. Skia)" into nyc-dev 2016-02-12 13:40:43 +00:00
Roozbeh Pournader
79f7dc8fa2 Merge "Fix locale matching algorithm for resources" into nyc-dev 2016-02-12 05:19:37 +00:00
Roozbeh Pournader
4de4596ac1 Fix locale matching algorithm for resources
We get ResTables two different ways: one is from AAPT, another from
settings-based requests from the Java side. In the settings-based
requests, localeScript will be autocomputed, but for AAPT-filled
tables (especially if they come from older versions of AAPT), we need
to compute the script.

Previously, locales that came from packages were incorrectly assumed
to have "undeterminable" scripts, rather than "undetermined" scripts.
This led to us mistakenly falling back to the old logic of requiring
the locales' countries to match, rather than just looking at computed
scripts.

Bug: 27157452

Change-Id: Id7e346d3ecfb17273ffb63de5bcb4849a6eafbbd
2016-02-12 05:18:38 +00:00
John Reck
9036f9989b Merge "Fix build" into nyc-dev 2016-02-11 22:35:36 +00:00
John Reck
d61fd4ede5 Fix build
Change-Id: Id793d3a824902ab794b5d5a4cdf4c77a72c52add
2016-02-11 14:35:08 -08:00
John Reck
ca11dd75ca Merge "Fix bpp mismatch" into nyc-dev 2016-02-11 22:05:14 +00:00
Derek Sollenberger
991da31d40 Update HWUI makefiles to support use by other targets (e.g. Skia)
(1) Update both static and shared lib to export libhwui headers
(2) Work around problem in current make system where a static
    libraries dependencies are not transitively included by moving
    those dependencies into a file that can be included by targets
    using libhwui_static.
(3) Do not expose protobuf headers to clients outside of HWUI

Change-Id: I08470c02a83ae64116081eff0c2050878990c6ed
2016-02-11 16:23:19 -05:00
John Reck
1d4e6a0901 Fix bpp mismatch
Bug: 26980851

GL_RGBA16F was being incorrectly calculated
as 4 bpp instead of 16 in Texture's objectSize(),
leading to a mismatch in cache size tracking
in GradientCache

Change-Id: I533c52fcdf9910d7a7d14bbd80965b8cbef8e147
2016-02-11 13:22:25 -08:00
John Reck
e03ef25a3e Revert "VectorDrawable native rendering - Step 5 of MANY"
Bug: 27136799

This reverts commit 18bdf443e371e9f293439b4ff92cc79abaa422e5.

Change-Id: I825b061eec2a591f2d18119ba64494624b9ad4f2
2016-02-11 17:02:33 +00:00
Doris Liu
18bdf443e3 VectorDrawable native rendering - Step 5 of MANY
Implemented reset() (public API for AVD)
and reverse() (internal API that needs to be supported)

Change-Id: Ife1650049f271cad1347943151a5800c40c20aa2
2016-02-11 01:08:47 +00:00
John Reck
7df9ff2a08 Fix all LA memory leaks forever!
Bug: 27072626

Or at least fix this one and make it harder to leak
going forward. static_asserts are cool, use them liberally

Also makes allocation via LA (slightly) faster by fixing create*
variants to use rvalue references & std::forward, preventing
an accidental pass-by-value

Change-Id: I18fd696a93dd6ea49c8d8c587d4c8bee56dbfdf5
2016-02-11 00:42:23 +00:00
John Reck
e537330ead Revert "Fix all LA memory leaks forever!"
This reverts commit 499d83f21e7ffb687788bba1668b05fe38f6ebaf.

Change-Id: Ia893ae16ebbeae68e49cd13a20587104b73d39a0
2016-02-11 00:36:34 +00:00
John Reck
499d83f21e Fix all LA memory leaks forever!
Bug: 27072626

Or at least fix this one and make it harder to leak
going forward. static_asserts are cool, use them liberally

Also makes allocation via LA (slightly) faster by fixing create*
variants to use rvalue references & std::forward, preventing
an accidental pass-by-value

Change-Id: I5e0e36e72c6dd93324194ebf9a95f8204f05f261
2016-02-10 16:11:26 -08:00
Chris Craik
4f4c608209 Fix build
Change-Id: I24d82c44db9d9e04098a0d7cb9289d6b9fc19e41
2016-02-09 16:32:49 -08:00
Chris Craik
b76e5865db Merge "Calculate clip bounds correctly when serializing" into nyc-dev 2016-02-09 23:04:54 +00:00
Andres Morales
7364905303 Merge "updates to FrameStatsObserver API" into nyc-dev 2016-02-09 19:00:32 +00:00
Andres Morales
910beb8f5d updates to FrameStatsObserver API
- Rename to FrameMetrics to avoid collision with existing
  android.view.FrameStats class
- Make FrameMetricsObserver implementation detail,
  exposing FrameMetricsListener interface as public API
  and wrapping in FrameStatsObserver to maintain state
- Remove dropped frame count call, in favor of passing as
  parameter to callback method.
- Move away from raw timestamp access in favor of Metric IDs
  which represent higher-level, more stable stages in a frame
  lifecycle and match the categories exposed in the onscreen
  bars.
- Support many-to-many Window<->FrameMetricsListener relationship

Change-Id: I00e741d664d4c868b1b6d0131a23f8316bd8c5c2
2016-02-09 10:40:01 -08:00
Chris Craik
b4f4f3e16d Calculate clip bounds correctly when serializing
bug:26585671

Change-Id: Ic70769bce6fa2a7b65cb893ba4a45c65fdc0b7e3
2016-02-09 01:27:56 +00:00
Chris Craik
b251a2f51e Revert "Revert "TaskManager bench""
This reverts commit 9640477e3cc075b0f303e817a3ebcc72d7bc878b.

Change-Id: I3aa8f2830b43b9c7b211c5792a311d0bc698c51a
2016-02-08 23:28:28 +00:00
Chris Craik
81ece00790 Merge "Fix TextDropShadowCacheTests and glyph_t everywhere" into nyc-dev 2016-02-08 22:47:35 +00:00
Chris Craik
e8c3c813b0 Fix TextDropShadowCacheTests and glyph_t everywhere
Change-Id: I943eae4e9408c77bdfba6304ba7ee3e862351a41
2016-02-08 22:45:22 +00:00
Chris Craik
1697c3daed Use clang to build microbench
Change-Id: I7ae8049fe05e99fadf905abd18553cb28596ba7f
2016-02-08 22:45:14 +00:00
Chris Craik
62cd9e4a72 Fix build
Change-Id: I1ad30ae50cbdff9267d0121a446e6adbe3ad17ee
2016-02-05 18:17:35 -08:00
Chris Craik
807842acfa Merge "Move several property queries to Properties class" 2016-02-06 01:39:34 +00:00
Chris Craik
48a8f431fa Move several property queries to Properties class
bug:17478770

This removes a lot of redundant property query code, and puts the
queries all in one place, so defining them automatically will be simpler
in the future.

Change-Id: I0428550e6081f07bc6554ffdf73b22284325abb8
2016-02-05 17:38:22 -08:00
John Reck
d1ddcf19bb resolve merge conflicts of 9ea5295597 to master.
Change-Id: I68b883e8a1bb17abd4cf151d057dd07e53a80f50
2016-02-05 15:59:55 -08:00
John Reck
9ea5295597 Merge "libhwui: handle eglSwapBuffers with EGL_BAD_NATIVE_WINDOW error case"
am: 857b65657d

* commit '857b65657d453801e9b73f998043603456dac813':
  libhwui: handle eglSwapBuffers with EGL_BAD_NATIVE_WINDOW error case
2016-02-05 23:52:12 +00:00
Christian Poetzsch
9a878a646f hwui: set buffer destroyed swap mode explicitly
Not using EGL_SWAP_BEHAVIOR_PRESERVED_BIT as config attribute for
eglChooseConfig doesn't automatically mean the swap behavior is buffer
destroyed. This is driver implementation specific and on some hw this
can still be buffer preserved. Make sure it is buffer destroyed by
explicitly setting it for every new surface when requested.

Change-Id: Ie2c7c89b0d20e35832b488c6263bb4d9dd844a75
Signed-off-by: Christian Poetzsch <christian.potzsch@imgtec.com>
2016-02-05 13:51:37 -08:00
John Reck
0b69467d42 Merge "Add a debug assert to track down infinite loop" 2016-02-05 21:40:16 +00:00
John Reck
83c9b5bf63 Add a debug assert to track down infinite loop
Bug: 26980851
Change-Id: I326983ab367782048311b6cf06d800f72837e38e
2016-02-05 13:03:47 -08:00
Doris Liu
ef062ebd20 Ref count the nodes in VectorDrawable
Also added API check so that for pre-N we ignore invalid VD animation,
in order to avoid breaking old apps.

Bug: 26975469
Bug: 26949340
Change-Id: I498539ad6a05de3d886e7dcdc8a167e78333ab11
2016-02-05 11:12:25 -08:00
Daniel Chapin
9640477e3c Revert "TaskManager bench"
This reverts commit 02db03ca0584371504fd29ced77c00d601cb0971.

Change-Id: I86bdf5e6774e99f9add59a657bfc50d45ebfda1d
2016-02-05 05:42:16 +00:00
Chris Craik
3ff6b15d47 Merge "TaskManager bench" 2016-02-05 00:30:29 +00:00
Doris Liu
766431aa57 Revert "Revert "VectorDrawable native rendering - Step 4 of MANY""
This reverts commit 5a11e8d0ba21624025b89ac63bbd18befa55be0e.

Change-Id: I7a48b59c4f930dad65ddc8590c25a12636244ea2
2016-02-04 16:29:51 -08:00
Chris Craik
02db03ca05 TaskManager bench
bug:26964750

Change-Id: Ibda0cd2e5e64331a4367d4985d6acfd6f3baeda1
2016-02-04 14:42:43 -08:00
Doris Liu
5a11e8d0ba Revert "VectorDrawable native rendering - Step 4 of MANY"
b/26949340 and b/26975469, b/26975079 as well 

This reverts commit f276acd98457bcaabc9e79a17a736b3b484f005e.

Change-Id: I4b55177daf0d289bc03604c71fd4bf579f65073a
2016-02-04 20:59:00 +00:00
John Reck
0a1abd3247 Merge "Have RT drive window positioning" 2016-02-04 19:32:57 +00:00
John Reck
f648108f83 Have RT drive window positioning
Bug: 22802885

Change-Id: I6beed5474d3a943b16e9097f7bd61ce3cbd37505
2016-02-04 11:23:49 -08:00
Chris Craik
37fd29f284 Merge "Fix ripple clipping + quick rejection" 2016-02-04 19:08:59 +00:00
Chris Craik
c8ca8ceba0 Merge "Simplify shadow task cleanup" 2016-02-04 19:04:18 +00:00
Chris Craik
3fd03b718d Merge "Add SkiaBehaviorTests" 2016-02-04 18:08:20 +00:00
Chris Craik
7fc1b0349b Fix ripple clipping + quick rejection
bug:26524690

Don't intersect the first clip with the viewport. Instead, the first
clip op should always be a replace op.

Additionally, only quick reject nodes that clip to bounds, since some
nodes (like ripples) draw outside their own bounds.

Change-Id: I96a52029f360328aba19af7349888cc0a026b5b1
2016-02-03 20:09:00 -08:00
Chris Craik
07d8d59e21 Add SkiaBehaviorTests
Change-Id: Ie2983f7a0c9e8bdd8c8de507d70ecf3aefdd9425
2016-02-03 18:43:04 -08:00
Chris Craik
fdbc795e48 Merge "Remove unnecessary fence in macrobench" 2016-02-04 01:43:40 +00:00
Chris Craik
2705c983f5 Remove unnecessary fence in macrobench
bug:26882579

Change-Id: Ic2d610b5ae7e04513dc7f7fa99d355d406a73379
2016-02-03 17:39:41 -08:00
Chris Craik
d8165e863b Simplify shadow task cleanup
bug:26964750

Removes 3 news/deletes per task, as well as the waitOnTask inside destruction

Change-Id: Iec11165bcfa7f98ca41574885734c2ad39328cc8
2016-02-03 16:30:11 -08:00
Derek Sollenberger
0eef10e556 Merge "Update Canvas API with view system calls." 2016-02-03 17:59:11 +00:00
Florin Malita
777bf85c16 Remove remaining references to SkCanvas::SaveFlags
One SkCanvas save flag reference snuck back in after the last
cleanup.  Convert to the new SaveFlags enum.

Change-Id: I9ba4b01a19bbb80276c84d30fd0d7b9513892cf9
2016-02-03 10:48:55 -05:00
Derek Sollenberger
6f485569fa Update Canvas API with view system calls.
Refactor DisplayListCanvas, RecordingCanvas, and SkiaCanvas
to share a common API.

Change-Id: I0268ec2749ea5d13a3a72bb2784ed6a9911383d9
2016-02-03 09:13:04 -05:00