History log of /frameworks/base/libs/
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
5462b79d9fd787ab189bcd29b591ca72f900220f 28-Jun-2017 John Reck <jreck@google.com> Selectively disable filtering if estimated safe

If the output matches the source rect then use
GL_NEAREST instead of GL_FILTER. This is a more
pixel-exact capture.

Bug: 38242146
Test: CtsUiRendering & CtsViewTestCases:.PixelCopyTest passes on fugu
Change-Id: I9f57a4124374568f83d45fdc8f83cc767ded888a
(cherry picked from commit 7bf96a0a6f4824f2d15ec95249b8ff038fe02239)
wui/GlopBuilder.cpp
wui/GlopBuilder.h
wui/OpenGLReadback.cpp
a896306c38c4d11c43b967a21db6d74c251b2520 14-Jun-2017 John Reck <jreck@google.com> Add a workaround for simulate secondary display

To workaround a deadlock caused by bufferqueue locks
we force RenderThread over to use async mode which
we enable via eglSwapInterval(0)

Bug: 38372997
Test: steps in the bug
Change-Id: Ia305f73abbdd64ab0c25d1f7d32792cc6295a0ce
wui/Properties.cpp
wui/Properties.h
wui/renderthread/EglManager.cpp
wui/renderthread/RenderProxy.cpp
wui/renderthread/RenderProxy.h
34a0cdb98eb5561774ea4e7b3b602aad80c4a3cc 09-Jun-2017 Jorim Jaggi <jjaggi@google.com> Properly run window animations at vsync-sf (1/2)

- Add new Choreographer instance that runs on vsync-sf
- Use this new Choreographer for WindowAnimator, and remove all
the hacks around it

Test: Open apps and close apps, notice no stutter
Test: Screen zoom animations
Test: go/wm-smoke
Bug: 36631902
Change-Id: I988ae25645effc3ac20efa7cb9b68f23444da0d0
ndroidfw/DisplayEventDispatcher.cpp
ndroidfw/include/androidfw/DisplayEventDispatcher.h
a67b62e15e20bac6a9664e6e6be923cf82ad4138 01-Jun-2017 John Reck <jreck@google.com> Fix ANR & Crash on Ryu

Fixes impossible dequeue crash as the wrong
start point of the frame was used. We need
to use the start point for RT, not the start
point for the frame.

Workaround for sysui ANR caused by what appears
to be a driver bug. Drivers with the bug
will have transiently higher memory usage.
Drivers without the bug will be unaffected.

Bug: 62213889
Bug: 62250550
Test: Manual

Change-Id: I9992b224f84bc1c40834bafff7e0013b38270ae0
wui/renderthread/CanvasContext.cpp
32414eea3e5aa55fb251255ecf84b0e54858624f 31-May-2017 John Reck <jreck@google.com> Fix dequeus outside of frame drawing

Bug: 62213889
Test: Repro steps in bug
Change-Id: I8fc407b280ba82c669fc2bb03750cab139adb965
wui/renderthread/CanvasContext.cpp
f209c06d36021a8d049ba0528bbe62254a233636 26-May-2017 Derek Sollenberger <djsollen@google.com> Don't crash when presented with non-roundRect clipping outline.

We still won't clip to the outline to match existing HWUI behavior.

Test: CTS Graphics and hwui_unit_tests pass
Bug: 38411077
Change-Id: Ia3161df77a4ccaf0e714d2fe1ac12396d1c8f9e9
wui/pipeline/skia/RenderNodeDrawable.cpp
36393c3e8da725927357d7a235c18e2f6c1aea98 24-May-2017 John Reck <jreck@google.com> Fix null deref crash

Change-Id: Ic1a64e926b5faa2f4cf8d079a2b67e0261dcecd7
Fixes: 62035692
Test: manual
wui/renderstate/RenderState.cpp
4277d8f3e6d967e9fdca181d7bbc9516f9a1fe0e 23-May-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Fix recent apps in system UI for Skia pipeline" into oc-dev
f5f27cd828084456bbc01520b44688df2b49b4b2 22-May-2017 Stan Iliev <stani@google.com> Fix recent apps in system UI for Skia pipeline

Enable HW Bitmaps for Skia pipelines by using a readback to
convert GraphicBuffer into a raster SkImage. Both BitmapShader
and drawing HW bitmaps into a canvas are supported.

Test: recent apps work, no memory leaks, CTS graphics and
UiRendering tests passed, HWUI unit test passed
bug: 38136140
Change-Id: I23fed5febad3b1009e0417fb7e21a347a8d11b0d
Merged-In: I23fed5febad3b1009e0417fb7e21a347a8d11b0d
wui/hwui/Bitmap.cpp
9a814875c4e3a98fea99dae623f22268a9afa38a 23-May-2017 John Reck <jreck@google.com> Improve time to texture destruction

Eliminate textureCache.mGarbage which is only cleared
in a trimMemory. Instead when we hit ~Bitmap post a
message to RenderThread to release the texture immediately

Bug: 38258699
Test: manual
Change-Id: I962ba275e89afb628ba02f74769287edbab9fed4
wui/Caches.cpp
wui/TextureCache.cpp
wui/TextureCache.h
wui/hwui/Bitmap.cpp
wui/renderstate/RenderState.cpp
wui/renderstate/RenderState.h
wui/renderthread/RenderProxy.cpp
wui/renderthread/RenderProxy.h
9363d33262631651e39c4882a13a06ee4319c4fd 17-May-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Revert "Fix recent apps in system UI for Skia pipeline"" into oc-dev
576b6a8a7994f649c0dbacfc34611d1580e16bd6 17-May-2017 John Reck <jreck@google.com> Revert "Fix recent apps in system UI for Skia pipeline"

This reverts commit 625dd56a45bfe95c5f1baa1891529503ff3374a9.

Reason for revert: Caused a memory leak, b/38330767
Bug: 38136140
Bug: 38330767
Test: manual, verified memory isn't leaking doing the steps in b/38330767

Change-Id: I998bea04788d58ba6bad71c1691d5a3b33190c1b
Merged-In: I98b2dfd750be57a15785808e2d5723616e2ce20a
wui/hwui/Bitmap.cpp
wui/hwui/Bitmap.h
wui/pipeline/skia/SkiaOpenGLPipeline.cpp
wui/pipeline/skia/SkiaOpenGLPipeline.h
wui/pipeline/skia/SkiaOpenGLReadback.cpp
wui/pipeline/skia/SkiaPipeline.cpp
wui/pipeline/skia/SkiaRecordingCanvas.cpp
wui/renderthread/RenderProxy.cpp
wui/renderthread/RenderProxy.h
wui/renderthread/RenderThread.cpp
wui/renderthread/RenderThread.h
dad0ba155e4d16ee7bae92a69943d7d2a3e9ee71 13-May-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Fix recent apps in system UI for Skia pipeline" into oc-dev
625dd56a45bfe95c5f1baa1891529503ff3374a9 06-May-2017 Stan Iliev <stani@google.com> Fix recent apps in system UI for Skia pipeline

Enable HW Bitmaps for Skia pipeline just enough to make
recent apps list working by adding support for BitmapShader.
Drawing HW bitmaps in a canvas is also supported.

Test: recent apps work, HWUI unit tests pass, CTS tests pass.
bug: 38136140
Change-Id: Ibd06c859c86dc213310d5ce5272497e1882d0cc6
Merged-In: Ibd06c859c86dc213310d5ce5272497e1882d0cc6
wui/hwui/Bitmap.cpp
wui/hwui/Bitmap.h
wui/pipeline/skia/SkiaOpenGLPipeline.cpp
wui/pipeline/skia/SkiaOpenGLPipeline.h
wui/pipeline/skia/SkiaOpenGLReadback.cpp
wui/pipeline/skia/SkiaPipeline.cpp
wui/pipeline/skia/SkiaRecordingCanvas.cpp
wui/renderthread/RenderProxy.cpp
wui/renderthread/RenderProxy.h
wui/renderthread/RenderThread.cpp
wui/renderthread/RenderThread.h
19af4cc375fc407c9c232f13094f1f068f0a7602 12-May-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "AAPT: Include empty locale in getLocales" into oc-dev
7d75f491756973fd68a0e3ed8b462c1d2e88163b 11-May-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Fix support for @empty in style resolution" into oc-dev
fa2fc0b263d2eaa3be5eaa5191ffe293abc81489 11-May-2017 Adam Lesinski <adamlesinski@google.com> AAPT: Include empty locale in getLocales

AAPT dump badging relies on the empty locale being
present when there are no locales.

Bug: 38192121
Test: manual
Change-Id: I2f5c431d4fd07c525a2318e7b93be0e93c32448f
ndroidfw/ResourceTypes.cpp
32e7501a27f0f19bccdf9e91f9b87869c093f695 10-May-2017 Adam Lesinski <adamlesinski@google.com> Fix support for @empty in style resolution

If @empty is encountered in XML, do not fallback
to searching through the theme.

Bug: 36891052
Test: make aapt2_tests
Test: bit CtsContentTestCases:android.content.res.cts.TypedArrayTest
Change-Id: Ie3bf7b70af9c7913513a1092afd95d26bec5e635
ndroidfw/AttributeResolution.cpp
ndroidfw/ResourceTypes.cpp
ndroidfw/tests/AssetManager2_test.cpp
ndroidfw/tests/AttributeResolution_test.cpp
ndroidfw/tests/data/styles/R.h
ndroidfw/tests/data/styles/build
ndroidfw/tests/data/styles/res/layout/layout.xml
ndroidfw/tests/data/styles/res/values/styles.xml
ndroidfw/tests/data/styles/styles.apk
373b15bda93c8b400c5e1271bc93cbef26af503f 02-May-2017 Seigo Nonaka <nona@google.com> Fix double bolding

resolveStyle increases minikinStyle's weight value based on Skia's style
value. Since we compute Skia's style based on given weight value, we
should not add extra bold weight to minikinStyle.

This CL also fixes misunderstanding of base weight.
The base weight is only used for computing weight relative to the
weighted alias. Thus, base weight should not be updated except for
createWeightAlias method.

To be clear, this CL changes the function names but keeps the same
semantics as before.

Test: adb shell /data/nativetest/hwui_unit_tests/hwui_unit_tests
Test: am instrument -w -e class android.graphics.cts.TypefaceTest\
android.graphics.cts/android.support.test.runner.AndroidJUnitRunner
Bug: 37880319
Merged-In: Ied73189b11792fb062da46f45afd2db664e6ecb4

Change-Id: I82350a1bfb99ce198b955f127949e21bccccb1cb
wui/Android.mk
wui/hwui/Typeface.cpp
wui/hwui/Typeface.h
wui/tests/unit/TypefaceTests.cpp
01a5cc900439e5315dcf6a6dbdfeed9c4a37e943 05-May-2017 Sergey Vasilinets <sergeyv@google.com> Merge "Add StrictMode.noteSlowCall to calls that result in hw bitmap readback" into oc-dev
9fd259c9b0878ba52fec86173d76976e70977fcd 04-May-2017 sergeyv <sergeyv@google.com> Add StrictMode.noteSlowCall to calls that result in hw bitmap readback

bug:37748500
Test: BitmapTest:*inStrictMode
Change-Id: Ifea1c6f0c50ba2f409c96b7ccf7eb31c89ef81c8
wui/hwui/Bitmap.cpp
e681bf6b5c798cce3858e1d39e4fe629cab721f0 03-May-2017 Chris Craik <ccraik@google.com> Make all FrameBuilderTests run on RT

Fixes: 33834637
Test: adb shell /data/nativetest/hwui_unit_tests/hwui_unit_tests --gtest_filter=FrameBuilder.renderNode_OpenGL
Test: adb shell /data/nativetest/hwui_unit_tests/hwui_unit_tests --gtest_filter=FrameBuilder.projection*

They essentially all use Caches, so making RT-only for safety. This
prevents crashes when trying to access Caches in a non-rt test, when
it's not guaranteed to be created.

Change-Id: I530c73d0ffe2d4f4ef53a46715f5bcca2c485f70
wui/tests/unit/FrameBuilderTests.cpp
8f4ac4ac05b8278c84f3b27de05eb8ed325ea81a 29-Apr-2017 Chris Craik <ccraik@google.com> Merge "Revert "Temporarily enable GL validation"" into oc-dev
ebd44d0076bc81732cb346a342788a0024dd1b3e 28-Apr-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Add conic support for Path#approximate" into oc-dev
e7172ff9fb4103339aa4095ab543ad4d259b1ebc 28-Apr-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "AAPT2: Add workaround for non-standard package IDs" into oc-dev
96202d56ad2406b27a8b3b1f083ab71945d06a46 28-Apr-2017 Chris Craik <ccraik@google.com> Add conic support for Path#approximate

Fixes: 37722722
Test: bit CtsGraphicsTestCases:PathTest
Test: bit CtsUiRenderingTestCases:android.uirendering.cts.testclasses.PathTests

Also adds static asserts to path-walking code, to avoid this problem
in the future.

Also adds annotations, since this is public API now.

Change-Id: Ic39b167968b98fd8197be2d0f9aca79949717237
wui/PathTessellator.cpp
f9dc09f4ea660b7dbd0d3fc97c2c73235736f37f 28-Apr-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Disable Vulkan backend when running hwui_unit_tests." into oc-dev
0f89539de6df6ebe991ae29510e55867317389c0 27-Apr-2017 Derek Sollenberger <djsollen@google.com> Disable Vulkan backend when running hwui_unit_tests.

The Vulkan backend fails to run on devices without vulkan drivers.
Until we can stub out the vulkan drivers for those devices we find
an acceptable solution.

Test: hwui_unit_tests on device w/out vulkan
Bug: 37422708
Change-Id: I3d7c21882053459f25ca1eb5648cdf5dfd4c333e
wui/tests/common/TestUtils.h
4ca56978a9aea3f021a54ed9265de10811984d94 27-Apr-2017 Adam Lesinski <adamlesinski@google.com> AAPT2: Add workaround for non-standard package IDs

The dynamic ref table used to map build-time IDs to runtime IDs
is mainly used for shared resource libraries and has a few built-in
mappings (app 0x7f and framework 0x01).

Using a non-standard package ID like 0x80 causes a failure in package ID
lookup. The solution is to ship the dynamic_ref_table with an identity mapping
with any resource table that uses a non-standard package ID.

Adds some tests to ensure this works correctly.

Bug: 37498913
Test: make libandroidfw_tests
Test: make aapt2_tests
Change-Id: Ic3f67942384d34e7fdcbc94ded360e940e3ebc8a
ndroidfw/ResourceTypes.cpp
ndroidfw/include/androidfw/ResourceTypes.h
005275d238454dcadc21f4946d4104380f691b24 20-Apr-2017 Chris Craik <ccraik@google.com> Revert "Temporarily enable GL validation"

Fixes: 35387665
Test: none

This reverts commit b5544d0308613dbcfee5d27f26bda2248d0a5e33.

Change-Id: I4cf3fa0c65aaee38d0fa9cfea15b72c8ef42acb1
wui/Android.mk
7e44951bb7d9ed21b2012a35d673b2523151621a 26-Apr-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Fix include" into oc-dev
66c3a829dc129b6081979facf5a652d5d9f1f51a 25-Apr-2017 Chris Craik <ccraik@google.com> Fix include

Bug: 35387665
Test: builds with HWUI_ENABLE_OPENGL_VALIDATION := false

Dependency on gl3.h was added while that header was auto-included for
error checking purposes. Add the include to enable us to disable gl
error checking.

Change-Id: Ic969da716e2323f8e42d20da8fd0a6fa653f9775
wui/Texture.h
e07a91a8dbcadd9898fdea0bc19ddb55014f3eeb 19-Apr-2017 Matt Sarett <msarett@google.com> Add unit test for Skia path behavior

Test: This is a test.
Bug: 35369941

Change-Id: Iaf21d3a903702f81a20e08e8b50b782f311ce7f3
wui/tests/unit/SkiaBehaviorTests.cpp
190fe086df0c3a054e09dafc6fe459b929af0756 18-Apr-2017 Derek Sollenberger <djsollen@google.com> Merge "Remove round rect clipping optimization." into oc-dev
c84824942db6c37343a3580c23308e2f07037267 17-Apr-2017 Chris Craik <ccraik@google.com> Disable crashing drop shadow tests

Bug: 36272398
Test: HWUI unit tests now run without crashing

Change-Id: I2877ed184640e5043d33b10605db71dde501fd2a
wui/tests/unit/FontRendererTests.cpp
wui/tests/unit/TextDropShadowCacheTests.cpp
f7d98f436cf1351cb479e0abd6af7056553a6fa9 17-Apr-2017 Derek Sollenberger <djsollen@google.com> Remove round rect clipping optimization.

This optimization fails to account for inverse fill.

Test: bit CtsGraphicsTestCases.CanvasTest
Bug: 37417782
Change-Id: I04adfa93542b1bd1f5d905c64bb40e521242e29d
wui/SkiaCanvas.cpp
55455181233cadcd6d2e28d28d0dfc9a653f7787 16-Apr-2017 Romain Guy <romainguy@google.com> Properly decode colors spaces in BitmapRegionDecoder

Reusing a bitmap with BitmapRegionDecoder would preserve the
previous color space. This change also tweaks color space
matching to make sure we pick Display P3 with parameter d=0.039
or d=0.04045

Bug: 36905374
Test: CtsGraphicsTestCases
Change-Id: I4d2d66e5babebb0b5ce5cbdc7e8244177b4b7f9c
wui/GlopBuilder.cpp
ca9b703b8862b4b0a9c6134a0b3e0d1a89a9ae64 13-Apr-2017 Matt Sarett <msarett@google.com> Bug fix: use legacy SkCanvas regardless of color space tag

Test: Added unit test. CtsGraphicsModule.

Bug: 32984164

Change-Id: If72e1e31c98e01f97f3a05d763f5d4c71cf88313
wui/SkiaCanvas.cpp
wui/tests/unit/SkiaCanvasTests.cpp
d154829cb15d61f1469f939d608e691256e2a765 12-Apr-2017 Seigo Nonaka <nona@google.com> Use provided style for fallback font selection

If the developer gives some weight/italic to the Typeface.Builder
the fallback used the metadata in the font file. We should use
provided data instead.

This CL also adjusts upper and lower limits on weight, from 100..900 to
1..1000

Bug: 37257745
Bug: 37251569
Test: android.graphics.cts.TypefaceTest passes
Change-Id: I7cf390d96b49afcce359928373698b0c9a9babd8
wui/hwui/Typeface.cpp
wui/hwui/Typeface.h
1be9766a68ab25d4912aa19859414c8b2af6242b 13-Apr-2017 Jim Van Verth <jvanverth@google.com> Merge "Add uncached and perspective shadows to Skia renderer" into oc-dev
729a515e5ebcf38e3472bb8fee4e9400745c400c 13-Apr-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Introduce setFallbackTypeface" into oc-dev
5b6347a6af668ba47b3fab14cefbe03cc440c3a4 31-Mar-2017 Seigo Nonaka <nona@google.com> Introduce setFallbackTypeface

setFallbackTypeface is returned by Builder.build() method when the
provided font is not loaded due to some reasons.
The fallback family is resolved with width/italic passed to Builder.

Bug: 36794225
Test: android.graphics.cts.TypefaceTest passes
Change-Id: I65e220aca823fd815a52437b11c8e6dc952de8e2
wui/hwui/Typeface.cpp
wui/hwui/Typeface.h
44dc270830758d5b0f5b099e7c0e308bdf027dfb 13-Apr-2017 Matt Sarett <msarett@google.com> Add SkiaCanvas::captureCanvasState()

Test: Verified bug is fixed. Wrote unit test.

Bug: 37268771

Change-Id: I9deb7db353cd2129ad245e7f65419670463bb717
wui/SkiaCanvas.cpp
wui/SkiaCanvas.h
wui/hwui/Canvas.h
wui/tests/unit/SkiaCanvasTests.cpp
5745a0a37fa8b09e6ce538ab8ef58684cc00604e 12-Apr-2017 Jim Van Verth <jvanverth@google.com> Add uncached and perspective shadows to Skia renderer

Test: manual - looked at FrameworkShadow app

Bug: 37300468
Change-Id: I72d820479141db2d83363747d9f76abbaca70d98
wui/pipeline/skia/ReorderBarrierDrawables.cpp
eb69cbbe22d993a9ba88a1206853c660f8f43628 11-Apr-2017 Derek Sollenberger <djsollen@google.com> Change behavior of setBitmap to cleanly reset the canvas

- identity matrix
- no save stack
- wide-open clip

This reverts commit 4f641d1e4586b027969052cc0ad6b65c1158e72e

Test: bit CtsGraphicsTestCases:.CanvasTest
Bug: 36218535
Change-Id: Id11deb06e37d6df61f1f171d424ab150d812a7a8
wui/SkiaCanvas.cpp
8242656f495847c50c9ceaea92839dce78218a75 05-Apr-2017 Romain Guy <romainguy@google.com> Color management, the missing pieces

Implement missing color management pieces for bitmaps:

- Bitmap.createBitmap(Bitmap src, ...) now creates a bitmap
in the same color space as the source bitmap
- Bitmap.createScaledBitmap() now creates a bitmap in the
same color space as the source bitmap
- Bitmap.createBitmap(..., ColorSpace colorSpace) to create
bitmaps in a specific color space
- Fix copy from A8 to F16
- Copying bitmaps in F16 or with a color space does not work,
it's currently a limitation in Skia

Bug: 36905374
Test: BitmapColorSpaceTest
Change-Id: I0092fe4432511db50daa3a9393389a9db05e0c2a
wui/SkiaCanvas.cpp
wui/hwui/Bitmap.cpp
wui/hwui/Bitmap.h
c273784c91fa938586eda2a91b7268e431e838d5 06-Apr-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge changes I6f00614d,I987eeab2 into oc-dev

* changes:
Convert 16 bit bitmaps to 8 bit on devices that do not have GLES3.0
Fix HardwareBitmapTests.testBitmapConfigFromRGB565
89de234c721244fe9063971ca33839392b66387f 06-Apr-2017 Romain Guy <romainguy@google.com> Convert 16 bit bitmaps to 8 bit on devices that do not have GLES3.0

Bug: 37077308
Test: CtsUiRenderingTests (ran to manually emulate 2.0 devices)
Change-Id: I6f00614d79797835adcfe4716bd331573e1463e3
wui/Texture.cpp
7c98f5da3d95ef383de04fb5e941adec4fe1a4cf 06-Apr-2017 Romain Guy <romainguy@google.com> Fix HardwareBitmapTests.testBitmapConfigFromRGB565

Bug: 37077304
Test: HardwareBitmapTests.testBitmapConfigFromRGB565
Change-Id: I987eeab243f93f9ee8fe8d1b6a12ddbd23225651
wui/hwui/Bitmap.cpp
ea70d22dc8dc5d61f075edf6d03f86f6a68169cd 29-Mar-2017 Matt Sarett <msarett@google.com> Xform bitmaps to sRGB on SW and PDF canvases

For picture-backed canvases, we will defer the xform
until playback.

Test: Unit tests and cts test.
Bug: 32984164
Change-Id: Ib74663bcb688b74b6ba8792b403b0475126732af
wui/SkiaCanvas.cpp
wui/SkiaCanvas.h
wui/hwui/Canvas.h
wui/tests/unit/SkiaCanvasTests.cpp
d7410f7829ff591ca81ad93c9c9b1632ea80d1bc 04-Apr-2017 Stan Iliev <stani@google.com> Fix pop-up shadow drawn in the wrong place with Skia pipeline

Fix a bug in DrawShadow matrix calculation. Recorded matrix does
not need to be applied, because parent display lists have already
replayed matrix transformations.

Test: added a new HWUI unit test that is passing only after this fix
Bug: 33103723
Change-Id: I7a47dbe879df6b9e5920a47c0e1168d9902a3e70
wui/pipeline/skia/ReorderBarrierDrawables.cpp
wui/tests/unit/RenderNodeDrawableTests.cpp
f9340ca491f1e5bd7ba2d937c8e7d1c42a4edb6f 04-Apr-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Fix HWUI/Skia Gradients to premultiply the colors prior to interpolation" into oc-dev
eabb5621dd67a159500c7a35eaa2f7999004c004 04-Apr-2017 Chris Craik <ccraik@google.com> Merge "Revert "Switch libplatformproto to sharedlib"" into oc-dev
669b15a93548b82135c73196665bcb7f03d87795 31-Mar-2017 Derek Sollenberger <djsollen@google.com> Fix HWUI/Skia Gradients to premultiply the colors prior to interpolation

This is fixed in Skia by passing the appropriate flag when the shader is
generated. The fix in HWUI is to reverse the premultiplication and
interpolation steps.

Test: bit CtsUiRenderingTestCases:.testclasses.ShaderTests
Bug: 34323783
Change-Id: I3417141949f62fcc696b6d8213a4b446d7d0cbf8
wui/GradientCache.cpp
wui/ProgramCache.cpp
wui/SkiaShader.cpp
817b4947397dc01d0c066ae847a3efd0e4a84a24 03-Apr-2017 Chris Craik <ccraik@google.com> Revert "Switch libplatformproto to sharedlib"

Bug:36847782

This reverts commit e5549d414c7231ee0037cf413dad17e28b8905ba.

Change-Id: I38f1c501b7e40be11ba5f0a7a50651e0c3e41fc5
wui/hwui_static_deps.mk
72c27609434dcc9f6db6292a114214b69a5c7bd7 30-Mar-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Switch libplatformproto to sharedlib" into oc-dev
33813bd4396f02409f4014e194da64b4170175d2 30-Mar-2017 Romain Guy <romainguy@google.com> Merge "Convert bitmaps to sRGB/scRGB when they have a color profile" into oc-dev
e5549d414c7231ee0037cf413dad17e28b8905ba 30-Mar-2017 John Reck <jreck@google.com> Switch libplatformproto to sharedlib

libplatformprotos is really really unhappy if it gets
loaded twice into the same process which trivially happens
if it's a static library. Switch it to a shared library
instead to fix this.

Change-Id: I90297d076d0739bab683fbd9607d7fc0884a002d
Fixes: 36272398
Test: Ran hwui_unit_test, didn't crash
wui/hwui_static_deps.mk
33af6c730f9f7fc51f04516c7a22cac82cb9823e 29-Mar-2017 Adam Lesinski <adamlesinski@google.com> AAPT2: Parse an ID encoded as a map

ID types should not be encoded as a map. AAPT and AAPT2 emit
IDs as boolean types.

Some apps exist that for some reason have their ID types encoded
as empty maps. This is the case only for the auto generated IDs
from enum values in <attr> tags.

Allow IDs as maps and ignore their content when processing an APK
for optimizing.

Also fixes an issue with expected size of the ResTable_package struct.

Bug: 35861796
Test: tested against the APK in b/35861796
Change-Id: I29a19cd9777bb10bed6766cd42e35e50e098797b
ndroidfw/LoadedArsc.cpp
caaaa66e57293e4a6f312649bf472eab84d5c7fe 27-Mar-2017 Romain Guy <romainguy@google.com> Convert bitmaps to sRGB/scRGB when they have a color profile

This change also fixes an issue with RGBA16F bitmaps when modulated
with a color (for instance by setting an alpha on the Paint object).

The color space conversion is currently done entirely in the shader,
by doing these operations in order:

1. Sample the texture
2. Un-premultiply alpha
3. Apply the EOTF
4. Multiply by the 3x3 color space matrix
5. Apply the OETF
6. Premultiply alpha

Optimizations:
- Steps 2 & 6 are skipped for opaque (common) bitmaps
- Step 3 is skipped when the color space's EOTF is close
to sRGB (Display P3 for instance). Instead, we use
a hardware sRGB fetch (when the GPU supports it)
- When step 3 is necessary, we use one of four standard
EOTF implementations, to save cycles when possible:
+ Linear (doesn't do anything)
+ Full parametric (ICC parametric curve type 4 as defined
in ICC.1:2004-10, section 10.15)
+ Limited parametric (ICC parametric curve type 3)
+ Gamma (ICC parametric curve type 0)

Color space conversion could be done using texture samplers
instead, for instance 3D LUTs, with or without transfer
functions baked in, or 1D LUTs for transfer functions. This
would result in dependent texture fetches which may or may
not be an advantage over an ALU based implementation. The
current solution favor the use of ALUs to save precious
bandwidth.

Test: CtsUiRenderingTests, CtsGraphicsTests
Bug: 32984164
Change-Id: I10bc3db515e13973b45220f129c66b23f0f7f8fe
wui/Android.mk
wui/GlLayer.h
wui/GlopBuilder.cpp
wui/Program.h
wui/ProgramCache.cpp
wui/SkiaShader.cpp
wui/Texture.cpp
wui/Texture.h
wui/hwui/Bitmap.cpp
wui/renderstate/RenderState.cpp
wui/utils/Color.cpp
wui/utils/Color.h
2c6ac0ead0b1e35333011e20bbc43d22d9906981 28-Mar-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Add missing assert that task isn't queued"
55bea5e30808856eb039d74e2fa7e06ee0dd05e7 28-Mar-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Add a few asserts for possible corruption cases"
1b7184f8d206505804042833a3825a3b8a9649dc 27-Mar-2017 John Reck <jreck@google.com> Add a few asserts for possible corruption cases

Bug: 36502346
Test: builds & boots
Change-Id: Id96a26a30e4a8c6f51a68bf07cfe6bd6d07c244e
wui/JankTracker.cpp
2f944482ece3aba2068ac71cd9c5067e4bc8424c 27-Mar-2017 John Reck <jreck@google.com> Add missing assert that task isn't queued

Probably won't fix anything but this assert is in queue()
but not queueAtFront() and inserting a task twice is Really Bad.

Bug: 36139852
Test: ¯\_(ツ)_/¯
Change-Id: Ida0f829eecfdd46c17c36b816528c49d12b7cf29
wui/renderthread/RenderThread.cpp
81ff6ee47a9373430e4c8f30bbe5129ca48643bd 27-Mar-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Register functor draw correctly"
48f9bb6254324006a4595f4576c28498a4aaf5d2 25-Mar-2017 Chris Craik <ccraik@google.com> Register functor draw correctly

Bug: 36602041
Test: existing tests still pass

Change-Id: I9f385da89e9e49e562031578a02f13a68697e0df
wui/BakedOpRenderer.cpp
bbf038bc5ee8adac6c52fd2fd4c66bbdaba89a43 24-Mar-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Remove "Allow persistent changes to the vendor overlay theme""
3c01a07fff19c5166274de5960935875ea89e455 23-Mar-2017 Robert Phillips <robertphillips@google.com> Update RenderNodeDrawableTests to new onNewImageSnapshot API
Test: does it compiles

Change-Id: I55e3d7e2e59bfde88357fd455fe567d07c8a26b7
wui/tests/unit/RenderNodeDrawableTests.cpp
cc5a731fd725a4687625c93cf8490b63ce99884f 23-Mar-2017 Jason Monk <jmonk@google.com> Remove "Allow persistent changes to the vendor overlay theme"

This reverts commit 2dc804be11444565e3d1d151c2a693db3ade94c0.
It also removes the related calls from UiModeManager.

Fixes: 32721178
Test: make & flash
Change-Id: Id371bccec611155cc6910e46b3277c3d27fc1c79
ndroidfw/AssetManager.cpp
ndroidfw/include/androidfw/AssetManager.h
442c8226aafdad13d535cb831639253603caa796 22-Mar-2017 Yunlian Jiang <yunlian@google.com> Merge "Fix warning: Potential leak of memory pointed to by 'set'" am: 58ba53bd53 am: 0889a8a070
am: 2b53748a21

Change-Id: Icec70d3e3efef0eea9c117911821dfd05bcb2ced
0889a8a070a3efca70b0284b8df7145e82c7cc4f 22-Mar-2017 Yunlian Jiang <yunlian@google.com> Merge "Fix warning: Potential leak of memory pointed to by 'set'"
am: 58ba53bd53

Change-Id: I7186dc35fb7f4a3c226e35447ce9c748164e7bf8
58ba53bd53d08c8d23f8fa338aa4c4bb6bc86c91 22-Mar-2017 Treehugger Robot <treehugger-gerrit@google.com> Merge "Fix warning: Potential leak of memory pointed to by 'set'"
d9770c3c6c5b6a4fc7fa8774cf041e1ed1623119 20-Mar-2017 Robert Phillips <robertphillips@google.com> Update SkiaPipelineTests.cpp to use new onNewImageSnapshot signature
Test: code compiles & test continues to succeed

https://skia-review.googlesource.com/c/9882/ (Remove budgeted parameter
from SkSurface::makeImageSnapshot (take 2)) seems to have stuck so this
should be safe to land.

Change-Id: I9e6fdcc8debe7964e9522f7acd8829b54bc90986
wui/tests/unit/SkiaPipelineTests.cpp
2c64d5739b444b8ffe6283d8c703ad920fad7a95 21-Mar-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Modify VectorDrawable to scale path through canvas matrix"
1f4497c9c0cc0524765a0a48bb87040f8e15506c 21-Mar-2017 Adam Lesinski <adamlesinski@google.com> Merge changes I8c710af6,Iedf30212

* changes:
libandroidfw: Fix mass logspam of ResourceTypes warnings
NativeActivity JNI: Retain VM reference to AssetManager
ed69ce84bdfa5ba82008a9b66485ef71c953657a 20-Mar-2017 Adam Lesinski <adamlesinski@google.com> libandroidfw: Fix mass logspam of ResourceTypes warnings

An overlay was incorrectly leaking its own resources into the
framework resource package, which caused warnings for every app
that tried to access framework resources (all of them).

This change skips including any resources that are not overlaying
anything (not present in IDMAP).

Bug: 36256974
Test: make libandroidfw_tests
Change-Id: I8c710af6849bb848938825aacca02799ee96c003
ndroidfw/.clang-format
ndroidfw/ResourceTypes.cpp
ndroidfw/tests/Idmap_test.cpp
ndroidfw/tests/data/overlay/overlay.apk
ndroidfw/tests/data/overlay/res/values/values.xml
da3ab1a2dd2e3fa84cef277d8c7ff9e43e15ba23 20-Mar-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "use SkVertices::Builder in drawBitmapLattice override new virtual onDrawVerticesObject"
cc29a5dde1ef0a3cf0fcec10eb9d37d9e8fa3afb 15-Mar-2017 Stan Iliev <stani@google.com> Modify VectorDrawable to scale path through canvas matrix

Apply the path matrix to the canvas instead of creating a new path.
Delete logic that scales the stroke, because this is done through
the matrix as well. Merge/delete some functions.

Bug: 36392701
Test: CTS graphics tests pass with minor changes in 6 golden images.
Quick settings and settings app drawables are OK. Vector icon app
draws identical paths.
Change-Id: If623bc0a535fad95a2839f79bd997c016bcd9d4d
wui/VectorDrawable.cpp
wui/VectorDrawable.h
wui/tests/unit/VectorDrawableTests.cpp
95502300efffd29686f2c9bc4cc1b12edd323a1c 20-Mar-2017 Ben Wagner <bungeman@google.com> Merge "Use access directly instead of sk_exists."
871cd2dd6074544bd41a84ff38255d81a392546a 17-Mar-2017 Mike Reed <reed@google.com> use SkVertices::Builder in drawBitmapLattice
override new virtual onDrawVerticesObject

Test: CtsGraphicsTestCases

Change-Id: I38e3ee0aa2a1ee9c11474c2c5d648ee5fca20d78
wui/SkiaCanvas.cpp
wui/SkiaCanvasProxy.cpp
wui/SkiaCanvasProxy.h
wui/tests/unit/FatalTestCanvas.h
10eb1455b9047084261442392f00235ec023eec2 18-Mar-2017 Adam Lesinski <adamlesinski@google.com> Merge changes from topic 'configForSplit'

* changes:
libandroidfw: Search all packages for an identifier
AAPT2: Finish support for feature splits
Add support for configForSplit
3aeda5c5c47ae29197e8b8b665749cb6cb449e19 17-Mar-2017 Ben Wagner <bungeman@google.com> Use access directly instead of sk_exists.

Skia would like to move SkOSFile and make it private spi. This appears
to be the only place SkOSFile is used outside Skia, and using access
here directly is more apropriate.

Test: Simple inline refactor, built and ran. Changes test code only.
Change-Id: Ib76c180bb3bccc54c20dcadc842837e3e8270929
wui/pipeline/skia/SkiaPipeline.cpp
08153e655afbc5ba010f04077fa282e23abcd5fd 17-Mar-2017 Derek Sollenberger <djsollen@google.com> Merge "Remove usage of deprecated makeImageSnapshot parameter Test: Does it compile?"
0e25d9ae776053d9186200f2f698faea45313cb6 11-Mar-2017 Adam Lesinski <adamlesinski@google.com> libandroidfw: Search all packages for an identifier

In order to allow multiple packages with the same package name, but
different package ID, we need to keep searching packages until the
resource is found.

Bug: 30999713
Test: make libandroidfw_tests
Change-Id: If4540e12731ca18a18e9e550a9bf248606a586c5
ndroidfw/ResourceTypes.cpp
ndroidfw/tests/data/basic/R.h
ndroidfw/tests/data/feature/AndroidManifest.xml
ndroidfw/tests/data/feature/build
ndroidfw/tests/data/feature/feature.apk
ndroidfw/tests/data/feature/res/values/values.xml
f596ba9375d1c5b70df7d6b8d3ac8a8b1a6fceaf 16-Mar-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Bowing my head in shame, going back to gamma interpolated gradients"
6183c97e5f317ad52ad16fe50e40129e2c7b2150 16-Mar-2017 Romain Guy <romainguy@google.com> Bowing my head in shame, going back to gamma interpolated gradients

Frankengradients (linearly interpolated RGB, gamma interpolated alpha) look
fantastic but unfortunately create sligh compatibility issues. For instance,
a gradient from 0xffea1030 to 0x00ea1030 (opaque to alpha, with a single
color) blended on top of 0xff101010 would not look the same as a single
opaque gradient from 0xffea1030 to 0xff101010. The difference is hardly
noticeable on simple gradients but it could cause confusion amongst app
developers. Their life is hard enough as it is, let's be good to them.

My crusade against the gamma world is not over and one day I shall
be the victor. I am patience.

Bug: 35485208
Test: UiRendering.ShaderTests, UiRendering.GradientTests, manual testing
Change-Id: I8204e60cdf0a6b12dfe22638d30ca9622687000e
wui/FloatColor.h
wui/GradientCache.cpp
wui/ProgramCache.cpp
wui/SkiaShader.cpp
cd2eb91c40e71b278585e1fb099db614dab94655 16-Mar-2017 Robert Phillips <robertphillips@google.com> Remove usage of deprecated makeImageSnapshot parameter
Test: Does it compile?

Change-Id: Ia51ad621daa3409f65b2f3e4d5691891271918a2
wui/VkLayer.cpp
9e8f05f77d53020fe1c506778476e8039cd603c8 16-Mar-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Improve dithering of alpha gradients"
0d86d7ebc2b83f0bdd28bb99e57289215947f2e0 16-Mar-2017 Romain Guy <romainguy@google.com> Improve dithering of alpha gradients

Bug: 32984164
Test: CtsUiRenderingTestCases
Change-Id: Ic728725845befd3c52cc7b043d5c6f8e33fcfcd2
wui/ProgramCache.cpp
26fddcd74252bdda95dd7c3f819353e79c622012 15-Mar-2017 Mathias Agopian <mathias@google.com> Get rid of LinearTransform

A copy of LinearTransform is moved here.

This reverts commit b80f086f69a4bc2e51d1f94ae58d7ba6b20514c4.

Test: compile/run
Bug: treble cleanup
Change-Id: I435cac1f57ded10d434e4354985ad1a1bd3841f3
ommon_time/Android.mk
ommon_time/LinearTransform.cpp
ommon_time/LinearTransform.h
ommon_time/clock_recovery.h
ommon_time/common_clock.cpp
ommon_time/common_clock.h
402a384ac83338b5ec4c04dde3c9ba969de51c0f 15-Mar-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Pass FontCollection to doLayout's argument instead of ctor"
51218e80f70601193e43d90aaf1599a7f6d11062 14-Mar-2017 Seigo Nonaka <nona@google.com> Pass FontCollection to doLayout's argument instead of ctor

Test: minikin_unit_tests
Test: minikin_stress_tests
Bug: 36223724
Change-Id: I55aca62eab4df0c138fec764d616984b50bd73f1
wui/hwui/MinikinUtils.cpp
95e8afbb5e1ff795f7601eea916b299943f4c429 15-Mar-2017 Chris Craik <ccraik@google.com> Merge "Revert "Change behavior of setBitmap to cleanly reset the canvas - identity matrix - no save stack - wide-open clip""
4f641d1e4586b027969052cc0ad6b65c1158e72e 14-Mar-2017 Tony Mantler <nicoya@google.com> Revert "Change behavior of setBitmap to cleanly reset the canvas - identity matrix - no save stack - wide-open clip"

https://buganizer.corp.google.com/issues/36218535

This reverts commit 269f989fbf198b17994baf9141c4640aeaf34b4e.

Change-Id: Ib2473e4fce90c9abaa39eea2b77082ae26197b80
wui/SkiaCanvas.cpp
b73ea72723aba116f0ad1701f755ab869c2b0aad 14-Mar-2017 Ian Pedowitz <ijpedowitz@google.com> Merge "Revert "remove LinearTransform from libutils""
b80f086f69a4bc2e51d1f94ae58d7ba6b20514c4 14-Mar-2017 Ian Pedowitz <ijpedowitz@google.com> Revert "remove LinearTransform from libutils"

This reverts commit d4d6167f614a9001d9827a8634a26b5e9445a22c.

Bug: 36206160
Test: Fugu compiles, didn't before the revert
Change-Id: I2b0d3a05546ee2605555a9aa7ae028f2baeaf439
ommon_time/Android.mk
ommon_time/LinearTransform.cpp
ommon_time/LinearTransform.h
ommon_time/clock_recovery.h
ommon_time/common_clock.cpp
ommon_time/common_clock.h
a813413a6e4bc4d0995f994f770bb909369684c3 13-Mar-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "remove LinearTransform from libutils"
d4d6167f614a9001d9827a8634a26b5e9445a22c 13-Mar-2017 Mathias Agopian <mathias@google.com> remove LinearTransform from libutils

this was the only client.

Test: compile
Bug: cleanup for treble
Change-Id: Ibe2308d5fffb18c398db47e27d0123d629f675fe
ommon_time/Android.mk
ommon_time/LinearTransform.cpp
ommon_time/LinearTransform.h
ommon_time/clock_recovery.h
ommon_time/common_clock.cpp
ommon_time/common_clock.h
9b0a5d191960668e6884b85588f4d9f31c662153 13-Mar-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "use _deprecated suffix for deprecated clipops"
a0a74d5f8ee1dbd04772ffb1775d045ce6b5934b 13-Mar-2017 Mike Reed <reed@google.com> use _deprecated suffix for deprecated clipops

Allows skia to remove legacy flag for older names
- SK_SUPPORT_EXOTIC_CLIPOPS
- SK_SUPPORT_LEGACY_CLIPOP_EXOTIC_NAMES

Test: CtsGraphicsTestCases

Change-Id: I78478d94d059641a9381579cae6d28f9f0685ad1
wui/tests/unit/CanvasStateTests.cpp
wui/tests/unit/FrameBuilderTests.cpp
wui/tests/unit/RecordingCanvasTests.cpp
wui/tests/unit/SkiaPipelineTests.cpp
wui/utils/TestWindowContext.cpp
1965d2898c25e8688dd9d412da08038bb1ebc0ea 13-Mar-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Change behavior of setBitmap to cleanly reset the canvas - identity matrix - no save stack - wide-open clip"
269f989fbf198b17994baf9141c4640aeaf34b4e 01-Mar-2017 Mike Reed <reed@google.com> Change behavior of setBitmap to cleanly reset the canvas
- identity matrix
- no save stack
- wide-open clip

Behavior around the new bitmap is the same.

Tests : CtsGraphicsTestCases

Change-Id: Ieaf8c2a1b96262ed33940dd852a86089eb93efdb
wui/SkiaCanvas.cpp
7d73fc2303805a207e67eeee750c961618fb0e6b 29-Sep-2016 Stan Iliev <stani@google.com> Add a new macrobench to test layer resize

Create a new HWUI macrobench to test hardware layer resize code path.

Test: Executed the new test on bullhead device with "adb shell
/data/benchmarktest64/hwuimacro hwlayersize --onscreen --wait-for-gpu -c
1000".

Change-Id: I9ed411d76ac3d51339a69add8ab1843c3256994a
wui/tests/common/scenes/HwLayerSizeAnimation.cpp
cfdfd997bd3aa8e32d9d1eefddb1d5921c1db5ee 10-Mar-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Modify SurfaceView to use SurfaceFlinger child surfaces."
0c1563d3dd35969e293ebde116c74b8938046758 09-Mar-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Prematurely optimizing a Path."
d7f13f84f8aefcad10ccb83aad794f1864623642 09-Mar-2017 Derek Sollenberger <djsollen@google.com> Prematurely optimizing a Path.

If the path had an inverse fill type we were incorrectly
converting ovals and roundRects to their primitive form
without checking to ensure the path was not inverse fill.

This CL removes these optimizations as they happen internally
within Skia.

Bug: 34245907
Test: verified broken app is fixed and that skia has existing tests
Change-Id: I8c1ff6522ae19fc6c21520adc7e9bc2473a8a4ad
wui/SkiaCanvas.cpp
d5c7dd6da810a6b89151b337bea79fd817e6b72a 08-Mar-2017 Robert Carr <racarr@google.com> Modify SurfaceView to use SurfaceFlinger child surfaces.

Here we have SurfaceView bypass the WindowManager and speak
directly to SurfaceFlinger using child surfaces. We also
implement some logic in the WM to handle child surfaces
in various Surface replacement scenarios.

For those following along in the revert Saga, this
also includes the follow up CLs to the original CL.
- Surface inset calculation
- Animation fixes.

The error causing the revert was an incorrect JNI signature
around deferTransactionUntilSurface. I've noted it inline.

Bug: 28858420
Bug: 31518219
Bug: 34888808
Bug: 35588318
Bug: 35396882
Test: Existing tests still pass (except for the ones that don't and will be deleted).
Change-Id: Ie56b6f7ab16f32d7fc459b8eba26594337ad55de
wui/TreeInfo.h
2bd7d98fe844ebd6632a55eee9abf6d18651caf5 28-Feb-2017 Mathias Agopian <mathias@google.com> fallout from getting rid of IGraphicBufferAlloc

Test: compiled & run
Bug: cleanup
Change-Id: I1590105d3abef985c2ae7c1a03cdf5fd2ec4bef9
wui/hwui/Bitmap.cpp
wui/tests/common/scenes/HwBitmapInCompositeShader.cpp
07be4d67813bdda4479e0e5a482f76b3f52160e7 08-Mar-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Revert "Modify SurfaceView to use SurfaceFlinger child surfaces.""
5aec7b90310ba05f9816fd89030ba41ce48c568e 08-Mar-2017 Wonsik Kim <wonsik@google.com> Revert "Modify SurfaceView to use SurfaceFlinger child surfaces."

This reverts commit cd4aeef88052571365d4e193a2c41e2e6d145491.

Bug: 36027342
Bug: 36015884
Change-Id: Ifd5b69caf64d65a8cd6570b7fe1fb6abe90e30b8
wui/TreeInfo.h
f4f093c52c295c97f14eb6b84e45af326c01d7de 08-Mar-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Reinstate codes to enable RRO on system server"
7ef25b78941ded7e1d757dc42897529a02fa10a3 07-Mar-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Add ColorSpace information on Bitmap"
3cad2c33ee161f84f44a6d796fba0292ef47931e 07-Mar-2017 Chris Craik <ccraik@google.com> Merge "Workaround arc textures drawing outside of bounds"
efb4b06493fe7b1604c762a448b13c7af2845a8d 27-Feb-2017 Romain Guy <romainguy@google.com> Add ColorSpace information on Bitmap

This is the first step toward interpreting color spaces at render time.

Bug: 32984164
Test: BitmapColorSpaceTest in CtsGraphicsTestCases

Change-Id: I0164a18f1ed74a745874fe5229168042afe27a04
wui/Caches.h
wui/Extensions.cpp
wui/Extensions.h
wui/GradientCache.cpp
wui/GradientCache.h
wui/ProgramCache.cpp
wui/ProgramCache.h
wui/Texture.cpp
wui/Texture.h
wui/TextureCache.h
wui/hwui/Bitmap.cpp
wui/renderstate/RenderState.cpp
wui/utils/Color.h
49b403dc9c47ada51c8e5b883347682a868515f8 06-Mar-2017 Chris Craik <ccraik@google.com> Workaround arc textures drawing outside of bounds

Fixes: 34077513
Test: hwui unit tests passing

This fixes an issue where drawArc operations would cause artifacts by
drawing outside of the clip / screen damage area. We now more
conservatively clip drawArc operations specifically, as they tend to
draw into the outer parts of their path textures more than other
operations.

A more long term fix would involve alignment between draw operation
sizing (in terms of what's resolved in a BakedOpState), and
PathTexture sizing (which currently conservatively expands beyond
stroked op bounds).

Change-Id: I5aff39cc04382323b457b159974032f5f371251a
wui/BakedOpState.cpp
wui/BakedOpState.h
wui/FrameBuilder.cpp
wui/FrameBuilder.h
wui/tests/unit/BakedOpStateTests.cpp
wui/tests/unit/FrameBuilderTests.cpp
4d7094dc998b4765cb73c6ec26e61a6cc0df030f 06-Mar-2017 Tom Cherry <tomcherry@google.com> Merge "Check for spurious wake ups" am: 3a3cd0a27f am: c2dcebe6e6
am: 1344c034c5

Change-Id: I8ffc749ab6fbd825ce238fff4ba1d12609585c04
df2870df9ae6e5dbb7acfe3d5fd840a3317b0e66 06-Mar-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "AAPT2: Fix parsing ResTable_type"
c2dcebe6e631f499d75c57bfe24eccbb0129c863 06-Mar-2017 Tom Cherry <tomcherry@google.com> Merge "Check for spurious wake ups"
am: 3a3cd0a27f

Change-Id: Ia445070278f5a80c85b48e06ddf614d462db45af
b85f02e9add59192b4d45ec3b52f9c01747edfc2 06-Mar-2017 Roozbeh Pournader <roozbeh@google.com> Merge "Frameworks support for hyphenation for various complex cases"
46c6f4c5ea7846fee4e6ef40c035ef2bee1adcbb 21-Feb-2017 Roozbeh Pournader <roozbeh@google.com> Frameworks support for hyphenation for various complex cases

This adds better support for Arabic script languages, Armenian,
Catalan, Hebrew, Kannada, Malayalam, Polish, Tamil, and Telugu by
adding various hyphenation types and edits appropriate for the
locales.

The actual implementations are in Minikin. This CL takes care of the
changes needed in frameworks, to support different end-of-line and
start-of-line hyphen edits.

Two bugs in TextLine.java are also fixed:

1. Where hyphen edits on non-spanned texts were not eliminated in
handleRun() when they should have. This had manifested itself in
double hyphenation in some bidi paragraphs.

2. Some no op assignments and comparions around the change for the
above bug are removed.

Test: thorough manual testing for various cases
Bug: 19756624
Bug: 19950445
Bug: 19955011
Bug: 25623243
Bug: 26154469
Bug: 26154471
Bug: 33387871
Bug: 33560754
Bug: 33752592
Bug: 33754204
Change-Id: I48c047d1f6a75c39a78a6ea38a0a3282f63326ec
wui/Android.mk
f1e54c9a1cb294096dcf361eb9511a4baa2f51fc 03-Mar-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Modify SurfaceView to use SurfaceFlinger child surfaces."
136fd0764faf7a588b4a1b479d7a8cc6fe18fcc6 03-Mar-2017 Adam Lesinski <adamlesinski@google.com> AAPT2: Fix parsing ResTable_type

ResTable_type's size changes due to it containing
ResTable_config. Make sure we check for the minimum size
required to read it.

Bug: 35861796
Test: Manual (don't have an integration test harness setup yet)
Change-Id: Ifb0cd1d732625f59835c8ed0449adb78129636de
ndroidfw/LoadedArsc.cpp
ndroidfw/include/androidfw/Chunk.h
ndroidfw/include/androidfw/ResourceTypes.h
cd4aeef88052571365d4e193a2c41e2e6d145491 03-Mar-2017 Robert Carr <racarr@google.com> Modify SurfaceView to use SurfaceFlinger child surfaces.

Here we have SurfaceView bypass the WindowManager and speak
directly to SurfaceFlinger using child surfaces. We also
implement some logic in the WM to handle child surfaces
in various Surface replacement scenarios.

For those following along in the revert Saga, this
also includes the follow up CLs to the original CL.
- Surface inset calculation
- Animation fixes.

The error causing revert was a deferTransactionUntil(-1)...-1
cast to uint, defer transaction until MAX_UINT.

Bug: 28858420
Bug: 31518219
Bug: 34888808
Bug: 35588318
Bug: 35396882
Test: Existing tests still pass (except for the ones that don't and will be deleted).
Change-Id: Ib37236950a1dd3c4f9f4b58fd41ef9003c0557ef
wui/TreeInfo.h
792fb3252f6460acfd82c4e5d7536ca6b787a0e0 03-Mar-2017 Derek Sollenberger <djsollen@google.com> Use SkPaint.nothingToDraw instead of PaintUtils helper.

The PaintUtils helper is now shared between all pipelines and was
missing a quick reject test for drawLoopers which are used in
view.setShadowLayer and supported in the Skia pipelines.

Bug: 35809097
Test: added hwui unit test and verified in DocumentsUI app
Change-Id: I3c4a988f1c42b7f421f78ac3659af1daee910ea2
wui/RecordingCanvas.cpp
wui/SkiaCanvas.cpp
wui/tests/unit/SkiaCanvasTests.cpp
wui/utils/PaintUtils.h
115d2dbf9313a02be01cbef0df966741186ed79b 03-Mar-2017 Rob Carr <racarr@google.com> Merge "Revert "SurfaceView: Include surfaceInsets in position calculation""
8009012644c56eff42408731ea60467565bfef80 03-Mar-2017 Rob Carr <racarr@google.com> Revert "SurfaceView: Include surfaceInsets in position calculation"

This reverts commit 8c31e1db2a2cea4278503d6b9b27bca87946ef36.

Change-Id: Id25f493ca272878c2105f9cd302db1e05284998d
wui/TreeInfo.h
4f357c081260c5bb36498169eb698adf7089899c 03-Mar-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Fix potential use-after-free in LayerUpdateQueue"
e1c54d53f1fcb04337e6fc5654e24fddb52edc02 02-Mar-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Update SkiaDisplayList to use the modified SkLiteDL"
7de2f9c73fbe93bfb7dff3c046cf7a3137599f6c 01-Mar-2017 Jaekyun Seok <jaekyun@google.com> Reinstate codes to enable RRO on system server

Test: building succeeded and tested with sailfish
Bug: 35742444
Change-Id: I99d0f1d097525d3eb46255d6cf823f6ae2a02385
ndroidfw/AssetManager.cpp
ndroidfw/include/androidfw/AssetManager.h
fc29f7acd1352efa97269b5f3856eb879d5cfd53 02-Mar-2017 John Reck <jreck@google.com> Fix potential use-after-free in LayerUpdateQueue

Change-Id: I090af2191576175b165a9db574a80123c16f0778
Fixes: 26548204
Test: Builds & hwui unit tests pass
wui/FrameBuilder.cpp
wui/LayerUpdateQueue.h
wui/pipeline/skia/SkiaPipeline.cpp
wui/tests/unit/LayerUpdateQueueTests.cpp
wui/tests/unit/RenderNodeTests.cpp
ea1fe9b9d6ff9f0a543489979a0a909acc9ea564 01-Mar-2017 Derek Sollenberger <djsollen@google.com> Update SkiaDisplayList to use the modified SkLiteDL

SkLiteDL is no longer refcounted or a subclass of SkDrawable.

Test: on device testing in SkiaGL mode
Change-Id: I9ad53d764a26ab382d80d54908325962f2075802
wui/pipeline/skia/RenderNodeDrawable.cpp
wui/pipeline/skia/SkiaDisplayList.cpp
wui/pipeline/skia/SkiaDisplayList.h
wui/pipeline/skia/SkiaRecordingCanvas.cpp
wui/tests/unit/RenderNodeDrawableTests.cpp
wui/tests/unit/SkiaDisplayListTests.cpp
8c31e1db2a2cea4278503d6b9b27bca87946ef36 01-Mar-2017 Robert Carr <racarr@google.com> SurfaceView: Include surfaceInsets in position calculation

Previously the WM was taking care of this.

Fixes: 35588318
Fixes: 34888808
Test: Manual
Change-Id: I8b48d89f830bbef43b0132d191b29552e9c35702
wui/TreeInfo.h
298a146754e35cbc650aa991ebff1a41eefdbe80 28-Feb-2017 Tom Cherry <tomcherry@google.com> Check for spurious wake ups

Condition::wait() can spuriously wake up, so we must guard it with
another check to ensure that a given wake was truly due to having
been signaled.

Bug: 34592766
Test: Boot bullhead
Change-Id: Iaa5a0ca6186aea50c51e2c402ef95d7ba861be92
wui/renderthread/RenderProxy.cpp
wui/renderthread/RenderTask.cpp
wui/renderthread/RenderTask.h
wui/renderthread/RenderThread.cpp
894b5b9998a9c8417cd7c9cbd4bdf03074475160 28-Feb-2017 Chris Craik <ccraik@google.com> Merge "Revert "deprecate replayClips""
95c1a069f24e630946d044f58e95db9e691f2d84 28-Feb-2017 Derek Sollenberger <djsollen@google.com> Revert "deprecate replayClips"

This reverts commit 82d3b17f6dff9372ec531d90b5d9180671e0ee2c.

Bug: 35831173
Change-Id: I467e7204a5e4bcbab1c12d3fcf52e52188830ed5
wui/SkiaCanvas.cpp
c33b943f25e7038e15d8bb095a66a653ef5f5e7b 27-Feb-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "deprecate replayClips"
194f375979c6d92bf8ce54d21a342acccbfc7530 27-Feb-2017 Seigo Nonaka <nona@google.com> Merge "Follow Minikin's signature changes."
c7064146f959caec058980ced144942c8044a169 10-Feb-2017 Seigo Nonaka <nona@google.com> Follow Minikin's signature changes.

Minikin now uses shared_ptr instead of MinikinRefCounted.

Bug: 28119474
Test: manually tested
Test: hwui_unit_tests passed.
Change-Id: Ie0564851a8a798af112679e15f7a07db000a977e
wui/hwui/Canvas.cpp
wui/hwui/MinikinSkia.cpp
wui/hwui/MinikinSkia.h
wui/hwui/MinikinUtils.cpp
wui/hwui/MinikinUtils.h
wui/hwui/Typeface.cpp
wui/hwui/Typeface.h
82d3b17f6dff9372ec531d90b5d9180671e0ee2c 24-Feb-2017 Mike Reed <reed@google.com> deprecate replayClips

replayClips is deprecated, just get the rgn instead for setBitmap

Test: ran Canvas CTS
Change-Id: Id0f0da6602d1488bb4071885704fa6e3b449ab85
wui/SkiaCanvas.cpp
eda4756502424fe86717205246034201f0ce805d 24-Feb-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "fallout of libandroid.so split"
0c6d24f736c1b7d5e8b3c698d2e25d90203431f2 24-Feb-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Log rendering pipeline when initializing"
bd9e74cae0f3de1039c9ddcee3caa0849b604c7c 24-Feb-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "OMS: integrate OverlayManagerService into framework"
6e66b39e4a5903f4ff17a1418d8af2779ded70b7 21-Feb-2017 Chris Craik <ccraik@google.com> Log rendering pipeline when initializing

Test: manual, boots

Change-Id: I6e544510053ecf2b397ac998bcc7be9c00295a7d
wui/Properties.cpp
fee4a985fd599e5bbfb0eb2d5d75af18ed8ae86e 10-Feb-2017 Mathias Agopian <mathias@google.com> fallout of libandroid.so split

Test: compiled & booted
Bug: 35164655
Change-Id: I786167a21453e17493969cdacfc9d31bdb781d98
wui/pipeline/skia/SkiaOpenGLPipeline.cpp
wui/pipeline/skia/SkiaVulkanPipeline.cpp
wui/renderthread/OpenGLPipeline.cpp
nput/Android.mk
2e0d0f311100d8e0bb40d7d60b8498237f011f0c 02-Jun-2016 Mårten Kongstad <marten.kongstad@sonymobile.com> OMS: integrate OverlayManagerService into framework

Hand over ownership of overlays to OverlayManagerService.

Changes to a package's overlays are propagated using the activity life
cycle. Affected activities will be recreated as needed. This provides a
well-defined point to modify an application's assets while the
application is paused.

Consolidate how overlays targeting the system and overlays targeting
regular applications are handled. Previously, system overlays were
handled as a special case. Now, everything is handled identically. As a
side effect, the call to idmap --scan during Zygote boot has become
obsolete and is removed.

Information on what overlays to use is recorded in
ApplicationInfo.resourceDirs. The PackageManagerService is responsible
for the creation of ApplicationInfo objects. The OverlayManagerService
is responsible for informing the PackageManagerService in advance about
what resourceDirs to use.

When launching an application, the ApplicationInfo is already populated
with up-to-date information about overlays.

When enabling or disabling an overlay for a running application, the
OverlayManagerService first notifies the PackageManagerService about the
updated resourceDirs. It then tells the ActivityManagerService to push
the new ApplicationInfo object to the application's ActivityThread.
Finally the application requests its ResourcesManager to create new
ResourcesImpl objects based on the updated paths.

Change-Id: Ib8afa05ccab4e2db558f89ce4423983c086bb61a
Co-authored-by: Martin Wallgren <martin.wallgren@sonymobile.com>
Signed-off-by: Zoran Jovanovic <zoran.jovanovic@sonymobile.com>
Bug: 31052947
Test: run tests from 'OMS: tests for OverlayManagerService'
ndroidfw/AssetManager.cpp
ndroidfw/include/androidfw/AssetManager.h
dfe0647f6c7a80242f1646541a6f3460e0ef3c76 23-Feb-2017 Derek Sollenberger <djsollen@google.com> Fix unit test that failed due to incorrect refactor.

Test: hwui unit tests
Change-Id: I88b962718086ff1ca3df1999b2040fb1007b6f33
wui/tests/unit/RecordingCanvasTests.cpp
f77ca0872102116f58693d26703af8279573d014 23-Feb-2017 Derek Sollenberger <djsollen@google.com> Fix HWUI tests to use android-only SkPaint flags

Test: compile only
Change-Id: Ia3a5710d4ae13d68e5b2655a8b135dae8ffeb513
wui/tests/unit/FrameBuilderTests.cpp
wui/tests/unit/RecordingCanvasTests.cpp
ab61fb8b5f3e7fc807bd335fcfe088d2d0fcb13a 23-Feb-2017 Derek Sollenberger <djsollen@google.com> Update framework to use new method for disabling DF path rendering.

Test: compile only
Change-Id: Ifa690a0af01cb6b07c4fd303302cb6a557e8dfde
wui/renderthread/EglManager.cpp
df0824ad4cd31a3e96653fe82ce969b08cd00be2 23-Feb-2017 Guang Zhu <guangzhu@google.com> Merge "Revert "OMS: integrate OverlayManagerService into framework""
95459806920dec34abb3214ab6e1a9b9213a2a61 23-Feb-2017 Guang Zhu <guangzhu@google.com> Revert "OMS: integrate OverlayManagerService into framework"

Bug: 31052947
Bug: 35697944

This reverts commit 21a3d1ad686dee97b9cf0ed80389ee2ab0d48013.

Change-Id: I2d86931020301524c26cf8c8e80d557c97fdd6c3
ndroidfw/AssetManager.cpp
ndroidfw/include/androidfw/AssetManager.h
0f09817859b19054aee3feded1dbf9757a5ec131 23-Feb-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "OMS: integrate OverlayManagerService into framework"
b216c21acdbcb0e8a2b970d6ff9f72e9bf185623 22-Feb-2017 Mike Reed <reed@google.com> underline is now only tracked by android

Change-Id: I189c57dd47ad413b8964d7e5805dfd6d4af11982
wui/hwui/Canvas.cpp
a231eb1410ed2ac339277d49cd06c93bcebce0aa 22-Feb-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Implement getAxes() method."
21a3d1ad686dee97b9cf0ed80389ee2ab0d48013 02-Jun-2016 Mårten Kongstad <marten.kongstad@sonymobile.com> OMS: integrate OverlayManagerService into framework

Hand over ownership of overlays to OverlayManagerService.

Changes to a package's overlays are propagated using the activity life
cycle. Affected activities will be recreated as needed. This provides a
well-defined point to modify an application's assets while the
application is paused.

Consolidate how overlays targeting the system and overlays targeting
regular applications are handled. Previously, system overlays were
handled as a special case. Now, everything is handled identically. As a
side effect, the call to idmap --scan during Zygote boot has become
obsolete and is removed.

Information on what overlays to use is recorded in
ApplicationInfo.resourceDirs. The PackageManagerService is responsible
for the creation of ApplicationInfo objects. The OverlayManagerService
is responsible for informing the PackageManagerService in advance about
what resourceDirs to use.

When launching an application, the ApplicationInfo is already populated
with up-to-date information about overlays.

When enabling or disabling an overlay for a running application, the
OverlayManagerService first notifies the PackageManagerService about the
updated resourceDirs. It then tells the ActivityManagerService to push
the new ApplicationInfo object to the application's ActivityThread.
Finally the application requests its ResourcesManager to create new
ResourcesImpl objects based on the updated paths.

Co-authored-by: Martin Wallgren <martin.wallgren@sonymobile.com>
Signed-off-by: Zoran Jovanovic <zoran.jovanovic@sonymobile.com>
Bug: 31052947
Test: run tests from 'OMS: tests for OverlayManagerService'
Change-Id: Idc96dae6fc075d5373aa055bbf50e919136d7353
ndroidfw/AssetManager.cpp
ndroidfw/include/androidfw/AssetManager.h
21edf1976cabe05b419839785e3fc37e992c4e81 21-Feb-2017 Fyodor Kupolov <fkupolov@google.com> Merge "Check bounds in offsetToPtr"
f9bd2944694539f1dce74d420156cc50bbb4af14 21-Feb-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Overhaul GraphicsStatsService"
df1742ed47da1e9b61afeae16fa448d5302a8aa0 20-Jan-2017 John Reck <jreck@google.com> Overhaul GraphicsStatsService

* LRU cache of recently-used is dead, replaced
disk storage
* ASHMEM size is read from native by the system service,
no longer requires keeping a sizeof() in sync with a
constant in Java
* Supports dumping in proto format by passing --proto
* Rotates logs on a daily basis
* Keeps a history of the most recent 3 days

Bug: 33705836
Test: Manual. Verified log rotating works by setting it up to
rotate every minute instead of day. Confirmed /data/system/graphicsstats
only has the most recent 3 entries after several minutes

Change-Id: Ib84bafb26c58701cc86f123236de4fff01aaa4aa
wui/Android.mk
wui/JankTracker.cpp
wui/JankTracker.h
wui/hwui_static_deps.mk
wui/renderthread/CanvasContext.cpp
wui/renderthread/CanvasContext.h
wui/renderthread/RenderProxy.cpp
wui/renderthread/RenderProxy.h
wui/renderthread/RenderThread.h
wui/service/GraphicsStatsService.cpp
wui/service/GraphicsStatsService.h
wui/tests/unit/GraphicsStatsServiceTests.cpp
d7df6748f21d3f4b9209eaa2bfba73af0af31538 21-Feb-2017 Derek Sollenberger <djsollen@google.com> Merge "Add developer setting to set the default GPU renderer."
7c196d4a854de9f1f2dbd548fc26d80890a662c9 21-Feb-2017 Derek Sollenberger <djsollen@google.com> Merge "Disable buffer age swap behavior for SkiaGL on Adreno gpus"
28f99293f74555592af2342095d23be51cbc1b8b 18-Feb-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Fix Rgba16fTests@testTransferFunctionsShader test"
dd6f1a70848cc852c215a2e2cb8f9acba4953504 18-Feb-2017 Romain Guy <romainguy@google.com> Fix Rgba16fTests@testTransferFunctionsShader test

RGBA16F bitmaps used as an SkBitmapShader would not set the hasLinearTexture
flag in the program description, causing a shader to be generated without
the proper opto-electronic transfer function.

Bug: 35482305
Test: bit -t CtsUiRenderingTestCases:android.uirendering.cts.testclasses.Rgba16fTests
Change-Id: I23354f8189a6b27b677eac9df82677e91282a31d
wui/SkiaShader.cpp
edb88a2b94093ddaeb11c3ea4b8e989c6822bff1 18-Feb-2017 Adam Lesinski <adamlesinski@google.com> Merge "Add ResTable_sparseTypeEntry support"
a5e8f6cb8fb0c8b8bea532afa5d08e36817a9fdc 18-Feb-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "AssetManager2: Various fixes"
45e2e95c2ffeb2d978e2cce80b729ef6ada3b8d2 14-Feb-2017 Fyodor Kupolov <fkupolov@google.com> Check bounds in offsetToPtr

Check whether specified offset belongs to mData.
Also added a default argument bufferSize to check the end offset.

Size of the ashmem descriptor can be modified between
ashmem_get_size_region call and mmap. createFromParcel method was updated
to check ashmem size again immediately after memory is mapped.

Test: manual - using the test app from the bug
Bug: 34128677
Change-Id: I3ecd1616a870ce20941ce9b20a1843d2b4295750
ndroidfw/CursorWindow.cpp
ndroidfw/include/androidfw/CursorWindow.h
c8f71aa67ea599cb80205496cb67e9e7a121299c 08-Feb-2017 Adam Lesinski <adamlesinski@google.com> Add ResTable_sparseTypeEntry support

Benchmarks on bullhead-userdebug show that there is a negligent
performance impact when using sparse entries on a 30% loaded
sparse type of 1000 resources.

Benchmark Time CPU Iterations
-----------------------------------------------------------------------------------
BM_SparseEntryGetResourceSparseLarge 255 ns 254 ns 2751408
BM_SparseEntryGetResourceNotSparseLarge 254 ns 254 ns 2756534

Bug: 27381711
Test: make libandroidfw_tests aapt2_tests
Change-Id: I051ea22f2f6b2bc3696e446adc9e2a34be18009f
ndroidfw/ResourceTypes.cpp
ndroidfw/TypeWrappers.cpp
ndroidfw/include/androidfw/ResourceTypes.h
ndroidfw/include/androidfw/TypeWrappers.h
ndroidfw/tests/Android.mk
ndroidfw/tests/AssetManager2_bench.cpp
ndroidfw/tests/BenchmarkHelpers.cpp
ndroidfw/tests/BenchmarkHelpers.h
ndroidfw/tests/ResTable_test.cpp
ndroidfw/tests/SparseEntry_bench.cpp
ndroidfw/tests/TestHelpers.h
ndroidfw/tests/data/sparse/.gitignore
ndroidfw/tests/data/sparse/AndroidManifest.xml
ndroidfw/tests/data/sparse/R.h
ndroidfw/tests/data/sparse/build
ndroidfw/tests/data/sparse/gen_strings.sh
ndroidfw/tests/data/sparse/not_sparse.apk
ndroidfw/tests/data/sparse/res/values-v26/strings.xml
ndroidfw/tests/data/sparse/res/values-v26/values.xml
ndroidfw/tests/data/sparse/res/values/strings.xml
ndroidfw/tests/data/sparse/res/values/values.xml
ndroidfw/tests/data/sparse/sparse.apk
9138948df9717eb8f8cf16fec867c5786deef4bd 15-Feb-2017 Chris Craik <ccraik@google.com> Merge "Always flush renderstate in DeferredLayerUpdater::apply"
d1ecd7af687bcad0f87c37fe33515ff6c5ea0f1d 23-Jan-2017 Adam Lesinski <adamlesinski@google.com> AssetManager2: Various fixes

- Use FileMaps to open Assets (prevents closing of ApkAssets underlying
zip)
- Implement OpenDir and List methods
- Fix issue where DynamicRefTable wasn't properly constructed

Test: make libandroidfw_tests
Change-Id: Ib21a84e1114d028120744aa3bc1c6eb9d9399fa8
ndroidfw/ApkAssets.cpp
ndroidfw/Asset.cpp
ndroidfw/AssetManager2.cpp
ndroidfw/ResourceTypes.cpp
ndroidfw/Util.cpp
ndroidfw/include/androidfw/ApkAssets.h
ndroidfw/include/androidfw/Asset.h
ndroidfw/include/androidfw/AssetDir.h
ndroidfw/include/androidfw/AssetManager2.h
ndroidfw/include/androidfw/ResourceTypes.h
ndroidfw/include/androidfw/Util.h
ndroidfw/tests/ApkAssets_test.cpp
ndroidfw/tests/AssetManager2_test.cpp
ndroidfw/tests/data/basic/assets/uncompressed.txt
ndroidfw/tests/data/basic/basic.apk
ndroidfw/tests/data/basic/build
2f1aaf7e24590e3b1dde62e0cb6d8d2978c9d5da 14-Feb-2017 Chris Craik <ccraik@google.com> updateTexImage before bitmap readback of DeferredLayerUpdaters

Bug: 34206215
Test: hwui unit tests passing

Change-Id: I4360c0d94a831b4d2ebfd4020e4241658bfa190a
wui/pipeline/skia/SkiaOpenGLPipeline.cpp
wui/renderthread/OpenGLPipeline.cpp
09df887c9078a34f2bda32c83734b7f75c0a60ff 14-Feb-2017 Chris Craik <ccraik@google.com> Always flush renderstate in DeferredLayerUpdater::apply

Bug: 34206215
Test: hwui unit tests passing, manual test of TextureView video playback

Always flush renderstate to the GlLayer's texture, regardless of
whether updateTexImage has ever been called.

Change-Id: I3974dce9d90633a0299e6bc4259b76c622717c90
wui/DeferredLayerUpdater.cpp
wui/DeferredLayerUpdater.h
wui/GlLayer.cpp
wui/GlLayer.h
wui/tests/common/TestUtils.cpp
wui/tests/unit/DeferredLayerUpdaterTests.cpp
b77c94a96abeeecf65c5b3292db679c049af6271 07-Dec-2016 Matt Sarett <msarett@google.com> Disable buffer age swap behavior for SkiaGL on Adreno gpus

Test: Verified that this fixes rendering bugs.

BUG:31957043
Change-Id: I3e5bca73eae2d917906658f76d8c432dbb248d89
wui/renderthread/EglManager.cpp
4badfe6d3beda8e1e358334e32a95e00be39f031 14-Feb-2017 Derek Sollenberger <djsollen@google.com> Add developer setting to set the default GPU renderer.

Test: manual on-device testing
Bug: 35345959
Change-Id: I1d846f922a048dd215caf053b10aaa909bdbc74d
wui/Properties.cpp
wui/Properties.h
ab582b762ad6f0fbb2b087cff4472ab60e85474d 14-Feb-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Replace bitmap shaders with image shaders in test code"
7183b6908b0af807491e90f37e9e05794bd0c3f1 14-Feb-2017 Derek Sollenberger <djsollen@google.com> Merge "Deprecate Canvas save/saveLayer flags."
2eaae562fed8c6b228c19a8b2d8a98e022d96cf9 14-Feb-2017 Sergey Vasilinets <sergeyv@google.com> Merge "DeferredLayerUpdater: clean up Layer lifecycle"
00eb43dbc04083eab85fbb1a9589e2548f2004ed 13-Feb-2017 sergeyv <sergeyv@google.com> DeferredLayerUpdater: clean up Layer lifecycle

Test: refactoring CL, all existent tests should pass
bug:34919311
Change-Id: Ib2889667a5ab8a2aaba443458782bc163467f0ea
wui/DeferredLayerUpdater.cpp
wui/DeferredLayerUpdater.h
wui/GlLayer.cpp
wui/GlLayer.h
c54b76e97d00497e4fea1aa08ae404bfd4ae875d 13-Feb-2017 Matt Sarett <msarett@google.com> Replace bitmap shaders with image shaders in test code

Test: Verified that unit tests still pass.

Change-Id: I67d8046e49b9469e73caa9fe2a44ef2602c95d59
wui/tests/common/scenes/BitmapShaders.cpp
wui/tests/unit/RecordingCanvasTests.cpp
wui/tests/unit/SkiaBehaviorTests.cpp
7a18b799617465a0a27dde1cf0c5f48c52db7980 13-Feb-2017 Seigo Nonaka <nona@google.com> Implement getAxes() method.

getAxes() is necessary for calling hb_font_set_variations.

Test: None
Change-Id: Iec4759189b0653aa483ba85682d10b2b81beaab8
wui/hwui/MinikinSkia.cpp
wui/hwui/MinikinSkia.h
wui/hwui/Typeface.cpp
9969111d9c8017cdd439edbb2c54ef9678b24a59 03-Feb-2017 Yuqian Li <liyuqian@google.com> Implement SkiaCanvasProxy::onDrawArc

Test: UiRendering CTS SweepTests with picture mode turned on and
drawBitmapMesh turned off (it's not implemented yet).

This should fix BUG:34306056, and part of BUG:34871089 (the drawArc part
of SweepTests in picture mode).

BUG:34306056
BUG:34871089

Change-Id: I8fdcf72ddb4a0bfccedfd7e4e374a1ec5df17d75
(cherry picked from commit 538b6359cf81b14322141089161f20291295d6d3)
wui/SkiaCanvasProxy.cpp
wui/SkiaCanvasProxy.h
395f2bbd62bd9fa71ad0a85b5e0b470b2aa4c332 11-Feb-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Implement "dump displaylist" button for skia pipelines"
89ddb1f1644e0b47de060d2c9aaf6d5387c38f2f 10-Feb-2017 Matt Sarett <msarett@google.com> Update framework to use new SkColorSpace API

Test: This compiles with SK_USE_LEGACY_NAMED_COLOR_SPACE
turned off.

Change-Id: Ie573f59e0aa475bab06b38589db3c6158ad82c5a
wui/Texture.cpp
wui/VectorDrawable.cpp
wui/hwui/Bitmap.cpp
wui/tests/unit/SkiaBehaviorTests.cpp
wui/utils/TestWindowContext.cpp
6bfdfe67b30f3bf5d3f669bf807b8ad00256da9d 10-Feb-2017 Po-Chien Hsueh <pchsueh@google.com> Merge "Remove build flag ANDROID_ENABLE_RENDERSCRIPT"
d21723704571dba7e69947d92856f22989d53dbf 09-Feb-2017 Stan Iliev <stani@google.com> Implement "dump displaylist" button for skia pipelines

Implement "dump displaylist" button in hierarchyviewer for skia
pipelines.

Test: ran hierarchyviewer for all pipelines.
bug: 34819877
Change-Id: Ifeb578260f636cb67268f9f9259e7318bf7de453
wui/DisplayList.cpp
wui/DisplayList.h
wui/RenderNode.cpp
wui/RenderNode.h
wui/pipeline/skia/DumpOpsCanvas.h
wui/pipeline/skia/SkiaDisplayList.cpp
wui/pipeline/skia/SkiaDisplayList.h
b8201195dfb2bae05faaf91b9b3d065e2f199929 09-Jan-2017 Derek Sollenberger <djsollen@google.com> Deprecate Canvas save/saveLayer flags.

Test: compile
Bug: 14650725
Change-Id: I6424ac46bae0a7a87c4b7743e81319945dfdd087
wui/SkiaCanvas.cpp
024d22fdb76a75f72ac1a421c4dd184bbfe2ba12 09-Feb-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "AAPT2: Fix pseudolocalization to respect <xliff:g>"
c5ae595e6f71798109c730cd835a2cca79a8877c 09-Feb-2017 Po-Chien Hsueh <pchsueh@google.com> Remove build flag ANDROID_ENABLE_RENDERSCRIPT

remove this flag and consider renderscript is always enabled

Bug: 34693640
Test: compile
Change-Id: I22464e1d64f2a55a60ba9f8ab1510f2811605552
wui/Android.mk
wui/FontRenderer.cpp
wui/FontRenderer.h
wui/hwui_static_deps.mk
77aee7128d4f2a579a318c402e955e192338cbd3 08-Feb-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Don't print shader source"
3238f730bdfac88e8cc6ec3e590596191762c3e9 08-Feb-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Fix deadlock in render thread when Bitmap.prepareToDraw is invoked"
42c401adbdd69044b08b2b73d563b6e42606cf43 08-Feb-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "AssetManager2: Add GetResourceId"
91a8ec0145ae0ce85782b40c964d16ba2465aec7 08-Feb-2017 Romain Guy <romainguy@google.com> Don't print shader source

Bug: 32984164
Test: compile & run
Change-Id: If632e49b773ca44d4e09e3acb5979f4df15a8d77
wui/ProgramCache.cpp
7542162cb1b1fd2ce8a26dd7f3fedc8de8160d38 07-Jan-2017 Adam Lesinski <adamlesinski@google.com> AAPT2: Fix pseudolocalization to respect <xliff:g>

The XLIFF 'g' tag specifies content that should NOT be translated.
AAPT2's pseudolocalization process should respect it.

Bug:34064599
Test: make libandroidfw_tests
Change-Id: Ice437d7f0ff246730ee04896fd035e2d846148fb
ndroidfw/include/androidfw/StringPiece.h
08c9ca5228f70b8f60064d6056f426dfc3b9619a 08-Feb-2017 Chris Craik <ccraik@google.com> Merge "Add ShadowShaderAnimation benchmark"
929d6517dfd338f0d481dbe6587643d5aef27ec6 17-Jan-2017 Adam Lesinski <adamlesinski@google.com> AssetManager2: Add GetResourceId

Add ability to lookup a resource by name.

Test: make libandroidfw_tests
Change-Id: I262ba5ce4c9892458226fbdb44cf21f9877fb92d
ndroidfw/Android.bp
ndroidfw/AssetManager2.cpp
ndroidfw/LoadedArsc.cpp
ndroidfw/ResourceUtils.cpp
ndroidfw/include/androidfw/LoadedArsc.h
ndroidfw/include/androidfw/ResourceUtils.h
ndroidfw/include/androidfw/StringPiece.h
ndroidfw/include/androidfw/Util.h
ndroidfw/tests/Android.mk
ndroidfw/tests/AssetManager2_test.cpp
ndroidfw/tests/ResourceUtils_test.cpp
ndroidfw/tests/Theme_test.cpp
c03fdb3e3f567ebb4f5024c46dc31147a6a43a0f 08-Feb-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Fix capturing systrace while hwuimacro is running"
c270de85cc0c398d9ce165592908d2740219a708 08-Feb-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Apply transfer function when rendering with linear textures"
636afc1877882dc9cf73b49f8a68c73cc418d8cd 07-Feb-2017 Romain Guy <romainguy@google.com> Apply transfer function when rendering with linear textures

RGBA16F bitmaps are always encoded in linear space, which means we must
apply the opto-electronic transfer function before we can render them
in the framebuffer.

Since our linear bitmaps are assumed to be scRGB, values can be negative.
The OETF is a slightly modified sRGB OETF:

sign(x) * OETF_sRGB(abs(x))

This effectively mirrors the OETF over the negative domain.

This CL also removes the "optimized" shader generation path. With
current compilers, the optimized path doesn't do anything of value
and makes ProgramCache difficult to maintain. Shader compilers inline
everything and are really good at folding expressions and removing
unused code.

Bug: 32984164
Test: CtsUiRenderingTestCases
Change-Id: Ieb458ad53574e3a8959aa6bccbbd2d1fe203cbc5
wui/GlopBuilder.cpp
wui/Program.h
wui/ProgramCache.cpp
wui/Texture.cpp
wui/Texture.h
e10971d903560488b6c7df5dc4935d631742e870 07-Feb-2017 John Reck <jreck@google.com> Fix capturing systrace while hwuimacro is running

Test: manual; ran hwuimacro -c 10000 and started a systrace
while it was running. verified trace tags showed up as
expected

Change-Id: Iedc20c6825e77b76ad79660512b627201f61969f
wui/tests/common/TestContext.cpp
0091181f32f023282205f74806dfa5146bb7c75e 03-Feb-2017 Chris Craik <ccraik@google.com> Add ShadowShaderAnimation benchmark

Bug: 34809371
Test: manual

New benchmark uses several levels of overdraw from just shadows to benchmark
shadow shader performance.

Tessellation workload is minimal, due to simple rect caster shape.

Change-Id: I760961e6d48d44ca61f4e8ebca5760175af34953
wui/tests/common/scenes/ShadowShaderAnimation.cpp
49ddb3d558395dda71fcf0a37ac3f8bec386c11b 07-Feb-2017 Chris Craik <ccraik@google.com> Merge "Add simple gradient and colormatrix benchmarks"
3f57d7f7eb83ffd0e4d91f677a353fa6b0bc8332 07-Feb-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Gradients are now an absurd Chimera"
6983bc40d72acbf06cd04818877cb3f5fea22886 02-Feb-2017 Stan Iliev <stani@google.com> Fix deadlock in render thread when Bitmap.prepareToDraw is invoked

Fix a deadlock with Skia pipelines, caused by calling
Bitmap::getSkBitmap from render thread.

Test: built and booted an image. Ran recent apps activity.
bug: 35060578
bug: 34926691
Change-Id: Iaf7957b955d938b722b153d72ad832ae5d50e86f
wui/renderthread/RenderProxy.cpp
ffa46b2053d945019e54f8e11848d45b97d0bd0b 07-Feb-2017 Miao Wang <miaowang@google.com> Merge "Remove uncessary dependency of libhwui" am: df36be5f17 am: eebd7d7970
am: 558e5dac4d

Change-Id: I99b2fded709c63c71fd9d9f02020a986e3025fa6
558e5dac4d7a1fc7820b724928f561ca32687179 07-Feb-2017 Miao Wang <miaowang@google.com> Merge "Remove uncessary dependency of libhwui" am: df36be5f17
am: eebd7d7970

Change-Id: I3e7b282340259eaad71569e8a15f5028852852ee
eebd7d7970c5e50884351d1d193d4af26d67433b 06-Feb-2017 Miao Wang <miaowang@google.com> Merge "Remove uncessary dependency of libhwui"
am: df36be5f17

Change-Id: I5ccce1f195a43ff00b9bd7fc350d7ae915c566d7
f77921056d54b5eac8eb5e1d4dad31e2b9e30de4 06-Feb-2017 Sergei Vasilinetc <sergeyv@google.com> Merge "Clean up deferredLayers only onGpuContextDestroyed."
6addd61ff8e203d99153779b8e9492a45966a543 01-Feb-2017 Miao Wang <miaowang@google.com> Remove uncessary dependency of libhwui

- libRS.so is not directly used. It is accessed by libRScpp.so.

Test: mm, and boot-up test on sailfish
Change-Id: I5742d2ee3b34ef09bcb997524408affce1ace8fd
(cherry picked from commit 629fd3d48ba1dbedc6e84e91a26f72fb1fba0e22)
wui/Android.mk
wui/hwui_static_deps.mk
1d5b9778bbd01ec0e9eea2a6d12fac7539fdda87 06-Feb-2017 Miao Wang <miaowang@google.com> Merge "Remove uncessary dependency of libhwui"
c3f131696111a066d9efd9c7c3e37566a2a9fb89 06-Feb-2017 sergeyv <sergeyv@google.com> Clean up deferredLayers only onGpuContextDestroyed.

Test: manual
bug:34919311
Change-Id: I5488b0845ec3922424f5893943e4f42675dfc9fd
wui/renderstate/RenderState.cpp
wui/renderstate/RenderState.h
wui/renderthread/CanvasContext.cpp
41fed8cc15bc59a22b37e818ca6a9e4579a391f7 06-Feb-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Use new Skia DrawShadow API"
30a75debb1c2623308f04d4e01f0ef3162ad7ac1 24-Jan-2017 Stan Iliev <stani@google.com> Use new Skia DrawShadow API

Use new Skia DrawShadow API to draw shadows and remove unused code
from HWUI.

Test: Built and ran shadow macrobench tests.
Change-Id: Ief86b03b7348367f8bae8c212d64d5a545eebaeb
wui/pipeline/skia/ReorderBarrierDrawables.cpp
bccd58cde35f37aa271d97ae024c90b3db9f2106 06-Feb-2017 Greg Daniel <egdaniel@google.com> Merge "Have Skia Vulkan backend support wait-for-gpu flag on tests"
9fe7e16399aa9739b63ce9add1d04fd8ef00678f 04-Feb-2017 Romain Guy <romainguy@google.com> Gradients are now an absurd Chimera

As of O, gradients are interpolated in linear space. This unfortunately
affects applications that were expecting a certain behavior for the
alpha ramp. This change attempts to get the best of both world: better
color interpolation (in linear space) and the old alpha interpolation
(in gamma space). This is achieved by applying the electro-optical
transfer function to the alpha channel; an idea so wrong it would
make any graphics programmer worth his salt weep in disgust.

As abhorrent this idea might be to me, it also acts as a faint
beacon of hope admist the unfathomable darkness that is Android's
color management.

And if you allow me another misguided metaphor, this change
represents the flotsam I can cling onto in the hope to one day
reach the bountiful shores of linear blending and accurate color
management. Would this change not fix the distress caused by its
predecessors, I will have no choice but bow my head in shame until
the day I can finally devise an infallible plan.

Bug: 33010587
Test: CtsUiRenderingTestCases
Change-Id: I5397fefd7944413f2c820e613a5cba50579d4dd5
wui/GradientCache.cpp
wui/ProgramCache.cpp
wui/Texture.cpp
f6a409067c5df1593c8c6b94304c70220d37901c 04-Feb-2017 Chris Craik <ccraik@google.com> Add simple gradient and colormatrix benchmarks

Bug: 34809371
Test: manual

Change-Id: I3af38c835c43f7c4a1d2976c7263d37dd1dc7084
wui/tests/common/scenes/SimpleColorMatrixAnimation.cpp
wui/tests/common/scenes/SimpleGradientAnimation.cpp
f772c047fac570e68a01513f0e2a803b4cbfeb3a 03-Feb-2017 Chris Craik <ccraik@google.com> Add ShadowShaderAnimation benchmark DO NOT MERGE

Bug: 34809371
Test: manual

New benchmark uses several levels of overdraw from just shadows to benchmark
shadow shader performance.

Tessellation workload is minimal, due to simple rect caster shape.

Change-Id: I572476bd54e04566851f39027ada7254597b37f8
wui/tests/common/scenes/ShadowShaderAnimation.cpp
4f70887d348a4eea433df39496a5fe53d64b439a 03-Feb-2017 Greg Daniel <egdaniel@google.com> Have Skia Vulkan backend support wait-for-gpu flag on tests

So trying to mimic what the EglManager does in the fence call.
Technically there are two logical queues I could wait on for the device,
the graphics queue and the present queue. Waiting on the device waits
for both these queues to finish. It wasn't obvious to me if the EGL was
waiting for just graphics work or both queues, so I went for both (by
waiting on device). However, so far every device we've seen in Vulkan
has the present and graphics queue combined on the physical device so
waiting for one or both should really be different.

Test: Manual ran macrobench in skiavk and more realistic values compared
to not waiting for gpu.

Change-Id: I17cde70c677a9ad1b6bf9bc9ca4fd5f8f3b807e3
wui/renderthread/VulkanManager.cpp
16e211832e447af5f7bce1035d52445c865263ef 03-Feb-2017 Sergei Vasilinetc <sergeyv@google.com> Merge "Check if layer is created in detachSurfaceTexture"
dc5cd8b323b9d5a427cc44d3df8177a3de384bf4 02-Feb-2017 Adam Lesinski <adamlesinski@google.com> Merge "AssetManager2: Add other support methods"
db92bb71d05caf674b527e6f479ddf276d1d7767 02-Feb-2017 sergeyv <sergeyv@google.com> Check if layer is created in detachSurfaceTexture

Test: manual
bug:34937475
Change-Id: Iaab7a341917456b40427efd2746d33ddd88514d1
wui/DeferredLayerUpdater.cpp
f2ca8e030c4e65dcd9d7d021cca296fec85320b7 02-Feb-2017 Sergei Vasilinetc <sergeyv@google.com> Merge "Hardware bitmaps: Destroy texture ID generated for the copy"
9f4a82f5692831ad80f515fa831fddfdfe50b7b0 02-Feb-2017 sergeyv <sergeyv@google.com> Hardware bitmaps: Destroy texture ID generated for the copy

Test: manual
bug:34807359
Change-Id: Idb1ef2a2efcb3cf7fb96e2a1f0554a06e7cd0fc2
wui/hwui/Bitmap.cpp
0e177d32edf90ffe1a29c905fd51395f6ba91114 01-Feb-2017 Sergei Vasilinetc <sergeyv@google.com> Merge "Explicitly destroy Layer in DeferredLayerUpdater on destroyHardwareResources()"
2cf7b1f1425819c31a7ccd1c09f5bc9f3ab5c265 01-Feb-2017 Sergei Vasilinetc <sergeyv@google.com> Merge "Properly clear textures for Hardware Bitmaps"
83809fec686b47da73ee0aaa80d226de7e33aab9 01-Feb-2017 sergeyv <sergeyv@google.com> Properly clear textures for Hardware Bitmaps

Test: manual (Description in the bug)
bug:34858530
Change-Id: I13eb89077c43ca28436509a7af5b7c11374446c4
wui/Android.mk
wui/TextureCache.cpp
wui/debug/nullegl.cpp
wui/tests/unit/TextureCacheTests.cpp
e916e1741a3483ad076085e4a6d08a2eb39abe7d 01-Feb-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Fix incorrect comments"
91627f61705a68cd18fdbce1b8190a2ffdec5f10 01-Feb-2017 Romain Guy <romainguy@google.com> Fix incorrect comments

Bug: 33010587
Test: comment only
Change-Id: Icdfa79bac50545bb73f4c40727fe51780ef4a56d
wui/utils/Color.h
629fd3d48ba1dbedc6e84e91a26f72fb1fba0e22 01-Feb-2017 Miao Wang <miaowang@google.com> Remove uncessary dependency of libhwui

- libRS.so is not directly used. It is accessed by libRScpp.so.

Test: mm, and boot-up test on sailfish
Change-Id: I5742d2ee3b34ef09bcb997524408affce1ace8fd
wui/Android.mk
wui/hwui_static_deps.mk
0c40524953f3d36a880f91183302a2ea5c722930 14-Jan-2017 Adam Lesinski <adamlesinski@google.com> AssetManager2: Add other support methods

- Add GetResourceConfigurations()
- Add GetResourceLocales()
- Add ResolveReference()
- Add stub for GetResourceId()
- Change LoadedArsc and ApkAssets factory method to return const

Test: make libandroidfw_tests
Change-Id: Ia797dc9381a523b1a3e7029048a413e544730379
ndroidfw/ApkAssets.cpp
ndroidfw/AssetManager2.cpp
ndroidfw/LoadedArsc.cpp
ndroidfw/include/androidfw/ApkAssets.h
ndroidfw/include/androidfw/AssetManager2.h
ndroidfw/include/androidfw/LoadedArsc.h
ndroidfw/include/androidfw/ResourceTypes.h
ndroidfw/include/androidfw/Util.h
ndroidfw/tests/ApkAssets_test.cpp
ndroidfw/tests/AssetManager2_bench.cpp
ndroidfw/tests/AssetManager2_test.cpp
ndroidfw/tests/LoadedArsc_test.cpp
ndroidfw/tests/Theme_bench.cpp
ndroidfw/tests/Theme_test.cpp
ndroidfw/tests/data/basic/R.h
ndroidfw/tests/data/basic/basic.apk
ndroidfw/tests/data/basic/basic_de_fr.apk
ndroidfw/tests/data/basic/basic_hdpi-v4.apk
ndroidfw/tests/data/basic/basic_xhdpi-v4.apk
ndroidfw/tests/data/basic/basic_xxhdpi-v4.apk
ndroidfw/tests/data/basic/res/values/values.xml
5703a0e4297eb98723899013bd210c25858e3c9d 01-Feb-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "LoadedArsc: Support feature splits."
65626b663aed769b912838875ef378dfe40e6043 31-Jan-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Add UiBench jank and macrobench tests for saveLayer performance"
010b6a58c7d19ba2ef68295819fce00b37595dec 27-Jan-2017 Stan Iliev <stani@google.com> Add UiBench jank and macrobench tests for saveLayer performance

Create 2 jank tests and 1 macrobench that measure saveLayer
performance:
- Fling a ListView, which has a vertical fading edge.
- Draw a canvas with 20 saveLayer/restore interleaved with other
drawText and drawRect ops.

Test: built and ran UiBench jank and macrobench tests.
Change-Id: I5a50feb7431d597c92c7a49031505d41f397d175
wui/tests/common/scenes/SaveLayer2Animation.cpp
cf45c852977e5f68a0d67fca01f03b11c09e32ba 31-Jan-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Introduce set/getFontVariationSettings."
5d6facc89dbe3dacb49fdca47d1297be98f6ccee 31-Jan-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Don't count hw bitmap's textures in TextureCache"
3e9999bd866fac71c72e6b484a9836c87c328a08 20-Jan-2017 sergeyv <sergeyv@google.com> Explicitly destroy Layer in DeferredLayerUpdater on destroyHardwareResources()

Change-Id: I0987104eabda9a2a302b9e765213aad48f93aea4
Test: refactoring CL. Existing tests still pass
bug:33753499
wui/BakedOpDispatcher.cpp
wui/DeferredLayerUpdater.cpp
wui/DeferredLayerUpdater.h
wui/FrameBuilder.cpp
wui/GlLayer.cpp
wui/GlLayer.h
wui/Layer.cpp
wui/Layer.h
wui/RecordedOp.h
wui/RecordingCanvas.cpp
wui/VkLayer.h
wui/pipeline/skia/SkiaOpenGLPipeline.cpp
wui/pipeline/skia/SkiaVulkanPipeline.cpp
wui/renderstate/RenderState.cpp
wui/renderstate/RenderState.h
wui/renderthread/CanvasContext.cpp
wui/renderthread/OpenGLPipeline.cpp
wui/tests/common/TestUtils.cpp
00783be809c1176fa9e904b76b3d56f268dcc4da 30-Jan-2017 sergeyv <sergeyv@google.com> Don't count hw bitmap's textures in TextureCache

Test: refactoring CL.
bug: 34751775
Change-Id: I0f7c8338817329a5c75cec4e8b944779587d7b7f
wui/TextureCache.cpp
wui/TextureCache.h
3afd63778e401651a7a6fd721d6d795690916ab8 30-Jan-2017 John Reck <jreck@google.com> Switch how destroyHardwareResources works

destroyHardwareResources will now only force-destroy
the specific node it was called on, which are only
ever the root nodes. Rely on onRemovedFromTree()
to clean up resources for all other nodes.

Bug: 34736819

Test: RenderNode.multiTreeValidity passes, manually
verified fixes b/34736819

Change-Id: I1c275ad6a98b63bf50f265602f09bffe3e1f169b
wui/RenderNode.cpp
wui/RenderNode.h
wui/tests/common/TestUtils.h
wui/tests/unit/RenderNodeTests.cpp
9ff994d98846d24bc488939af6e7dc440149a4bc 30-Nov-2016 Seigo Nonaka <nona@google.com> Introduce set/getFontVariationSettings.

This is 2nd attempt of I249d464f8cdaa56017a987588b94ed685aadeb58.
The original CL was reverted due to conflicting with another CL submitted
before.
Nothing has changed except for following class name changes.

Here is the original commit message of reverted change.

This CL enables developers to specify axis values to the underlying
font collection. The specification of the font variation settings is
the same as the CSS font-variation-settings attribute in CSS working
draft as of 2016-11-30.

Code example: Here is an example to set width 100 and weight 1.5.

TextView tv = (TextView) findViewById(R.id.textView);
tv.setFontVariationSettings("'wdth' 100, 'wght' 1.5");

Bug: 33062398
Test: Manually done. Ran FrameworksGraphicsTests, CtsGraphicsTestCases
and CtsWidgetTestCases

Change-Id: I9cdfbdecc87c995d805096883ef2652768c6c21e
wui/hwui/MinikinSkia.cpp
wui/hwui/MinikinSkia.h
wui/hwui/Typeface.cpp
wui/hwui/Typeface.h
c6aada9c5789b2777b19c522d3cd5052bbe784a4 14-Jan-2017 Adam Lesinski <adamlesinski@google.com> LoadedArsc: Support feature splits.

Test: make libandroidfw_tests
Change-Id: I278273e688da597f4af86dd55f87750501ef8154
ndroidfw/LoadedArsc.cpp
ndroidfw/include/androidfw/LoadedArsc.h
ndroidfw/tests/LoadedArsc_test.cpp
ndroidfw/tests/data/feature/feature.apk
90572a4ab8ac393c57e896be3c608e634866ed38 27-Jan-2017 Adam Lesinski <adamlesinski@google.com> Merge "libandroidfw: Add new support for shared libraries"
a0428f8dae7d1a6101df417abed86badc41177bf 27-Jan-2017 Chris Craik <ccraik@google.com> Merge "Temporarily enable GL validation"
b5544d0308613dbcfee5d27f26bda2248d0a5e33 26-Jan-2017 John Reck <jreck@google.com> Temporarily enable GL validation

Bug: 34206215
Test: none
Change-Id: Ifc2855ca399f4ae42376349dd5c660f60b327c04
wui/Android.mk
2de950d5a8b47c7b4648ada1b1260ce4b7342798 25-Jan-2017 John Reck <jreck@google.com> Overhaul RenderNode's DisplayList management

* Move mValid to native
* Have destroyHardwareResources destroy everything
* Remove flaky mParentCount checks in setStaging
* All tree updates have an internal observer to
ensure onRemovedFromTree() is a reliable signal
* onRemovedFromTree() immediately releases resources
to avoid displaylist "leaks"

Test: Unit tests for validity added & pass, manually
verified that b/34072929 doesn't repro

Bug: 34072929

Change-Id: I856534b4ed1b7f009fc4b7cd13209b97fa42a71c
wui/DisplayList.cpp
wui/DisplayList.h
wui/RenderNode.cpp
wui/RenderNode.h
wui/TreeInfo.h
wui/pipeline/skia/SkiaDisplayList.cpp
wui/pipeline/skia/SkiaDisplayList.h
wui/renderthread/CanvasContext.cpp
wui/renderthread/CanvasContext.h
wui/renderthread/DrawFrameTask.cpp
wui/renderthread/DrawFrameTask.h
wui/renderthread/RenderProxy.cpp
wui/renderthread/RenderProxy.h
wui/tests/common/TestListViewSceneBase.cpp
wui/tests/common/TestUtils.h
wui/tests/common/scenes/GlyphStressAnimation.cpp
wui/tests/macrobench/TestSceneRunner.cpp
wui/tests/unit/CanvasContextTests.cpp
wui/tests/unit/FrameBuilderTests.cpp
wui/tests/unit/RenderNodeDrawableTests.cpp
wui/tests/unit/RenderNodeTests.cpp
wui/tests/unit/SkiaDisplayListTests.cpp
wui/utils/TestWindowContext.cpp
f54c76399a4173bb6c7e5411b53e14a712d75b47 25-Jan-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "use new clipbounds api"
5e4389823191aafff7422561f134dbdb391e0a2d 25-Jan-2017 Mike Reed <reed@google.com> use new clipbounds api

Allows us to remove SK_SUPPORT_LEGACY_GETCLIPBOUNDS flag

Change-Id: I7c6665b4eb67c58fe747c07b8b87d58fe9b10120
wui/SkiaCanvas.cpp
wui/pipeline/skia/GLFunctorDrawable.cpp
wui/pipeline/skia/GLFunctorDrawable.h
wui/tests/common/TestUtils.cpp
68eb1ac342f30b77b6fdba98e67559c4858e3f74 25-Jan-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Follow minikin::FontFamily constructor signature change."
6bb13da2789b2485a628e4fc077524b430661c82 02-Jun-2016 Mårten Kongstad <marten.kongstad@sonymobile.com> Fix memory leak during idmap creation

Plug a memory leak in AssetManager::createIdmap.

Bug: 31052947
Test: use Valgrind and dummy native app
Change-Id: I83af3a40516ed2d50d5a7c8ee175ed960fde9933
ndroidfw/AssetManager.cpp
e84ad491c82168228f042644285a2581fc619baf 25-Jan-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Add color mode to activity/window"
4832745b84d6a358582f2264d22acacf25e01b07 24-Jan-2017 Romain Guy <romainguy@google.com> Add color mode to activity/window

The color mode lets an application request a wide color gamut for
a specific window. This will also be used in the future to request
HDR. The color mode is currently either default (sRGB) or an undefined
wide gamut color space chosen by the platform. These attributes could
later be used to choose a specific color space if we deem this important
or useful.

This change also renames the various "colorimetry" attributes and
constants to "color mode" for consistency. These symbols were
added in O and can be safely renamed.

Test: CtsColorModeTestCases
Bug: 32984164
Change-Id: I4d4691dd12dbe3f3aa6a5cf893cff39aa16c739e
ndroidfw/ResourceTypes.cpp
ndroidfw/include/androidfw/ResourceTypes.h
ndroidfw/tests/Config_test.cpp
02b0d4054755af5dde16910377099c0b8fbab200 24-Jan-2017 Matt Sarett <msarett@google.com> Merge "Fix renderOverdraw() test"
4f2a40ac9f9bfb12b4aef16fbaa59666400bcfeb 24-Jan-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Revert "Workaround libmemunreachable lockup""
efa38e38fbb5fc9395c7c622d3a32fa1ffde65d0 24-Jan-2017 John Reck <jreck@google.com> Revert "Workaround libmemunreachable lockup"

This reverts commit 553ae6ab071b1db5e783c8c02f9311b4969729f6.

Change-Id: I593b78f7073d84a5e16372849d27e943af65694c
Fixes: 34586922
wui/tests/common/LeakChecker.cpp
341480bef58ee40eceb1caa4d94c4a8d3934b132 24-Jan-2017 Matt Sarett <msarett@google.com> Fix renderOverdraw() test

I'm not sure why this test was modifies, but this
restores the test to the original version, which passes.

Test: Passes unit test

BUG:34467659

Change-Id: I6699cf13d4b69301d57fa0cec9b24093e8263ba7
wui/tests/unit/SkiaPipelineTests.cpp
8b48e624457e438fcc2b6b9363329036ef2f7743 07-Jan-2017 Seigo Nonaka <nona@google.com> Follow minikin::FontFamily constructor signature change.

This is 2nd attempt of Id10ca97f6f6f5bbe4999c1ad2736423a204d6e87.
The root caus of crash is due touching null pointer in nUnrefFamily.
After above change, native object may not be created on error case.
In that case, nUnrefFamily can not be called. In addition to this issue
there is also memory leak on error case. This fixes it by introducing
abortCreation method.

Also this contains fix of layout lib breakage done by jgaillard@.
Originally submitted by Ic8872a43993bcb0a157c5e3f0ce423af9b47f606

Here is original commit message of reverted change.

minikin::FontFamily no longer has addFont function, instead it accept
vector of Fonts in its constructor. To follow this signature change,
holding minikin::Font instance in native and build minikin::FontFamily
instance in FontFamily.freeze() method.

Bug: 34042446
Bug: 28119474
Bug: 34378805
Test: hwui test has passed
Test: m layoutlib layoutlib-tests
Change-Id: Ic34ebaa8191273d4c9f49c43124f15a1da5f7b78
wui/hwui/Typeface.cpp
2ba96eced0a0eb2c6e3c73ad8576cf394a6a9868 24-Jan-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Add tests for b/34598346"
47aa8d1477d1bacdb3b45e0463ef99dcf5c9cc09 23-Jan-2017 John Reck <jreck@google.com> Add tests for b/34598346

Test: unit test passes
Bug: 34598346
Change-Id: I7e5144aa875e42487718059cc06b86e32db28702
wui/tests/unit/FrameBuilderTests.cpp
65e8f0adf31f8af2fea5d2ab9bdbf95ecf693852 23-Jan-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Workaround libmemunreachable lockup"
2d31375d94e4170803615c457ef8c4d72815c725 23-Jan-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Remove all calls to SkCanvas::getClipStack from HWUI unit tests"
553ae6ab071b1db5e783c8c02f9311b4969729f6 23-Jan-2017 John Reck <jreck@google.com> Workaround libmemunreachable lockup

Bug: 34586922
Test: hwui_unit_tests completes
Change-Id: Ia55f7bc49faf8a32624e2f16e2477eb12a261b07
wui/tests/common/LeakChecker.cpp
c1db0e0ff701c81aa909789e3c6c4d3d5b3aca84 23-Jan-2017 Stan Iliev <stani@google.com> Remove all calls to SkCanvas::getClipStack from HWUI unit tests

Refactor HWUI unit tests to not invoke SkCanvas::getClipStack,
because this Skia API is going to be deprecated.

Test: Build and ran sailfish-eng. Ran HWUI unit tests.
Change-Id: Iac277aa26fbe9e2a0860cde2dd43732ed1c4c4e3
wui/tests/common/TestUtils.cpp
wui/tests/unit/RenderNodeDrawableTests.cpp
wui/tests/unit/SkiaRenderPropertiesTests.cpp
51c51df46c1d8bbbd946dc2dde429ae91b29d47e 23-Jan-2017 John Reck <jreck@google.com> Add missing nothingToDraw() check

Fixes: 34598346

Prior to 2874daa4d38bddd3a5f0edb3774d5e5884dd9554 we
never freed the resources of root nodes. Now that this is being
done we need to ensure that the backdrop has content before
we try to draw that content. All other nodes passed in
deferRenderNodeScene check that nothingToDraw() returns false
before drawing them, but that check was missed on the backdrop
node.

Test: manual. open calculator then long-press on recents
Change-Id: I495749161b38b57278bdb60d5f872eeeb2b218d0
wui/FrameBuilder.cpp
27be018934e567eac322f9c873ca136ae7e09f08 20-Jan-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Refactor GLFunctorDrawable to use new SkCanvas API for clip region"
a9da39cb645243e334505cd072488593521ea42c 20-Jan-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Add wide color gamut and HDR resource qualifiers"
c9ba55902123be5abcf2dcda5af9995be0b8d3d8 19-Jan-2017 Romain Guy <romainguy@google.com> Add wide color gamut and HDR resource qualifiers

Bug: 32984164
Test: Config_test, AaptConfig_test and aapt2_tests
Change-Id: Ie9c82bfe2d36b1d6180ee223250ab5bb2ce90dd4
ndroidfw/ResourceTypes.cpp
ndroidfw/include/androidfw/ResourceTypes.h
ndroidfw/tests/Config_test.cpp
c0d685b87aa544bc23c1ed1c01e88f6c04855f72 20-Jan-2017 Siyamed Sinir <siyamed@google.com> Revert "Follow minikin::FontFamily constructor signature change."

This reverts commit a0a4828614edfd633ab86f04408e7f4e55b491dd.

Bug: 34378805
Change-Id: Icbdbfbde2efe8eaebbe4334a679e3b3247057388
wui/hwui/Typeface.cpp
24fac986ecad9a4c8b7ccdf545abebbfc0532678 20-Jan-2017 Siyamed Sinir <siyamed@google.com> Merge "Revert "Introduce set/getFontVariationSettings.""
a3b9f2e3c66ec485f3b712560d52e31632a9cbe8 20-Jan-2017 Siyamed Sinir <siyamed@google.com> Revert "Introduce set/getFontVariationSettings."

This reverts commit ba3028c1fc9fca2d45acc841557da2c9a83923bf.

Bug: 34378805
Change-Id: I8250c87af5d65fb45789632580be4ae1b8711372
wui/hwui/MinikinSkia.cpp
wui/hwui/MinikinSkia.h
wui/hwui/Typeface.cpp
wui/hwui/Typeface.h
1f9f11007db09bbbc156965e77b10de82a32a544 20-Jan-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Move StringPiece to libandroidfw"
98d251b10ece39190801177c637ff319bd21230a 20-Jan-2017 Stan Iliev <stani@google.com> Refactor GLFunctorDrawable to use new SkCanvas API for clip region

Refactor GLFunctorDrawable::onDraw to get SkCanvas clip region
with new Skia API (getClipStack is going to be deprecated).

Test: Built and ran angler-userdebug. Ran CTS WebView clip tests.
Change-Id: Ia11e3f3d64d5c33802b7a8f296f213ef39a69905
wui/pipeline/skia/GLFunctorDrawable.cpp
2d00c0952eba704f2226cf3d264f708c72a2746b 18-Jan-2017 Roozbeh Pournader <roozbeh@google.com> Merge "Update locale data from in-tree ICU"
57b8eb3da0c4692ac4f39a9c73aa090af475d14a 18-Jan-2017 Greg Daniel <egdaniel@google.com> Merge "Update hwui_unit_tests to support running with Vulkan backend."
98c78dad1969e2321cfee2085faa55d95bba7e29 04-Jan-2017 Greg Daniel <egdaniel@google.com> Update hwui_unit_tests to support running with Vulkan backend.

Added Macros for RENDERTHREAD_TESTS which run these tests using specific backends.
RENDERTHREAD_TESTS - Runs OpenGL, SkiaGL, and SkiaVulkan
RENDERTHREAD_SKIA_TESTS - Runs SkiaGL and SkiaVulkan
RENDERTHREAD_OPENGL_TESTS - Runs OpenGL

Test: manual running of hwui_unit_tests

Change-Id: Ia7420ee7a38803a15e2d58394d14b38cae8208d3
wui/DeferredLayerUpdater.cpp
wui/DeferredLayerUpdater.h
wui/Properties.cpp
wui/Properties.h
wui/tests/common/TestUtils.cpp
wui/tests/common/TestUtils.h
wui/tests/unit/BakedOpDispatcherTests.cpp
wui/tests/unit/BakedOpRendererTests.cpp
wui/tests/unit/CanvasContextTests.cpp
wui/tests/unit/DeferredLayerUpdaterTests.cpp
wui/tests/unit/DeviceInfoTests.cpp
wui/tests/unit/FontRendererTests.cpp
wui/tests/unit/FrameBuilderTests.cpp
wui/tests/unit/GlopBuilderTests.cpp
wui/tests/unit/GradientCacheTests.cpp
wui/tests/unit/LeakCheckTests.cpp
wui/tests/unit/MeshStateTests.cpp
wui/tests/unit/OffscreenBufferPoolTests.cpp
wui/tests/unit/RecordingCanvasTests.cpp
wui/tests/unit/RenderNodeTests.cpp
wui/tests/unit/SkiaCanvasTests.cpp
wui/tests/unit/SkiaDisplayListTests.cpp
wui/tests/unit/SkiaPipelineTests.cpp
wui/tests/unit/SkiaRenderPropertiesTests.cpp
wui/tests/unit/TextDropShadowCacheTests.cpp
d5083f6f6b9bc76bbe64052bcec639eee752a321 17-Jan-2017 Adam Lesinski <adamlesinski@google.com> Move StringPiece to libandroidfw

libandroidfw needs to make use of StringPiece, so
move it to libandroidfw and update all code referencing
StringPiece in aapt2.

Test: make libandroidfw_tests libaapt2_tests
Change-Id: I68d7f0fc7c651b048d9d1f5e7971f10ef5349fa1
ndroidfw/include/androidfw/StringPiece.h
ndroidfw/tests/Android.mk
ndroidfw/tests/StringPiece_test.cpp
fdaa9c58c9c1961862561b260164d380e3b17363 18-Jan-2017 Adam Lesinski <adamlesinski@google.com> Merge "New implementation of AssetManager/ResTable"
1a6cd84d64cce1263958d827f8c7c90c531e5de6 17-Jan-2017 Ben Wagner <bungeman@google.com> Merge "Remove SkDevice.h includes."
9bddb4841371de1d83affeddef12b5bca3e69647 14-Jan-2017 Roozbeh Pournader <roozbeh@google.com> Update locale data from in-tree ICU

Also add back script information for Yiddish old code (ji) that was
removed in ICU.

Bug: 26756576
Test: none
Change-Id: Ia785f86bf0407aeed6134ef9d44e504494256da2
ndroidfw/LocaleDataTables.cpp
4115c6431321542de07ecbc45ac7352956e364b7 14-Jan-2017 Roozbeh Pournader <roozbeh@google.com> Treat Latin American locales specially
am: cf246af30d

Change-Id: I98ff3b1774e6cc3511fcd296d9cec5ccfce03c40
9013325c3a6f34f6a44c1b5f20a6981e37089afb 14-Jan-2017 Zak Cohen <zakcohen@google.com> Merge changes from topic 'vrmode'

* changes:
Set ui mode in UiModeManagerService to vrheadset when VR mode is enabled.
Introduce new UI_MODE_TYPE_VR_HEADSET and qualifier.
c2d9470aa9d92be3ffb998ecbbff157b94fdee12 13-Jan-2017 Ben Wagner <bungeman@google.com> Remove SkDevice.h includes.

SkDevice.h is being removed from Skia. This removes these already unused
includes which mention this file.

Test: refactoring CL. Existing unit tests still pass.

Change-Id: I8340a5822ad2b75c54fe0dca1303ceab9bbee805
wui/SkiaCanvas.cpp
cf246af30d007050f8b16bbbae6fbdf8d0559cca 11-Jan-2017 Roozbeh Pournader <roozbeh@google.com> Treat Latin American locales specially

Due to legacy reasons, Android translations of European Spanish were
kept under 'es', while Latin American Spanish translations were kept
under 'es-US'. The combination of this, and the new locale
preference rules in Nougat, resulted in 'es' winning over 'es-US' for
all Latin American locales, since 'es' was a direct ancestor, while
'es-US' was just a fallback.

The changes in Nougat had assumed that app developers would put Latin
American Spanish translations under 'es-419', but that could create a
backward-compatibility problem under older Android versions that did
not support three-digit region codes properly.

This CL keeps the Nougat logic and its locale parent tree, but
special-cases es-US and es-MX to be treated as equivalents of es-419
in cases where they are present and es-419 is not.

Bug: 31545805
Bug: 34126460
Test: unit tests are included
Change-Id: Iab26f41294587ee044685a5a6560520c7cbb06f7
(cherry picked from commit a192a8ced65ceea8bfe44f0eac6a394cbf80d936)
ndroidfw/LocaleData.cpp
ndroidfw/tests/ConfigLocale_test.cpp
383ac409df65269d5fff247a86fa6ac0d90d2863 13-Jan-2017 Roozbeh Pournader <roozbeh@google.com> Merge "Treat Latin American locales specially"
6f773a0d8717162f81ff21d943baaa539a2d6c7e 29-Sep-2016 Mark Salyzyn <salyzyn@google.com> Replace cutils/log.h and android/log.h with log/log.h

Test: compile
Bug: 34250038
Change-Id: I42185a879beaa9bb244f53a968800392b854ac45
ndroidfw/AttributeResolution.cpp
wui/debug/FatalBaseDriver.cpp
wui/debug/GlesErrorCheckWrapper.cpp
wui/hwui/Bitmap.cpp
610fbb3afd8d23fbc1eb8e09114f9d1afbfb3bb9 12-Jan-2017 Ben Wagner <bungeman@google.com> Merge "Use FatVector instead of SkAutoMalloc in VulkanManager."
22221f6981a935cded7e4d2f91935e8941294b8b 12-Jan-2017 Mark Salyzyn <salyzyn@google.com> Merge "resolve merge conflicts of ec7e2a164c37 to master"
eec27d51d2d8dae2ac54a11229b55cd1da4e84cf 11-Jan-2017 Ben Wagner <bungeman@google.com> Use FatVector instead of SkAutoMalloc in VulkanManager.

Skia is looking to make SkAutoMalloc private and will be moving it.
Using FatVector instead will make this code both less dependent on Skia
internals and more performant.

Test: refactoring CL. Existing unit tests still pass.

Change-Id: If9de10059775b75e1ab89078eacede2e20e91299
wui/renderthread/VulkanManager.cpp
173215d1b20b70908a9d1807f1372bd95b7ad5f1 12-Jan-2017 Mark Salyzyn <salyzyn@google.com> resolve merge conflicts of ec7e2a164c37 to master

Test: compile
Bug: 26552300
Bug: 31289077
Change-Id: I49c6e41b79061e2b3c0352e3ac8fa5ebb152b6f5
ec7e2a164c3792fbaab74f6a9eab7c3cb06296e2 12-Jan-2017 Mark Salyzyn <salyzyn@google.com> Merge "Replace cutils/log.h and log/logger.h with android/log.h or log/log.h (part deux)" am: 2225a0640b am: d1740f0f5b
am: 6dacea63d9

Change-Id: Ife229cc450dbbb5f43941fcd1b08b86f0e41a779
6dacea63d9923d6f451095b7d7b2f203ba7e960e 12-Jan-2017 Mark Salyzyn <salyzyn@google.com> Merge "Replace cutils/log.h and log/logger.h with android/log.h or log/log.h (part deux)" am: 2225a0640b
am: d1740f0f5b

Change-Id: I78430cd21cf1186ccc2b48ee4ee8a9b07decde5e
ba3028c1fc9fca2d45acc841557da2c9a83923bf 30-Nov-2016 Seigo Nonaka <nona@google.com> Introduce set/getFontVariationSettings.

This CL enables developers to specify axis values to the underlying
font collection. The specification of the font variation settings is
the same as the CSS font-variation-settings attribute in CSS working
draft as of 2016-11-30.

Code example: Here is an example to set width 100 and weight 1.5.

TextView tv = (TextView) findViewById(R.id.textView);
tv.setFontVariationSettings("'wdth' 100, 'wght' 1.5");

Bug: 33062398
Test: Manually done. Ran FrameworksGraphicsTests, CtsGraphicsTestCases
and CtsWidgetTestCases
Change-Id: I249d464f8cdaa56017a987588b94ed685aadeb58
wui/hwui/MinikinSkia.cpp
wui/hwui/MinikinSkia.h
wui/hwui/Typeface.cpp
wui/hwui/Typeface.h
e4e375c7493a06af89151b7cbd44cf07930d521b 12-Jan-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Follow minikin::FontFamily constructor signature change."
da431a22da38f9c4085b5d71ed9a9c6122c6a5a6 29-Dec-2016 Adam Lesinski <adamlesinski@google.com> libandroidfw: Add new support for shared libraries

This adds support for shared resource libraries in the new
ResTable/AssetManager implementation.

The dynamic package map encoded in resources.arsc is parsed
and stored with LoadedArsc, and combined to form a resolved table
in AssetManager2.

Benchmarks show that this implementation is an order of magnitude
faster on angler-userdebug (make libandroidfw_benchmarks).

Test: libandroidfw_tests
Change-Id: I57c80248728b63b162bf8269ac9495b53c3e7fa0
ndroidfw/Android.bp
ndroidfw/ApkAssets.cpp
ndroidfw/AssetManager2.cpp
ndroidfw/Chunk.h
ndroidfw/ChunkIterator.cpp
ndroidfw/LoadedArsc.cpp
ndroidfw/Util.cpp
ndroidfw/include/androidfw/ApkAssets.h
ndroidfw/include/androidfw/AssetManager2.h
ndroidfw/include/androidfw/Chunk.h
ndroidfw/include/androidfw/LoadedArsc.h
ndroidfw/include/androidfw/ResourceTypes.h
ndroidfw/include/androidfw/Util.h
ndroidfw/tests/ApkAssets_test.cpp
ndroidfw/tests/AssetManager2_bench.cpp
ndroidfw/tests/AssetManager2_test.cpp
ndroidfw/tests/LoadedArsc_test.cpp
ndroidfw/tests/ResTable_test.cpp
ndroidfw/tests/Theme_test.cpp
ndroidfw/tests/data/lib/AndroidManifest.xml
ndroidfw/tests/data/lib/R.h
ndroidfw/tests/data/lib/build
ndroidfw/tests/data/lib/lib.apk
ndroidfw/tests/data/lib/res/values/values.xml
ndroidfw/tests/data/lib_one/AndroidManifest.xml
ndroidfw/tests/data/lib_one/R.h
ndroidfw/tests/data/lib_one/build
ndroidfw/tests/data/lib_one/lib_one.apk
ndroidfw/tests/data/lib_one/res/values/values.xml
ndroidfw/tests/data/lib_two/AndroidManifest.xml
ndroidfw/tests/data/lib_two/R.h
ndroidfw/tests/data/lib_two/build
ndroidfw/tests/data/lib_two/lib_two.apk
ndroidfw/tests/data/lib_two/res/values/values.xml
ndroidfw/tests/data/libclient/AndroidManifest.xml
ndroidfw/tests/data/libclient/R.h
ndroidfw/tests/data/libclient/build
ndroidfw/tests/data/libclient/libclient.apk
ndroidfw/tests/data/libclient/res/values/values.xml
a192a8ced65ceea8bfe44f0eac6a394cbf80d936 11-Jan-2017 Roozbeh Pournader <roozbeh@google.com> Treat Latin American locales specially

Due to legacy reasons, Android translations of European Spanish were
kept under 'es', while Latin American Spanish translations were kept
under 'es-US'. The combination of this, and the new locale
preference rules in Nougat, resulted in 'es' winning over 'es-US' for
all Latin American locales, since 'es' was a direct ancestor, while
'es-US' was just a fallback.

The changes in Nougat had assumed that app developers would put Latin
American Spanish translations under 'es-419', but that could create a
backward-compatibility problem under older Android versions that did
not support three-digit region codes properly.

This CL keeps the Nougat logic and its locale parent tree, but
special-cases es-US and es-MX to be treated as equivalents of es-419
in cases where they are present and es-419 is not.

Bug: 31545805
Bug: 34126460
Test: unit tests are included
Change-Id: Iab26f41294587ee044685a5a6560520c7cbb06f7
ndroidfw/LocaleData.cpp
ndroidfw/tests/ConfigLocale_test.cpp
96bf5985d5a360568832fd26b6d5b44236c9343e 29-Sep-2016 Mark Salyzyn <salyzyn@google.com> Replace cutils/log.h and log/logger.h with android/log.h or log/log.h
(part deux)

Test: compile
Bug: 26552300
Bug: 31289077
Change-Id: I7417936c4d3666608fccfe51a312c90ecefba2fb
wui/JankTracker.cpp
wui/Properties.cpp
wui/renderthread/EglManager.cpp
wui/tests/macrobench/TestSceneRunner.cpp
7ad1110ecd6a840fcd2895c62668828a1ca029c6 29-Oct-2016 Adam Lesinski <adamlesinski@google.com> New implementation of AssetManager/ResTable

The multiwindow model and Resources-per-activity
model that came in N puts greater demands on AssetManagers.
They are created whenever window dimensions change, which
can be frequently. There is a need to be able to cheaply
create a new AssetManager for each Activity, which shares
a lot of underlying state.

In order to make the creation of AssetManagers cheap,
we need a new implementation of the native AssetManager
and ResTable to support immutable representations of
APKs. This new data structure/class is ApkAssets.

ApkAssets have the same functionality of an AssetManager, except
that they operate on a single APK, and they do not do any caching.
Once loaded, they are immutable.

ApkAssets will be exposed as a Java object, with its implementation in
native code. The existing Java StringBlock will be owned by ApkAssets,
which means that Strings can be shared across AssetManagers.

ApkAssets can be cached by the ResourcesManager. Creating an AssetManager
requires only a list of ApkAssets and a configuration.

AssetManager2 (named with the suffix '2' for now while transitioning
to the new implementation) caches bags that are accessed.

Since ApkAssets are expected to be kept around longer, they do more validation
of the resource table, which cause slower load times. Measured on an angler-userdebug,
loading the framework assets takes 11ms with ApkAssets, and 2ms with the old
AssetManager implementation.

The tradeoff is that there does not need to be any security checks once an ApkAssets
is loaded, and regular resource retrieval is faster. Measured on an angler-userdebug,
accessing resource (android:string/ok) with many locales takes 18us with AssetManager2,
and 19us with AssetManager (this is per resource, so these add up).

Test: make libandroidfw_tests
Change-Id: Id0e57ee828f17008891fe3741935a9be8830b01d
ndroidfw/Android.bp
ndroidfw/ApkAssets.cpp
ndroidfw/AssetManager2.cpp
ndroidfw/Chunk.h
ndroidfw/ChunkIterator.cpp
ndroidfw/LoadedArsc.cpp
ndroidfw/ResourceTypes.cpp
ndroidfw/include/androidfw/ApkAssets.h
ndroidfw/include/androidfw/AssetManager2.h
ndroidfw/include/androidfw/ByteBucketArray.h
ndroidfw/include/androidfw/LoadedArsc.h
ndroidfw/include/androidfw/ResourceTypes.h
ndroidfw/include/androidfw/Util.h
ndroidfw/tests/Android.mk
ndroidfw/tests/ApkAssets_test.cpp
ndroidfw/tests/AssetManager2_bench.cpp
ndroidfw/tests/AssetManager2_test.cpp
ndroidfw/tests/AttributeResolution_test.cpp
ndroidfw/tests/BenchMain.cpp
ndroidfw/tests/LoadedArsc_test.cpp
ndroidfw/tests/Main.cpp
ndroidfw/tests/TestHelpers.cpp
ndroidfw/tests/TestHelpers.h
ndroidfw/tests/TestMain.cpp
ndroidfw/tests/Theme_bench.cpp
ndroidfw/tests/Theme_test.cpp
ndroidfw/tests/data/styles/R.h
ndroidfw/tests/data/styles/res/values/styles.xml
ndroidfw/tests/data/styles/styles.apk
4a07b95746fe794ec5411aad9f5334178fb641b4 11-Jan-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Fix Skia merge by fixing API mismatch."
ba5124b48bff2455c089e803ea6ffcc197a26c51 11-Jan-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Fix dirty Z prop"
624ad836ec7f174369df30219099260b951b7ef4 11-Jan-2017 Derek Sollenberger <djsollen@google.com> Fix Skia merge by fixing API mismatch.

Test: compile
Change-Id: Ie524af03fd3c85cceac13abdcdd9af8ef6ca6bb9
wui/VkLayer.cpp
wui/tests/unit/RenderNodeDrawableTests.cpp
wui/tests/unit/SkiaPipelineTests.cpp
1a6acdbb86c3e72bdb0a4dcab3bda58cbc4ea34c 13-Dec-2016 Zak Cohen <zakcohen@google.com> Introduce new UI_MODE_TYPE_VR_HEADSET and qualifier.

Bug: 30989383
Test: Unit test for aapt2
Change-Id: I66dc65af6327b94fed74538bee08cada0b8be4fa
ndroidfw/ResourceTypes.cpp
ndroidfw/include/androidfw/ResourceTypes.h
41282b7629714b397b43c81c8c25e9d15e2bb935 11-Jan-2017 John Reck <jreck@google.com> Fix dirty Z prop

Test: none
Change-Id: I886d50e58d6f404c6d19860a3032ca1b2854e073
wui/Animator.cpp
6efc30e1b71862d3dc63235e4e482b9cd0e185ab 11-Jan-2017 Greg Daniel <egdaniel@google.com> Merge "Add support for dummy draws for Vulkan webview and texture views."
63b18b3fda9e413047bc57c4023991ab897b6e5b 11-Jan-2017 Greg Daniel <egdaniel@google.com> Merge "Break Layer class into Gl and Vulkan subclasses"
db15537e6e0d35c7ed3b1bef45e421760be70683 11-Jan-2017 Mark Salyzyn <salyzyn@google.com> resolve merge conflicts of 082a1721b516 to master

Test: compile
Bug: 26552300
Bug: 31289077
Change-Id: I17f178f425975c1c0dbd48091d25b101956d505e
082a1721b5165420e11319b98eefaa35d0feb844 11-Jan-2017 Mark Salyzyn <salyzyn@google.com> Merge "Replace cutils/log.h and log/logger.h with log/log.h" am: e7fcbcb991 am: 6143cbf1e5
am: ef8ccc8510

Change-Id: If6673f44c7d08960f3a0a86703cebf577bd21f1b
ef8ccc8510d2c66c4807f15962c3d53235af5fc5 11-Jan-2017 Mark Salyzyn <salyzyn@google.com> Merge "Replace cutils/log.h and log/logger.h with log/log.h" am: e7fcbcb991
am: 6143cbf1e5

Change-Id: Id192d8dd973fe9e70acab72bae9856bc8a62ac75
e7fcbcb9919e8f1c0fc5935b8a6aeb0b0dec9700 11-Jan-2017 Mark Salyzyn <salyzyn@google.com> Merge "Replace cutils/log.h and log/logger.h with log/log.h"
a0a4828614edfd633ab86f04408e7f4e55b491dd 07-Jan-2017 Seigo Nonaka <nona@google.com> Follow minikin::FontFamily constructor signature change.

minikin::FontFamily no longer has addFont function, instead it accept
vector of Fonts in its constructor. To follow this signature change,
holding minikin::Font instance in native and build minikin::FontFamily
instance in FontFamily.freeze() method.

Test: hwui test passed
Change-Id: Id10ca97f6f6f5bbe4999c1ad2736423a204d6e87
wui/hwui/Typeface.cpp
d645ac4d10cf4c987dfef10ed56676fc8f436a4f 11-Jan-2017 John Reck <jreck@google.com> Merge "Fix a use-of-uninitialized-value warning." am: 95ef9ec5b1 am: 44e14d0d2b am: 5f3ed9b7de
am: 68dce922af

Change-Id: Id1c35f315618663a6139c2729871cdfd02fe451f
68dce922af4f3611fc5e6bfaf5eaa76d5db262f8 11-Jan-2017 John Reck <jreck@google.com> Merge "Fix a use-of-uninitialized-value warning." am: 95ef9ec5b1 am: 44e14d0d2b
am: 5f3ed9b7de

Change-Id: I6e35191f4ddda2590eae4cfac9af5c781d0e493b
5f3ed9b7dec34ea9cdced3b16ee7b7094f8b09aa 11-Jan-2017 John Reck <jreck@google.com> Merge "Fix a use-of-uninitialized-value warning." am: 95ef9ec5b1
am: 44e14d0d2b

Change-Id: I5e5243c75f446d46bb81252583cfa46e47d60309
95ef9ec5b11d7e00281e35af94461ad9eb5fcab6 11-Jan-2017 John Reck <jreck@google.com> Merge "Fix a use-of-uninitialized-value warning."
a483173c78fb453b73308a9b44ce54fb3878ed0e 11-Jan-2017 George Burgess IV <gbiv@google.com> Fix a use-of-uninitialized-value warning.

This warning was generated by the static analyzer:
warning: The left expression of the compound assignment is an
uninitialized value. The computed value will also be garbage
*mDirtyMask |= animator->dirtyMask();

This can be fixed by initializing dirtyMask before using it in
AnimateFunctor.

Bug: None
Test: Static analyzer no longer complains about this.
Change-Id: I892749079cf93a012f1bed059a3f0c8bbaed9d7e
wui/AnimatorManager.cpp
45ec62ba72c5017fae7d8baab20bfb0d4c99c627 04-Jan-2017 Greg Daniel <egdaniel@google.com> Add support for dummy draws for Vulkan webview and texture views.

Test: manual testing
Change-Id: Iaec8c3a34367673c281665ff6c6e97d1ce532265
wui/Android.mk
wui/DeferredLayerUpdater.cpp
wui/DeferredLayerUpdater.h
wui/GpuMemoryTracker.cpp
wui/GpuMemoryTracker.h
wui/VkLayer.cpp
wui/VkLayer.h
wui/pipeline/skia/GLFunctorDrawable.cpp
wui/pipeline/skia/LayerDrawable.cpp
wui/renderstate/RenderState.cpp
wui/renderstate/RenderState.h
wui/renderthread/VulkanManager.cpp
wui/tests/unit/GpuMemoryTrackerTests.cpp
8cd3edfa15cc9cdbffa935d19ab894426b08d174 09-Jan-2017 Greg Daniel <egdaniel@google.com> Break Layer class into Gl and Vulkan subclasses

Test: manual testing
Change-Id: Ibd2beed39de3ac6da7448e96496253cfe427dfbb
wui/Android.mk
wui/Caches.cpp
wui/DeferredLayerUpdater.cpp
wui/DeferredLayerUpdater.h
wui/GlLayer.cpp
wui/GlLayer.h
wui/GlopBuilder.cpp
wui/GlopBuilder.h
wui/Layer.cpp
wui/Layer.h
wui/OpenGLReadback.cpp
wui/OpenGLReadback.h
wui/RecordedOp.h
wui/RecordingCanvas.cpp
wui/SkiaShader.cpp
wui/SkiaShader.h
wui/Texture.h
wui/VkLayer.h
wui/pipeline/skia/LayerDrawable.cpp
wui/pipeline/skia/SkiaOpenGLPipeline.cpp
wui/pipeline/skia/SkiaVulkanPipeline.cpp
wui/renderstate/RenderState.cpp
wui/renderthread/OpenGLPipeline.cpp
wui/tests/unit/DeferredLayerUpdaterTests.cpp
wui/tests/unit/FrameBuilderTests.cpp
cfc07d4b2be8c93204b4f224ca3bc44f6329bee2 10-Jan-2017 John Reck <jreck@google.com> Merge "Support EGL_KHR_partial_update without EGL_EXT_buffer_age" am: f66126c828 am: 620d4c24de
am: 43818c45a4

Change-Id: Ia093688d4c9fc2e923daf5da6d5b6d67c6b56975
43818c45a46480504f1a96ba60d7d58981e16c49 10-Jan-2017 John Reck <jreck@google.com> Merge "Support EGL_KHR_partial_update without EGL_EXT_buffer_age" am: f66126c828
am: 620d4c24de

Change-Id: I4fdb8ecba5a08f712871d3b99e0286c61f6d0806
1deac99c557d4be757c266e066a0d614c1959474 27-Sep-2016 John Reck <jreck@google.com> Support EGL_KHR_partial_update without EGL_EXT_buffer_age

Bug: 31334677
Test: manual && hwuimacro --onscreen partialdamage

Change-Id: I9b346b4053ec12c8a78a143a4dc0e708c44888a2
wui/renderthread/EglManager.cpp
52eb4e01a49fe2e94555c000de38bbcbbb13401b 29-Sep-2016 Mark Salyzyn <salyzyn@google.com> Replace cutils/log.h and log/logger.h with log/log.h

Test: compile
Bug: 26552300
Bug: 31289077
Change-Id: I578b15b48f0fc2807a92abbc69a377c3d2191496
ndroidfw/BackupData.cpp
ndroidfw/BackupHelpers.cpp
ndroidfw/include/androidfw/CursorWindow.h
wui/DamageAccumulator.cpp
wui/DeviceInfo.cpp
wui/GpuMemoryTracker.h
wui/Interpolator.cpp
wui/JankTracker.cpp
wui/PixelBuffer.h
wui/Properties.cpp
wui/SkiaCanvasProxy.cpp
wui/hwui/MinikinSkia.cpp
wui/hwui/MinikinUtils.cpp
wui/utils/GLUtils.h
nput/PointerController.cpp
nput/SpriteController.cpp
c543713babea6bcb83401726f70a3f25344131fe 09-Jan-2017 Derek Sollenberger <djsollen@google.com> Merge "Remove clipRegion from the public API."
1198e13594e850ba3e3fe92bd08513cb0eb02248 07-Jan-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "libandroidfw: Revert null check in ApplyStyle"
06d3e8fec7e2b29f99d755bee849023d88957953 06-Jan-2017 Adam Lesinski <adamlesinski@google.com> libandroidfw: Revert null check in ApplyStyle

The out parameter `out_indices` is expected to be non-null
and so the extra null check adds a cost to performance
and opens the door to misusing the API by not supplying
`out_indices`.

Test: make libandroidfw_tests
Change-Id: Ie66fd837c5e24ec2838156e7b67f54c15cd27933
ndroidfw/AttributeResolution.cpp
ndroidfw/include/androidfw/AttributeResolution.h
ndroidfw/tests/AttributeResolution_test.cpp
770e0b500793bce45442b5f403913d14017df4e8 05-Jan-2017 Stan Iliev <stani@google.com> Implement image draw functions in SkiaCanvasProxy

Implement onDrawImage, onDrawImageRect and onDrawImageLattice in
SkiaCanvasProxy. This allows to replay SkPicture with HWUI pipeline.
This CL is needed to keep up with other changes in SkiaRecordingCanvas,
because Canvas::drawBitmap is translated to SkCanvas::drawImage.

Test: Built and ran angler-userdebug, ran HWUI unit tests.
Change-Id: Icd6cfd3bc51628a2c336faf4c95dfd5366a949a9
wui/SkiaCanvasProxy.cpp
wui/SkiaCanvasProxy.h
b29b16e5423fe7deab8ebf3da512c6d2192f19b5 04-Jan-2017 Derek Sollenberger <djsollen@google.com> Remove clipRegion from the public API.

This API is difficult to support for printing and has other negative
effects as it does not respect the current matrix/clip.

Test: compile
Bug: 14650725
Change-Id: I71f9bd687d446c7ce8910d755421aad8e09458db
wui/CanvasState.cpp
wui/CanvasState.h
wui/ClipArea.h
wui/FontRenderer.cpp
wui/RecordingCanvas.cpp
wui/RecordingCanvas.h
wui/SkiaCanvas.cpp
wui/SkiaCanvas.h
wui/SkiaCanvasProxy.cpp
wui/SkiaCanvasProxy.h
wui/Snapshot.cpp
wui/Snapshot.h
wui/hwui/Canvas.h
8b6fe1d8948bbd6479387ab1015a306022b55db4 19-Dec-2016 Sergei Vasilinetc <sergeyv@google.com> Merge "Support Bitmap.copy for hardware bitmaps"
05126d151eb3caa85bd3a039cffb6e37940c3fa4 16-Dec-2016 sergeyv <sergeyv@google.com> Support Bitmap.copy for hardware bitmaps

Test: android.uirendering.cts.testclasses.HardwareBitmapTests#testBitmapConfig*
bug:30999911
Change-Id: I2e80dff914bfa0666290701072ac93d30d218e8d
wui/hwui/Bitmap.cpp
b66b8bb4a089593ee7c20ad7f59980c16dde9cc9 16-Dec-2016 Stan Iliev <stani@google.com> Ensure root render node clip cannot expand beyond dirty area

Use new Skia API to enfore clip restriction for root render node.
This brings Skia pipeline in line with HWUI. Unit test is
updated to reflect the new behaviour.

Test: Built and ran angler-eng, ran HWUI unit tests.

Change-Id: Iffce70fd37b6aff45eb6a23c8b1a64f45b5f1463
wui/pipeline/skia/SkiaPipeline.cpp
wui/tests/unit/SkiaPipelineTests.cpp
6df179cd73674f81501b302f4a3a97b5ec3eab9b 16-Dec-2016 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Revert "try to stop using exotic clipps""
cf4d807481255116e23442ce5226d2ced3361943 16-Dec-2016 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Add new RGBA_F16 bitmap config"
10e237e5c8a827d62f8aa21925abe6b3b86f5ab6 16-Dec-2016 Joe Onorato <joeo@google.com> Merge changes from topic 'incident_1'

* changes:
First checkin of incident reporting.
Add a native class to interact with DropBoxManager.
66b9d4486abb9e6d1edc624cd9ff522b12acece0 16-Dec-2016 Chris Craik <ccraik@google.com> Revert "try to stop using exotic clipps"

This reverts commit 834653bcf80a3879c4d80004469053f205d45b69.

Change-Id: Ie8cb787490832a0be154ec1263313982157faa81
wui/pipeline/skia/SkiaPipeline.cpp
wui/tests/unit/CanvasStateTests.cpp
wui/tests/unit/FrameBuilderTests.cpp
wui/tests/unit/RecordingCanvasTests.cpp
wui/tests/unit/SkiaPipelineTests.cpp
wui/utils/TestWindowContext.cpp
9505a6552764461c22ce48f1ac13d025d23e1579 14-Dec-2016 Romain Guy <romainguy@google.com> Add new RGBA_F16 bitmap config

This configuration uses 64 bits per pixel. Heach component is stored as a
half precision float value (16 bits). Half floats can be decoded/encoded
using android.util.Half.

RGBA_F16 bitmaps are used to decode wide-gamut images stored in 16 bit
formats (PNG 16 bit for instance). aapt is currently not aware of PNG
16 bits so such files must be placed in raw/ resource directories.

This first pass provides only partial drawing support with hardware
acceleration. RGBA_F16 bitmaps are stored in linear space and need
to be encoded to gamma space with the appropriate OETF to be rendered
properly on Android's current surfaces. They are however suitable for
linear blending. Full rendering support will be provided in a future
CL (BitmapShaders might be a bit tricky to handle properly during
shader generation).

Bug: 32984164
Test: bit CtsGraphicsTestCases:android.graphics.cts.BitmapRGBAF16Test

Change-Id: I328e6b567441a1b9d152a3e7be944a2cf63193bd
wui/OpenGLReadback.cpp
wui/Texture.cpp
wui/hwui/Bitmap.cpp
e59dc4124a337881c0a585d3a5ce612ecd8f5e97 16-Dec-2016 TreeHugger Robot <treehugger-gerrit@google.com> Merge "try to stop using exotic clipps"
984c73ba738824927b9261d5d128abe6d9b9cd9a 16-Dec-2016 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Modify savelayer to save matrix and clip for Skia pipeline"
4c80f878208d6c95874f8beccce283d38e26d5ae 16-Dec-2016 John Reck <jreck@google.com> Merge "HWUI: prepare script for marlin & sailfish Test: this is a bench infrastucture"
711911bb95d0158ddd7d6d0539525f9de92714dd 15-Dec-2016 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Actually fix pixelcopy for 90/180/270 rotation"
68885e38b86405b333e3f8fd4ff0a104889147c4 14-Dec-2016 Stan Iliev <stani@google.com> Modify savelayer to save matrix and clip for Skia pipeline

Modify SkiaCanvas::saveLayer to always save matrix and clip and
match HWUI behaviour. Also ensure android state tracking
behavior matches that of the Skia API (partial saves not
supported). This change is fixing SaveLayerAnimation
macrobench when buffer age is disabled.
Add a HWUI unit test that verifies clip and matrix are restored.

Test: built and ran angler-eng, ran hwui unit tests
bug:33429678
Change-Id: I62e429f9746518fef67663b0dd99ac499bf31af3
wui/SkiaCanvas.cpp
wui/tests/unit/RenderNodeDrawableTests.cpp
834653bcf80a3879c4d80004469053f205d45b69 14-Dec-2016 Mike Reed <reed@google.com> try to stop using exotic clipps

Change-Id: Id11d7744daa69c19fdc9b7723862b3d71ad21384
wui/pipeline/skia/SkiaPipeline.cpp
wui/tests/unit/CanvasStateTests.cpp
wui/tests/unit/FrameBuilderTests.cpp
wui/tests/unit/RecordingCanvasTests.cpp
wui/tests/unit/SkiaPipelineTests.cpp
wui/utils/TestWindowContext.cpp
1754d744a7a34731ffc07af1bc3dbfcb06864ab0 22-Nov-2016 Joe Onorato <joeo@google.com> First checkin of incident reporting.

There are a few major pieces here:

incidentd
---------
This daemon (started by init) runs and accepts incoming requests to take
incident reports. When prompted, it calls into various system services
and fills in an IncidentProto data structure, and then writes the report
into dropbox.

The next steps for incidentd:
- Security review of SELinux policies. These will be a subset of
the dumpstate permissions. Until this is done, incidentd is
not started at boot time.

incident
--------
This shell command calls into incidentd, and can initiate an incident
report and either capture the output or leave for dropbox.

incident_report
---------------
This host side tool can call adb shell with the correct parameters
and also format the incident report as text. This formatting code
was left of the device on purpose. Right now it's pretty small, but
as the number of fields increases, the metadata and code to do the
formatting will start to grow.

The incident_report command also contains a workaround to let it
work before incidentd is turned on by default. Right now, it is
implemented to call adb shell dumpsys <service> --proto directly,
whereas in the future it will go through the full incidentd flow.

incident_section_gen
--------------------
A build-time tool that generates a stripped down set of information
about the fields that are available.

libincident
-----------
This library contains the code to connect to incidentd, and the
meta proto definitions that are used by the framework protos.
The basics are here now, but they are not fully fleshed out yet.
The privacy.proto file contains annotations that can go in the
proto file that we will later use to filter which fields are
uploaded, and which are used by local sources. For example, a
device in a test lab is safe to upload much much more information
than a real user. These will share the same mechanism, but the
user's output will be filtered according to these annotations.

frameworks/core/proto
---------------------
These .proto files contain the definitions of the system's
output. There is one master android.os.IncidentProto file that
is the top level of an incident report, but some other services
(notification, fingerprint, batterystats, etc) will have others
that are used directly by the logging mechanism.

Other files which are shared by several of the services also go
here, such as ComponentName, Locale, Configuration, etc. There
will be many more.

There is also a first iplementation of a dump method handling
--proto in the fingerprint service.

IncidentManager
---------------
The java API to trigger an incident report.

Test: Not written yet
Change-Id: I59568b115ac7fcf73af70c946c95752bf33ae67f
ncident/Android.mk
ncident/include/android/os/IncidentReportArgs.h
ncident/proto/android/privacy.proto
ncident/src/IncidentReportArgs.cpp
de5b027d2cbd430ef5007911cd73084c081afaab 24-Nov-2016 Joe Onorato <joeo@google.com> Add a native class to interact with DropBoxManager.

Test: Not written yet
Change-Id: I63ed888bd76f75c78a244a1bffae2d26f3b5f055
ervices/Android.mk
ervices/include/android/os/DropBoxManager.h
ervices/src/os/DropBoxManager.cpp
eb418edae488c0c13edcc10e829bbb0e21eb23ac 15-Dec-2016 John Reck <jreck@google.com> Actually fix pixelcopy for 90/180/270 rotation

Bug: 33421965
Test: PixelCopyTest testWindow* CTS tests
Change-Id: I1b49b3643c5d030c3d2de95de4a0ce3a4ff0111d
wui/OpenGLReadback.cpp
ed4d58cc3331795ed7f141eabc1fce784b4c110b 14-Dec-2016 Stan Iliev <stani@google.com> Fix failing SkiaPipeline unit tests

Fix SkiaPipeline unit tests failure, caused by double deallocation
of SkCanvas in DeferLayer.

Test: build and ran angler-eng, ran HWUI unit tests.
Change-Id: I4a0a0113588e40a8ed32093d57efc6af3c0d7745
wui/tests/unit/SkiaPipelineTests.cpp
0a2afc5061ab8f6904215c804cac6828cfaadcac 15-Dec-2016 Colin Cross <ccross@android.com> Move hwui private headers to frameworks/base/libs/hwui/private am: 19def9943a am: 174d150673 am: 6b629b7f38
am: 904b4077ca

Change-Id: I2de0fa2990aab71b1afdc46bce63830c8b3ec904
a515f11cc5c51b9ea6d32da9d63c5b844aecb778 15-Dec-2016 Colin Cross <ccross@android.com> Convert libstorage to Android.bp am: 3ac2be93a9 am: f12ae4bed7 am: 791d02818a
am: fe9ffc29ff

Change-Id: Ia785d394bebb10757b031f14e368133e849c4c42
87ba88ce6f195b0767317612a85b1493ec8692d8 15-Dec-2016 Colin Cross <ccross@android.com> Move libstorage includes into frameworks/base/lib/storage am: e78f853e46 am: afef87b1ba am: f142640afb
am: e6120caf2a

Change-Id: I2617bff54282647c2af5755349bf35d650f3d4c8
904b4077caff88e9fe8286984c9cbb4defac6245 15-Dec-2016 Colin Cross <ccross@android.com> Move hwui private headers to frameworks/base/libs/hwui/private am: 19def9943a am: 174d150673
am: 6b629b7f38

Change-Id: Ic62fcf3d48ad58c1dec0fc6ddf3eaacc8140cc18
fe9ffc29ffe2ba321802871edf26b34cb903f1a7 15-Dec-2016 Colin Cross <ccross@android.com> Convert libstorage to Android.bp am: 3ac2be93a9 am: f12ae4bed7
am: 791d02818a

Change-Id: I73bb8a7332a6ba9aebf413cf9f0889ff9d98a5de
e6120caf2a77943b64074cbf07879819d3127a9a 15-Dec-2016 Colin Cross <ccross@android.com> Move libstorage includes into frameworks/base/lib/storage am: e78f853e46 am: afef87b1ba
am: f142640afb

Change-Id: I9f084034f960478ee6141158a0a0c5119d1879a4
6b629b7f383b8b8e866b19f884ce680446848ca1 15-Dec-2016 Colin Cross <ccross@android.com> Move hwui private headers to frameworks/base/libs/hwui/private am: 19def9943a
am: 174d150673

Change-Id: I0d97c3bc96c0beebc5988e4dca22ba4d5d1f982c
791d02818a6f6b8454b7a6baf9f6f150c0cc6a18 15-Dec-2016 Colin Cross <ccross@android.com> Convert libstorage to Android.bp am: 3ac2be93a9
am: f12ae4bed7

Change-Id: I1255ee2b166b73a79b19035d59994204bb268c82
f142640afb2e9b750481ad499cb1e43f5fda8b2c 15-Dec-2016 Colin Cross <ccross@android.com> Move libstorage includes into frameworks/base/lib/storage am: e78f853e46
am: afef87b1ba

Change-Id: Iff9c41710528af37a788973ac4a1080024808c95
91d6354cde90b6625d4af6a5d909d886bf602a49 15-Dec-2016 sergeyv <sergeyv@google.com> HWUI: fix support RGB_565 for hardware bitmaps

Test: hwuimacro hwBitmap565
bug:30999911
Change-Id: Ie4128aba95a92041b7388c46d0b2109feaae302a
wui/hwui/Bitmap.cpp
wui/tests/common/BitmapAllocationTestUtils.h
wui/tests/common/scenes/HwBitmap565.cpp
19def9943abae2455ad6fa508f176fb5e1c4c1fd 14-Dec-2016 Colin Cross <ccross@android.com> Move hwui private headers to frameworks/base/libs/hwui/private

hwui already exports most of its headers, move its private headers
into its source directory.

Bug: 33630870
Test: m -j native
Change-Id: I4968d5aaaa68d9e92c826841d20f29cef349c9d8
wui/private/README
wui/private/hwui/DrawGlInfo.h
3ac2be93a9f52103ec60a2f13cbaf31017cfdf54 14-Dec-2016 Colin Cross <ccross@android.com> Convert libstorage to Android.bp

See build/soong/README.md for more information.

Test: m -j native
Change-Id: Ieb34d79af10e4e7cd146d0d40fd6946499dd1da0
torage/Android.bp
torage/Android.mk
e78f853e469e37bc2cc4f22d9f102d38d756af04 14-Dec-2016 Colin Cross <ccross@android.com> Move libstorage includes into frameworks/base/lib/storage

Move the libstorage includes out of the global include path and into
frameworks/base/lib/storage/include, and export it.

Bug: 33630870
Test: m -j native
Change-Id: Idc0735360abc703496b9bc46d1a76ce8039af0d1
torage/Android.mk
torage/include/storage/IMountService.h
torage/include/storage/IMountServiceListener.h
torage/include/storage/IMountShutdownObserver.h
torage/include/storage/IObbActionListener.h
94b5c92a3580b657517846fe3d2782414e0b25d0 14-Dec-2016 TreeHugger Robot <treehugger-gerrit@google.com> Merge "SkClipOp is now an enum class"
713d153146eb77fc7019b22506d4f7c0d7d11b03 14-Dec-2016 John Reck <jreck@google.com> Merge "Delete dead code"
6c67f1d04591f44bccb476d715a005ad5bbdf840 14-Dec-2016 Mike Reed <reed@google.com> SkClipOp is now an enum class

Change-Id: If423dd013a264162ae0b7674a0eeef34bc2cdaae
wui/CanvasState.cpp
wui/FrameBuilder.cpp
wui/Snapshot.h
wui/pipeline/skia/RenderNodeDrawable.cpp
wui/pipeline/skia/SkiaPipeline.cpp
wui/tests/common/scenes/ClippingAnimation.cpp
wui/tests/common/scenes/SaveLayerAnimation.cpp
wui/tests/common/scenes/ShapeAnimation.cpp
wui/tests/microbench/DisplayListCanvasBench.cpp
wui/tests/unit/CanvasStateTests.cpp
wui/tests/unit/FrameBuilderTests.cpp
wui/tests/unit/RecordingCanvasTests.cpp
wui/tests/unit/RenderNodeDrawableTests.cpp
wui/tests/unit/SkiaPipelineTests.cpp
wui/utils/TestWindowContext.cpp
a7645bd9478afa463e9708fbc0b91ec51b3f4bf3 14-Dec-2016 Yunlian Jiang <yunlian@google.com> Fix warning: Potential leak of memory pointed to by 'set'

Bug: None
Test: The warning is gone.
Change-Id: Iacd0b53411ad07c1f45eb5b995138ac30ab51c76
ndroidfw/ResourceTypes.cpp
68a9dd8c88869fa47aa7d3c2e9ecce5077452f57 14-Dec-2016 Sergei Vasilinetc <sergeyv@google.com> Merge "HWUI: set correct sampler for external texture in shaders"
9c97e48fbe389180b4b64845f093c53c92c374f3 13-Dec-2016 sergeyv <sergeyv@google.com> HWUI: set correct sampler for external texture in shaders

Test: hwuimacro hwbitmapcompositeshader
bug:30999911
Change-Id: Ic63f7109a4a7069b62c0b21efae2d4ba7e6d64be
wui/Program.h
wui/ProgramCache.cpp
wui/SkiaShader.cpp
wui/tests/common/scenes/HwBitmapInCompositeShader.cpp
fb1bc8bc97dca1ad7b1dd2c994a8ccee1db0a0fd 13-Dec-2016 TreeHugger Robot <treehugger-gerrit@google.com> Merge "SkCanvas is no longer refcnted, use SkClipOps"
a247df04267b97fc25adda30f0ad8e920e249153 13-Dec-2016 Romain Guy <romainguy@google.com> Merge "Pre-multiply gradient colors the right way"
d43eaa909018068bc1ac197839f5e2ed79d9139d 13-Dec-2016 Mike Reed <reed@google.com> SkCanvas is no longer refcnted, use SkClipOps

Change-Id: I57469f56187f1ca8624e7a63968124ee925b4c04
wui/tests/unit/FatalTestCanvas.h
wui/tests/unit/SkiaPipelineTests.cpp
wui/tests/unit/SkiaRenderPropertiesTests.cpp
ee708facf127f2e8bed5970d5c05fa823fcfc1ce 12-Dec-2016 Leon Scroggins III <scroggo@google.com> Remove unnecessary dependency, and fix the chain

Test: No new tests. This should not affect behavior; only dependencies.

Font.h does not need to include SkGlyphCache.h, and doing so requires
a transitive dependency on external/skia/src/utils, which was not
intended. Forward declare it instead, and fix the build errors that
resulted.

Change-Id: Ifd09430bb848d51b139df0f0c06c63e7e48711eb
wui/font/Font.h
wui/pipeline/skia/SkiaPipeline.cpp
wui/pipeline/skia/SkiaRecordingCanvas.cpp
wui/tests/common/TestUtils.cpp
wui/tests/common/scenes/BitmapShaders.cpp
wui/tests/unit/RecordingCanvasTests.cpp
a0ed6f03f6f06eb41cbcc15c0a99b4a78fd91bef 13-Dec-2016 Romain Guy <romainguy@google.com> Pre-multiply gradient colors the right way

Alpha pre-multiplication must be done after applying the
opto-electronic transfer function when linear blending is
disabled. The correct way would be to pre-multiply before
gamma encoding but this leads to improper blending which
cannot be corrected without using sRGB frame buffers and
texture sampling.

Bug: 33010587
Test: cts-tradefed run singleCommand cts-dev --module CtsUiRenderingTestCases --test android.uirendering.cts.testclasses.GradientTests
Change-Id: I5f04bda4cb9f63674537aef5931621c14d601884
wui/FloatColor.h
wui/GradientCache.cpp
wui/ProgramCache.cpp
wui/SkiaShader.cpp
f1b7718f4fd9ff245bb262ac03e81605bae538b6 13-Dec-2016 TreeHugger Robot <treehugger-gerrit@google.com> Merge "libandroidfw: Make tests less flaky"
351471f928022fb22a1b19f9e5e647a7901152fd 12-Dec-2016 Adam Lesinski <adamlesinski@google.com> libandroidfw: Make tests less flaky

Changing any of the test APKs could change resource IDs.
The resource IDs are all made public and assigned an ID
to avoid this issue.
Test: make libandroidfw_tests

Change-Id: Idd17c25f4ac86a0ad5b2b8da6f968e5d9b2346c1
ndroidfw/tests/Split_test.cpp
ndroidfw/tests/data/basic/basic.apk
ndroidfw/tests/data/basic/basic_de_fr.apk
ndroidfw/tests/data/basic/basic_hdpi-v4.apk
ndroidfw/tests/data/basic/basic_xhdpi-v4.apk
ndroidfw/tests/data/basic/basic_xxhdpi-v4.apk
ndroidfw/tests/data/basic/build
ndroidfw/tests/data/basic/res/values/values.xml
ndroidfw/tests/data/feature/build
ndroidfw/tests/data/feature/feature.apk
ndroidfw/tests/data/feature/res/values/values.xml
7a7c921e189774c1ea174891da749e918533b598 12-Dec-2016 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Add more Skia pipeline unit tests."
52771272f4f018f4fc6846224bf047497e784af1 17-Nov-2016 Stan Iliev <stani@google.com> Add more Skia pipeline unit tests.

Add more Skia pipeline unit tests and fix an issue
in backdrop/content bounds clip logic.

Test: built and run angler-eng and HWUI unit tests.
Change-Id: Ie41f80ff7ce9802a4d76e8b14f1695dbc9771a2b
wui/Android.mk
wui/pipeline/skia/SkiaPipeline.cpp
wui/tests/common/TestUtils.cpp
wui/tests/common/TestUtils.h
wui/tests/unit/FatalTestCanvas.h
wui/tests/unit/RenderNodeDrawableTests.cpp
wui/tests/unit/SkiaPipelineTests.cpp
wui/tests/unit/SkiaRenderPropertiesTests.cpp
8600928705b9458d7ad39367f0050c587263ee9a 12-Dec-2016 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Make HWUI makefile include external/skia/src/utils"
82c581dac38490d582bd61986776f0bac3aa4967 12-Dec-2016 Leon Scroggins III <scroggo@google.com> Make HWUI makefile include external/skia/src/utils

Test: none. No new code; this just makes it explicit that HWUI is
depending on headers in Skia's src/utils directory.

This is needed for SkTextureCompressor.h, which itself is pulled in
transitively through SkGlyphCache.h. Adding this here means that Skia
need not list src/utils as an exported include dir.

Change-Id: I3f2b022504486b7a640236fb98a497b599b42a6b
wui/Android.mk
03240107a54c8a0ad1e7e496c81182eb5a086f89 02-Dec-2016 John Reck <jreck@google.com> Delete dead code

Test: none, it's unused code
Change-Id: If25f4f22d8f3a9819f673bacce9ad4c213dd73ed
wui/PatchCache.cpp
wui/PatchCache.h
ce44045d855586394e5b023d1cee69c5fd9dce6d 09-Dec-2016 John Reck <jreck@google.com> Merge "Fix window copy for rotation = 90/270"
cd55852fcd840f7f4c4d7a0a7253a2995c77afa2 17-Nov-2016 Greg Daniel <egdaniel@google.com> Make buffer age work in Vulkan

Test: manual testing in skiavk mode

Change-Id: I5b9d8af7d9cecf2f022ef104ec33a5b7477e9e0c
wui/Android.mk
wui/hwui/Bitmap.cpp
wui/pipeline/skia/SkiaOpenGLPipeline.cpp
wui/pipeline/skia/SkiaVulkanPipeline.cpp
wui/renderthread/CanvasContext.cpp
wui/renderthread/EglManager.cpp
wui/renderthread/EglManager.h
wui/renderthread/Frame.cpp
wui/renderthread/Frame.h
wui/renderthread/IRenderPipeline.h
wui/renderthread/OpenGLPipeline.cpp
wui/renderthread/VulkanManager.cpp
wui/renderthread/VulkanManager.h
912bebeb7488f498954282a1eb82a4b641e6418e 08-Dec-2016 John Reck <jreck@google.com> Fix window copy for rotation = 90/270

Bug: 33421965
Test: Manual via PixelCopyWindow test in HwAccelerationTest
Change-Id: I2a59fd6a26499635a22444e124cd1ec6f82f6e31
wui/OpenGLReadback.cpp
9a648a1c74f39b8aca525ae3787d379cb4c76971 07-Dec-2016 Mike Reed <reed@google.com> Merge "switch over clip calls to use SkClipOp instead of SkRegion::Op"
4c6edb0a3c14407e4848053f45f1a9e3311d81fb 07-Dec-2016 Teng-Hui Zhu <ztenghui@google.com> Recreate the bitmap cache when it is smaller than needed
am: 17f40b80f6

Change-Id: I057156b0f70c89ef1cd4b89237dc0c3b2146d0fa
6e49c9f007c879f05b035c40c0ba543c00f9d0d0 02-Dec-2016 Mike Reed <reed@google.com> switch over clip calls to use SkClipOp instead of SkRegion::Op

Change-Id: I67d23c487b5249bc31d96e3b2393f693c0b2bcff
wui/CanvasState.cpp
wui/CanvasState.h
wui/FrameBuilder.cpp
wui/RecordingCanvas.cpp
wui/RecordingCanvas.h
wui/SkiaCanvas.cpp
wui/SkiaCanvas.h
wui/SkiaCanvasProxy.cpp
wui/SkiaCanvasProxy.h
wui/Snapshot.cpp
wui/Snapshot.h
wui/VectorDrawable.cpp
wui/hwui/Canvas.h
wui/pipeline/skia/RenderNodeDrawable.cpp
wui/pipeline/skia/SkiaPipeline.cpp
wui/tests/common/TestUtils.h
wui/tests/common/scenes/ClippingAnimation.cpp
wui/tests/common/scenes/SaveLayerAnimation.cpp
wui/tests/common/scenes/ShapeAnimation.cpp
wui/tests/microbench/DisplayListCanvasBench.cpp
wui/tests/unit/CanvasStateTests.cpp
wui/tests/unit/FrameBuilderTests.cpp
wui/tests/unit/RecordingCanvasTests.cpp
wui/tests/unit/RenderNodeDrawableTests.cpp
wui/utils/TestWindowContext.cpp
10219fb261606fcc71c607167b28295b4578a10d 24-Nov-2016 Hal Canary <halcanary@google.com> SkImageEncoder->SkEncodeImage

Test: none
Change-Id: I15630d2852d12840329181f135852e28d287bbcf
(cherry picked from commit 8c6bac4c77caeefb667bec90d16b5384fd2b2b31)
wui/pipeline/skia/SkiaPipeline.cpp
4c67a475a334e4f65238d439a3339195e03c03be 11-Nov-2016 Adam Lesinski <adamlesinski@google.com> Make tests use APKs instead of exploded APKs

Tests would expect parts of the APK to be unzipped and
maintained. Instead, we now decompress the required files
from the test APKs on test setup. This simplifies
test maintenance substantially.

Test: make libandroidfw_tests && libandroidfw_tests --testdata=frameworks/base/libs/androidfw/tests/data
Change-Id: I3d2100af22df913e02401dedcf9842cdb32b2a3b
ndroidfw/AttributeFinder.h
ndroidfw/AttributeResolution.cpp
ndroidfw/include/androidfw/AttributeFinder.h
ndroidfw/tests/Android.mk
ndroidfw/tests/AppAsLib_test.cpp
ndroidfw/tests/Asset_test.cpp
ndroidfw/tests/AttributeFinder_test.cpp
ndroidfw/tests/AttributeResolution_test.cpp
ndroidfw/tests/ByteBucketArray_test.cpp
ndroidfw/tests/Config_test.cpp
ndroidfw/tests/Idmap_test.cpp
ndroidfw/tests/ResTable_test.cpp
ndroidfw/tests/Split_test.cpp
ndroidfw/tests/TestHelpers.cpp
ndroidfw/tests/TestHelpers.h
ndroidfw/tests/Theme_test.cpp
ndroidfw/tests/data/app/R.h
ndroidfw/tests/data/app/app.apk
ndroidfw/tests/data/app/app_arsc.h
ndroidfw/tests/data/app/build
ndroidfw/tests/data/appaslib/R.h
ndroidfw/tests/data/appaslib/appaslib.apk
ndroidfw/tests/data/appaslib/appaslib_arsc.h
ndroidfw/tests/data/appaslib/appaslib_lib.apk
ndroidfw/tests/data/appaslib/appaslib_lib_arsc.h
ndroidfw/tests/data/appaslib/build
ndroidfw/tests/data/basic/AndroidManifest.xml
ndroidfw/tests/data/basic/R.h
ndroidfw/tests/data/basic/basic.apk
ndroidfw/tests/data/basic/basic_arsc.h
ndroidfw/tests/data/basic/basic_de_fr.apk
ndroidfw/tests/data/basic/basic_hdpi-v4.apk
ndroidfw/tests/data/basic/basic_xhdpi-v4.apk
ndroidfw/tests/data/basic/basic_xxhdpi-v4.apk
ndroidfw/tests/data/basic/build
ndroidfw/tests/data/basic/res/values/values.xml
ndroidfw/tests/data/basic/split_de_fr_arsc.h
ndroidfw/tests/data/basic/split_hdpi_v4_arsc.h
ndroidfw/tests/data/basic/split_xhdpi_v4_arsc.h
ndroidfw/tests/data/basic/split_xxhdpi_v4_arsc.h
ndroidfw/tests/data/feature/AndroidManifest.xml
ndroidfw/tests/data/feature/build
ndroidfw/tests/data/feature/feature.apk
ndroidfw/tests/data/feature/feature_arsc.h
ndroidfw/tests/data/lib/AndroidManifest.xml
ndroidfw/tests/data/lib/R.h
ndroidfw/tests/data/lib/build
ndroidfw/tests/data/lib/lib.apk
ndroidfw/tests/data/lib/lib_arsc.h
ndroidfw/tests/data/lib/res/values/values.xml
ndroidfw/tests/data/overlay/build
ndroidfw/tests/data/overlay/overlay.apk
ndroidfw/tests/data/overlay/overlay_arsc.h
ndroidfw/tests/data/styles/R.h
ndroidfw/tests/data/styles/build
ndroidfw/tests/data/styles/build.sh
ndroidfw/tests/data/styles/layout.xml
ndroidfw/tests/data/styles/resources.arsc
ndroidfw/tests/data/styles/styles.apk
ndroidfw/tests/data/system/R.h
ndroidfw/tests/data/system/build
ndroidfw/tests/data/system/system.apk
ndroidfw/tests/data/system/system_arsc.h
4c0e5f1e37ec5c48403846e03be3b76591d3d959 03-Dec-2016 Colin Cross <ccross@android.com> Merge "Convert libandroidfw to Android.bp" am: 46ec8dba83 am: 9625912b7f
am: 434e16c7bc

Change-Id: Idd0aacb1fe207bebce0c12e1417e0e2ff2978226
434e16c7bc4a3253af173d4545ac5f00a84240f0 03-Dec-2016 Colin Cross <ccross@android.com> Merge "Convert libandroidfw to Android.bp" am: 46ec8dba83
am: 9625912b7f

Change-Id: I1f52bfd7e0dc8b5a543b41f8c4a3b7b2a35355c9
9625912b7f0abd8fe74e15b58f4c70d89d48872a 03-Dec-2016 Colin Cross <ccross@android.com> Merge "Convert libandroidfw to Android.bp"
am: 46ec8dba83

Change-Id: I32a737c491eeb95ad080adacd47602ee814ba0cb
abaa57fa94985befaf97e1afc555423844b07d35 03-Dec-2016 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Clean up ApplyStyle JNI"
17f40b80f6f1dccd72147209aeba3f4efd2d46f2 16-Nov-2016 Teng-Hui Zhu <ztenghui@google.com> Recreate the bitmap cache when it is smaller than needed

fix:32780212

Test: Existing CTS and attached repro apk.

Change-Id: Ib908319af6539b2438b850f7a50d5a539cef8368
wui/VectorDrawable.cpp
wui/VectorDrawable.h
f2237741c3a0e6e6a0f814711bd42a7d071616f1 03-Dec-2016 Tenghui Zhu <ztenghui@google.com> Merge "Recreate the bitmap cache when it is smaller than needed"
f32adf447511d54c2aa0948d3c1ef44d461538ac 23-Nov-2016 John Reck <jreck@google.com> Clean up ApplyStyle JNI

Bug: 32573798

Mark input uint32_t[] as const. Use Read-only JNI
array access for input as it's faster than critical access.

Use non-movable arrays for TypedArray so that the address can
be resolved and stored, avoiding the need to do JNI array
access for the output.

Indicies is always non-null, so remove the optional checks.

Eliminate unused return value.

Benchmark results:
twelveKeyInflate 4963us -> 4713us
simpleViewInflate 73us -> 60us

Test: Device boots, benchmarks show faster

Change-Id: Ic3bde5aee31407d8903913f97f2218daf074499a
ndroidfw/AttributeResolution.cpp
ndroidfw/include/androidfw/AttributeResolution.h
ndroidfw/tests/AttributeResolution_test.cpp
195caa66962f345dc04701b54bb6a89ce7ab93eb 02-Dec-2016 Jaekyun Seok <jaekyun@google.com> Merge "Remove static link in Android framework under /frameworks/base." am: c60963e451 am: 5705ad69db
am: ae21f6f5b0

Change-Id: Ie0306a1e3dc80f6ee6ad9669b91d150167b04586
ae21f6f5b02db9dbe32e6a0898cca3e16e05b429 02-Dec-2016 Jaekyun Seok <jaekyun@google.com> Merge "Remove static link in Android framework under /frameworks/base." am: c60963e451
am: 5705ad69db

Change-Id: I3f2c38332115a7b52b893629f2a5007d75c2831d
5705ad69db0e4301bb3ae0b722049879536c857d 02-Dec-2016 Jaekyun Seok <jaekyun@google.com> Merge "Remove static link in Android framework under /frameworks/base."
am: c60963e451

Change-Id: I0bbb3cf9a66752f6ee8218a4ac5545091130bbed
ce2221e0ff5eeee38a65059a8f1e9ed1ab23cfb9 02-Dec-2016 Colin Cross <ccross@android.com> Convert libandroidfw to Android.bp

See build/soong/README.md for more information.

Test: libandroidfw_tests
Merged-In: I4e575d62f724d5ffe43f12ff5642fb6799f7819e
Change-Id: I4e575d62f724d5ffe43f12ff5642fb6799f7819e
(cherry picked from commit 4f8d9e69eb63878a99abedfdc7b92c6284f30605)
ndroidfw/Android.bp
ndroidfw/Android.mk
4f8d9e69eb63878a99abedfdc7b92c6284f30605 02-Dec-2016 Colin Cross <ccross@android.com> Convert libandroidfw to Android.bp

See build/soong/README.md for more information.

Test: libandroidfw_tests
Change-Id: I4e575d62f724d5ffe43f12ff5642fb6799f7819e
ndroidfw/Android.bp
ndroidfw/Android.mk
b6811c172d3df2eab9ba0a18f3fa5b3e8dc106ad 02-Dec-2016 Adam Lesinski <adamlesinski@google.com> Merge "Add --testdata flag for easier testing"
4a3818ddd3c5ecedf2e29e02faccb7fedbf7e5f3 01-Dec-2016 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Fix a crash in skia pipeline, when empty reorder block is first"
e9bf7c843664c16aaeac4cd79550a7461ae00b5d 01-Dec-2016 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Introduce PathInterpolator to native animators"
54f67e781f1c4bfe1c991d12d503f7a2df2a255f 01-Dec-2016 TreeHugger Robot <treehugger-gerrit@google.com> Merge changes from topic 'glbytebuffer'

* changes:
Query GL version before using it
Guarantee that glMapBufferRange/glGetBufferPointv return a ByteBuffer
b136c8556efaec0aa2645c1b3bb526c56c50b96c 01-Dec-2016 Romain Guy <romainguy@google.com> Query GL version before using it

Bug: 32984164
Test: manual testing of linear blending
Change-Id: Ie20bdc34d1b98e93eae22b15f3e2a7994d3b4ff7
wui/Extensions.cpp
347691f8d87157be0eaeca26f4003d8a06a275e3 01-Dec-2016 Stan Iliev <stani@google.com> Fix a crash in skia pipeline, when empty reorder block is first

Fix a crash in skia pipeline, which happens if an empty reorder
barrier is inserted at index 0 in a SkiaDisplayList.
Add a unit test that repro the bug (unit test is crashing wihtout
the fix and passing with the fix).

Test: built and ran skia pipeline with angler-eng and run HWUI unit
tests.

Change-Id: I4aded15021c70cc0ae8daa83bbe8ed0e10a41eef
wui/pipeline/skia/ReorderBarrierDrawables.cpp
wui/pipeline/skia/ReorderBarrierDrawables.h
wui/tests/unit/FrameBuilderTests.cpp
wui/tests/unit/RenderNodeDrawableTests.cpp
6c670ecdd9e848f6778a087c71c2960ed6e9c62d 01-Dec-2016 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Add hwui test for correct refcounting of SkColorTable in Bitmap"
8a5a950ac0f8590342b587f7f265e858139efb96 01-Dec-2016 Doris Liu <tianliu@google.com> Fix LUTInterpolator lookup table position calc am: 0940834c8c
am: 00d348ec26

Change-Id: I563b65b61d3bac80ea81521478e295963508890c
00d348ec26661eddb8219288eb892b16d99fabc2 01-Dec-2016 Doris Liu <tianliu@google.com> Fix LUTInterpolator lookup table position calc
am: 0940834c8c

Change-Id: Ib80c00801473d7e60bae87b3b34a381c7f8e7e68
377878b4d4529c0007694821ec96b20f0a489239 23-Nov-2016 Jaekyun Seok <jaekyun@google.com> Remove static link in Android framework under /frameworks/base.

The dependencies to static libraries in frameworks should be removed
as many as possible to reduce a size of the system partition.
And that will improve coverage of the VNDK libraries because this
effort might find new necessary shared libs which were linked
statically before.

Size diffs of libs in /system/lib on angler-userdebug build are as
following.

libandroidfw.so : 243748 -> 205196 (-38552)
libhwui.so : 562028 -> 562580 (+552)
libmedia_jni.so : 293652 -> 293656 (+4)
(All the others have the same size.)

total: (-37996)

Test: building succeeded, and the image was tested on angler.
Bug: 33056637
Change-Id: I3021fb438778eaea2be935b990ec85c4aec6c008
(cherry picked from commit 2b14c5eaf61635d1c3a69a2e59faa23cb6b7f7cb)
ndroidfw/Android.mk
9e9eeeeb78d94804cda00c2b36e56fdaca5552d6 29-Nov-2016 Doris Liu <tianliu@google.com> Introduce PathInterpolator to native animators

For interpolators defined with a path, PathInterpolator is more accurate
and likely less costly for longer animations than what are currently
using as a substiute - LUTInterpolator.

Test: manual test and added a unit test
BUG: 32830741
Change-Id: I867c7a28e4261392cce9c45a2992ab4fd120c496
wui/Android.mk
wui/Interpolator.cpp
wui/Interpolator.h
wui/tests/unit/PathInterpolatorTests.cpp
0940834c8cc024985f20bbdd19fb32c73ccb25f2 29-Nov-2016 Doris Liu <tianliu@google.com> Fix LUTInterpolator lookup table position calc

BUG: 32830741
Test: running progress bar at 5x duration scale, no flickering
Change-Id: Ie484bdbfdf18bacc4586e36c5142e4523d08bdaa
wui/Interpolator.cpp
71c4477bee8297189e12a666bbb178f461ad2859 30-Nov-2016 sergeyv <sergeyv@google.com> Add hwui test for correct refcounting of SkColorTable in Bitmap

Test: BitmapTests.colorTableRefCounting
bug:32561595
Change-Id: I505c735feffbac18d406b6b2f9dff51d81700cd8
wui/Android.mk
wui/tests/unit/BitmapTests.cpp
c1e6a12ab54926a4ef88880766492f18efc86f2c 30-Nov-2016 Sergei Vasilinetc <sergeyv@google.com> Merge "Add createHardwareBitmap on GraphicBuffer for SysUI"
9a029876422926e313f646f44ab3592cfd4f9933 29-Nov-2016 sergeyv <sergeyv@google.com> Add createHardwareBitmap on GraphicBuffer for SysUI

Test: none
bug:30999911
Change-Id: Ic396e25d9e587665e634c3192e14ef4bc3dc78f7
wui/hwui/Bitmap.cpp
wui/hwui/Bitmap.h
711b6aec9ae2ccc36d95cb5c3aa74b550fe6496f 30-Nov-2016 Matt Sarett <msarett@google.com> Merge "Add overdraw debugging feature to Skia pipelines"
f58cc92066903b900396f640159ea3ea992fc67d 15-Nov-2016 Matt Sarett <msarett@google.com> Add overdraw debugging feature to Skia pipelines

Test: Compared to OpenGL pipeline and sanity checked
with understanding of the drawing pipeline. Also
wrote a unit test.

BUG:32370375

Change-Id: Iab397d21f0def725fa89551d48c764c67fd2bda8
wui/RenderNode.cpp
wui/pipeline/skia/RenderNodeDrawable.cpp
wui/pipeline/skia/SkiaPipeline.cpp
wui/pipeline/skia/SkiaPipeline.h
wui/tests/unit/SkiaPipelineTests.cpp
ea7897954f6339dcc2e5af1584f72c6b2ecd7a67 10-Nov-2016 Adam Lesinski <adamlesinski@google.com> Add --testdata flag for easier testing

Instead of hardcoding or assuming a path for testdata,
allow the testdata path to be specified via the command
line.
Test: make libandroidfw_tests

Change-Id: Ideae880b21c157b70a11bb5a90a94556771aead6
ndroidfw/tests/Android.mk
ndroidfw/tests/AttributeResolution_test.cpp
ndroidfw/tests/Main.cpp
ndroidfw/tests/TestHelpers.cpp
ndroidfw/tests/TestHelpers.h
d738d1beab8f8c5afc9271c75684ed7c06ef277f 29-Nov-2016 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Fix hwui compile error only seen with debug switch."
338da9c8f99de1fd70bac24971da71c32d18bd3c 29-Nov-2016 Mike Reed <reed@google.com> Merge "SkCanvas is no longer reference-counted"
116c376c737fafff0e69f4b6c30d77fd21127ffc 29-Nov-2016 Daichi Hirono <hirono@google.com> Fix hwui compile error only seen with debug switch.

Bug: None
Test: Build succeeded
Change-Id: I26e3f4fdc10f27d7eb7f3987d0f3e5dfa1bc9f45
wui/renderthread/OpenGLPipeline.cpp
2b14c5eaf61635d1c3a69a2e59faa23cb6b7f7cb 23-Nov-2016 Jaekyun Seok <jaekyun@google.com> Remove static link in Android framework under /frameworks/base.

The dependencies to static libraries in frameworks should be removed
as many as possible to reduce a size of the system partition.
And that will improve coverage of the VNDK libraries because this
effort might find new necessary shared libs which were linked
statically before.

Size diffs of libs in /system/lib on angler-userdebug build are as
following.

libandroidfw.so : 243748 -> 205196 (-38552)
libhwui.so : 562028 -> 562580 (+552)
libmedia_jni.so : 293652 -> 293656 (+4)
(All the others have the same size.)

total: (-37996)

Test: building succeeded, and the image was tested on angler.
Bug: 33056637
Change-Id: I3021fb438778eaea2be935b990ec85c4aec6c008
ndroidfw/Android.mk
88e0891f6657573a5ad918c2d76d6c02bb8ceba3 23-Nov-2016 Stan Iliev <stani@google.com> Fix draw order for non-RenderNode draw commands

Fix a drawing order issue in Skia pipeline. Add unit test in both
HWUI and Skia to test the fix.

Test: built and ran on angler-eng and HWUI unit tests passed.
Bug: 32506749
Change-Id: I7f13457726a8664f18a46aca2279b876acec2944
wui/pipeline/skia/SkiaRecordingCanvas.cpp
wui/pipeline/skia/SkiaRecordingCanvas.h
wui/tests/unit/FrameBuilderTests.cpp
wui/tests/unit/RenderNodeDrawableTests.cpp
6acfe16b5650446dbdcce3bd779b52fb6533a41e 18-Nov-2016 Mike Reed <reed@google.com> SkCanvas is no longer reference-counted

Change-Id: Ie821efe7c0a7d1301715e303aaf4d7ec86ac35e7
wui/SkiaCanvas.cpp
wui/SkiaCanvas.h
wui/tests/unit/RenderNodeDrawableTests.cpp
db45a4bfaff1120a9b23073e46a0cc6d39f56023 08-Nov-2016 Stan Iliev <stani@google.com> Fix Skia render node projection to match HWUI

Fix Skia render node projection to match HWUI. Port
FrameBuilderTests_projectionReorder test for Skia pipeline.
Add new tests in both HWUI and Skia to cover more projection
use cases.

Test: built and run on angler-eng
Change-Id: Ibf27af211452ae95d595aca7723ea63f48b0b282
wui/Android.mk
wui/TreeInfo.h
wui/pipeline/skia/RenderNodeDrawable.cpp
wui/pipeline/skia/RenderNodeDrawable.h
wui/pipeline/skia/SkiaDisplayList.cpp
wui/pipeline/skia/SkiaDisplayList.h
wui/pipeline/skia/SkiaRecordingCanvas.cpp
wui/tests/unit/FrameBuilderTests.cpp
wui/tests/unit/RenderNodeDrawableTests.cpp
wui/tests/unit/SkiaDisplayListTests.cpp
08a77b1f9f1045d870365d56ab010cf78ea42333 19-Nov-2016 Wan He <xiaolin.gxl@alibaba-inc.com> Merge "Fix incorrect calculation of sizeof package structure" am: 757e286cc8 am: 530fdccbe4 am: 2f176bb2cd
am: 8e5ff07293

Change-Id: I0a0cefef7df2cebfc9687f17abc9797f7cd61ca7
2f176bb2cddc40ae2dc5ec0befab0b3e30d600ef 18-Nov-2016 Wan He <xiaolin.gxl@alibaba-inc.com> Merge "Fix incorrect calculation of sizeof package structure" am: 757e286cc8
am: 530fdccbe4

Change-Id: I92417758a165741a4346d6b6c3f3491776b86729
530fdccbe405e2506912ed78a337acf1e66d8d4d 18-Nov-2016 Wan He <xiaolin.gxl@alibaba-inc.com> Merge "Fix incorrect calculation of sizeof package structure"
am: 757e286cc8

Change-Id: Ia16ee8f4efaee3e43c656f753c878b13b4a4706c
757e286cc8637aa6cd7ecaabb991539e99c6950a 18-Nov-2016 Treehugger Robot <treehugger-gerrit@google.com> Merge "Fix incorrect calculation of sizeof package structure"
57624d1f2ecbd717cd60241f00751c63f21f1490 18-Nov-2016 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Support readback from hardware bitmaps"
59eecb526adc5bd7041e7b6147bfcc40dd2c200e 18-Nov-2016 sergeyv <sergeyv@google.com> Support readback from hardware bitmaps

Test: hwuimacro readbackFromHBitmap --onscreen.
bug:30999911
Change-Id: I369c069c40cb0f9adae5a94501815f29c2d7df0f
wui/OpenGLReadback.cpp
wui/OpenGLReadback.h
wui/Readback.h
wui/hwui/Bitmap.cpp
wui/renderthread/RenderProxy.cpp
wui/renderthread/RenderProxy.h
wui/tests/common/scenes/ReadbackFromHardwareBitmap.cpp
b2db1591482a3cfdf5111f2021df215186ca8553 18-Nov-2016 Seigo Nonaka <nona@google.com> Merge "Remove obsolete interface GetTable."
91d1bbce59175e76823327c6d87b71e29b5de307 18-Nov-2016 John Reck <jreck@google.com> Merge "Avoid starving RT anims" am: f77c220aa9
am: 7269372d5f

Change-Id: Ife1e7ea95055d8179b4a622dc4dabce382575b5b
7269372d5f6a972e1878c37a07deca1e47c6f5fa 18-Nov-2016 John Reck <jreck@google.com> Merge "Avoid starving RT anims"
am: f77c220aa9

Change-Id: I3d4ba24ae0e6de4683d47163fd8f3bf65b98bd17
f77c220aa9233f7bb8418d01f7c512bcca7d3f74 18-Nov-2016 Treehugger Robot <treehugger-gerrit@google.com> Merge "Avoid starving RT anims"
a5b7b8916622d44661b6e7936c9b738655a06f3b 15-Nov-2016 John Reck <jreck@google.com> Avoid starving RT anims

Test: Manual, usleep(16000) in DrawFrameTask and tap
on recents

Merged-In: I88bb30a2503bc908ec45650c7d36b6fb3cc750d0

Change-Id: I88bb30a2503bc908ec45650c7d36b6fb3cc750d0
wui/renderthread/RenderThread.cpp
769ccdbc1e4f1acbc73a7c595fc5dbacf53a1702 17-Nov-2016 John Reck <jreck@google.com> Merge "Avoid starving RT anims"
e92d4045ebea6bb0491f8f9de0fcf051598d9563 17-Nov-2016 Derek Sollenberger <djsollen@google.com> Merge "Update pinImages to report when GPU resource limits are exceeded."
6acb4efca3c9575c88828fd215e1aa09372f18be 17-Nov-2016 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Support Surface and Layer Readback in the SkiaPipelines."
189e87498f666e94dc8c8201e7bac56bb09b9251 16-Nov-2016 Derek Sollenberger <djsollen@google.com> Update pinImages to report when GPU resource limits are exceeded.

Bug: 32691999
Test: proposed CTS test (ag/1500396) and existing UiRendering tests
Change-Id: I190f888ae5499ac048569af8256fdd31d19d1285
wui/pipeline/skia/SkiaDisplayList.cpp
wui/pipeline/skia/SkiaPipeline.cpp
wui/renderthread/CanvasContext.h
3ff4226363c9f87fb5d0792fabad66034fb28614 17-Nov-2016 Wan He <xiaolin.gxl@alibaba-inc.com> Fix incorrect calculation of sizeof package structure

Argument "package" is a pointer, not the structure.

Signed-off-by: Wan He <xiaolin.gxl@alibaba-inc.com>
ndroidfw/ResourceTypes.cpp
b7e33a09843302c578e433a06e56583f0ff241d2 18-Oct-2016 Seigo Nonaka <nona@google.com> Remove obsolete interface GetTable.

GetTable is only used in test.
To use production interface, need to pass the raw buffer and size to the
MinikinSkia. This CL does not change any production behaviors.

Test: ran hwui microbench, macrobench, hwui_unit_tests
Change-Id: Ia657a0d061984d705f333ed3944effb1eba8ca4d
wui/hwui/MinikinSkia.cpp
wui/hwui/MinikinSkia.h
wui/hwui/Typeface.cpp
1a625911a22a5b4a0e42bb21c2dbf4c8df16e77a 17-Nov-2016 Seigo Nonaka <nona@google.com> Merge "Add wordSpacing parameter to Paint"
c4428c1e1a738722e48a162883befa0da463529c 16-Nov-2016 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Add layer updates debugging feature to Skia pipelines"
037fc1815b0f69b0b24e68e16281b490bdeb1d56 16-Nov-2016 Teng-Hui Zhu <ztenghui@google.com> Recreate the bitmap cache when it is smaller than needed

fix:32780212

Test: Existing CTS and attached repro apk.

Change-Id: Ib908319af6539b2438b850f7a50d5a539cef8368
wui/VectorDrawable.cpp
wui/VectorDrawable.h
79756be175dea78ee9d51bb22abba7621bd9b5cc 09-Nov-2016 Matt Sarett <msarett@google.com> Add layer updates debugging feature to Skia pipelines

When this property is turned on, we flash green
every time a hardware layer is updated.

Test: Matches the behavior in OpenGLPipeline

BUG:32370375

Change-Id: I916f94eee644c185d8a3f9fa4cd69e087ed1e92d
wui/pipeline/skia/RenderNodeDrawable.cpp
wui/pipeline/skia/SkiaLayer.h
wui/pipeline/skia/SkiaPipeline.cpp
c4fbada76aa840105553b2c2bce2204e673d2983 07-Nov-2016 Derek Sollenberger <djsollen@google.com> Support Surface and Layer Readback in the SkiaPipelines.

Test: CTS TextureViewTests and UIRendering
Change-Id: I2969c8f5a975bfd9aebcbb585c64d1fcbb2487c2
wui/Android.mk
wui/OpenGLReadback.cpp
wui/OpenGLReadback.h
wui/Readback.cpp
wui/Readback.h
wui/pipeline/skia/LayerDrawable.cpp
wui/pipeline/skia/LayerDrawable.h
wui/pipeline/skia/SkiaOpenGLPipeline.cpp
wui/pipeline/skia/SkiaOpenGLReadback.cpp
wui/pipeline/skia/SkiaOpenGLReadback.h
wui/renderthread/OpenGLPipeline.cpp
wui/renderthread/RenderProxy.cpp
wui/renderthread/RenderThread.cpp
wui/renderthread/RenderThread.h
5e3935eca26848a070a612933305d640eece0a7b 16-Nov-2016 Sergei Vasilinetc <sergeyv@google.com> Merge "Support hardware bitmaps in bitmap shaders"
7b4d85018722ee67bdc70c169ff61e40d5ae7924 16-Nov-2016 Martijn Coenen <maco@google.com> Fix call to deprecated range_x().

Test: master builds again.
Change-Id: I0fa7627c7ec28317dd7e37cca93d2b2c90e6d1ea
wui/tests/microbench/DisplayListCanvasBench.cpp
bbec302fcf8e32b5d2c97261ea7869cff5518f94 16-Nov-2016 Martijn Coenen <maco@google.com> Merge "Fix deprecated range_x calls." am: 87cafe8f33 am: d03b17c29a am: 6e2c276c78
am: f4a0f12eb7

Change-Id: Ifdec08542102cf4eba2aa9baf206272523b56894
6e2c276c7829cf8358c331a3dcb24d5fbde217a4 16-Nov-2016 Martijn Coenen <maco@google.com> Merge "Fix deprecated range_x calls." am: 87cafe8f33
am: d03b17c29a

Change-Id: I70280eb85b9430c23f6b2681375cbcfa9da2dd38
d03b17c29ac972151ec1b509b4bf013085efd2c1 16-Nov-2016 Martijn Coenen <maco@google.com> Merge "Fix deprecated range_x calls."
am: 87cafe8f33

Change-Id: Idfbc4e3475cea7e56b3ac72afd61e1e981ef4e5d
219e2c79490296b03e58ec36a3a4ff4a2ebf52e3 15-Nov-2016 Seigo Nonaka <nona@google.com> Add wordSpacing parameter to Paint

Adds the ability to control word spacing from Java, wiring up the
plumbing to the corresponding change that adds it at the Minikin
level.

Bug: 31707212
Test: ran graphicstests
Change-Id: I568186aca961d51ee5231cb0331f882b7b005e90
wui/hwui/MinikinUtils.cpp
wui/hwui/Paint.h
wui/hwui/PaintImpl.cpp
554ffeb8b7c836da43a637c59eedfc617895b19d 16-Nov-2016 sergeyv <sergeyv@google.com> Support hardware bitmaps in bitmap shaders

Test: hwuimacro bitmapShaderEglImage --onscreen.
bug:30999911
Change-Id: I9d16a1c217a4474841794cf27ce49e3f7823678e
wui/Program.h
wui/ProgramCache.cpp
wui/SkiaShader.cpp
wui/hwui/Bitmap.cpp
wui/hwui/Bitmap.h
wui/tests/common/scenes/BitmapShaders.cpp
9669487d00cfa1f1fa8f5572c6e2fbd3dcc5ac69 16-Nov-2016 Seigo Nonaka <nona@google.com> Merge "Move test only initialization to each test setup."
2250d56a0b47b93016018340c8f4040325aa5611 08-Nov-2016 Sudheer Shanka <sudheersai@google.com> Rename MountService to StorageManagerService.

Bug: 30977067
Test: Existing tests pass
Change-Id: Ieac0f11c2b249dcd60441b14c1f391e6f8131d42
torage/IMountService.cpp
torage/IMountServiceListener.cpp
torage/IMountShutdownObserver.cpp
12efa55094b2fe38ef5ce232f3d8f02e78b71621 15-Nov-2016 John Reck <jreck@google.com> Avoid starving RT anims

Test: Manual, usleep(16000) in DrawFrameTask and tap
on recents

Change-Id: I88bb30a2503bc908ec45650c7d36b6fb3cc750d0
wui/renderthread/RenderThread.cpp
90213f341d867241a2bf7980ff045a9ba96d31bc 14-Nov-2016 Martijn Coenen <maco@google.com> Fix deprecated range_x calls.

Test: builds
Change-Id: I98412e51a54ef9f9e26c72ecd810dcea77aefdbb
wui/tests/microbench/FrameBuilderBench.cpp
199ab1f175927db87bf9ddd7099039b11ef37bb7 15-Nov-2016 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Use layered version of graphic buffer allocation calls."
b6e20139755afbb4968ec0ac71182c179ea33ac0 14-Nov-2016 Seigo Nonaka <nona@google.com> Move test only initialization to each test setup.

Global default typeface initialization is only used by test code.
It is good to do in test and remove from production.

Test: ran hwuimicro hwui_unit_tests hwuimacro
Change-Id: I7090b1794828072112540b4e357a6d24bf8f664a
wui/hwui/Typeface.cpp
wui/hwui/Typeface.h
wui/tests/macrobench/main.cpp
wui/tests/microbench/main.cpp
wui/tests/unit/main.cpp
7530ea7ec08dee960f7cc61d48ad9c42c4e4248e 14-Nov-2016 neo.chae <neo.chae@lge.com> Fix idmap leak in zygote process am: 0244ca8d10 am: 82537abc3b am: 85afb42c16 am: b4b2203c5e am: fb74b8773a am: c58ec27e1c am: 7489336fed am: 0212d4f3fa am: aaf785c827
am: 4b72904585

Change-Id: I365cdb2764ffb15f233cfeb43339e6acbc369e49
af9dc4dc304062a375ede83d5ed836d39f5f38b3 14-Nov-2016 Derek Sollenberger <djsollen@google.com> Merge "Handle vulkan windowing directly in SkiaVulkanPipeline"
4b72904585bd5fbeaa108ff9e8e675da488bdc99 14-Nov-2016 neo.chae <neo.chae@lge.com> Fix idmap leak in zygote process am: 0244ca8d10 am: 82537abc3b am: 85afb42c16 am: b4b2203c5e am: fb74b8773a am: c58ec27e1c am: 7489336fed am: 0212d4f3fa
am: aaf785c827

Change-Id: I34d0175499e1a47e3e6c9aecd2ac2805a6b4ad51
aaf785c82763e8d3fbb3c183f97386df3bb3be34 14-Nov-2016 neo.chae <neo.chae@lge.com> Fix idmap leak in zygote process am: 0244ca8d10 am: 82537abc3b am: 85afb42c16 am: b4b2203c5e am: fb74b8773a am: c58ec27e1c am: 7489336fed
am: 0212d4f3fa

Change-Id: I9ea05d641c04178d067c35ae5d2f87ee35c86924
0212d4f3fa97282d7fb746f458e9f8725f46f53f 14-Nov-2016 neo.chae <neo.chae@lge.com> Fix idmap leak in zygote process am: 0244ca8d10 am: 82537abc3b am: 85afb42c16 am: b4b2203c5e am: fb74b8773a am: c58ec27e1c
am: 7489336fed

Change-Id: I53fb00542e417e200b46ac941b4255e310348e18
0b5c6430442067cae8f01e17b2deb405468abe6a 11-Nov-2016 John Reck <jreck@google.com> Fix unit tests

This is a partial revert of e2179925df2ce174d81dd6f7abae626cc859ce00
with the TODO comment replaced with why this can happen.

Test: Ran hwui's unit tests
Change-Id: I0d35eef773a401585bb8e75415da66de5aeb27d1
wui/hwui/Typeface.cpp
850054cb46b25e20c1ae0b409734c0fa5c634b18 26-Oct-2016 Craig Donner <cdonner@google.com> Use layered version of graphic buffer allocation calls.

Allocators now require a layer count, but in these cases we can
assume that a single layer is sufficient, since that's what they
effectively do now.

Bug: 31686534
Test: manual
Change-Id: I30e498f8cb3e27c497f7bab9fbf2e7b4dad842d5
wui/hwui/Bitmap.cpp
7489336feddad42e88ea6c1c0542e34128b3ed92 11-Nov-2016 neo.chae <neo.chae@lge.com> Fix idmap leak in zygote process am: 0244ca8d10 am: 82537abc3b am: 85afb42c16 am: b4b2203c5e am: fb74b8773a
am: c58ec27e1c

Change-Id: Id44b030b79e924a7d619288b2fc0926d7a536111
c58ec27e1c41ecdf3c0deb06845e5174f29cc578 11-Nov-2016 neo.chae <neo.chae@lge.com> Fix idmap leak in zygote process am: 0244ca8d10 am: 82537abc3b am: 85afb42c16 am: b4b2203c5e
am: fb74b8773a

Change-Id: I4a2630b7217462897070029a613489c7909aedf6
fb74b8773a446a42cfdd42381f8e050fcc86e95c 11-Nov-2016 neo.chae <neo.chae@lge.com> Fix idmap leak in zygote process am: 0244ca8d10 am: 82537abc3b am: 85afb42c16
am: b4b2203c5e

Change-Id: Ifd540b5f9cb1e32a002ed86c67eda30189f4e23f
b4b2203c5ef95c00489737914919f9f7dce10b87 09-Nov-2016 neo.chae <neo.chae@lge.com> Fix idmap leak in zygote process am: 0244ca8d10 am: 82537abc3b
am: 85afb42c16

Change-Id: Ibb5ac24b2149637bf19b9a16153b1fcde5dbb45f
e547dd0b80b819bbd377bd7de228737b10570aa0 09-Nov-2016 Derek Sollenberger <djsollen@google.com> Cleanup asserts and remove usage of deprecated data structure.

Test: compile only
Change-Id: I9e9f1a3fb37db043d76a98a9568679e7e531e283
wui/SkiaCanvas.cpp
wui/pipeline/skia/ReorderBarrierDrawables.cpp
0e3cba31460e0698def0310003b7d291f1174afa 09-Nov-2016 Derek Sollenberger <djsollen@google.com> Handle vulkan windowing directly in SkiaVulkanPipeline

Test: manual testing in skiavk mode
Change-Id: I2fab80bae2787bfdacbc70d0402e98450e59406d
wui/Android.mk
wui/hwui_static_deps.mk
wui/pipeline/skia/SkiaVulkanPipeline.cpp
wui/pipeline/skia/SkiaVulkanPipeline.h
wui/renderthread/RenderThread.cpp
wui/renderthread/RenderThread.h
wui/renderthread/VulkanManager.cpp
wui/renderthread/VulkanManager.h
82537abc3bc1353746c7d53ee993dab130b7c4ea 09-Nov-2016 neo.chae <neo.chae@lge.com> Fix idmap leak in zygote process
am: 0244ca8d10

Change-Id: Ia35ded23161ad5c5c6fe4dea388e74b8d8af2955
bbe6f49147e7a7c60b4a51f37415f1bfe13a7d9c 08-Nov-2016 Jason Monk <jmonk@google.com> Merge "Allow persistent changes to the vendor overlay theme"
0244ca8d10dfc27e14f481fe649b89f7638c48eb 31-Oct-2016 neo.chae <neo.chae@lge.com> Fix idmap leak in zygote process

Fix a idmap leak in AssetManager::addSystemOverlays.
And, The fix could also prevent fd leak of idmap.

Test: none
Bug: 32691930

Signed-off-by: Hyangseok Chae <neo.chae@lge.com>

(cherry picked from commit 6a742a38509693f8b39ee9a5ad2803fca12688bf)

Change-Id: Idc4af77db2b0cb739bd6b009b6af0f9123be1aac
ndroidfw/AssetManager.cpp
2dc804be11444565e3d1d151c2a693db3ade94c0 07-Nov-2016 Jason Monk <jmonk@google.com> Allow persistent changes to the vendor overlay theme

This allows the overlay being used to be changed without a new build
but still will require a reboot to take effect. Should no longer be
needed once hierarchical resources are in place, and can be removed.

Also fix check in fd_utils to point at correct location.

Test: Manual
Bug: 32721178
Change-Id: I2a63aea0c87791c8eb845d735cb1182716c8174d
ndroidfw/AssetManager.cpp
ndroidfw/include/androidfw/AssetManager.h
e3d281ea18f7ccd477e4db5e74cf4fc1506e9f98 08-Nov-2016 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Add debug memory tracking to SkiaGLPipeline"
4bda6bfaa6b8cb775f18f2453720d05f4cb29152 07-Nov-2016 Matt Sarett <msarett@google.com> Add debug memory tracking to SkiaGLPipeline

Test: Sample output is below

D/OpenGLRenderer: Resource Cache Usage:
D/OpenGLRenderer: 32 items out of 8192 maximum items
D/OpenGLRenderer: 4635572 bytes (4.42 MB) out of 96.00 MB maximum

This is less verbose than OpenGL memory debug output for
two reasons:
(1) SkiaGL has less caches.
(2) SkiaGL does not support printing on cache additions/evictions.
This seems like more of an internal debugging tool rather than
a user-facing debug feature. I think it's best to leave this
unimplemented until we find that it might be useful.

BUG:32370375

Change-Id: Ib063f1c2a7f88e9840341b1001d227f556d88f26
wui/pipeline/skia/SkiaOpenGLPipeline.cpp
wui/pipeline/skia/SkiaPipeline.cpp
wui/pipeline/skia/SkiaPipeline.h
wui/pipeline/skia/SkiaVulkanPipeline.cpp
9310f59cac8b63ca792a8e2d3f9dbbaba477fc61 07-Nov-2016 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Fix bug with displaying visual profile bars"
3e62009709d9e329b7a309b78cce43943f7c2da6 07-Nov-2016 Derek Sollenberger <djsollen@google.com> Merge "Refactor pin/unpinImages to work across pipelines."
1dc5fba2dccc6961b52862b7d13c1e9a6a8b6560 07-Nov-2016 Derek Sollenberger <djsollen@google.com> Merge "Enable SkiaPipelines to interoperate with existing GlesDriver configs."
4c9bbf4eef4c8eef44c16d908cb84c343d4a1a81 07-Nov-2016 Matt Sarett <msarett@google.com> Fix bug with displaying visual profile bars

Test: Used debugging feature.

BUG:32370375

Change-Id: I56e4e2155566a219ce43882e48b327123edccfe2
wui/pipeline/skia/SkiaOpenGLPipeline.cpp
wui/pipeline/skia/SkiaVulkanPipeline.cpp
7e044fef628c7deb25189958714cb93a714a3617 07-Nov-2016 Derek Sollenberger <djsollen@google.com> Enable SkiaPipelines to interoperate with existing GlesDriver configs.

Test: hwui unit tests
Change-Id: Icd94d0e21130d86fb5514801f999d0018a69e151
wui/debug/GlesDriver.cpp
wui/debug/GlesDriver.h
wui/debug/NullGlesDriver.cpp
wui/debug/NullGlesDriver.h
wui/renderthread/EglManager.cpp
b7d34b64dd32e3d84bd43344c9c3d9ad098129af 04-Nov-2016 Derek Sollenberger <djsollen@google.com> Refactor pin/unpinImages to work across pipelines.

Test: existing CTS tests still pass
Change-Id: Ib2607e9853396bad42f298829b5c5da0d210af32
wui/DisplayList.cpp
wui/pipeline/skia/SkiaDisplayList.cpp
wui/pipeline/skia/SkiaDisplayList.h
wui/pipeline/skia/SkiaPipeline.cpp
wui/pipeline/skia/SkiaPipeline.h
wui/pipeline/skia/SkiaRecordingCanvas.cpp
wui/renderthread/CanvasContext.h
wui/renderthread/DrawFrameTask.cpp
wui/renderthread/IRenderPipeline.h
wui/renderthread/OpenGLPipeline.cpp
wui/renderthread/OpenGLPipeline.h
wui/tests/unit/SkiaDisplayListTests.cpp
4b5617742903aeec0c924c298bc42fe0ffa9e5bc 07-Nov-2016 Seigo Nonaka <nona@google.com> Merge "Make sure the Typeface is loaded before calling measureText."
e1166dd4881d8fc5f045e8e16941e26616ab774f 05-Nov-2016 Colin Cross <ccross@android.com> Merge "Move one more libandroidfw header" am: c5c74f9f49
am: e81eb61399

Change-Id: I813a1f3c40681c92c7cc7bc27afd1344c15d0792
e81eb613996c5f8e0564137bd6bbe759ea218d45 05-Nov-2016 Colin Cross <ccross@android.com> Merge "Move one more libandroidfw header"
am: c5c74f9f49

Change-Id: Ib4d1c81aba13543da2454140548252cf013c95e1
1d80addee492b95a452d12779a47efa465b4e486 04-Nov-2016 Colin Cross <ccross@android.com> Move one more libandroidfw header

The libandroidfw headers were moved into the library directory, move one
more that did not exist in the original patch.

Test: builds
Change-Id: Ic74a41558e1bc3984d98dd766f69d081edd8fc08
ndroidfw/include/androidfw/AttributeFinder.h
b365b0db9314370e1d1ad2867ded212ef68c7b14 04-Nov-2016 John Reck <jreck@google.com> Merge "Re-unite sources with their headers" am: e43444a00b
am: 946d11d216

Change-Id: Ib9fac5fff2f2ce90eebc2c6eb5208de33ea28723
946d11d2169a28c827a4719934405ebdf2ab0b66 04-Nov-2016 John Reck <jreck@google.com> Merge "Re-unite sources with their headers"
am: e43444a00b

Change-Id: I8f3ef6a1ddcf78d28f7444b6e83c552b8305fd8c
03b5d506bc2735e080863712d9d2e8ce6f7ecb43 04-Nov-2016 John Reck <jreck@google.com> Re-unite sources with their headers

Move all the includes for androidfw under
a common base path for that library instead
of frameworks/base/includes.

Also fixes -Werror issues that resulted in
no longer being -isystem.

Test: builds
Change-Id: Ic4312eb61b197af114dded5691d5ae1ec82923f7
Merged-In: Ic4312eb61b197af114dded5691d5ae1ec82923f7
(cherry picked from commit f6113af2d6f6eebee68d3ac510fe96d38a7a39e9)
ndroidfw/Android.mk
ndroidfw/ResourceTypes.cpp
ndroidfw/include/androidfw/Asset.h
ndroidfw/include/androidfw/AssetDir.h
ndroidfw/include/androidfw/AssetManager.h
ndroidfw/include/androidfw/BackupHelpers.h
ndroidfw/include/androidfw/ByteBucketArray.h
ndroidfw/include/androidfw/CursorWindow.h
ndroidfw/include/androidfw/DisplayEventDispatcher.h
ndroidfw/include/androidfw/LocaleData.h
ndroidfw/include/androidfw/ObbFile.h
ndroidfw/include/androidfw/ResourceTypes.h
ndroidfw/include/androidfw/StreamingZipInflater.h
ndroidfw/include/androidfw/TypeWrappers.h
ndroidfw/include/androidfw/ZipFileRO.h
ndroidfw/include/androidfw/ZipUtils.h
ndroidfw/include/androidfw/misc.h
wui/hwui_static_deps.mk
6e9dedaa74ed8109360fd174d0a3b1c85d0f9b21 04-Nov-2016 Sudheer Shanka <sudheersai@google.com> Merge "Fix IMountService transaction ids."
437d4e0daf641bb0ce729a21fc9b6ce8783a6bbf 04-Nov-2016 John Reck <jreck@google.com> Merge "Re-unite sources with their headers"
3d36fac2350cbce6dbdcd7502dc9adb0210d3d8b 04-Nov-2016 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Add SkiaProfileRenderer to draw visual debugging info"
cf2c05c652190ddc66f873192c17d193478138a1 26-Oct-2016 Matt Sarett <msarett@google.com> Add SkiaProfileRenderer to draw visual debugging info

This adds support for debug.hwui.profile and
debug.hwui.show_dirty_regions to the Skia pipelines.

There still may be some follow up work for profiling
with visual bars. The speed at which the renderer
is able to draw the rects in the graph is having a
noticeable effect on the actual data in the graphs.

Test: Verified that the features work as expected.

BUG:32370375

Change-Id: I24430da2bab3eb54f6a771f9c984f8ae0008a5a7
wui/Android.mk
wui/pipeline/skia/SkiaOpenGLPipeline.cpp
wui/pipeline/skia/SkiaProfileRenderer.cpp
wui/pipeline/skia/SkiaProfileRenderer.h
wui/pipeline/skia/SkiaVulkanPipeline.cpp
f6113af2d6f6eebee68d3ac510fe96d38a7a39e9 04-Nov-2016 John Reck <jreck@google.com> Re-unite sources with their headers

Move all the includes for androidfw under
a common base path for that library instead
of frameworks/base/includes.

Also fixes -Werror issues that resulted in
no longer being -isystem.

Test: builds
Change-Id: Ic4312eb61b197af114dded5691d5ae1ec82923f7
ndroidfw/Android.mk
ndroidfw/ResourceTypes.cpp
ndroidfw/include/androidfw/Asset.h
ndroidfw/include/androidfw/AssetDir.h
ndroidfw/include/androidfw/AssetManager.h
ndroidfw/include/androidfw/AttributeResolution.h
ndroidfw/include/androidfw/BackupHelpers.h
ndroidfw/include/androidfw/ByteBucketArray.h
ndroidfw/include/androidfw/CursorWindow.h
ndroidfw/include/androidfw/DisplayEventDispatcher.h
ndroidfw/include/androidfw/LocaleData.h
ndroidfw/include/androidfw/ObbFile.h
ndroidfw/include/androidfw/ResourceTypes.h
ndroidfw/include/androidfw/StreamingZipInflater.h
ndroidfw/include/androidfw/TypeWrappers.h
ndroidfw/include/androidfw/ZipFileRO.h
ndroidfw/include/androidfw/ZipUtils.h
ndroidfw/include/androidfw/misc.h
wui/hwui_static_deps.mk
eea591b08e3ee53f7994dfa5de72e52f5061dd6e 03-Nov-2016 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Fix RenderNodeDrawable to draw nonzero Z nodes when needed"
18da04ed2ceccedae462a21511159018d52691de 03-Nov-2016 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Implement onDrawTextBlob in the SkiaCanvasProxy."
40800725d2dec2915607af0231f04f40c5cd221b 03-Nov-2016 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Implement Skia pipelines for OpenGL and Vulkan."
1106b82ea13be80d59eee728a6cf8d4bfa4e3119 03-Nov-2016 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Reference ctable when adopting pointer in Bitmap"
c96468b062afea1c9d1a6bbc557157854c19e4d3 03-Nov-2016 TreeHugger Robot <treehugger-gerrit@google.com> Merge "update callers to newer Skia APIs"
2f06e8ad1a1c4d0866bb66854d2759e275898635 02-Nov-2016 Stan Iliev <stani@google.com> Fix RenderNodeDrawable to draw nonzero Z nodes when needed

Fix RenderNodeDrawable to draw nonzero Z nodes if not in a reordering
section.
Write an unit test modeled after FrameBuilder zReorder, which
verifies the bug fix.

Test: built and run unit tests on angler-eng.
bug: 32541103
Change-Id: Ifbf2d51f4432f5de3af4abe5987c2a72fed14185
wui/pipeline/skia/RenderNodeDrawable.cpp
wui/pipeline/skia/RenderNodeDrawable.h
wui/pipeline/skia/SkiaRecordingCanvas.cpp
wui/tests/unit/RenderNodeDrawableTests.cpp
09bd6c201dd7b5dfaae45ebf413fe0a779eb0268 03-Nov-2016 Derek Sollenberger <djsollen@google.com> Implement onDrawTextBlob in the SkiaCanvasProxy.

Test: hwui_unit_tests now pass
Bug: 30353290
Change-Id: I26c98be394e9dbd1cf63fe3eac18cb090403ace7
wui/SkiaCanvasProxy.cpp
500a0c30d4dcd012218c3e44a62926a1c34a259f 26-Oct-2016 Stan Iliev <stani@google.com> Implement Skia pipelines for OpenGL and Vulkan.

Implement Skia pipelines for OpenGL and Vulkan:
base SkiaPipeline, SkiaOpenGLPipeline and SkiaVulkanPipeline.
Write unit tests for SkiaPipeline.

Test: Built and run manually on angler-eng.
Change-Id: Ie02583426cb3547541ad9bf91700602a6163ff58
wui/Android.mk
wui/DeviceInfo.cpp
wui/DeviceInfo.h
wui/RenderNode.h
wui/hwui/Canvas.cpp
wui/pipeline/skia/RenderNodeDrawable.cpp
wui/pipeline/skia/ReorderBarrierDrawables.cpp
wui/pipeline/skia/SkiaFrameRenderer.h
wui/pipeline/skia/SkiaLayer.h
wui/pipeline/skia/SkiaOpenGLPipeline.cpp
wui/pipeline/skia/SkiaOpenGLPipeline.h
wui/pipeline/skia/SkiaPipeline.cpp
wui/pipeline/skia/SkiaPipeline.h
wui/pipeline/skia/SkiaVulkanPipeline.cpp
wui/pipeline/skia/SkiaVulkanPipeline.h
wui/renderthread/CanvasContext.cpp
wui/renderthread/EglManager.h
wui/tests/common/TestUtils.h
wui/tests/unit/RenderNodeDrawableTests.cpp
wui/tests/unit/SkiaPipelineTests.cpp
f0503b0b6fa7ad963dd4bb9b63eb5528b191bfea 03-Nov-2016 John Reck <jreck@google.com> Merge "Add benchmarks for View inflation"
003f14256271a6955baacba93e54f09d366f1c3b 03-Nov-2016 sergeyv <sergeyv@google.com> Reference ctable when adopting pointer in Bitmap

Change-Id: I56aea10928f0ec73756ed055488a3e3516a9096e
Test: manual.
bug:32621254, 32561595
wui/hwui/Bitmap.cpp
ab12c1fe73734a18ac19a06b97f276528f6d027a 03-Nov-2016 Mike Reed <reed@google.com> update callers to newer Skia APIs

Test: refactoring CL. Existing unit tests still pass.

Change-Id: I47e73e00f14f78dd9d4c48a142ac9853e7e4cad7
wui/Texture.cpp
wui/VectorDrawable.cpp
wui/hwui/Bitmap.cpp
wui/tests/unit/SkiaBehaviorTests.cpp
wui/utils/TestWindowContext.cpp
3acf0382da22cda88234e599cd81b1ff5441cc35 02-Nov-2016 John Reck <jreck@google.com> Add benchmarks for View inflation

Also speed up RenderNode creation:

Use finalizer() instead of NativeAllocationRegistry, this
shaves ~3us off of creation currently

Avoid instanceof, instead have SurfaceView explicitly ask
for updates.

Remove unused method call.

Test: ran benchmarks
Change-Id: I3117fdf72313a4e6a9965baca9f2a8b855c19b34
wui/Android.mk
wui/tests/microbench/RenderNodeBench.cpp
6c8b93cf549165fd13c7439aaeb43cf45624c4a6 02-Nov-2016 neo.chae <neo.chae@lge.com> Merge "Fix idmap leak in zygote process" am: f5ad44b60a am: 4720125a3c am: 3e15d09ed4
am: d3a209399a

Change-Id: I2c7272b5f79e029ac88fa6b6acb598bdf68f28e2
3e15d09ed478bae413616463c1beec5c34a062a0 02-Nov-2016 neo.chae <neo.chae@lge.com> Merge "Fix idmap leak in zygote process" am: f5ad44b60a
am: 4720125a3c

Change-Id: If66e9476583ec50d2dca5a15376a4b84ae2a2885
4720125a3cd16799b0153a7bba9eee5302a66ae3 02-Nov-2016 neo.chae <neo.chae@lge.com> Merge "Fix idmap leak in zygote process"
am: f5ad44b60a

Change-Id: Ia9977c8166f797ad716284eda03076e282a9fde7
52d5a55614d4e86b4d25e43c445baafd9251ab75 02-Nov-2016 Ben Wagner <bungeman@google.com> Merge "Replace SkAutoTUnref with sk_sp."
18bd88534a5783e581ccdd25b1b0f81c237a14b4 24-Oct-2016 Ben Wagner <bungeman@google.com> Replace SkAutoTUnref with sk_sp.

Skia would like to remove SkAutoTUnref and replace it with sk_sp.
This also removes the last SkAutoTDelete straggler.

Change-Id: Idd46fcbbffe7fc1edb243b82b1c2f5425ccd60b6
wui/RecordingCanvas.h
f87da67df90968adcddb2404ff20a41fe49a0315 02-Nov-2016 Derek Sollenberger <djsollen@google.com> Adding changes required by the master-skia merge.

Test: compile only
Change-Id: I39637a20da439edbf2831952df9bfa12da78e9b9
wui/pipeline/skia/LayerDrawable.cpp
wui/pipeline/skia/RenderNodeDrawable.cpp
wui/pipeline/skia/ReorderBarrierDrawables.cpp
c2f31df8b3b9a237e9abffc59c61804ad8495073 28-Oct-2016 Mike Reed <reed@google.com> use SkBlendMode

skbug.com/5814

Test: compile only
Change-Id: Ibbaff43df1117b2ca77fd8f917f03d88cc476330
(cherry picked from commit 26edbcba8a2ed4cb300e7f87e679e3b73cec2772)
wui/Glop.h
wui/GlopBuilder.cpp
wui/Program.h
wui/ProgramCache.cpp
wui/ProgramCache.h
wui/SkiaCanvas.cpp
wui/SkiaCanvasProxy.cpp
wui/SkiaCanvasProxy.h
wui/SkiaShader.cpp
wui/SkiaShader.h
wui/tests/unit/RecordingCanvasTests.cpp
wui/tests/unit/SkiaBehaviorTests.cpp
wui/utils/PaintUtils.h
nput/PointerController.cpp
nput/SpriteController.cpp
34b33887a17a312167666be217a0f521236b393d 01-Nov-2016 Sudheer Shanka <sudheersai@google.com> Fix IMountService transaction ids.

- (IBinder.FIRST_CALL_TRANSACTION=1) is added to the specified
transaction codes during binder generation. Correct the
IMountService transaction ids taking this into account.
- Update interface descriptors in MountService related native code.
- Add proxy implementations for IMountServiceListener and
IMountShutdownObserver.

Bug: 30977067
Test: Verified that calls from native code to IMountService system
service are working and listeners in native code can get the
callbacks correctly.
Change-Id: I9bef9a8113e92d8b36e963bd961ac858acac3f2a
torage/IMountService.cpp
torage/IMountServiceListener.cpp
torage/IMountShutdownObserver.cpp
torage/IObbActionListener.cpp
97cc85fd4b5ab6070ce75c2792369d4611625eaf 01-Nov-2016 Sergei Vasilinetc <sergeyv@google.com> Merge "Routine to upload hardware bitmaps"
6a742a38509693f8b39ee9a5ad2803fca12688bf 31-Oct-2016 neo.chae <neo.chae@lge.com> Fix idmap leak in zygote process

Fix a idmap leak in AssetManager::addSystemOverlays.
And, The fix could also prevent fd leak of idmap.

Test: none

Change-Id: Iff8831e1951a1ca103821f64a612a8b28d2c14e7
Signed-off-by: Hyangseok Chae <neo.chae@lge.com>
ndroidfw/AssetManager.cpp
694d499662838123f474f41b31dea84ec5d563f0 27-Oct-2016 sergeyv <sergeyv@google.com> Routine to upload hardware bitmaps

Change-Id: Id8283a0975325e6830d55fd1e33c5f292a1e9be0
Test: refactoring cl.
bug:30999911
wui/Texture.cpp
wui/Texture.h
wui/hwui/Bitmap.cpp
wui/hwui/Bitmap.h
wui/renderthread/EglManager.cpp
wui/renderthread/EglManager.h
wui/renderthread/RenderProxy.cpp
wui/renderthread/RenderProxy.h
wui/tests/common/BitmapAllocationTestUtils.h
wui/tests/common/scenes/BitmapFillrate.cpp
wui/utils/GLUtils.h
021693b967a2c5556dddd183eb0247df4079e1ad 17-Oct-2016 Stan Iliev <stani@google.com> Implement SkiaRecordingCanvas, RenderNodeDrawable and other drawables.

Implement SkiaRecordingCanvas, RenderNodeDrawable, GLFunctorDrawable,
LayerDrawable, StartReorderBarrierDrawable, EndReorderBarrierDrawable.
Move AnimatedRoundRect and AnimatedCircle in a separate file.
All Skia pipeline files are moved in hwui/pipeline/skia folder.
Add unit tests for RenderNodeDrawable, StartReorderBarrierDrawable,
EndReorderBarrierDrawable and SkiaRecordingCanvas.

Test: I tested manually on 6P devices and did run the unit tests.
Change-Id: If2a347bd1fc4689953822294ce5bf98c7f3f57c7
wui/Android.mk
wui/NinePatchUtils.h
wui/RenderNode.h
wui/SkiaCanvas.cpp
wui/SkiaCanvas.h
wui/SkiaDisplayList.cpp
wui/SkiaDisplayList.h
wui/SkiaDrawables.h
wui/pipeline/skia/AnimatedDrawables.h
wui/pipeline/skia/GLFunctorDrawable.cpp
wui/pipeline/skia/GLFunctorDrawable.h
wui/pipeline/skia/LayerDrawable.cpp
wui/pipeline/skia/LayerDrawable.h
wui/pipeline/skia/RenderNodeDrawable.cpp
wui/pipeline/skia/RenderNodeDrawable.h
wui/pipeline/skia/ReorderBarrierDrawables.cpp
wui/pipeline/skia/ReorderBarrierDrawables.h
wui/pipeline/skia/SkiaDisplayList.cpp
wui/pipeline/skia/SkiaDisplayList.h
wui/pipeline/skia/SkiaFrameRenderer.h
wui/pipeline/skia/SkiaRecordingCanvas.cpp
wui/pipeline/skia/SkiaRecordingCanvas.h
wui/tests/common/TestUtils.cpp
wui/tests/common/TestUtils.h
wui/tests/unit/RenderNodeDrawableTests.cpp
wui/tests/unit/SkiaDisplayListTests.cpp
96f4410a57b2e10099df4d3991636c53f8dc61fd 28-Oct-2016 Derek Sollenberger <djsollen@google.com> Merge "Refactor mock Functors into a common TestUtils class."
835b3a69c345d2b58a0774daeb2e717a8a878059 28-Oct-2016 Derek Sollenberger <djsollen@google.com> Refactor mock Functors into a common TestUtils class.

Test: refactor. existing tests still pass
Change-Id: I55258487c371869a5b91dd2dcf6bf7bd47ac1a35
wui/tests/common/TestUtils.h
wui/tests/unit/CanvasContextTests.cpp
wui/tests/unit/SkiaDisplayListTests.cpp
c0f50362c77b9d39452c96c5dec1806e867eb762 28-Oct-2016 Derek Sollenberger <djsollen@google.com> Merge changes If99865cd,I5b794c94

* changes:
Fix test breakage due to naming collision in the linker.
Minor cleanup of unused headers and overly described functions.
5ef78a895b8a168b2f4dfb28bfdde984f8cc3684 28-Oct-2016 Derek Sollenberger <djsollen@google.com> Fix test breakage due to naming collision in the linker.

Test: hwui_unit_tests in question now run successfully.
Change-Id: If99865cd1cfa5c819338d062f5685700380a60a6
wui/tests/unit/CanvasContextTests.cpp
wui/tests/unit/SkiaDisplayListTests.cpp
050bb6a2b02fe19b7872f3eaed655346fc8a050e 26-Oct-2016 Derek Sollenberger <djsollen@google.com> Minor cleanup of unused headers and overly described functions.

Test: local compile
Change-Id: I5b794c9473f6d3a9e1d4f9365c951c7ce9dade50
wui/renderthread/CanvasContext.cpp
wui/tests/unit/SkiaCanvasTests.cpp
fda66672fedf73d08d9061a2823ec7bd2c9cd774 28-Oct-2016 Sergei Vasilinetc <sergeyv@google.com> Merge changes I94b1c31c,Ib0b16c87

* changes:
Add target to texture
Use Bitmap in Texture.upload
c024377dcfd0006b3f639834fd107ec04eff5a55 27-Oct-2016 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Implement getTransparentRegion() using SkLatticeIter"
7de73858975fc4dbccfa1c188f6d1a12d39ce2c5 26-Oct-2016 Matt Sarett <msarett@google.com> Implement getTransparentRegion() using SkLatticeIter

This allows us to delete utils/NinePatchImpl.cpp and
utils/NinePatch.h

Test: Passed cts tests - DrawableTest, NinePatchTest,
NinePatchDrawableTest.

Change-Id: I6b5d09fa3479e758d8b931fa0e977c25f4435a7c
wui/Android.mk
wui/NinePatchUtils.h
wui/RecordingCanvas.h
wui/SkiaCanvas.cpp
wui/hwui/Canvas.h
wui/utils/NinePatch.h
wui/utils/NinePatchImpl.cpp
e2179925df2ce174d81dd6f7abae626cc859ce00 27-Oct-2016 Seigo Nonaka <nona@google.com> Make sure the Typeface is loaded before calling measureText.

This is a clean up CL by resolving TODO in hwui/Typeface.cpp

Usually Typeface is listed in preloaded-classes and loaded during Zygote
initialization. However, on some devices, class preloading is disabled.
Paint.measureText can not be called before Typeface static initializer
and it may not load Typeface class.

To ensure that the font preloading happens in ZygoteInit even on such
devices, refer Typeface.DEFAULT static field in TextView.preloadFontCache
in TextView which also happens during zygote initialization.

Bug: 32374752
Test: Manually done
Change-Id: I773c154671c170bebad3aa0f9c04eee5a664b849
wui/hwui/Typeface.cpp
2a38c42e921451abebb4ee5f5ecd738f1b6b04ed 26-Oct-2016 sergeyv <sergeyv@google.com> Add target to texture

Test: refactoring cl.
bug:32413624

Change-Id: I94b1c31cd4e0712dfcfd7777a0012424c1bf0dca
wui/Glop.h
wui/GlopBuilder.cpp
wui/GlopBuilder.h
wui/Layer.cpp
wui/Layer.h
wui/Readback.cpp
wui/Texture.cpp
wui/Texture.h
wui/renderstate/RenderState.cpp
wui/tests/unit/GlopBuilderTests.cpp
98fa4f9e7b33a3004ce9142c9acd4300391b9a0e 25-Oct-2016 sergeyv <sergeyv@google.com> Use Bitmap in Texture.upload

Test: refactoring cl.
bug:32216791

Change-Id: Ib0b16c878d8371e0471e9a502f55626ec5999c60
wui/PathCache.cpp
wui/PathCache.h
wui/RecordingCanvas.cpp
wui/Texture.cpp
wui/Texture.h
wui/TextureCache.cpp
wui/hwui/Bitmap.h
daf7229047c44947b9b02ee187fe5b13f30ebd4b 25-Oct-2016 Derek Sollenberger <djsollen@google.com> Move OpenGL specific details behind renderPipeline interface.

Test: new and existing unit tests still pass.
Change-Id: I6164f30f45ebe450788ed8d949eca5af9a44e585
wui/Android.mk
wui/renderthread/CanvasContext.cpp
wui/renderthread/CanvasContext.h
wui/renderthread/OpenGLPipeline.cpp
wui/renderthread/OpenGLPipeline.h
wui/renderthread/RenderProxy.cpp
wui/renderthread/RenderThread.h
wui/tests/unit/CanvasContextTests.cpp
be9a73063c9e2dc56ee1e29cc93308d17b18eece 26-Oct-2016 Derek Sollenberger <djsollen@google.com> Merge "Store GrContext on RenderThread for use by Skia-based renderers."
80e6d8873b79ced40e79fcba0bf793ea6528d20c 04-Dec-2015 Thomas Buhot <thomas.buhot@intel.com> DO NOT MERGE ANYWHERE libhwui: make setSurface asynchronous

from AOSP: https://android-review.googlesource.com/#/c/183305/

On the critical path of the cold launch of applications
the main thread of the started application tells the RenderThread
to create a surface. This process is synchronous and blocks
the main thread of the application until the creation
of the EGLContext is complete.
As a consequence the launch time of the application is delayed
by time spent allocating the EGL Context in the RenderThread.

With this optimization the launch time of any application
is improved (for example settings by 20 to 40 ms).

Change-Id: Ibf47aaa0abb8dedf7aa00693073db3785d9d6b08
Signed-off-by: Thomas Buhot <thomas.buhot@intel.com>
Signed-off-by: Zhiquan Liu <zhiquan.liu@intel.com>
wui/renderthread/CanvasContext.cpp
wui/renderthread/CanvasContext.h
wui/renderthread/RenderProxy.cpp
wui/renderthread/RenderProxy.h
de97307362c26b64e2376b21ccde8414088cdc8b 25-Oct-2016 Matt Sarett <msarett@google.com> Make FrameInfoVisualizer use an IRenderPipeline to draw

Removing the direct uses of the BakedOpRenderer should make
it easier for the SkiaGL pipeline to take advantage of these
debugging features.

Test: Verified that debug.hwui.show_dirty_regions and
debug.hwui.profile still behave as expected.

BUG:32370375

Change-Id: I2818bda4a18ec183c9c39ca080ad34a4dc89b5cd
wui/Android.mk
wui/FrameInfoVisualizer.cpp
wui/FrameInfoVisualizer.h
wui/IProfileRenderer.h
wui/ProfileRenderer.cpp
wui/ProfileRenderer.h
wui/renderthread/OpenGLPipeline.cpp
98f75d53dbe243b1661c616643698e025d4978f6 25-Oct-2016 Derek Sollenberger <djsollen@google.com> Store GrContext on RenderThread for use by Skia-based renderers.

Test: built and booted on device
Change-Id: I4c1060ec72bc67e54e6b2d25b1f2c13aaa513f89
wui/renderthread/CanvasContext.h
wui/renderthread/EglManager.cpp
wui/renderthread/IRenderPipeline.h
wui/renderthread/OpenGLPipeline.h
wui/renderthread/RenderThread.h
6af8c0968e96b760aeab78e50556aee092de3e35 25-Oct-2016 Seigo Nonaka <nona@google.com> Merge "Revert "Remove obsolete interface GetTable.""
436f8ac7867e28b43f890020663b222f43de5ce6 25-Oct-2016 Seigo Nonaka <nona@google.com> Revert "Remove obsolete interface GetTable."

This reverts commit 9cd73b6828e4e7475ab430c373efa2cd6dc69cea.

This causes a crash on Android Auto.
Bug: 32374752

Change-Id: I7fd0a52eb2458772ff50f246ca1c7d3397554133
wui/hwui/MinikinSkia.cpp
wui/hwui/MinikinSkia.h
f50806afb8982acbab4510a8d04bbcf13a2bcd9e 24-Oct-2016 Stan Iliev <stani@google.com> Merge SkiaCanvas changes from master-skia to master branch.
Most changes are taken from ag/1407698, ag/1336660, ag/1488900.

Test: Built and run manually on angler-eng.
Change-Id: Id4e464b9a83c62b6bc7ea31a30e5ca6cd53b659d
wui/SkiaCanvas.cpp
wui/SkiaCanvas.h
0dd9902595d36525fc0b1f8a595cbb2f7c883d93 21-Oct-2016 Sergei Vasilinetc <sergeyv@google.com> Merge changes I1d8a9a6e,I5adcd59d

* changes:
Use Bitmap in DisplayList & RecordedOps instead of SkBitmap Test: refactoring cl. bug:32216791
Pass Bitmap instead of SkBitmap in drawNinePatch & drawBitmapMesh Test: refactoring cl. bug:32216791
ec4a4b13eae2241d1613890c1c1c096bed891845 21-Oct-2016 sergeyv <sergeyv@google.com> Use Bitmap in DisplayList & RecordedOps instead of SkBitmap
Test: refactoring cl.
bug:32216791

Change-Id: I1d8a9a6e772e2176b6c2409409a910478b45f8db
wui/BakedOpDispatcher.cpp
wui/BakedOpRenderer.cpp
wui/BakedOpRenderer.h
wui/DisplayList.cpp
wui/DisplayList.h
wui/FrameBuilder.cpp
wui/RecordedOp.h
wui/RecordingCanvas.cpp
wui/RecordingCanvas.h
wui/SkiaShader.cpp
wui/TextureCache.cpp
wui/TextureCache.h
wui/hwui/Bitmap.cpp
wui/hwui/Bitmap.h
wui/renderthread/RenderProxy.cpp
wui/renderthread/RenderProxy.h
wui/tests/common/TestUtils.h
wui/tests/unit/FrameBuilderTests.cpp
wui/tests/unit/RecordingCanvasTests.cpp
93bbe47d650b7b5e48d705257c0bdfa086300549 21-Oct-2016 Jakub Adamek <jakuba@google.com> Change name of overlay subdir 'sku'->'theme' am: 54dcaaba4f
am: 6bbb63ad91

Change-Id: I71dfaafbebaa7bd61d182405c734eef1ea7ff1eb
6bbb63ad91a707c77dd52f0b6caa12a720732ee1 21-Oct-2016 Jakub Adamek <jakuba@google.com> Change name of overlay subdir 'sku'->'theme'
am: 54dcaaba4f

Change-Id: I4536de644c20171e175cddaff0cd041fb05b3038
cc97d86da8de3d89c68e9b2b06da4f4b6c483d2d 21-Oct-2016 Sergei Vasilinetc <sergeyv@google.com> Merge "Pass Bitmap instead of SkBitmap for bitmap rect operation Test: refactoring cl. bug:32216791"
5fd2a1cb2726afa7d40fe4750e9defd89c24ed37 21-Oct-2016 sergeyv <sergeyv@google.com> Pass Bitmap instead of SkBitmap in drawNinePatch & drawBitmapMesh
Test: refactoring cl.
bug:32216791

Change-Id: I5adcd59daf752d36012456b0a9960c59d07e2e3d
wui/RecordingCanvas.cpp
wui/RecordingCanvas.h
wui/SkiaCanvas.cpp
wui/SkiaCanvas.h
wui/hwui/Canvas.h
fc9999505a36c66892d7ccce85187936105f4f36 17-Oct-2016 sergeyv <sergeyv@google.com> Pass Bitmap instead of SkBitmap for bitmap rect operation
Test: refactoring cl.
bug:32216791

Change-Id: I66d19194c57b3aa2c400aa87acffc774a533776a
wui/FrameBuilder.cpp
wui/RecordingCanvas.cpp
wui/RecordingCanvas.h
wui/SkiaCanvas.cpp
wui/SkiaCanvas.h
wui/SkiaCanvasProxy.cpp
wui/VectorDrawable.cpp
wui/VectorDrawable.h
wui/hwui/Bitmap.cpp
wui/hwui/Bitmap.h
wui/hwui/Canvas.h
wui/tests/common/TestUtils.h
wui/tests/common/scenes/RecentsAnimation.cpp
4d2a1dc01fb6dd4a8265e58c259374fc1e742d84 20-Oct-2016 Sergei Vasilinetc <sergeyv@google.com> Merge "Pass Bitmap instead of SkBitmap in canvas.drawBitmap(Bitmap, float,float,Paint) Test: refactoring cl. bug:32216791"
638afc8b0fc7ad896ba311331ac752ac5dbbd02e 20-Oct-2016 Sergei Vasilinetc <sergeyv@google.com> Merge "Rename hwui/PixelRef to hwui/Bitmap Test: refactoring cl. bug:32216791"
aed7f58fb05a25ce2112829e77c0eb5dd268e8a7 15-Oct-2016 sergeyv <sergeyv@google.com> Pass Bitmap instead of SkBitmap in canvas.drawBitmap(Bitmap, float,float,Paint)
Test: refactoring cl.
bug:32216791

Change-Id: If9f9fbc19e683b14cce6c3c268258bd832d495d2
wui/RecordingCanvas.cpp
wui/RecordingCanvas.h
wui/SkiaCanvas.cpp
wui/SkiaCanvas.h
wui/SkiaCanvasProxy.cpp
wui/hwui/Bitmap.cpp
wui/hwui/Bitmap.h
wui/hwui/Canvas.h
wui/tests/common/TestUtils.h
wui/tests/common/scenes/ListViewAnimation.cpp
wui/tests/microbench/DisplayListCanvasBench.cpp
wui/tests/microbench/FrameBuilderBench.cpp
wui/tests/unit/FrameBuilderTests.cpp
wui/tests/unit/RecordingCanvasTests.cpp
c1c54062f8cc9d47bdea820ae5ab6aef260b4488 20-Oct-2016 sergeyv <sergeyv@google.com> Rename hwui/PixelRef to hwui/Bitmap
Test: refactoring cl.
bug:32216791

Change-Id: I26de43f71027bccb43a5011f84080ab4631b2883
wui/Android.mk
wui/hwui/Bitmap.cpp
wui/hwui/Bitmap.h
wui/hwui/PixelRef.cpp
wui/hwui/PixelRef.h
wui/tests/common/TestUtils.h
ebeb8179668ff20ad737dd797bc25d3d5461268b 20-Oct-2016 Seigo Nonaka <nona@google.com> Merge "Remove obsolete interface GetTable."
ac625e5e2e07896f1db8f54971a795385a554033 20-Oct-2016 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Add tests for attribute resolution"
0154feef22d9fa5490f0285c2c3d83951b12bcc8 19-Oct-2016 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Initial refactoring to enable reuse of SkiaDisplayList on a per RenderNode basis. With Skia renderer we see 30% speed improvement in Invalidate Tree UI Jank test, when SkiaDisplayList objects are reused."
7ca5ad1d06c94d99f17b2f1f27cd853d47b5bcf4 19-Oct-2016 Sergei Vasilinetc <sergeyv@google.com> Merge "Move allocatePixelRef methods to hwui. This patch also makes tests to use SkBitmap backed by hwui/PixelRef, Test: refactoring cl. bug:27762775"
54dcaaba4fa0392c36864f99b9dc1da9c975a100 19-Oct-2016 Jakub Adamek <jakuba@google.com> Change name of overlay subdir 'sku'->'theme'

The name 'sku' does not fit well as we recommend to use the same
value for different SKUs if vendors wish to have the same colors
on those SKUs.

Bug: 32268656
Change-Id: Ib5e5a3386676453dafeb13a6a6bf91f81bb48a11
ndroidfw/AssetManager.cpp
08a870cd6df8ab804fc4eaef6b689455c1ce2165 18-Oct-2016 Adam Lesinski <adamlesinski@google.com> Fix race with Asset destruction and printing allocation stats am: 2582465bb4
am: 882f8168b0

Change-Id: I613fabdaad38be88ff9c4527e100e33a87f9d601
882f8168b043f667c2523eaaca0d00c9cb7a8f5b 18-Oct-2016 Adam Lesinski <adamlesinski@google.com> Fix race with Asset destruction and printing allocation stats
am: 2582465bb4

Change-Id: I1dbb7609fa4d770e513e6f628e4c598600607383
ca9b1ed9f0d8638637c83931f96f184889a72fa4 18-Oct-2016 Mike Reed <reed@google.com> Merge "use SkBlendMode instead of SkXfermode use sk_sp versions of paint setters/getters"
9cd73b6828e4e7475ab430c373efa2cd6dc69cea 18-Oct-2016 Seigo Nonaka <nona@google.com> Remove obsolete interface GetTable.

Test: Manually done.

Change-Id: Ib9f50610454a6ddd7179c40d5f31c74916bcff84
wui/hwui/MinikinSkia.cpp
wui/hwui/MinikinSkia.h
11ca129c2bdd98c3b6b09f1f6d6a979b17588dd4 18-Oct-2016 George Burgess IV <gbiv@google.com> Merge "Fix static analyzer warnings." am: ff5c3ad08b am: 1db1a86bba
am: e76253055c

Change-Id: I37be36a86dbab762c64696843916e88f17908251
e76253055cba3d0239dc33c0131846fa0c73d024 18-Oct-2016 George Burgess IV <gbiv@google.com> Merge "Fix static analyzer warnings." am: ff5c3ad08b
am: 1db1a86bba

Change-Id: Iafed2ab4df7297ed8e3b0b86cafe15af3e1c8823
1db1a86bbafb63b9c3cfb7d7f41e468a71fec4cc 18-Oct-2016 George Burgess IV <gbiv@google.com> Merge "Fix static analyzer warnings."
am: ff5c3ad08b

Change-Id: I655fd765cfeae407c070261cfe07ce8b739b06fa
7a37b74d37ff79e805c9e97d977e07bfec753c5a 12-Oct-2016 Adam Lesinski <adamlesinski@google.com> Add tests for attribute resolution

- Adds unit tests for attribute resolution. These include
some test data resource tables and compiled XML files.
- Convert touched files to Google style guide.

Test: make libandroidfw_tests
Change-Id: Ib3a36061dc874de5f6a266b4e82c0a12ef435f23
ndroidfw/.clang-format
ndroidfw/AttributeFinder.h
ndroidfw/AttributeResolution.cpp
ndroidfw/tests/Android.mk
ndroidfw/tests/AttributeFinder_test.cpp
ndroidfw/tests/AttributeResolution_test.cpp
ndroidfw/tests/TestHelpers.cpp
ndroidfw/tests/TestHelpers.h
ndroidfw/tests/data/.gitignore
ndroidfw/tests/data/styles/AndroidManifest.xml
ndroidfw/tests/data/styles/R.h
ndroidfw/tests/data/styles/build.sh
ndroidfw/tests/data/styles/layout.xml
ndroidfw/tests/data/styles/res/layout/layout.xml
ndroidfw/tests/data/styles/res/values/styles.xml
ndroidfw/tests/data/styles/resources.arsc
ff5c3ad08b186e71b7b1466c576c5d44f05746ca 18-Oct-2016 Treehugger Robot <treehugger-gerrit@google.com> Merge "Fix static analyzer warnings."
2582465bb437d3700b846fe66416f1c650e9345c 17-Oct-2016 Adam Lesinski <adamlesinski@google.com> Fix race with Asset destruction and printing allocation stats

A race could occur when printing the list of Asset allocations for
debugging purposes.

Each Asset object would insert themselves into a global linked list
on construction and remove themselves on destruction. Iterating the list
and the insertion/remove operations all acquire a global lock.

The race occurs after the Asset subclass destructor runs but before the Asset
base class destructor runs, which performs the actual removal from the list.

The vtable of the object being destroyed ends up pointing at the base Asset class'
vtable, and during the iteration of the global list, a pure virtual method is called
leading to an abort, since the wrong vtable is dereferenced.

This change moves the insertion/removal of the Asset object into the global list
to the concrete class, which adds some maintenance overhead but solves the problem.

Bug:31113965
Test: make libandroidfw_tests
Change-Id: I1a620897e5e04a8519ee247883bba0719b1fa6f3
(cherry picked from commit 0358efe4f76f42d9eea91600202a5ab0831d9cef)
ndroidfw/Asset.cpp
ndroidfw/tests/Android.mk
ndroidfw/tests/Asset_test.cpp
047f5a7b4f528f287a2dad494b8696525b27ad80 18-Oct-2016 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Fix race with Asset destruction and printing allocation stats"
52528d76291c4ad96b758cae6c77ff93204a3968 18-Oct-2016 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Fix complex clipping on mergeable ops"
21c2e9e60c9e66e848fc9276b878c1ab1bd66aa9 17-Oct-2016 Mark Salyzyn <salyzyn@google.com> Merge "missing includes" am: 78929f3ee0 am: 6a8f0d70b0
am: 6e60ab12e7

Change-Id: I1b5c6f49d2ae565ebd59c6ce8d590512ab306487
6e60ab12e709d6e72659c823540e8591cc2412de 17-Oct-2016 Mark Salyzyn <salyzyn@google.com> Merge "missing includes" am: 78929f3ee0
am: 6a8f0d70b0

Change-Id: I40ff974f4333aaa714a63d5436b822491b9d78d6
6a8f0d70b09d3e628f2b3472b1c534dd213be3ec 17-Oct-2016 Mark Salyzyn <salyzyn@google.com> Merge "missing includes"
am: 78929f3ee0

Change-Id: I3e7a25ded484d516fab453abe434c2e53cf0f27e
0358efe4f76f42d9eea91600202a5ab0831d9cef 17-Oct-2016 Adam Lesinski <adamlesinski@google.com> Fix race with Asset destruction and printing allocation stats

A race could occur when printing the list of Asset allocations for
debugging purposes.

Each Asset object would insert themselves into a global linked list
on construction and remove themselves on destruction. Iterating the list
and the insertion/remove operations all acquire a global lock.

The race occurs after the Asset subclass destructor runs but before the Asset
base class destructor runs, which performs the actual removal from the list.

The vtable of the object being destroyed ends up pointing at the base Asset class'
vtable, and during the iteration of the global list, a pure virtual method is called
leading to an abort, since the wrong vtable is dereferenced.

This change moves the insertion/removal of the Asset object into the global list
to the concrete class, which adds some maintenance overhead but solves the problem.

Bug:31113965
Test: make libandroidfw_tests
Change-Id: I1a620897e5e04a8519ee247883bba0719b1fa6f3
ndroidfw/Asset.cpp
ndroidfw/tests/Android.mk
ndroidfw/tests/Asset_test.cpp
f8f56cbb20817c295fe8c6f886dca5e2912e1996 15-Oct-2016 Chris Craik <ccraik@google.com> Fix complex clipping on mergeable ops

Fixes: 32106003
Test: unit tests passing (and one added)

Change-Id: I519bc38a1fa8c25c9ae317ffdb7e59e5a0824f59
wui/FrameBuilder.cpp
wui/tests/unit/FrameBuilderTests.cpp
c0e7a90f1f5f98e85dbeda021fac0dff79725933 13-Oct-2016 Stan Iliev <stani@google.com> Initial refactoring to enable reuse of SkiaDisplayList
on a per RenderNode basis. With Skia renderer we
see 30% speed improvement in Invalidate Tree UI Jank test,
when SkiaDisplayList objects are reused.

Test: manually built and run on angler-eng.
Change-Id: Ie4ec50ddb2015150e3ec678dde7ebed0c8d90067
wui/RecordingCanvas.cpp
wui/RecordingCanvas.h
wui/SkiaCanvas.h
wui/hwui/Canvas.cpp
wui/hwui/Canvas.h
dfe4a1b6ee1e618861f52d45720f3c2c0a089bce 17-Oct-2016 Chris Craik <ccraik@google.com> Fix complex clipping on mergeable ops DO NOT MERGE am: d183e0b988
am: a6bfd8d12c

Change-Id: I5af8d0fac1e47e7bf831ca2f387fe550acf4165c
a6bfd8d12c2397f34940d0cb812cb0820256c8b6 17-Oct-2016 Chris Craik <ccraik@google.com> Fix complex clipping on mergeable ops DO NOT MERGE
am: d183e0b988

Change-Id: Icb357a11cb8a4be473aa8b0acdb4d799973ff54a
4d6c372eaebc6d227f7222a92950a64c76fd4baf 17-Oct-2016 Mark Salyzyn <salyzyn@google.com> missing includes

Assumptions are made about header side effects

Test: compile
Bug: 30465923
Change-Id: Icc9415aed5e54b2bc00b70aa0da6df4148f30654
wui/hwui/Typeface.cpp
d183e0b9886b46656a695a724cee6b9070e433ca 15-Oct-2016 Chris Craik <ccraik@google.com> Fix complex clipping on mergeable ops DO NOT MERGE

Fixes: 32106003

Change-Id: I519bc38a1fa8c25c9ae317ffdb7e59e5a0824f59
wui/FrameBuilder.cpp
wui/tests/unit/FrameBuilderTests.cpp
c36bd6c16ddfc160732ff7e4518564714c8aa66e 12-Oct-2016 sergeyv <sergeyv@google.com> Move allocatePixelRef methods to hwui.
This patch also makes tests to use SkBitmap backed by hwui/PixelRef,
Test: refactoring cl.
bug:27762775

Change-Id: Ib936e81877790849118420f5e565fc8f4466c1be
wui/hwui/PixelRef.cpp
wui/hwui/PixelRef.h
wui/tests/common/TestUtils.h
wui/tests/unit/SkiaBehaviorTests.cpp
e8efec56f01983b98fbc4a1075a9e168b1fe1e9d 12-Oct-2016 George Burgess IV <gbiv@google.com> Fix static analyzer warnings.

frameworks/base/libs/androidfw/ResourceTypes.cpp:742:46: warning: Result
of 'calloc' is converted to a pointer of type 'char16_t *', which is
incompatible with sizeof operand type 'char16_t **'
mCache = (char16_t**)calloc(mHeader->stringCount,
sizeof(char16_t**));

frameworks/base/libs/androidfw/ResourceTypes.cpp:4359:28: warning:
Potential leak of memory pointed to by 'set'
return NO_MEMORY;

Bug: None
Test: Builds without the aforementioned warnings.
Change-Id: I1f84c1b9f4cba05f5cc7c3ae9fec1a07bc9cd8fe
ndroidfw/ResourceTypes.cpp
57e1950542b4abe6701ec0978f0e8cf39baa183f 13-Oct-2016 Adam Lesinski <adamlesinski@google.com> Merge "Move attribute resolution from core/jni to libandroidfw"
260ab726486317496bc12a57d599ea96dcde3284 07-Oct-2016 Mike Reed <reed@google.com> use SkBlendMode instead of SkXfermode
use sk_sp versions of paint setters/getters

Change-Id: I86591a0a8ec92e6039776cbf00424ea24f585b28
wui/BakedOpDispatcher.cpp
wui/DeferredLayerUpdater.cpp
wui/DeferredLayerUpdater.h
wui/FontRenderer.h
wui/FrameBuilder.cpp
wui/GlopBuilder.cpp
wui/GlopBuilder.h
wui/Layer.h
wui/LayerBuilder.cpp
wui/PathCache.cpp
wui/RecordedOp.h
wui/RecordingCanvas.cpp
wui/RecordingCanvas.h
wui/RenderProperties.cpp
wui/RenderProperties.h
wui/SkiaCanvas.cpp
wui/SkiaCanvas.h
wui/VectorDrawable.cpp
wui/hwui/Canvas.h
wui/renderstate/Blend.cpp
wui/renderstate/Blend.h
wui/tests/common/TestListViewSceneBase.cpp
wui/tests/common/scenes/ClippingAnimation.cpp
wui/tests/common/scenes/GlyphStressAnimation.cpp
wui/tests/common/scenes/HwLayerAnimation.cpp
wui/tests/common/scenes/ListOfFadedTextAnimation.cpp
wui/tests/common/scenes/OpPropAnimation.cpp
wui/tests/common/scenes/OvalAnimation.cpp
wui/tests/common/scenes/PartialDamageAnimation.cpp
wui/tests/common/scenes/RecentsAnimation.cpp
wui/tests/common/scenes/RectGridAnimation.cpp
wui/tests/common/scenes/RoundRectClippingAnimation.cpp
wui/tests/common/scenes/SaveLayerAnimation.cpp
wui/tests/common/scenes/ShadowGrid2Animation.cpp
wui/tests/common/scenes/ShadowGridAnimation.cpp
wui/tests/common/scenes/ShapeAnimation.cpp
wui/tests/common/scenes/TextAnimation.cpp
wui/tests/microbench/DisplayListCanvasBench.cpp
wui/tests/unit/BakedOpDispatcherTests.cpp
wui/tests/unit/FrameBuilderTests.cpp
wui/tests/unit/RecordingCanvasTests.cpp
wui/tests/unit/RenderNodeTests.cpp
wui/tests/unit/SkiaBehaviorTests.cpp
wui/tests/unit/SkiaCanvasTests.cpp
wui/utils/NinePatchImpl.cpp
wui/utils/PaintUtils.h
nput/SpriteController.cpp
6e68bedacc3086f49b0cff6d20e006bcc6559603 13-Oct-2016 Derek Sollenberger <djsollen@google.com> Merge "Initial refactoring to enable the addition of the SkiaOpenGLPipeline."
8e56eea48cdda1c54383b383f5d7475ae239b4b1 13-Oct-2016 TreeHugger Robot <treehugger-gerrit@google.com> Merge changes Icd65d906,I109cb9db

* changes:
Don't apply the OECF twice to multi-stop gradients
JNI does not use hwui_flags but LOCAL_CFLAGS
f9037dabea3ccf80b05ec1d66aeac13bee38b239 13-Oct-2016 Romain Guy <romainguy@google.com> Don't apply the OECF twice to multi-stop gradients

Test: Manual

Change-Id: Icd65d906df2f0a059373edb8c6d55fe378c92f92
wui/GradientCache.cpp
a6abb1031f190bb0ac6ffaa87318d82df704e4bd 13-Oct-2016 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Fatal abort on invalid state"
3b26c211e3a90009c484fdd33a94cc44ebda1e40 13-Oct-2016 Romain Guy <romainguy@google.com> Merge "Various fixes for linear blending and gradients"
cecec702eb436ddfec1e1c68d379a4dc1ef37f63 12-Oct-2016 John Reck <jreck@google.com> Fatal abort on invalid state

Use mCaches.size() to track item count instead of trying
to do it manually on the side.

Bug: 31856965
Test: manual, minimal. Repro steps for bug are unknown, fix
is speculative as a result
Change-Id: Ic32f27262548a99be95440881420d224ede4db74
wui/PathCache.cpp
wui/PathCache.h
85dd1b859482d593fa724b7646f49819818c0e98 12-Oct-2016 Martin Wallgren <martin.wallgren@sonymobile.com> RRO: Synchronize access to overlays.list am: 0fbb608110 am: dce79f10ba
am: 3970c44547

Change-Id: I4c9eecad4c2d935a1f1840fed6d70685b82b7e65
4e230f4688e85551252dfaf94cbaab3c9087ab3b 12-Oct-2016 Doris Liu <tianliu@google.com> Fix SkShader leak for Gradient VectorDrawable and test am: fc9cf72339 am: c47199bb6a
am: 1ef744a3b8

Change-Id: Iee4f98f10a4e1b3947166777040918ab779ab023
3970c44547d343bef89859f4c45b299a4e1a0b8b 12-Oct-2016 Martin Wallgren <martin.wallgren@sonymobile.com> RRO: Synchronize access to overlays.list am: 0fbb608110
am: dce79f10ba

Change-Id: Idc121ffe64f1bc7b5bdcb1a800305165f27f1c0a
1ef744a3b8f7acd6699bc43ef220745a4b46ce68 12-Oct-2016 Doris Liu <tianliu@google.com> Fix SkShader leak for Gradient VectorDrawable and test am: fc9cf72339
am: c47199bb6a

Change-Id: I261f8f3708f526c15ae93c51d24bdaee054354f6
dce79f10ba59e5c6f8a5a38ccb5075c5907d6d46 12-Oct-2016 Martin Wallgren <martin.wallgren@sonymobile.com> RRO: Synchronize access to overlays.list
am: 0fbb608110

Change-Id: I44a716df3954b6d2d58d7c9784f8b55cf041b10b
c47199bb6a39b305309f9cc6587e82f89024fe7e 12-Oct-2016 Doris Liu <tianliu@google.com> Fix SkShader leak for Gradient VectorDrawable and test
am: fc9cf72339

Change-Id: I493a8c52cd4cca79971a4fd2e3eed7f566ce8ecd
baac85ec1f1f94ee220b734680aba3127546ece9 12-Oct-2016 Adam Lesinski <adamlesinski@google.com> Merge "RRO: Synchronize access to overlays.list" into nyc-mr1-dev
8762e332e3797fb41929a1c6069207f4906ca329 12-Oct-2016 Romain Guy <romainguy@google.com> Various fixes for linear blending and gradients

With linear blending turned off some textures were still
created as sRGB textures instead of linear textures.
Multi-stop gradients were not behaving properly on devices
with no support for float textures.
Gradients are now always interpolated in linear space
even if linear blending is off.
New functions to always force sRGB->linear->sRGB conversions.

Test: Manual testing
Bug: 29940137
Change-Id: Ie2f84ee2a65fd85570e88af813e841e0e625df6c
wui/Extensions.cpp
wui/Extensions.h
wui/FloatColor.h
wui/GlopBuilder.cpp
wui/GradientCache.cpp
wui/GradientCache.h
wui/ProgramCache.cpp
wui/SkiaShader.cpp
wui/utils/Color.h
21986f2ae73e9ae3395a37dd3976af55e75d4f9d 12-Oct-2016 Romain Guy <romainguy@google.com> Merge "Linear blending, step 1"
0fbb60811076e6fcfd576287b6e6a16ac1a69c44 11-Aug-2015 Martin Wallgren <martin.wallgren@sonymobile.com> RRO: Synchronize access to overlays.list

idmap --scan is executed as a part of the pre-loading in ZygoteInit.
The pre loading is executed in parallel for each supported architecture
(32/64 bit). This will cause a race condition in the creation of the
overlays.list file and the idmap files for the system overlays.

Apply flock on overlays.list to prevent the file from being thrown away
and recreated when it is in use by another Zygote.

Cherry-picked from AOSP.

Bug: 28032298
Test: manual
Change-Id: I51d39f121d207b11181340b68b164b60020f0c61
ndroidfw/AssetManager.cpp
78382db82025b21f8b5334f537633b0ffb93e275 12-Oct-2016 Adam Lesinski <adamlesinski@google.com> Merge "RRO: Synchronize access to overlays.list"
4452e137ffc02ab4e32aab2b2ec7192b45d9f494 12-Oct-2016 Adam Lesinski <adamlesinski@google.com> Move attribute resolution from core/jni to libandroidfw

Without the entire JNI environment, testing the attribute
resolution code will be much easier and enable safer
refactoring.

Change-Id: I2815cc1e10a694a3b01bc37e191a0d5e9d0e6735
Test: Existing CTS tests pass
ndroidfw/Android.mk
ndroidfw/AttributeResolution.cpp
f12af5e90727869d225f169e7f475695da64bf48 11-Aug-2015 Martin Wallgren <martin.wallgren@sonymobile.com> RRO: Synchronize access to overlays.list

idmap --scan is executed as a part of the pre-loading in ZygoteInit.
The pre loading is executed in parallel for each supported architecture
(32/64 bit). This will cause a race condition in the creation of the
overlays.list file and the idmap files for the system overlays.

Apply flock on overlays.list to prevent the file from being thrown away
and recreated when it is in use by another Zygote.

Bug: 28032298

Change-Id: I51d39f121d207b11181340b68b164b60020f0c61
ndroidfw/AssetManager.cpp
fc9cf72339c7ce61adb11ceb3b247f112577fb6b 11-Oct-2016 Doris Liu <tianliu@google.com> Fix SkShader leak for Gradient VectorDrawable and test

This CL fixes a SkShader leak in VD when applying local matrix
to the shader. Specifically, the usage of newWithLocalMatrix(...)
increments the shader's ref count in every draw() call for
Gradient VectorDrawable, whereas there's no balancing call to
decrement the ref count in draw(). In this CL, we assume
the ownership of the shader returned from newWithLocalMatrix(...)
to ensure the correct ref count management.

Also, add test to verify that shader is no longer being leaked

BUG: 32067647
Test: this CL

Change-Id: Ic15fe46cde06a73d81b44e2d3c56b51907344cc0
wui/VectorDrawable.cpp
wui/tests/unit/VectorDrawableTests.cpp
253f2c213f6ecda63b6872aee77bd30d5ec07c82 29-Sep-2016 Romain Guy <romainguy@google.com> Linear blending, step 1

NOTE: Linear blending is currently disabled in this CL as the
feature is still a work in progress

Android currently performs all blending (any kind of linear math
on colors really) on gamma-encoded colors. Since Android assumes
that the default color space is sRGB, all bitmaps and colors
are encoded with the sRGB Opto-Electronic Conversion Function
(OECF, which can be approximated with a power function). Since
the power curve is not linear, our linear math is incorrect.
The result is that we generate colors that tend to be too dark;
this affects blending but also anti-aliasing, gradients, blurs,
etc.

The solution is to convert gamma-encoded colors back to linear
space before doing any math on them, using the sRGB Electo-Optical
Conversion Function (EOCF). This is achieved in different
ways in different parts of the pipeline:

- Using hardware conversions when sampling from OpenGL textures
or writing into OpenGL frame buffers
- Using software conversion functions, to translate app-supplied
colors to and from sRGB
- Using Skia's color spaces

Any type of processing on colors must roughly ollow these steps:

[sRGB input]->EOCF->[linear data]->[processing]->OECF->[sRGB output]

For the sRGB color space, the conversion functions are defined as
follows:

OECF(linear) :=
linear <= 0.0031308 ? linear * 12.92 : (pow(linear, 1/2.4) * 1.055) - 0.055

EOCF(srgb) :=
srgb <= 0.04045 ? srgb / 12.92 : pow((srgb + 0.055) / 1.055, 2.4)

The EOCF is simply the reciprocal of the OECF.
While it is highly recommended to use the exact sRGB conversion
functions everywhere possible, it is sometimes useful or beneficial
to rely on approximations:

- pow(x,2.2) and pow(x,1/2.2)
- x^2 and sqrt(x)

The latter is particularly useful in fragment shaders (for instance
to apply dithering in sRGB space), especially if the sqrt() can be
replaced with an inversesqrt().

Here is a fairly exhaustive list of modifications implemented
in this CL:

- Set TARGET_ENABLE_LINEAR_BLENDING := false in BoardConfig.mk
to disable linear blending. This is only for GLES 2.0 GPUs
with no hardware sRGB support. This flag is currently assumed
to be false (see note above)
- sRGB writes are disabled when entering a functor (WebView).
This will need to be fixed at some point
- Skia bitmaps are created with the sRGB color space
- Bitmaps using a 565 config are expanded to 888
- Linear blending is disabled when entering a functor
- External textures are not properly sampled (see below)
- Gradients are interpolated in linear space
- Texture-based dithering was replaced with analytical dithering
- Dithering is done in the quantization color space, which is
why we must do EOCF(OECF(color)+dither)
- Text is now gamma corrected differently depending on the luminance
of the source pixel. The asumption is that a bright pixel will be
blended on a dark background and the other way around. The source
alpha is gamma corrected to thicken dark on bright and thin
bright on dark to match the intended design of fonts. This also
matches the behavior of popular design/drawing applications
- Removed the asset atlas. It did not contain anything useful and
could not be sampled in sRGB without a yet-to-be-defined GL
extension
- The last column of color matrices is converted to linear space
because its value are added to linear colors

Missing features:
- Resource qualifier?
- Regeneration of goldeng images for automated tests
- Handle alpha8/grey8 properly
- Disable sRGB write for layers with external textures

Test: Manual testing while work in progress
Bug: 29940137

Change-Id: I6a07b15ab49b554377cd33a36b6d9971a15e9a0b
wui/Android.mk
wui/AssetAtlas.cpp
wui/AssetAtlas.h
wui/BakedOpDispatcher.cpp
wui/BakedOpRenderer.cpp
wui/Caches.cpp
wui/Caches.h
wui/Dither.cpp
wui/Dither.h
wui/Extensions.cpp
wui/Extensions.h
wui/FloatColor.h
wui/FontRenderer.cpp
wui/FrameBuilder.cpp
wui/GammaFontRenderer.cpp
wui/GammaFontRenderer.h
wui/GlopBuilder.cpp
wui/GlopBuilder.h
wui/GradientCache.cpp
wui/GradientCache.h
wui/Layer.h
wui/PatchCache.cpp
wui/PatchCache.h
wui/Program.h
wui/ProgramCache.cpp
wui/ProgramCache.h
wui/Properties.h
wui/PropertyValuesHolder.cpp
wui/Readback.cpp
wui/RecordedOp.h
wui/SkiaShader.cpp
wui/SkiaShader.h
wui/Texture.cpp
wui/Texture.h
wui/TextureCache.cpp
wui/TextureCache.h
wui/VectorDrawable.cpp
wui/Vertex.h
wui/font/CacheTexture.cpp
wui/renderstate/OffscreenBufferPool.cpp
wui/renderstate/RenderState.cpp
wui/renderstate/RenderState.h
wui/renderthread/CanvasContext.cpp
wui/renderthread/CanvasContext.h
wui/renderthread/EglManager.cpp
wui/renderthread/EglManager.h
wui/renderthread/RenderProxy.cpp
wui/renderthread/RenderProxy.h
wui/tests/common/TestUtils.h
wui/tests/unit/SkiaBehaviorTests.cpp
wui/utils/Color.h
wui/utils/TestWindowContext.cpp
e9eefce9f86385ccd227fd56c3ad53fd80f1db35 11-Oct-2016 Sergei Vasilinetc <sergeyv@google.com> Merge "Move PixelRef to hwui Test: refactoring cl. bug:27762775"
0728f0872f9e094b27cef3da64f4fcc323246767 11-Oct-2016 sergeyv <sergeyv@google.com> resolve merge conflicts of e830f35 to master

Change-Id: I4d2b10a6a2ac983986775f1f925c4a09734bb70d
e830f351e14733a92eb1d2bb0fd66fb1ecbc828b 11-Oct-2016 sergeyv <sergeyv@google.com> Turn off additional logging in text rendering am: 5bb5626599
am: 4778f6a43e

Change-Id: If031a1d480d8c2e75e9f6268d15c8ccc098a0268
4778f6a43e80a72887cef3e79d7a749c19e29e5f 11-Oct-2016 sergeyv <sergeyv@google.com> Turn off additional logging in text rendering
am: 5bb5626599

Change-Id: Ic7f6c59ca2c3a92f81bf55a8916e20d99fcc01a7
f10763d23df810297116738e49672aa62b7be04f 11-Oct-2016 Sergei Vasilinetc <sergeyv@google.com> Merge "HWUI: prepare script for ryu Test: cpu adb shell cat /sys/devices/system/cpu/cpu0/cpufreq/cpuinfo_cur_freq Test: gpu adb shell cat /sys/devices/57000000.gpu/pstate"
85ddb2df2f41eb4b442669d4a2528a4e346e2557 27-Jun-2016 John Reck <jreck@google.com> Fix SurfaceViewPositionListener race bugs

Bug: 29628138

1: Make windowPositionLost synchronous as that's
what the Java side was expecting

2: Make the listener ref counted as otherwise
there's a race condition with the GC, which could
end up with use-after-frees

3: Ensure that all position updates are invoked
prior to frame completion

Change-Id: Iedbc017f611ba2878a49b4586612f79249ca2fe3
(cherry picked from commit 7b570deea65bc7ac417a26ce3e4103bcef30e957)
wui/RenderNode.h
wui/renderthread/CanvasContext.cpp
5bb5626599c936fdbea9f0fea30505924d784c73 10-Oct-2016 sergeyv <sergeyv@google.com> Turn off additional logging in text rendering

Change-Id: If5f11489c05e320e4436fb57680857b29228a755
b:30427106
wui/Android.mk
41677af6d8df1c860e490ebf9c342c4930b7019b 10-Oct-2016 Doris Liu <tianliu@google.com> Support calling start() in onAnimationFinished(...) in AVD am: 679fe6ab6f am: 4a1ea9ba7e
am: 5ef10f1d26

Change-Id: I42025b25e588ff9a72ac932dbee0ecb1339fa9f2
5ef10f1d26993ff1bfa3e4772d38d3db56ffc38f 09-Oct-2016 Doris Liu <tianliu@google.com> Support calling start() in onAnimationFinished(...) in AVD am: 679fe6ab6f
am: 4a1ea9ba7e

Change-Id: If343048fcbe8e2af46b6cdfcd5953c0d5ffa6c4e
4a1ea9ba7ed48b2c0e5096dbc0dd10b13830de50 09-Oct-2016 Doris Liu <tianliu@google.com> Support calling start() in onAnimationFinished(...) in AVD
am: 679fe6ab6f

Change-Id: I2999f6fc543f56d73cd03fe74b466c033d6c7d1a
679fe6ab6f4b9252ef414a0c0c5ad9633f3d0294 07-Oct-2016 Doris Liu <tianliu@google.com> Support calling start() in onAnimationFinished(...) in AVD

This CL fixed an issue where calling start() from onAnimationFinished()
caused AnimationListenerBridge::onAnimationFinished(...) to be unsafely
re-entered and the new start listener was (incorrectly) reset to null.

BUG: 31971397
Test: test apk in the bug linked above
Change-Id: Ica809ef2dab884950b93b54f2d0cb4b81e9830f1
wui/PropertyValuesAnimatorSet.cpp
b7d34fa725814d83d9d3e95fd70fb22a7e685044 08-Oct-2016 Teng-Hui Zhu <ztenghui@google.com> Make umbra lighter when the blocker is too high and has no real umbra area. am: 9c555566bf am: 9ad599930d
am: 6ff1730df5

Change-Id: Ia7855238cfb893d591ff404a1f17ada76dd79ff0
163f88140e18f13575886e88af0336e0ab1ec846 08-Oct-2016 sergeyv <sergeyv@google.com> Move PixelRef to hwui
Test: refactoring cl.
bug:27762775

Change-Id: Idd13b865ce22d4c51ced9b0fe3e9174452e87c6e
wui/Android.mk
wui/hwui/PixelRef.cpp
wui/hwui/PixelRef.h
6ff1730df5045e953834dd3be9df6a42f4089590 06-Oct-2016 Teng-Hui Zhu <ztenghui@google.com> Make umbra lighter when the blocker is too high and has no real umbra area. am: 9c555566bf
am: 9ad599930d

Change-Id: I930f1ea0a3620bfdb87e703bbdf927cdde7b809a
9ad599930ddc62404d28155f8b200ccdcfa03963 06-Oct-2016 Teng-Hui Zhu <ztenghui@google.com> Make umbra lighter when the blocker is too high and has no real umbra area.
am: 9c555566bf

Change-Id: I785f5a25aae97f8852bb1cc4833f2662411eabc3
09901f3bc90600513cdd7d7d15ae6fe43a1b332c 06-Oct-2016 songjinshi <songjinshi@xiaomi.com> Fix thread race caused double free issue.
am: 5754b41c20

Change-Id: Ic9dd6e9c6d216753d997da99158816682d5464d1
0df6209a02d0ea99d2dff3a46ed9febd5925df4b 27-Sep-2016 Derek Sollenberger <djsollen@google.com> Initial refactoring to enable the addition of the SkiaOpenGLPipeline.

Test: existing and new HWUI unit tests all pass.
Change-Id: I4f5c1dc839a2ed15d8b0f6245fe030684501b083
wui/Android.mk
wui/DisplayList.cpp
wui/DisplayList.h
wui/Properties.cpp
wui/Properties.h
wui/RenderNode.cpp
wui/RenderNode.h
wui/SkiaDisplayList.cpp
wui/SkiaDisplayList.h
wui/SkiaDrawables.h
wui/renderthread/CanvasContext.h
wui/renderthread/IRenderPipeline.h
wui/renderthread/OpenGLPipeline.h
wui/tests/unit/RenderNodeTests.cpp
wui/tests/unit/SkiaDisplayListTests.cpp
5e75b84f684994bae50c04f9704c91d09afdf88b 05-Oct-2016 Adam Lesinski <adamlesinski@google.com> Merge "AssetManager: Remove more methods, fix comments"
9c555566bfef718464546dcab3640f64d2fdc55d 03-Oct-2016 Teng-Hui Zhu <ztenghui@google.com> Make umbra lighter when the blocker is too high and has no real umbra area.

b/31939390
Test: CTS testShadowLayout && Manual FrameworkShadow test

Change-Id: Ib0b6c4239ac8a521a827be246e912daf2ad3b885
wui/SpotShadow.cpp
fe90eaf528622d66549432538d24722534ad48fc 04-Oct-2016 Adam Lesinski <adamlesinski@google.com> AssetManager: Remove more methods, fix comments

Remove a few vendor-related methods and fix comments
to no longer reference legacy concepts like vendor.

Change-Id: I61dbe53b6b305d8fb3468423462f5de2925b78bd
Test: dead-code removal, if builds, it works
ndroidfw/AssetManager.cpp
df2aa871b4940b5540052d68626999d8691e110d 04-Oct-2016 Adam Lesinski <adamlesinski@google.com> Merge "Remove unused methods from AssetManager.cpp"
681164136f332f850cd5d26641c2960c98145d1f 04-Oct-2016 Derek Sollenberger <djsollen@google.com> Merge "Move Layer creation/deletion into the RenderPipeline."
a77685fa59a327b33e7acbcefe35e63243014cbd 04-Oct-2016 Adam Lesinski <adamlesinski@google.com> Remove unused methods from AssetManager.cpp

A lot of the vendor/locale specific code existed pre-1.0
and was reworked into the current system.

Test: refactoring CL, all code except setLocale() was not being executed.
Test: setLocale() change tested manually
Change-Id: Ifb098f9808763a6cf5fb4336e089430adc09e198
ndroidfw/AssetManager.cpp
dbfd183fdc16660a66339edaa4c360c9f5615690 03-Oct-2016 Adam Lesinski <adamlesinski@google.com> Merge "[AssetManager]:Fix thread race caused double free issue." am: 126e022095 am: f48d0b8f19 am: 73b91c63ad
am: 224ffd3cb2

Change-Id: Id06724e9d44464d1599743741d73b5bd9c282ff2
6a21ca5a4c6b62ae277ae6dcb14bc187460321a0 28-Sep-2016 Derek Sollenberger <djsollen@google.com> Move Layer creation/deletion into the RenderPipeline.

Test: refactoring. existing tests still pass.
Change-Id: I032c33896a0cb74c91e2a913a584373518466b88
wui/RenderNode.cpp
wui/RenderNode.h
wui/renderthread/CanvasContext.cpp
wui/renderthread/CanvasContext.h
wui/renderthread/IRenderPipeline.h
wui/renderthread/OpenGLPipeline.cpp
wui/renderthread/OpenGLPipeline.h
224ffd3cb2b4f1cf031877d7ecba50562b3b9571 03-Oct-2016 Adam Lesinski <adamlesinski@google.com> Merge "[AssetManager]:Fix thread race caused double free issue." am: 126e022095 am: f48d0b8f19
am: 73b91c63ad

Change-Id: I27f5cc6106f0a8f0a58721e1e8ed836144347b6a
73b91c63adcc185fb4e70b9c9025331891d927a9 03-Oct-2016 Adam Lesinski <adamlesinski@google.com> Merge "[AssetManager]:Fix thread race caused double free issue." am: 126e022095
am: f48d0b8f19

Change-Id: Ia7da9ff37d813729a8c916a3b6e378110045aa17
5754b41c201a388e4e932b18d285d765d7e63536 08-Sep-2016 songjinshi <songjinshi@xiaomi.com> Fix thread race caused double free issue.

The SharedZip's Asset is not thread-safety,the getResourceTableAsset()
and setResourceTableAsset(Asset* asset) function of the SharedZip is
not sync with a same lock.

Consider the following sequence of events:
Thread A calls setResourceTableAsset(Asset* asset),it will set
mResourceTableAsset = asset; then to calls getBuffer() of the asset.
Thread B calls getResourceTableAsset(),which return mResourceTableAsset,
then to calls getBuffer() of the mResourceTableAsset,the asset and
mResourceTableAsset is same one object.
Thread A to delete mZipInflater in getBuffer().
Thread B to delete mZipInflater in getBuffer().

It will cause crash becuase double delete mZipInflater in getBuffer().

https://code.google.com/p/android/issues/detail?id=211941

Bug:31734545
Change-Id: I5a7d67fdf64c4aa03f505b37a2fa840f4443d158
Signed-off-by: songjinshi <songjinshi@xiaomi.com>
ndroidfw/AssetManager.cpp
126e022095376e5433be6e18d2cfd19e2ef29446 03-Oct-2016 Adam Lesinski <adamlesinski@google.com> Merge "[AssetManager]:Fix thread race caused double free issue."
1c527915f7c6389c8d3bfa3bf70bde50c64599b9 03-Oct-2016 Jakub Adamek <jakuba@google.com> Change name of overlay subdir property to sku. am: c03d9483f0
am: e60842aba3

Change-Id: Ifda5c5a7fc7eaff49aa2f65671d543e285b7f8a4
e60842aba30adee4cf2057a39ac9a396790e938f 03-Oct-2016 Jakub Adamek <jakuba@google.com> Change name of overlay subdir property to sku.
am: c03d9483f0

Change-Id: I1368890b9c2dde2c5177473da3af0872c0c937a1
c03d9483f0380fb7babfdeb11d6762bc6c8d784c 30-Sep-2016 Jakub Adamek <jakuba@google.com> Change name of overlay subdir property to sku.

Also move the SKU subdirectories directly under /vendor/overlay.

Bug: 31692079
Change-Id: I68c712b13918cc99629534580ee4f77d9e5b3823
ndroidfw/AssetManager.cpp
c20cb8c1c8832240b69128f227dfbb142130d962 28-Sep-2016 ryang <decatf@gmail.com> Merge "hwui: Fix the length of partial updates system property" am: faf945a773 am: 73f2e9b812 am: 3734e98095
am: 44df10ebf7

Change-Id: Ib2ded8e0b40ddcd34af4114704f3756b84965239
44df10ebf70a6271931ab8f01c8e75d89d52b474 28-Sep-2016 ryang <decatf@gmail.com> Merge "hwui: Fix the length of partial updates system property" am: faf945a773 am: 73f2e9b812
am: 3734e98095

Change-Id: I88c1092a7fcce45d80bb2f5cd7d14b25e0660f40
3734e980956ed1ad01db67c9e90cac7d2b2b9df5 28-Sep-2016 ryang <decatf@gmail.com> Merge "hwui: Fix the length of partial updates system property" am: faf945a773
am: 73f2e9b812

Change-Id: Ibcc55a59fd29614e491843a0dbbcfd316f423312
11f41e7292e978732ede0053365db6a1fc190c13 28-Sep-2016 John Reck <jreck@google.com> Merge "Support EGL_KHR_partial_update without EGL_EXT_buffer_age"
bfc891c25c039eb296d4318cc5b9f64b180fcbfa 28-Sep-2016 Jakub Adamek <jakuba@google.com> Search for runtime resource overlays in subdir. am: 1c15c63578
am: ff5cb98888

Change-Id: I726b08026ceb250cc95669d3b5a5c35e15bf82e4
ff5cb9888882f02d92ae4abf5dc03495ea5060b1 28-Sep-2016 Jakub Adamek <jakuba@google.com> Search for runtime resource overlays in subdir.
am: 1c15c63578

Change-Id: Ie6614c07851a2365b623a455b2ccc85672d4c846
1c15c635785c64aee961f895dabd184cc2e9e0b1 23-Sep-2016 Jakub Adamek <jakuba@google.com> Search for runtime resource overlays in subdir.

See go/sku-colors. This changes the directory to search for framework
overlays if the right system property is defined. This allows
OEMs to specify different resources based on device SKUs.

Bug: 31692079
Change-Id: I9cb121b286b7f52aa26de1757fde1f3110cd47fd
ndroidfw/AssetManager.cpp
8733bff058e12075e50c15c0c56c20298cc5f44f 27-Sep-2016 John Reck <jreck@google.com> Support EGL_KHR_partial_update without EGL_EXT_buffer_age

Bug: 31334677
Test: manual && hwuimacro --onscreen partialdamage

Change-Id: I9b346b4053ec12c8a78a143a4dc0e708c44888a2
wui/renderthread/EglManager.cpp
647bc13709d704edc20118d937dfbe74596c2278 26-Sep-2016 ryang <decatf@gmail.com> hwui: Fix the length of partial updates system property

The maximum length of a system property is 31 bytes.
debug.hwui.enable_partial_updates is 33 bytes

Change-Id: Idb1b1a00294dd29f84530e8aee1f685094d0096f
wui/Properties.h
3f6e8380c10967abd68291eb7b544ecd035ab4d8 21-Sep-2016 sergeyv <sergeyv@google.com> HWUI: prepare script for ryu
Test: cpu adb shell cat /sys/devices/system/cpu/cpu0/cpufreq/cpuinfo_cur_freq
Test: gpu adb shell cat /sys/devices/57000000.gpu/pstate

Change-Id: I6a932f534b37058b14dccce349897679e1617f9f
wui/tests/scripts/prep_ryu.sh
d4babda3aa0af4d9a060b588f082e2f29192fd60 20-Sep-2016 Matt Sarett <msarett@google.com> Merge "Use SkMakeBitmapShader, avoid bitmap copy"
62feb3a0b4690144a067080ab17beae160ea6320 20-Sep-2016 Matt Sarett <msarett@google.com> Use SkMakeBitmapShader, avoid bitmap copy

CreateBitmapShader now forces a copy. This updates the call sites
to use SkMakeBitmapShader (in SkImagePriv.h) with
kNever_SkCopyPixelsMode.

This maintains the behavior where apps can modify the bitmap in
the shader after creating the shader.

This also ensures that the texture cache will work (since it's
based off of SkPixelRefs).

BUG:31594626
Change-Id: Ic75cb6cdc05c750b7946208e48a8127838d9c2f8
wui/SkiaCanvas.cpp
wui/tests/unit/RecordingCanvasTests.cpp
wui/tests/unit/SkiaBehaviorTests.cpp
49921f2c05cff6d4526b5b30f7b8e2d8bbabc069 08-Sep-2016 songjinshi <songjinshi@xiaomi.com> [AssetManager]:Fix thread race caused double free issue.

The SharedZip's Asset is not thread-safety,the getResourceTableAsset()
and setResourceTableAsset(Asset* asset) function of the SharedZip is
not sync with a same lock.

Consider the following sequence of events:
Thread A calls setResourceTableAsset(Asset* asset),it will set
mResourceTableAsset = asset; then to calls getBuffer() of the asset.
Thread B calls getResourceTableAsset(),which return mResourceTableAsset,
then to calls getBuffer() of the mResourceTableAsset,the asset and
mResourceTableAsset is same one object.
Thread A to delete mZipInflater in getBuffer().
Thread B to delete mZipInflater in getBuffer().

It will cause crash becuase double delete mZipInflater in getBuffer().

https://code.google.com/p/android/issues/detail?id=211941

Change-Id: I5a7d67fdf64c4aa03f505b37a2fa840f4443d158
Signed-off-by: songjinshi <songjinshi@xiaomi.com>
ndroidfw/AssetManager.cpp
6bb05c21d806995fd6063fd3d927a6843b8bfb70 19-Sep-2016 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Cleanup Xfermode"
5d31a293ad0a832c7b8b445c1a67fb1800e5da32 15-Sep-2016 John Reck <jreck@google.com> Cleanup Xfermode

We only support PorterDuff Xfermodes

Removes some unneeded JNI and finalizers()

Change-Id: I4988d6b05c6fd113a8ed8f7dcbf95abe0de95060
wui/tests/unit/SkiaBehaviorTests.cpp
efc9cc611adda72d1f273f3a748c3470f4ed8dfa 02-Sep-2016 sergeyv <sergeyv@google.com> HWUI: prepare script for marlin & sailfish
Test: this is a bench infrastucture

Change-Id: If058973d2c8b110109d424f33c3837e9a6a95e1d
wui/tests/scripts/prep_marlfish.sh
wui/tests/scripts/stopruntime.sh
998615076d0078a95b05275f93908ffa18034d49 17-Sep-2016 TreeHugger Robot <treehugger-gerrit@google.com> Merge "HWUI: fix prep_buller, so it locks powerlevels for gpu"
a5c73e3839129e0079b370bd2723bc0fc4aa6387 15-Sep-2016 sergeyv <sergeyv@google.com> HWUI: fix prep_buller, so it locks powerlevels for gpu

bug:31501517
Change-Id: I4c2006b66f6cb0cf2e3a94966651652c1d3d287d
wui/tests/macrobench/TestSceneRunner.cpp
wui/tests/scripts/prep_buller.sh
wui/tests/scripts/stopruntime.sh
cbba84d6fc1164dde06121443929ec0f22ff068e 15-Sep-2016 Yuqian Li <liyuqian@google.com> Ignore HasAlphaLayer flag to fix b/30929229 am: 83427ff222 am: df6b413b63
am: 49d49fafb8

Change-Id: Ie454b7160dc04952dc7240bfdf004e249bc9e792
49d49fafb86b0af03e16af73b0fc3d7e37bdb2cc 15-Sep-2016 Yuqian Li <liyuqian@google.com> Ignore HasAlphaLayer flag to fix b/30929229 am: 83427ff222
am: df6b413b63

Change-Id: I994233a48472cd2d11acaa30673504b8589bc303
dcbc0e9e25bf99600d487f3c6f5e26487545cd9c 14-Sep-2016 sergeyv <sergeyv@google.com> resolve merge conflicts of 0ec2fd7 to master

Change-Id: I113ede26ab42e3f9a36a52a756c38d365731e16d
83427ff2224c89cc1a590ea609206c95c8ee039e 14-Sep-2016 Yuqian Li <liyuqian@google.com> Ignore HasAlphaLayer flag to fix b/30929229

BUG:30929229
Change-Id: Iebadc6b3d224efa0554cbbb99ea43f871c28722b
wui/SkiaCanvas.cpp
bd46d09d84130eac34fb5973f70a9dbab2bbff23 14-Sep-2016 Vladislav Kaznacheev <kaznacheev@google.com> Hold a weak reference to PointerController when handling vsync am: 33c5903e77 am: 8728a2fe53
am: 23bb30843c

Change-Id: Ifccc705f9b21fb8c24fd7fc83f99d9c58ac85b5c
0ec2fd7bc5f3c57f7783425608732d2f95f53c4a 13-Sep-2016 sergeyv <sergeyv@google.com> HWUI: track upload & recent usage in font cache am: af102bee51
am: 42c01cf62f

Change-Id: Ieb80108d520aa629c54a40d7c533bf74a71849c4
ee6aca55bd4d0e785823c672c557af5c477d5058 13-Sep-2016 sergeyv <sergeyv@google.com> HWUI: calculate used memory in FontCache for gfxinfo am: baf29e7cf4
am: c60abfb739

Change-Id: I3f8202348a97c69d080b69329b23e388aec06f17
42c01cf62fec651ca5f9dd4db9ac7c6c2e3fce8d 13-Sep-2016 sergeyv <sergeyv@google.com> HWUI: track upload & recent usage in font cache
am: af102bee51

Change-Id: I2c08fc8d81ce8e0a1442cb65cfec11c1981a1768
c60abfb739aed2489cc01f738e0784ebcb47b11b 13-Sep-2016 sergeyv <sergeyv@google.com> HWUI: calculate used memory in FontCache for gfxinfo
am: baf29e7cf4

Change-Id: I0e100f38166f191552172bef640f73157c45b714
e3a97853864db050f7c05538e2348238673da8f0 13-Sep-2016 Sergei Vasilinetc <sergeyv@google.com> Merge changes Ic26b25e7,I653571d6 into nyc-mr1-dev

* changes:
HWUI: track upload & recent usage in font cache
HWUI: calculate used memory in FontCache for gfxinfo
af102bee518191f1e6ad843f06dcd7a64611462d 10-Sep-2016 sergeyv <sergeyv@google.com> HWUI: track upload & recent usage in font cache

FontCacheHistoryTracker should be turned off before shipping: b/31438876

bug:30427106
Change-Id: Ic26b25e790d4ee69e484ca0cb23dc9cc522b2ed3
wui/Android.mk
wui/Caches.cpp
wui/FontRenderer.cpp
wui/FontRenderer.h
wui/font/Font.cpp
wui/font/FontCacheHistoryTracker.cpp
wui/font/FontCacheHistoryTracker.h
wui/renderthread/CanvasContext.cpp
23bb30843ca2c760b15ef07f0d9a344f3b198e41 09-Sep-2016 Vladislav Kaznacheev <kaznacheev@google.com> Hold a weak reference to PointerController when handling vsync am: 33c5903e77
am: 8728a2fe53

Change-Id: Id131b973188298718a6f5423373af5bf54c8b18f
8728a2fe53cd63b4f78fe28dc8205ece88eba75e 09-Sep-2016 Vladislav Kaznacheev <kaznacheev@google.com> Hold a weak reference to PointerController when handling vsync
am: 33c5903e77

Change-Id: If3e218dfdaa68953d184812884b7ed80ab16acfa
c1c0421f678054eace8d588a2ea2d40ce9a64bdd 09-Sep-2016 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Hold a weak reference to PointerController when handling vsync" into nyc-mr1-dev
33c5903e7759b0594b1e0a062b066945a2c86989 09-Sep-2016 Vladislav Kaznacheev <kaznacheev@google.com> Hold a weak reference to PointerController when handling vsync

Currently PointerController starts listening to display events
immediately (in its constructor) and never explicitly removes
the callback. The reference dangling from the looper
prevents the PointerController instance from being deleted
when all the clients have released their references.

As a result, when USB or BT mouse is disconnected,
the mouse stays frozen on screen and only goes away
after a 15 sec inactivity timeout.

This change introduces an intermediary LooperCallback
which holds only a weak reference to PointerController.
The pointer now disappears immediately upon mouse
disconnect.

Bug: 30824220
Change-Id: I5f7208dbfa381b3e21f248cc0da402f307faa184
nput/PointerController.cpp
nput/PointerController.h
baf29e7cf433624687c9d6b3bac180d33add8e0f 08-Sep-2016 sergeyv <sergeyv@google.com> HWUI: calculate used memory in FontCache for gfxinfo

bug:30427106
Change-Id: I653571d6a4e974e975fb0dc03fc2364eecbf2f84
wui/Caches.cpp
wui/FontRenderer.cpp
wui/FontRenderer.h
wui/GammaFontRenderer.h
wui/font/CacheTexture.cpp
wui/font/CacheTexture.h
9580146f5076aaa7c498f86bd3d724c00599f6f4 01-Sep-2016 John Reck <jreck@google.com> Add API to copy a window

Change-Id: I9bb5209010db6665be4b6f8db81a6fc1b7debc45
wui/Readback.cpp
wui/Readback.h
wui/renderthread/RenderProxy.cpp
wui/renderthread/RenderProxy.h
cc68c99c621ee7ffa24063aca8d91755f843f628 02-Sep-2016 TreeHugger Robot <treehugger-gerrit@google.com> Merge "HWUI: prepare script for fugu"
471a63ee35f0be76cd7c2bc9a38889b9d2062f41 02-Sep-2016 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Fix texture leak"
7cae510f41d5c60da5fe83d9a0417ca6fc880df3 02-Sep-2016 Chris Craik <ccraik@google.com> Wait on frame work fences when frames are dropped am: 06e2e9cf4c am: 7a14f5aeb9
am: b53c60876a

Change-Id: Ib9c5be43f65379770b17260c34be90fccb360277
65c7566490901d1b3dba550c1ceee5ee75aab987 02-Sep-2016 sergeyv <sergeyv@google.com> HWUI: prepare script for fugu

Change-Id: I562c51258084e44ed9b53431050dfcde4f293720
wui/tests/scripts/prep_fugu.sh
adde639da222f2dd4f5734e0339a967b8564ff5f 02-Sep-2016 John Reck <jreck@google.com> Fix EGLImage memory leak am: f8b0360298
am: 8714e02f6f

Change-Id: Ieaaaf8110cf48345d661389ef189454f3e3886dc
b53c60876aaa287c90750baca026c58bb28f68c2 02-Sep-2016 Chris Craik <ccraik@google.com> Wait on frame work fences when frames are dropped am: 06e2e9cf4c
am: 7a14f5aeb9

Change-Id: I9f2159f2f5c8111df0c14e46cc5690cbfab9b7e9
3053ac7f12a36b9db09ffc7219b798eaa24b891a 02-Sep-2016 John Reck <jreck@google.com> Fix texture leak

Bug: 31251593
Change-Id: Ic86729eb6089239134213588d80459d14227ade6
wui/renderthread/CanvasContext.cpp
wui/renderthread/OpenGLPipeline.cpp
64dd8f3c59b38c7075e0900635a4ae3effea5059 02-Sep-2016 John Reck <jreck@google.com> Merge "Fix EGLImage memory leak"
8714e02f6f20d055954e989619ac581395b60902 02-Sep-2016 John Reck <jreck@google.com> Fix EGLImage memory leak
am: f8b0360298

Change-Id: Ibf8adad1b0fc66fe9de2bbd86d14b67ffe73efd0
02913603bd2929fc57d4a5e5461ad45ca63b2ba7 02-Sep-2016 John Reck <jreck@google.com> Merge "Fix EGLImage memory leak" into nyc-mr1-dev
f8b0360298a3a85449e3469768692bb05ee2422d 01-Sep-2016 John Reck <jreck@google.com> Fix EGLImage memory leak

Bug: 31247709
Change-Id: I9e36206b0d7bdb75b84cd53b70f7746ca34a3469
wui/Readback.cpp
8a29c0ec86a9411a07bb10018c3da69fffc0fe7d 01-Sep-2016 John Reck <jreck@google.com> Fix EGLImage memory leak

bug: 31247709

Change-Id: Ifb3087a6e76d0d1304f55d13e468bafbd78418da
wui/Readback.cpp
e2a1cee3db1bcf62b5dd4a92173a46fde014a9b7 01-Sep-2016 Chih-hung Hsieh <chh@google.com> Merge "Fix google-explicit-constructor warnings." am: a6b6252d8b am: 1676161c1d am: 316fa0aee7
am: 650615fb17

Change-Id: I0a37e6bd2c8e971c964dc5a4c4a6e6c228bce705
650615fb171f2eb31f5b3e893b2df3e378ad2b81 01-Sep-2016 Chih-hung Hsieh <chh@google.com> Merge "Fix google-explicit-constructor warnings." am: a6b6252d8b am: 1676161c1d
am: 316fa0aee7

Change-Id: I43d1cc625834092f12adec5ff52d1565d1b91e23
316fa0aee757f6dd0001943e2d4683a40ec8a149 01-Sep-2016 Chih-hung Hsieh <chh@google.com> Merge "Fix google-explicit-constructor warnings." am: a6b6252d8b
am: 1676161c1d

Change-Id: Idf7b8caca19d0062955e3423c1420c7247a900bf
a6b6252d8bb79faf013c378f719244b0e06a6ff8 01-Sep-2016 Chih-hung Hsieh <chh@google.com> Merge "Fix google-explicit-constructor warnings."
25c9f6cede5705406294a5043363952c316facb2 01-Sep-2016 Chih-hung Hsieh <chh@google.com> Merge "Fix google-explicit-constructor warnings in libs/hwui." am: 7207562ff7 am: d7a69e04eb am: 842f1e48e7
am: 1f50f80aab

Change-Id: I713bd07fee150cc684e630045e02872b23062a5a
06e2e9cf4c3fe1eaac3271c9a346d5cc7fe5c3a8 01-Sep-2016 Chris Craik <ccraik@google.com> Wait on frame work fences when frames are dropped

bug:30895941

Prevents a race where frame work could interleave between frames,
causing SurfaceView position updates to be delivered out of order.

Change-Id: I01e4cc557b69dcf33e877a0e16c0d115ec95e4cc
wui/renderthread/CanvasContext.cpp
wui/renderthread/CanvasContext.h
wui/renderthread/DrawFrameTask.cpp
1f50f80aab31600406c7b93a1630d396228983f0 31-Aug-2016 Chih-hung Hsieh <chh@google.com> Merge "Fix google-explicit-constructor warnings in libs/hwui." am: 7207562ff7 am: d7a69e04eb
am: 842f1e48e7

Change-Id: I401bb7ef3a46bb317ba664667fab4a16c129e5aa
842f1e48e7c06de4da1b467f83fc625eaa6348a4 31-Aug-2016 Chih-hung Hsieh <chh@google.com> Merge "Fix google-explicit-constructor warnings in libs/hwui." am: 7207562ff7
am: d7a69e04eb

Change-Id: I78ea5c2e7036c5d5c7f5573b4eef208b0ff93b99
258e0e0f046803a638c4bf712d0ebec755897a4f 31-Aug-2016 Chih-Hung Hsieh <chh@google.com> Merge "Fix misc-macro-parentheses warnings in hwui/tests." am: e2732e5e38 am: e33f3472f3 am: 007c463e64
am: 4529b6300e

Change-Id: I8bd575002330360a3bb2fe06fc31d8d4e08e6e3e
a619ec70cf765d9166f0862e74653711b87307b3 29-Aug-2016 Chih-Hung Hsieh <chh@google.com> Fix google-explicit-constructor warnings in libs/hwui.

* Add explicit keyword to conversion constructors,
or add NOLINT for implicit converters.
Bug: 28341362
Test: build with WITH_TIDY=1

Change-Id: Id8ca42433a4fc3652e4cb13787c4cb169f20d9a9
wui/ClipArea.h
wui/DeferredLayerUpdater.h
wui/FontRenderer.h
wui/GpuMemoryTracker.h
wui/PropertyValuesAnimatorSet.h
wui/RecordedOp.h
wui/VectorDrawable.h
wui/hwui/Paint.h
wui/renderstate/OffscreenBufferPool.h
wui/tests/common/TestScene.h
wui/tests/common/TestUtils.h
wui/utils/FatVector.h
wui/utils/LinearAllocator.h
6d09d547b06b86b337e8e16c2585b3882a5bb1dc 29-Aug-2016 Chih-Hung Hsieh <chh@google.com> Fix google-explicit-constructor warnings.

* Add explicit keyword to conversion constructors.
Bug: 28341362
Test: build with WITH_TIDY=1

Change-Id: Ic550902559b0800bdcfc0b1d301313a909434eed
nput/SpriteController.h
4529b6300eb4831bb9932300a0f0b87a57ddd30b 27-Aug-2016 Chih-Hung Hsieh <chh@google.com> Merge "Fix misc-macro-parentheses warnings in hwui/tests." am: e2732e5e38 am: e33f3472f3
am: 007c463e64

Change-Id: Idb404e8f99289a1492d7d3f1af938cf5c0f1c7f0
007c463e6481230fe08d0163ac5399ed8b649b7c 27-Aug-2016 Chih-Hung Hsieh <chh@google.com> Merge "Fix misc-macro-parentheses warnings in hwui/tests." am: e2732e5e38
am: e33f3472f3

Change-Id: I4601d7072c16322b70de9620a6bbaa41772d612b
474081eee117025d343372f6cad99562914bc387 27-Aug-2016 Chih-Hung Hsieh <chh@google.com> Fix misc-macro-parentheses warnings in hwui/tests.

* Add parentheses around macro parameters.
Bug: 28705665

Test: build with WITH_TIDY=1
Change-Id: I04f6dd1a180ed1191bf68b685facf6fb9020b4b0
wui/tests/common/TestUtils.h
2cc64692ceb30f171e4554eac0b69c9a8257fe3d 25-Aug-2016 Martijn Coenen <maco@google.com> Merge changes from topic 'utf' am: 0a357a1a73 am: de8a6a66f6
am: 1657493c22

Change-Id: Ie675738a4f9042929d1ffb5e1ffcc7bbb5c7b217
1657493c22ec6ed460d9e082ee52653f00baec62 25-Aug-2016 Martijn Coenen <maco@google.com> Merge changes from topic 'utf' am: 0a357a1a73
am: de8a6a66f6

Change-Id: If82cb8e885e6a378be2b85ff7dea4c7279758444
8f7b8a1f6c5808ea205bfb3294a313e2bcaedf7f 21-Jul-2016 Sergio Giro <sgiro@google.com> Unicode: specify destination length in utf8_to_utf16 methods

Change-Id: I5223caa7d42f4582a982609a898a02043265c6d3
ndroidfw/ResourceTypes.cpp
e986be325cf7515070fce60fca22665d085b46f6 24-Aug-2016 John Reck <jreck@google.com> resolve merge conflicts of 24e38ab to stage-aosp-master am: 621fb590e3
am: f929ef6cbd

Change-Id: Ie7d5ff6858f95cf7725fa12df8d33420bc3954b2
f929ef6cbd711b07b3116af251490512c1681fae 24-Aug-2016 John Reck <jreck@google.com> resolve merge conflicts of 24e38ab to stage-aosp-master
am: 621fb590e3

Change-Id: Ia1b617a13012a8d475feb91bfbabb6ace264a29e
621fb590e3789c26e0ad536220d1d2c9e80e1f93 24-Aug-2016 John Reck <jreck@google.com> resolve merge conflicts of 24e38ab to stage-aosp-master

Change-Id: I02db3eb317ccb182b563ec9350a116bd5de063b6
4a3b0c7587dc995e00ed4e7d7ed61544f7715d2c 23-Aug-2016 John Reck <jreck@google.com> resolve merge conflicts of 24e38ab to stage-aosp-master

Change-Id: I25844e17d2d6371ed786833c756051d19d0abec4
24e38ab322a0c396df1c6fe95f3f427d85cd5da1 22-Aug-2016 John Reck <jreck@google.com> Merge "Fix native memory leak caused by small HWUI path cache creation"
5abc1fb1d4c3956f27948cb68e601675c8fea85c 22-Aug-2016 John Reck <jreck@google.com> Add RoundRectClipping benchmarks

Change-Id: I9a30fbe22d40d37428e29eb328ee03ba9582ee8e
wui/tests/common/scenes/RoundRectClippingAnimation.cpp
4b505376cb1d77de39d12f4f8bc88e111fbbdc5f 24-Jun-2016 caiqinl <caiqinl@codeaurora.org> Fix native memory leak caused by small HWUI path cache creation

HWUI calculates the texture size as w*h*bpp. In some cases, the
calculated path cache is small, but the actual memory allocated
in driver is 4k/8k/16k, much bigger than HWUI calculates.

Example: a 5*65 alpha texture, HWUI think it is 5*65*1 = 325 bytes,
but driver allocates 8K. An app can allocates up to 32M path textures,
which actually consumes 32M*(8*1024/325) = 806M memory.

Here we limit the number of path texture in the cache to 256, it
should be a pretty generous global limit.

Change-Id: I890819b73bb0b7f63e96bc3d9d0ff9469c16838c
wui/PathCache.cpp
wui/PathCache.h
wui/Properties.h
03546f3d26bdf09ca8d12594d881af6715d4874b 18-Aug-2016 Chih-hung Hsieh <chh@google.com> Merge "Fix google-explicit-constructor warnings in common_time." am: 67d47e0ca6 am: 9b36ce973e am: f121917e51
am: 4797b44d0c

Change-Id: I528bf2f36b385f25b2cb5387fa19e94743807cb9
4797b44d0c142262dab25678fb11abfe590f8f6b 17-Aug-2016 Chih-hung Hsieh <chh@google.com> Merge "Fix google-explicit-constructor warnings in common_time." am: 67d47e0ca6 am: 9b36ce973e
am: f121917e51

Change-Id: Id90b589066e93fee5f956dc2bf31e1e8405a5d5c
f121917e514ada58e058e942788ea2340cc169a2 17-Aug-2016 Chih-hung Hsieh <chh@google.com> Merge "Fix google-explicit-constructor warnings in common_time." am: 67d47e0ca6
am: 9b36ce973e

Change-Id: I8a9e9d09a48da636a8256aec1c0000441d986d4e
9b36ce973e458125807b59c002d3a1602e0b800d 17-Aug-2016 Chih-hung Hsieh <chh@google.com> Merge "Fix google-explicit-constructor warnings in common_time."
am: 67d47e0ca6

Change-Id: I2548e50d2654d3dfacd175b4db118983848bf15c
67d47e0ca65da572ff97f0ac69a3ee5873a0a135 17-Aug-2016 Chih-hung Hsieh <chh@google.com> Merge "Fix google-explicit-constructor warnings in common_time."
a4f1697d153a506c7ef16e8e215060ffd8d238da 17-Aug-2016 Sergei Vasilinetc <sergeyv@google.com> Merge "HWUI: reanimate HWUI_ENABLE_OPENGL_VALIDATION"
50939505dd96a1aa4bf62b10e4c4445ff8263623 16-Aug-2016 sergeyv <sergeyv@google.com> HWUI: reanimate HWUI_ENABLE_OPENGL_VALIDATION

Change-Id: Iff0956d156b79ed20f2af2f6467fe468a9be38e7
wui/debug/gles_redefine.h
wui/debug/wrap_gles.h
ad3dea12eec02584a8126979c9b965c8a86d7ff3 15-Aug-2016 Chih-Hung Hsieh <chh@google.com> Fix google-explicit-constructor warnings in common_time.

* Add explicit keyword to conversion constructors.
Bug: 28341362
Test: build with WITH_TIDY=1

Change-Id: Ieab4756042e77cfadda35e34f78f515058ae0bb3
ommon_time/common_clock_service.h
ommon_time/common_time_config_service.h
20a4822b1570fb48e4cdb9c6dd2c5f12a1c58ab2 13-Aug-2016 Elliott Hughes <enh@google.com> Merge "recvfrom takes a non-const pointer." am: 96660b37a1 am: 2f4c6e3d0d am: c41a11a0ee
am: 59d4a4ddd0

Change-Id: I6b762f35f7f9bc28e893a058d0c87056786aae2d
59d4a4ddd0ea0f50a5d70a44543449623c8e07b8 12-Aug-2016 Elliott Hughes <enh@google.com> Merge "recvfrom takes a non-const pointer." am: 96660b37a1 am: 2f4c6e3d0d
am: c41a11a0ee

Change-Id: I48c43a9675568c6b6edbf2a94f51a21770196f2c
c41a11a0eea943e05faa90b2e8415d8c0bbd851d 12-Aug-2016 Elliott Hughes <enh@google.com> Merge "recvfrom takes a non-const pointer." am: 96660b37a1
am: 2f4c6e3d0d

Change-Id: I84f726f12c27f66c668026f913708bb8d2a7cfff
2f4c6e3d0d671ec08945bdf21b3a5faa388a22d9 12-Aug-2016 Elliott Hughes <enh@google.com> Merge "recvfrom takes a non-const pointer."
am: 96660b37a1

Change-Id: Ief2e969ec0498ac2c9264fa34a3de36773bc43fa
2fa54ef232ef7bb267e5fa53bf556d19564f4c32 12-Aug-2016 Elliott Hughes <enh@google.com> recvfrom takes a non-const pointer.

Change-Id: Ib2c8f2710cb333904106f849f492c83697fdd937
ommon_time/common_time_server.cpp
188af3373ae6fb30f4f041a34bfe0beaef6f0ab2 12-Aug-2016 TreeHugger Robot <treehugger-gerrit@google.com> Merge "HWUI unit test for AVD on HwLayer"
56996ff61e4961880db1240f6a5d4f57a79512d9 12-Aug-2016 Chih-Hung Hsieh <chh@google.com> resolve merge conflicts of 76ce8e5 to stage-aosp-master am: ed935c32f4
am: ef57a0d629

Change-Id: Ifcc24ad835f2e74a25954bf3fd7090c75abdc084
5876e7df0407cbce8a043ece3a33fd3224311ffc 03-Aug-2016 Doris Liu <tianliu@google.com> HWUI unit test for AVD on HwLayer

This test puts AVD on a HWLayer and check that after prepareTree
the correct damage rect for the layer is enqueued.

This verifies the fix for bug 30166063

Change-Id: Ia37847357bb00d54f08ee253013db83d46783fbd
wui/DisplayList.h
wui/tests/unit/RenderNodeTests.cpp
ef57a0d629d9b3e6e13ec5144900b9cb6d8ca5ea 12-Aug-2016 Chih-Hung Hsieh <chh@google.com> resolve merge conflicts of 76ce8e5 to stage-aosp-master
am: ed935c32f4

Change-Id: Ibb7415686469d7b15e8dbe0cd04226c4e0cd7d76
ed935c32f478229220a90442da0af3c3d3fc6230 12-Aug-2016 Chih-Hung Hsieh <chh@google.com> resolve merge conflicts of 76ce8e5 to stage-aosp-master

Change-Id: I4b4ca9906373a95776d2da8ba2fa39a4a78e2a30
76ce8e52422bc6121fb974ef6aab040bb5d9da51 12-Aug-2016 Treehugger Robot <treehugger-gerrit@google.com> Merge "Fix clang-tidy warnings in libs/hwui."
f35c939cd70f2815582d08902ade0b9abbee6bec 10-Aug-2016 Chih-Hung Hsieh <chh@google.com> Fix clang-tidy warnings in libs/hwui.

* Add explicit keyword to conversion constructors.
Bug: 28341362
* Use const reference type for read-only parameters.
Bug: 30407689
Test: build with WITH_TIDY=1

Change-Id: Iab3e6636f60a70cb124f29dc19f20f842fa8dfda
Merged-In: Iab3e6636f60a70cb124f29dc19f20f842fa8dfda
wui/Animator.h
wui/AssetAtlas.cpp
wui/AssetAtlas.h
wui/DisplayListOp.h
wui/GammaFontRenderer.h
wui/Image.h
wui/Interpolator.h
wui/renderstate/RenderState.h
wui/renderthread/EglManager.h
wui/thread/TaskManager.cpp
wui/thread/TaskManager.h
wui/utils/Timing.h
49796451cb9d1dae580618eb320ef3c5e6d90cd4 10-Aug-2016 Chih-Hung Hsieh <chh@google.com> Fix clang-tidy warnings in libs/hwui.

* Add explicit keyword to conversion constructors.
Bug: 28341362
* Use const reference type for read-only parameters.
Bug: 30407689
Test: build with WITH_TIDY=1

Change-Id: Iab3e6636f60a70cb124f29dc19f20f842fa8dfda
wui/Animator.h
wui/AssetAtlas.cpp
wui/AssetAtlas.h
wui/Image.h
wui/Interpolator.h
wui/renderstate/RenderState.h
wui/renderthread/EglManager.h
wui/thread/TaskManager.h
wui/utils/Timing.h
f957826dfb43d8639e2f47d6df0825c7b42576ee 10-Aug-2016 TreeHugger Robot <treehugger-gerrit@google.com> Merge "resolve merge conflicts of 1d7ee6b to master"
39978d0012469cbbc437ecebe89eb96d4695238b 10-Aug-2016 Sergei Vasilinetc <sergeyv@google.com> Merge "HWUI: reimplement rendernode ouput for single stream"
712765ff3448e84f415866f040e0e84a3f553361 10-Aug-2016 John Reck <jreck@google.com> resolve merge conflicts of 1d7ee6b to master

Change-Id: I2ed0f2c3233151e890bd8bde825d306ec8f0d8fd
1d7ee6b5a363eaffb3d478fa4bbd23f5a4a4009c 10-Aug-2016 John Reck <jreck@google.com> Make updateSurface non-blocking am: cd68212f08
am: 9dd91dec3f

Change-Id: I8a27b5bcff0781e90c9d061da0c1fe03eb6d8176
c3849aa786db65dbda254b90b7db3b13efd98e65 08-Aug-2016 sergeyv <sergeyv@google.com> HWUI: reimplement rendernode ouput for single stream

bug: 26565102
Change-Id: I90b449b2dce52683c50b48091354104d76a5e44a
wui/RenderNode.cpp
wui/RenderNode.h
wui/RenderProperties.cpp
wui/RenderProperties.h
wui/utils/StringUtils.h
cd68212f0821e75081375a5af5ef5fce6e45e167 09-Aug-2016 John Reck <jreck@google.com> Make updateSurface non-blocking

Bug: 30442298

We already do this for initialize(), fix
it so that update() is parallel with the
UI thread as well.

Shaves ~7ms off of the 99th percentile on
NotificationShade open & close

Change-Id: I1791df495453fb9e1e12362c68e3d20e837e62be
wui/renderthread/RenderProxy.cpp
97ec95c212579ec3eeb38582309a54b6120bdf32 09-Aug-2016 Chris Craik <ccraik@google.com> Prevent EndLayerOps when Begin was rejected am: 3c53ec51ef am: 152f76ee50
am: 674965822b

Change-Id: Icfa8cb2ad7c97fdbbf37f01abe7b5a22f6b33cfd
674965822b76166ec5733f5f258e176fbf31f5de 09-Aug-2016 Chris Craik <ccraik@google.com> Prevent EndLayerOps when Begin was rejected am: 3c53ec51ef
am: 152f76ee50

Change-Id: Id942f3b0495a4e3c9eb7aa6d8647987e72ddb77a
152f76ee506669606ed5ad3828f984a1a2bc4b22 09-Aug-2016 Chris Craik <ccraik@google.com> Prevent EndLayerOps when Begin was rejected
am: 3c53ec51ef

Change-Id: I075b68a1b7bdee4cbebd734748dd485ff6cd67b3
a9bef431490a89cbb73fa8f9147f1d7b8a29bbd5 09-Aug-2016 Chris Craik <ccraik@google.com> Merge "Prevent EndLayerOps when Begin was rejected" into nyc-mr1-dev
3c53ec51efd4bbc3f06cc63dd8efe186e3fb168f 09-Aug-2016 Chris Craik <ccraik@google.com> Prevent EndLayerOps when Begin was rejected

bug:30537130

BeginLayerOps were being rejected in a way that allowed the associated
EndLayerOps to still be recorded. This was a violation of DisplayList
content expectations, and caused crashes in FrameBuilder when trying to
play these DisplayLists back.

Change-Id: I531b840aa5c4ffb1ee458da3f4b366978eaeafbe
wui/RecordingCanvas.cpp
wui/RecordingCanvas.h
wui/tests/unit/RecordingCanvasTests.cpp
9c503680653b793986b7073829a480f506152533 08-Aug-2016 Doris Liu <tianliu@google.com> Fix infinite AVD not running am: 18e08a0170 am: c66c046a18
am: bd58ea2239

Change-Id: I982a0c44f2939000ebde6325a2cc98eb168a9ecc
bd58ea2239868333e0575c53d32ea53778d3b5f2 08-Aug-2016 Doris Liu <tianliu@google.com> Fix infinite AVD not running am: 18e08a0170
am: c66c046a18

Change-Id: I1c6b7e9f768fae2d9ab8b6e22b3d6386de80df89
18e08a0170a429929e4b974143ecd0d6603b332c 08-Aug-2016 Doris Liu <tianliu@google.com> Fix infinite AVD not running

This CL fixed an integer overflow error caused by using integer literal
when it should be a float literal that defines a double.

BUG:30739855
Change-Id: If2bdb0eb7a2e93d28434bfe72ec11e8f1f2a1eda
wui/PropertyValuesAnimatorSet.cpp
0ddfbc46c434e8ce26919ee74526cda0d8d199af 08-Aug-2016 John Reck <jreck@google.com> Ensure Dequeue/Queue duration is always set am: 70e89c9c37 am: ed343def3e
am: 77e5333520

Change-Id: I0c51b04c0dd7bafecf03c42417c4247fd281c325
77e5333520367098407b2aa87591a9b4fbec49f8 08-Aug-2016 John Reck <jreck@google.com> Ensure Dequeue/Queue duration is always set am: 70e89c9c37
am: ed343def3e

Change-Id: I7d8d854254f491f1a65d0efb82fa8545bc6feacf
ed343def3ec294e4878bca2837dde8db9fef95f7 08-Aug-2016 John Reck <jreck@google.com> Ensure Dequeue/Queue duration is always set
am: 70e89c9c37

Change-Id: I4d4543d0f65d5d2826518e7975934ce7a5d7232d
295d81c360ff56554b6c8c1adc0f9e2a38eca67c 08-Aug-2016 John Reck <jreck@google.com> Merge "Ensure Dequeue/Queue duration is always set" into nyc-mr1-dev
92649a179198e436ab2131f4cba0c0f0b59d6e54 06-Aug-2016 Doris Liu <tianliu@google.com> Remove animation value change from push staging am: 6725d581eb am: bc4cefa331
am: 8f036e373d

Change-Id: Ie26c03c02cce3fa815a127567a36b12a1249a847
8f87912d4a8b7ef228b65058e37fa60600a10361 06-Aug-2016 Doris Liu <tianliu@google.com> Support repeatMode = reverse in AVD am: f7167e8f28 am: 113a8c63d4
am: ceda529fae

Change-Id: I17962c8cff0bd03c1a87d57b213edebdd62a4129
8f036e373da0250b1e7461282c9920840ec6c16a 06-Aug-2016 Doris Liu <tianliu@google.com> Remove animation value change from push staging am: 6725d581eb
am: bc4cefa331

Change-Id: I2c2eefaf5199816821b834ecda441df1a258f43b
ceda529fae7e931f3580857d0d4cbecc7871bd23 06-Aug-2016 Doris Liu <tianliu@google.com> Support repeatMode = reverse in AVD am: f7167e8f28
am: 113a8c63d4

Change-Id: I1872a2e6187956bf72337832f106b9fd833c4834
bc4cefa33186766815c77dd6d278576cff6e3ab3 06-Aug-2016 Doris Liu <tianliu@google.com> Remove animation value change from push staging
am: 6725d581eb

Change-Id: I53988f1d269c9691a098693a978e1d6e0b275cd6
7ae119ebff1389d97fb0fb85871922b56d97970f 06-Aug-2016 Doris Liu <tianliu@google.com> Merge "Remove animation value change from push staging" into nyc-mr1-dev
73798cf53cd990ec48c52702cb851287edfc2370 05-Aug-2016 TreeHugger Robot <treehugger-gerrit@google.com> Merge "resolve merge conflicts of 44a291e to master"
fcaee13dee3ef23e9855b77154de266770a49705 05-Aug-2016 Ben Wagner <bungeman@google.com> Merge "Move SkTypeface::CreateXXX to SkTypeface::MakeXXX."
8254e00fd605f4e3e9b832d3323211670a9ef5c4 05-Aug-2016 John Reck <jreck@google.com> resolve merge conflicts of 44a291e to master

Change-Id: I38caea0ea35dcca765fd82a5509177ddd3b6f511
44a291e3f481134c920c615ae7f829e93301c839 05-Aug-2016 Keith Mok <ek9852@gmail.com> Merge "Fix random crash in libhwui" am: 3f67a1855e am: 9aaf189103
am: b4e6b8a3df

Change-Id: I94df288a017e27aa86b80a5b4a0bf355947cabfb
b4e6b8a3df6824728150de6ca4681fec29dd10e6 05-Aug-2016 Keith Mok <ek9852@gmail.com> Merge "Fix random crash in libhwui" am: 3f67a1855e
am: 9aaf189103

Change-Id: I87d1c7b03bbf231fa059df53b667687ec68589ef
9aaf1891034d1b097a03d75417de8f1f3cf91ed1 05-Aug-2016 Keith Mok <ek9852@gmail.com> Merge "Fix random crash in libhwui"
am: 3f67a1855e

Change-Id: I8dfcad3d00b2cca955457142b963934143ec2cbd
3f67a1855ea444919282590ec3966bd49a88e3ad 05-Aug-2016 Treehugger Robot <treehugger-gerrit@google.com> Merge "Fix random crash in libhwui"
81be3a96e080f8f30653f926934fc072143ef368 05-Aug-2016 Ben Wagner <bungeman@google.com> Move SkTypeface::CreateXXX to SkTypeface::MakeXXX.

Skia is moving to returning smart pointers from its factory methods.
This updates uses of SkTypeface::CreateXXX to SkTypeface::MakeXXX and
generally updates use of SkTypeface to sk_sp. This will allow for the
removal of the SK_SUPPORT_LEGACY_TYPEFACE_PTR define.

Change-Id: I017ceb681d2c338e6913aa267915d03a7d3a898b
wui/hwui/MinikinSkia.cpp
wui/hwui/MinikinSkia.h
wui/hwui/Typeface.cpp
70e89c9c376bf5bb20498c5c952cf665b2cd7375 05-Aug-2016 John Reck <jreck@google.com> Ensure Dequeue/Queue duration is always set

Bug: 30662749
Change-Id: I35a4c26ce78536fc7a506ec2f92a8b9eecb12ec2
wui/renderthread/CanvasContext.cpp
f7167e8f286cff91dec01fdf617bf568f1d100e6 04-Aug-2016 Doris Liu <tianliu@google.com> Support repeatMode = reverse in AVD

BUG: 30641232
Change-Id: I34c823a0a45c8441873a9b467275174c5529994b
wui/Animator.h
wui/PropertyValuesAnimatorSet.cpp
wui/PropertyValuesAnimatorSet.h
89561e6e4201aebc78a76ac055071ad2149db704 05-Aug-2016 sergeyv <sergeyv@google.com> HWUI: Fix snapping in path rendering

bug:30444274
Change-Id: Ib10058659af47625b366c26e0b872fa3f1854cd0
wui/PathCache.cpp
wui/tests/unit/BakedOpDispatcherTests.cpp
d93b9bde90522a7da6a0875a9f33ef9361088449 05-Aug-2016 sergeyv <sergeyv@google.com> HWUI: Cleanup PathCache

Change-Id: I947ae79db2b0505ebbacecf15e685b4219451707
wui/PathCache.cpp
wui/PathCache.h
6725d581eb3c13591a4ff276413dbfa0fc13e739 04-Aug-2016 Doris Liu <tianliu@google.com> Remove animation value change from push staging

This CL ensures that animation values are only updated during
animation pulses.

This CL also includes the revert of
https://googleplex-android-review.git.corp.google.com/#/c/1285913/

BUG: 30659748

Change-Id: Iadc84462dc61157efd3c18a23767bba9faf00f6e
wui/Animator.cpp
wui/Animator.h
wui/AnimatorManager.cpp
f6d34dafbde361da2aa1ba962c2bd172870a8285 03-Aug-2016 Craig Donner <cdonner@google.com> Merge "Revert "Remove coarse location pre-grant for preinstalled VrListenerServices."" into nyc-mr1-dev am: 5633ad6921 am: 59c283450b
am: d298aff715

Change-Id: Ifd8569f1605739b560066480d48a350e23d2a2c0
eba351df16c70970906c945acc7a134100e46346 03-Aug-2016 Doris Liu <tianliu@google.com> Ensure layer update include the dirty rect from AVD am: b51b2864e8 am: c0dccb9597
am: 334d32137f

Change-Id: I20bf02209a269d6bef3085ae07caade7680b065d
d298aff7154986ab4a498f1eaa47bed03f8789cd 03-Aug-2016 John Reck <jreck@google.com> Fix RNA crash am: d58230c7f7
am: cb3cf9e385

Change-Id: If3e79b4593c8f1edf06f1b7e16e16a727c1a28b8
d58230c7f708a70e2ab76c12e28916188056fc52 03-Aug-2016 John Reck <jreck@google.com> Fix RNA crash

Bug: 30632377
Change-Id: I5d53fba0f469553ae90bebad1482ef28965dd853
wui/AnimatorManager.cpp
29c32cd2d57eb2ec2dbc9e1056b8b2e949903c55 03-Aug-2016 Matt Sarett <msarett@google.com> Remove unused include SkNinePatch.h

Change-Id: I4c34d21633fd4f3d4b1403e3bb473dc2cbd245cd
wui/utils/NinePatchImpl.cpp
334d32137f3be1aa991c10dd986be1fe1d7de674 02-Aug-2016 Doris Liu <tianliu@google.com> Ensure layer update include the dirty rect from AVD am: b51b2864e8
am: c0dccb9597

Change-Id: Ic18f7fde55b86aa4789b86188784d35d39a5c73a
c0dccb959752ceb62b18775da5fe591bd1b6c85f 02-Aug-2016 Doris Liu <tianliu@google.com> Ensure layer update include the dirty rect from AVD
am: b51b2864e8

Change-Id: Ic8b6d70e9913205b4c34023ae10025171cb07311
a3c35852a16b368164fcc2c7b679ef9dcb4d62d3 02-Aug-2016 Doris Liu <tianliu@google.com> Merge "Ensure layer update include the dirty rect from AVD" into nyc-mr1-dev
e55e65c9933ec6bb205768155ce44fa1d7dabf3e 02-Aug-2016 Sergio Giro <sgiro@google.com> Merge "Unicode: specify destination length in utf8_to_utf16 methods"
2e729ebf5f1a9a17851e34dbbe176dcf2c5a65ab 02-Aug-2016 Doris Liu <tianliu@google.com> Put VD animators on paused list when RT stops drawing am: c82e879e56 am: 70b6080cd7
am: 4ec05be535

Change-Id: I22e66e33aa51064230351f1fd24e5fb200511213
a25e71018138ac5640eef12e91715ef8c73d1e7a 02-Aug-2016 John Reck <jreck@google.com> Fix FrameMetricsObserver crash am: 65ddb154c7 am: 6e30f4c789
am: c7a8458205

Change-Id: If95aff273d4a32a7434042a13b8d373276f05d6a
4ec05be5352620daba384252c569248c96a6ca05 02-Aug-2016 Doris Liu <tianliu@google.com> Put VD animators on paused list when RT stops drawing am: c82e879e56
am: 70b6080cd7

Change-Id: I2ad721d1e9a20e5a1946a779ac0e84118b017505
c7a8458205ff60feb1f7a574c2e60ba56c030265 02-Aug-2016 John Reck <jreck@google.com> Fix FrameMetricsObserver crash am: 65ddb154c7
am: 6e30f4c789

Change-Id: Ic1bc80f8bbd20ce73f9e32c3a7457ad876c28476
70b6080cd7eabe7a30bf2d4e2eca2325dc1ff4f0 02-Aug-2016 Doris Liu <tianliu@google.com> Put VD animators on paused list when RT stops drawing
am: c82e879e56

Change-Id: I9f0202c8e69e681014253842b2a2de75d372616b
0cf4d47a4094a43984a5215ab1a283b0fdcf87a8 02-Aug-2016 Doris Liu <tianliu@google.com> Merge "Put VD animators on paused list when RT stops drawing" into nyc-mr1-dev
65ddb154c75126bbef8bf03494e6fd0d98ee0127 02-Aug-2016 John Reck <jreck@google.com> Fix FrameMetricsObserver crash

Bug: 30587465

Someday maybe the technology will exist to
allow sharing a simple constant between
Java and C++, but today is not that day.

Change-Id: I17694746cb8712058133cd5ea10c47b9909f740b
wui/FrameInfo.cpp
wui/FrameInfo.h
b51b2864e8ee58cad1b1880a3424112587a6e9e9 02-Aug-2016 Doris Liu <tianliu@google.com> Ensure layer update include the dirty rect from AVD

BUG: 30166063
Change-Id: Ia14a2fe3c653e0172a28b4ef22f5171ccf7390c1
wui/RenderNode.cpp
8b9a1fa0848df557d5c718f3ef1230e6a82a320a 02-Aug-2016 John Reck <jreck@google.com> Eliminate recents upload jank am: 4387190d8e am: 021a952150
am: 897b9effb7

Change-Id: Iab2f01b5b3a9be6946e36169209c281a3320ed14
56f9ccfa152af98021ed9537d9ee823c35b9e473 02-Aug-2016 John Reck <jreck@google.com> Fix null deref crash am: 882d515cd5 am: ed93e111c5
am: 86e700ebc9

Change-Id: I97412741a5f41fa0c5bec56795cf7f7b8875f738
897b9effb7f84c241bc68686c09324987c1dba37 02-Aug-2016 John Reck <jreck@google.com> Eliminate recents upload jank am: 4387190d8e
am: 021a952150

Change-Id: I9715db27b6ea265c180f56297815b7240368231f
021a95215043fc5264848730a394fc601dc23fb1 02-Aug-2016 John Reck <jreck@google.com> Eliminate recents upload jank
am: 4387190d8e

Change-Id: I40fd49a61dde974c4215c4ccf9676f84cb3f43a7
e733f862f06dd4fa9a84741ea94866fc2bc2f14e 02-Aug-2016 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Eliminate recents upload jank" into nyc-mr1-dev
4387190d8ec9fe4e953fcfeb093a644b82cf85ed 01-Aug-2016 John Reck <jreck@google.com> Eliminate recents upload jank

Bug: 30342017

Upload recents thumbnails in the
dead gaps between frames instead of
at the start of a frame. This eliminates
jank caused by the large texture
upload.

Change-Id: I507cd286d199109c7a9a1511d68ba5ab5d28069f
wui/TextureCache.cpp
wui/TextureCache.h
wui/renderthread/RenderProxy.cpp
wui/renderthread/RenderProxy.h
86e700ebc99a84684362e5c2bf8e620ae5f316fb 02-Aug-2016 John Reck <jreck@google.com> Fix null deref crash am: 882d515cd5
am: ed93e111c5

Change-Id: Ie1ce80145beb803f18118a64ac3be98ad77e3228
882d515cd54627f320269aa2d744f1c9f1a75c71 01-Aug-2016 John Reck <jreck@google.com> Fix null deref crash

Bug: 30560152
Change-Id: Ic4bae380e27de5bea80cec484e83d205e078ec43
wui/renderthread/CanvasContext.cpp
c82e879e563ad692cabf19f61a08559c6220171e 30-Jul-2016 Doris Liu <tianliu@google.com> Put VD animators on paused list when RT stops drawing

When we stop scheduling for new frames on RenderThread, we should
put the running animations on pause, rather than purge the list
of the running animations, such that in the next full
sync, the animations that were paused will continue to run.

BUG: 30226711
Change-Id: I36ff6f5d26ffa7999f60ca0ff676a35157577dc2
wui/AnimationContext.h
wui/renderthread/CanvasContext.cpp
e7cf2e4ff1741c4136eb4b3390fd2224091ce75c 01-Aug-2016 Greg Kaiser <gkaiser@google.com> Merge "accessorytest: Remove bad code"
63d8aa930f8859978200b7af8664aefc33fd2a51 31-Jul-2016 Hugo Benichi <hugobenichi@google.com> Merge \\\"Fix missing IpConnectivity metrics\\\" into nyc-mr1-dev am: 66e7752ad1 am: b2db402899
am: fb5c675b7e

Change-Id: Iba1f81a892acd9f541b9dd564203bfebc56c9c73
fb5c675b7e1fee074f19cf1866b5dda0785dbe64 29-Jul-2016 John Reck <jreck@google.com> resolve merge conflicts of 67daab6 to nyc-mr1-dev-plus-aosp

Change-Id: I35f867b8d6408a7eae9cf5643f0908259de90cb1
03b95c7df5fb577fa6e4c133dcdbc85c880d86b4 21-Jul-2016 Sergio Giro <sgiro@google.com> Unicode: specify destination length in utf8_to_utf16 methods

Change-Id: I5223caa7d42f4582a982609a898a02043265c6d3
ndroidfw/ResourceTypes.cpp
67daab6a1e0897cd0528a19071eeb9f4a2b00b49 29-Jul-2016 John Reck <jreck@google.com> Teach JankTracker about new swap behaviors
am: 2d5b8d7392

Change-Id: I28afc748f8a43944863bd752c3bd2cb983d19c23
34921ac1104e155682c6e807856e3e06f756c8f3 29-Jul-2016 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Teach JankTracker about new swap behaviors" into nyc-mr1-dev
b5405b171c4abe4fa4f7f9c13d8bcb83fc7c9639 29-Jul-2016 John Reck <jreck@google.com> Drop less aggressively am: a3d795a34a am: 62ec371a9e
am: fd6bf88724

Change-Id: I4a6bd075a1989b942c2531048d5d5335a24874f4
2d5b8d73929a38b019c6b6276d4a19542b990f0c 29-Jul-2016 John Reck <jreck@google.com> Teach JankTracker about new swap behaviors

Bug: 30440166

If we are using HWC2, there's a change in timing
when in triple buffering with the pipelined offsets.
This changes JankTracker to recognize that and silently
erase that from the total duration

Change-Id: Ib1fd4209070f17dbd2baed707c8cf73fb11c3cf2
wui/Android.mk
wui/FrameInfo.cpp
wui/FrameInfo.h
wui/JankTracker.cpp
wui/JankTracker.h
wui/renderthread/CanvasContext.cpp
wui/renderthread/RenderThread.cpp
wui/utils/TimeUtils.h
7e03ffa772481387beba66e33a0a056af2642aa7 29-Jul-2016 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Use Canvas::create_recording_canvas instead of RecordingCanvas ctor"
2c02aa1e02b636b5c8da9735194638331e32dd7c 29-Jul-2016 Doris Liu <tianliu@google.com> Run animation *after* property sync am: 7c7052dd9b am: 0053b066e5
am: c82ef8a51f

Change-Id: I06962e8d068b3d005b4cd4ce38a4028abab3333b
06152cdd06da50762716cd455dcf7ab0117f25b0 27-Jul-2016 Stan Iliev <stani@google.com> Use Canvas::create_recording_canvas instead of RecordingCanvas ctor

Modify HWUI tests to support different recording canvases. Delete
TestCanvas class and use base Canvas class instead. Use
Canvas::create_recording_canvas to create recording canvas instances
instead of RecordingCanvas constructor.

Change-Id: I651fb9bb4add0874d7110bac467a2eb1012357fc
wui/hwui/Canvas.h
wui/tests/common/TestListViewSceneBase.cpp
wui/tests/common/TestListViewSceneBase.h
wui/tests/common/TestScene.h
wui/tests/common/TestUtils.h
wui/tests/common/scenes/ClippingAnimation.cpp
wui/tests/common/scenes/GlyphStressAnimation.cpp
wui/tests/common/scenes/HwLayerAnimation.cpp
wui/tests/common/scenes/ListOfFadedTextAnimation.cpp
wui/tests/common/scenes/ListViewAnimation.cpp
wui/tests/common/scenes/OpPropAnimation.cpp
wui/tests/common/scenes/OvalAnimation.cpp
wui/tests/common/scenes/PartialDamageAnimation.cpp
wui/tests/common/scenes/RecentsAnimation.cpp
wui/tests/common/scenes/RectGridAnimation.cpp
wui/tests/common/scenes/SaveLayerAnimation.cpp
wui/tests/common/scenes/ShadowGrid2Animation.cpp
wui/tests/common/scenes/ShadowGridAnimation.cpp
wui/tests/common/scenes/ShapeAnimation.cpp
wui/tests/common/scenes/TextAnimation.cpp
wui/tests/macrobench/TestSceneRunner.cpp
wui/tests/microbench/DisplayListCanvasBench.cpp
wui/tests/microbench/FrameBuilderBench.cpp
wui/tests/unit/BakedOpDispatcherTests.cpp
wui/tests/unit/FrameBuilderTests.cpp
wui/tests/unit/LeakCheckTests.cpp
wui/tests/unit/RecordingCanvasTests.cpp
wui/tests/unit/RenderNodeTests.cpp
fd6bf88724d4f9e38bbe5273debbdc22ca0485d8 28-Jul-2016 John Reck <jreck@google.com> Drop less aggressively am: a3d795a34a
am: 62ec371a9e

Change-Id: Ifd9329e071f9391c5a5ced79301aee5410eff6d4
62ec371a9ec5f5d8229170024964e55823a94283 28-Jul-2016 John Reck <jreck@google.com> Drop less aggressively
am: a3d795a34a

Change-Id: I8cb55e8778fd9f9b5e5486b69d1bae490b02f823
abf66de14702c1d8262be29c426f707cc74667af 28-Jul-2016 John Reck <jreck@google.com> Merge "Drop less aggressively" into nyc-mr1-dev
6c2c0770a847ee04e8e07ae23bb84990c22f5a3c 28-Jul-2016 Stan Iliev <stani@google.com> Merge "Delete dead code function SpotShadow::makeClockwise"
a3d795a34a786bbe8b5027f70df36b81328109c2 28-Jul-2016 John Reck <jreck@google.com> Drop less aggressively

Bug: 30342762

Frame dropping was too frequent and would trigger
during normal triple buffering steady state. Bump
the threshold to drop from 3ms stall to 6ms stall.

Change-Id: I5c1faeaabf0d02323a28e697a4af4105fbcf1c53
wui/renderthread/CanvasContext.cpp
c82ef8a51fcfbd6260c6ccea786805bf7d604c89 28-Jul-2016 Doris Liu <tianliu@google.com> Run animation *after* property sync am: 7c7052dd9b
am: 0053b066e5

Change-Id: Id9764477eec3ee13044b60c1b02b8b0b459b7761
fdb625a309755fb762c448dd8c2c4e3a7cc26021 28-Jul-2016 Stan Iliev <stani@google.com> Delete dead code function SpotShadow::makeClockwise

Delete SpotShadow::makeClockwise, which is unused and does
not link when compiler optimizations are disabled (for debugging).
SpotShadow::makeClockwise calls non-existent function
ShadowTessellator::isClockwise, which only works because the
optimizer deletes the function.

Change-Id: Ib8a014bf168782772faa1da7d75a079c1fd28ed9
wui/ShadowTessellator.h
wui/SpotShadow.cpp
wui/SpotShadow.h
0053b066e5162b01d1014cd5d0ef32b4458050af 28-Jul-2016 Doris Liu <tianliu@google.com> Run animation *after* property sync
am: 7c7052dd9b

Change-Id: I68e050a18c46e60d7ed8fa5ef6a92df1a52d343e
919645aded88b7d9f82b6f05777cbe827f415d1a 27-Jul-2016 Chris Craik <ccraik@google.com> Reject fully transparent paint-fill ops at record time am: 814ee6a921
am: 1cfc4b1f46

Change-Id: I0d04b00ccf3d109ea5ab55ba52122fd4506147ea
1cfc4b1f461755dc6c6c68d7886d84dd7f0afdeb 27-Jul-2016 Chris Craik <ccraik@google.com> Reject fully transparent paint-fill ops at record time
am: 814ee6a921

Change-Id: Ie38ec468acf7ad30108f1279185f5a4b646b6f45
aa54b4e0da675439c969b1da5ad918b8da5b944a 27-Jul-2016 Doris Liu <tianliu@google.com> Merge "Run animation *after* property sync" into nyc-mr1-dev
004d140042368f92a537aa55a2f476a4f4377ff9 27-Jul-2016 Chris Craik <ccraik@google.com> Merge "Reject fully transparent paint-fill ops at record time" into nyc-mr1-dev
814ee6a9218aa339a4757b2c0ba1ad268f8dbc8a 27-Jul-2016 Chris Craik <ccraik@google.com> Reject fully transparent paint-fill ops at record time

bug:30342762

Avoids unnecessary work for each transparent operation.

Change-Id: I80b1eeca34ae32249433fde55e9fe93d02c411db
wui/RecordingCanvas.cpp
wui/tests/unit/FrameBuilderTests.cpp
wui/tests/unit/RecordingCanvasTests.cpp
56ad6ec42f814e9e61030ff819cac4e5d31def8b 22-Jul-2016 Derek Sollenberger <djsollen@google.com> Remove LayerRenderer.

There is only one caller each for the static functions here so this
CL moves the logic to the caller. Also by moving some of the code
into the pipeline it makes it easier for future changes to configure
how a pipeline handles a layer.

Change-Id: Ib735b5154325cbb658fd151f7a19dbf434ab44b7
wui/Android.mk
wui/Caches.cpp
wui/DeferredLayerUpdater.cpp
wui/DeferredLayerUpdater.h
wui/Layer.cpp
wui/Layer.h
wui/LayerRenderer.cpp
wui/LayerRenderer.h
wui/RenderNode.cpp
wui/renderthread/CanvasContext.cpp
wui/renderthread/CanvasContext.h
wui/renderthread/IRenderPipeline.h
wui/renderthread/OpenGLPipeline.cpp
wui/renderthread/OpenGLPipeline.h
wui/renderthread/RenderProxy.cpp
wui/tests/common/TestUtils.cpp
wui/tests/unit/DeferredLayerUpdaterTests.cpp
wui/tests/unit/RenderNodeTests.cpp
8d91725d6c9e258105169e776cf747d118282508 26-Jul-2016 Derek Sollenberger <djsollen@google.com> Merge "Remove unused member variable from DeviceInfo."
7c7052dd9bbfb2d98112975f7cbd2655212bf85b 26-Jul-2016 Doris Liu <tianliu@google.com> Run animation *after* property sync

VectorDrawable contains properties that can be mofidied from both
UI thread and RenderThread. The two sets of properties are synced
during prepareTree. Previously VD animations ran before prepareTree,
as a result, during prepareTree the property sync overwrote some
of the animatable properties. In other words, the first frame of
the animation wasn't correct. An example is in battery saver mode
when the animation only has one frame to animate (0-duration), the
end result looked wrong.

This CL moves the VD animation to after prepareTree to solve the
problem mentioned above. Meanwhile, in order to signal which
VD will be animated so as to have them properly damaged, all VDs
with running animators are marked dirty.

Bug: 30226711
Change-Id: I831dae9abb2908876c935b9be4c11dfd09452d5c
wui/VectorDrawable.h
2b2c7f1e4ee2196750055bf733e939b468ff9502 25-Jul-2016 Stan Iliev <stani@google.com> Merge "Fix bound rectangle calculation in SkiaCanvasProxy::onDrawPosText"
57c10a2428b03c86627ba91bea422e432522a1b9 25-Jul-2016 Tenghui Zhu <ztenghui@google.com> Merge "Remove redundant code for getMappedPointer in PixelBuffer"
9af20d58b2e19a119c5fb984c383b6b19c033b9a 25-Jul-2016 Yuqian Li <liyuqian@google.com> Merge "More efficient text rendering on path"
d84d2ee3359af8478afd3f891d5d316af1a562ed 25-Jul-2016 Stan Iliev <stani@google.com> Fix bound rectangle calculation in SkiaCanvasProxy::onDrawPosText

SkiaCanvasProxy::onDrawPosText was calculating wrong bound rectangle,
because the initial rectangle used to accumulate the result was not
initialized.

bug: 30357689
Change-Id: I2c2afd4645237c50a3fcf2bbd99ae1ce2cd911c1
wui/SkiaCanvasProxy.cpp
a0c0ff2f9a45fd1be86a7ad428296381e7138ad9 23-Jul-2016 Teng-Hui Zhu <ztenghui@google.com> Remove redundant code for getMappedPointer in PixelBuffer

b/29755121

Change-Id: I6cd5bbe11a53bc5e1cd421671d3d9aa89591d886
wui/PixelBuffer.cpp
wui/PixelBuffer.h
afc221499d943386256feb9db46c119ff834bf79 18-Jul-2016 Yuqian Li <liyuqian@google.com> More efficient text rendering on path

Change-Id: I004c15473b527df0f296c54a6a3e9b29505fd9b9
wui/RecordingCanvas.cpp
wui/RecordingCanvas.h
wui/SkiaCanvas.cpp
wui/SkiaCanvas.h
wui/SkiaCanvasProxy.cpp
wui/SkiaCanvasProxy.h
wui/hwui/Canvas.cpp
wui/hwui/Canvas.h
48e44acbce98d7a49dae9cfd67a51178f3e17414 22-Jul-2016 Derek Sollenberger <djsollen@google.com> Remove unused member variable from DeviceInfo.

Change-Id: Id7e2ba1d6abdb54a455114693183c4672f605134
wui/DeviceInfo.h
846799d693adc83ba973d8fef6d73dc53a994d1d 22-Jul-2016 Stephen Hines <srhines@google.com> resolve merge conflicts of f53bfc9 to master

Change-Id: Idb454415b166b2ff215c604475dd9129958e7edd
f53bfc911fa88c15b25f38553a5647ad00f221a3 22-Jul-2016 Chih-Hung Hsieh <chh@google.com> resolve merge conflicts of 3fb651b to nyc-mr1-dev-plus-aosp

Change-Id: I52d56e84620c85638798d949f8eb819387a01902
3fb651b0b73c462d96df063e19cc3cfefa249262 22-Jul-2016 Chih-hung Hsieh <chh@google.com> resolve merge conflicts of 5152fd9 to stage-aosp-master
am: 05160d70d1

Change-Id: Id1d734fd162d6063fdc818afc68f09809f764c5f
05160d70d14180fef3782a63dff2e822b51c3cf5 22-Jul-2016 Chih-Hung Hsieh <chh@google.com> resolve merge conflicts of 5152fd9 to stage-aosp-master

Change-Id: I2066125eb4076dbc9e8996bb1fa87735aa6040d3
faecb78a6b11c780db47bc940ca7662899ab5d5e 21-Jul-2016 Chih-Hung Hsieh <chh@google.com> Fix google-explicit-constructor warnings in frameworks/base

* Add explicit keyword to conversion constructors.
* Add NOLINT to implicit conversion constructors.

Bug: 28341362
Test: build with clang-tidy
Change-Id: Ie4d37072ab57d1662d18db4de1c8577247f43337
wui/AnimationContext.h
wui/AnimatorManager.h
wui/Caches.h
wui/CanvasProperty.h
wui/CanvasState.h
wui/DeferredDisplayList.h
wui/Dither.h
wui/FrameInfo.h
wui/FrameInfoVisualizer.h
wui/GradientCache.h
wui/JankTracker.h
wui/LayerCache.h
wui/Matrix.h
wui/OpenGLRenderer.h
wui/PatchCache.h
wui/PathCache.h
wui/ProgramCache.h
wui/Rect.h
wui/RenderBufferCache.h
wui/ResourceCache.h
wui/SkiaCanvasProxy.h
wui/TextDropShadowCache.h
wui/Texture.h
wui/renderthread/RenderTask.h
wui/thread/Barrier.h
wui/thread/Future.h
wui/thread/Signal.h
wui/thread/TaskManager.h
wui/thread/TaskProcessor.h
wui/utils/SortedListImpl.h
cf3e1a7fa847e6895c3bc8d9549d2ed9ce736608 21-Jul-2016 Chris Craik <ccraik@google.com> Merge \\"Change swap chain stuffed detection logic\\" into nyc-mr1-dev am: 433a19e8bf
am: 3c37412900

Change-Id: Id7e0d1d1dfb5448dd927c29361fb98aabf0cfe10
3c37412900502fd491cc40e1df594ee1f45af1b2 21-Jul-2016 Chris Craik <ccraik@google.com> Merge \"Change swap chain stuffed detection logic\" into nyc-mr1-dev
am: 433a19e8bf

Change-Id: I6942a7cef5c831a1be3ee0252c2f475594f3db39
433a19e8bf92accb834f703f91650bc8de776073 21-Jul-2016 Chris Craik <ccraik@google.com> Merge "Change swap chain stuffed detection logic" into nyc-mr1-dev
3163568806f2f1c360f93772453f4b0b3a9b2e47 20-Jul-2016 Chris Craik <ccraik@google.com> Change swap chain stuffed detection logic

bug:29771461
bug:29413700
bug:30181577

Changes frame interval gap detection to look for wider gaps, as they
were incorrectly firing all the time.

Also adds a 500ms minimum gap between frames dropped because of stuffed
swap chain, to prevent dropping too often.

Change-Id: If16ed637d54bf37015704be102c5c2e3731a0824
wui/renderthread/CanvasContext.cpp
wui/renderthread/CanvasContext.h
bc702e5d421b52689320a5880dba6de10c1563f3 20-Jul-2016 Michael Wright <michaelwr@google.com> Merge commit \'f8bc27d9683e4089cdfd778dcb61ae67f44665b7\' into manual_merge_f8bc27d
am: 49bcc5dd80

Change-Id: Iee2a7015eefd6a75be2968ec855334f68ec5f79e
49bcc5dd80429ecfa1d518eef3726f83f4cb85d6 20-Jul-2016 Michael Wright <michaelwr@google.com> Merge commit 'f8bc27d9683e4089cdfd778dcb61ae67f44665b7' into manual_merge_f8bc27d
f8bc27d9683e4089cdfd778dcb61ae67f44665b7 20-Jul-2016 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Rename color transform to color mode and persist the value." into nyc-mr1-dev
86cbf883f6bded03841db3038e75d18afd5f6095 20-Jul-2016 Derek Sollenberger <djsollen@google.com> Fix ref-counting error when reseting a SkiaCanvas with a new SkCanvas.

Change-Id: Id2ed6627674cbd3112d6ac80f4e29a5ff65606b6
wui/SkiaCanvas.cpp
d61b11163a324b7c73735df0ebf421eb69281646 20-Jul-2016 Derek Sollenberger <djsollen@google.com> Merge "Expose SkiaCanvas header file."
f1b0e07e7f0d8e496404ae187f5d144eb760a6de 19-Jul-2016 Sergei Vasilinetc <sergeyv@google.com> Merge "Move hwuimacro to common native benchmark infrastructure"
c190813b938ecf28d9e76b07098e9637ced8808e 15-Jul-2016 Derek Sollenberger <djsollen@google.com> Expose SkiaCanvas header file.

Previously the header for SkiaCanvas was contained in the .cpp file,
but in prepration for broader use of SkiaCanvas we are moving the
header into its own .h file.

Change-Id: Ib8c738366198a9b63e7429d51e9fa5aec106fdb1
wui/SkiaCanvas.cpp
wui/SkiaCanvas.h
44b7f75587fbd8e382b3a58e5f272a9776f1efc2 19-Jul-2016 Tim Murray <timmurray@google.com> Merge changes I15da2563,I7845542d into nyc-mr1-dev am: 7b8b1aab93
am: 619682b960

Change-Id: I98afd5bead70cf25ca43e49c1215ccef1e472a83
619682b960eca422fbf0387e0bc32875c76bf170 19-Jul-2016 Tim Murray <timmurray@google.com> Merge changes I15da2563,I7845542d into nyc-mr1-dev
am: 7b8b1aab93

Change-Id: I66d92cd3c08a67598cefdc6256825b1c6c1736f5
ffde6274f7acb988ce181454b4d5abe3cef483b5 18-Jul-2016 Tim Murray <timmurray@google.com> add tracepoint for when the display chain is stuffed

bug 30173296

Change-Id: I7845542d4e5c19ccb7c3ee6498cc2d70278b5397
wui/renderthread/CanvasContext.cpp
1c9977b762b4bac46b4470f04c898bfd17da5d90 12-Jul-2016 Michael Wright <michaelwr@google.com> Rename color transform to color mode and persist the value.

Also, standardize on a set of possible modes for the displays to
enter and separate the configuration of the color mode from the
configuration of the display mode.

Bug: 29044347

Change-Id: I6af0a7d1f11bc72d4cefc380f115c1fb00788864
wui/tests/common/TestContext.cpp
163c97a8ea0682e91fdccf1c3137ee43b9e00135 18-Jul-2016 Derek Sollenberger <djsollen@google.com> Merge changes from topic 'skia_merge'

* changes:
Fix include to match Skia filename change
Remove references to SkImageDecoder (part 2)
Update SkiaCanvasProxy with SkSurface API change
Return DNG mimeType for the case kDNG_SkEncodedFormat
Remove use of SkFixed. Update code to use SkGlyph.fAdvance[XY] after https://codereview.chromium.org/1737693006.
skia SkDocument - new MakePDF API, fix leak
79fc3b1f1675364dbb739ffa511a68ed5a80f357 24-Mar-2016 Matt Sarett <msarett@google.com> Update SkiaCanvasProxy with SkSurface API change

(cherry picked from commit 187b99292d0bf86e9e76b0c8d447abcbefe29afb)

Change-Id: I09a5ae6a844dec4607bc3f45e22dad93a00c0dc8
wui/SkiaCanvasProxy.cpp
wui/SkiaCanvasProxy.h
6bf0c56ce031fee822b80508b7ea279330080385 15-Jul-2016 Chris Craik <ccraik@google.com> Merge \\"Fix rotated clip regions\\" into nyc-mr1-dev am: 06f13cba5f
am: d5cdbdeae1

Change-Id: Ib7db5a8fbbe4cfdd8cd7c8a06ad51477fc6df5a1
d5cdbdeae13c68abf505db42b490bb857db6732d 15-Jul-2016 Chris Craik <ccraik@google.com> Merge \"Fix rotated clip regions\" into nyc-mr1-dev
am: 06f13cba5f

Change-Id: I4afab3a863f1f873e9dd95ed671072874a6a4511
06f13cba5f1b67837674a46b90bf09f85669153f 15-Jul-2016 Chris Craik <ccraik@google.com> Merge "Fix rotated clip regions" into nyc-mr1-dev
2ac434dfcc6425adcfe4982b5361a1d4d7e097f6 15-Jul-2016 TreeHugger Robot <treehugger-gerrit@google.com> Merge "AAPT2: Remove usage of u16string"
0658435096a26067c0183e0a977c9ae0af1cc006 14-Jul-2016 Chris Craik <ccraik@google.com> Fix rotated clip regions

bug: 26562461
fixes: 30109912

SeekBar clips out the area of the thumb when drawing its track. This
creates a clip region, since a rect has been subtracted.

This changes region transform support in computing final clip to
properly support any rect-to-rect transform (such as 90 degree rotation)
when applying a clip region.

Change-Id: Ib3bbc52637e59e00b3a7e7d5c4c40555e26c578b
wui/ClipArea.cpp
wui/tests/unit/ClipAreaTests.cpp
f4f18a25b305bb16355e3e1883d9bd454b36cdf7 28-Mar-2016 Ben Wagner <benjaminwagner@google.com> Remove use of SkFixed. Update code to use SkGlyph.fAdvance[XY] after https://codereview.chromium.org/1737693006.

(cherry picked from commit 6db72075318e030562a1b61e47f125e91c1fb945)

Change-Id: Ib8bdf9df3efab39c7e7681cee3075e223a948b2d
wui/font/CachedGlyphInfo.h
wui/font/Font.cpp
wui/font/FontUtil.h
b4c51cf024f705f104ef4a3f8cede2302806d72c 14-Jul-2016 Stan Iliev <stani@google.com> Merge "Move isSkiaEnabled to the Properties class"
d0f116b619feede0cfdb647157ce5ab4d50a1c46 09-Jul-2016 Adam Lesinski <adamlesinski@google.com> AAPT2: Remove usage of u16string

For legacy reasons, we kept around the use of UTF-16 internally
in AAPT2. We don't need this and this CL removes all instances of
std::u16string and StringPiece16. The only places still needed
are when interacting with the ResTable APIs that only operate in
UTF16.

Change-Id: I492475b84bb9014fa13bf992cff447ee7a5fe588
ndroidfw/ResourceTypes.cpp
44544b8b46ec8af3dd3b06448c3486d9f9928313 14-Jul-2016 Doris Liu <tianliu@google.com> Merge \\"Fix use-after-free in vector drawable animation\\" into nyc-mr1-dev am: 133ab10464
am: 7628ae28d5

Change-Id: I908b552335f10a8570a367d017741c0b76622948
7628ae28d53adb0f1ee9ec1118bd3aa67c552751 14-Jul-2016 Doris Liu <tianliu@google.com> Merge \"Fix use-after-free in vector drawable animation\" into nyc-mr1-dev
am: 133ab10464

Change-Id: Ice990efd5e8a2554c8a57b191e4d288971270919
9014be18b3afb78ac04e23557aeaa0b784578b7f 14-Jul-2016 Chris Craik <ccraik@google.com> Merge \"Avoid throwing when 0 size layer requested\" into nyc-dev
am: 807989facd

Change-Id: I09c2114b0ff2aa1badb414da9b3b5cd2bbd63669
de89c2fd708d9d7a7e7990e2d6da77c8481a0217 13-Jul-2016 Keith Mok <ek9852@gmail.com> Fix random crash in libhwui

On some cases (noticed from log) that there is a crash in
libhwui.so, future debug log shows that the light center position
values are nan, causing an out of bound access in hull function
in SpotShadow.cpp for parameter retPoly which assume to be of
maximum length of pointsLength only but not the case when all
points are nan.

More log shows that a Snapshot was created (new) without
mRelativeLightCenter begin set, and Layer.cpp trying to
use it by calling updateLightPosFromRenderer. Those values
are random values in stack which causing math calc based on
that value returning nan also.

Initialize mRelativeLightCenter to 0 in Snapshot.cpp to avoid the
problem.

Change-Id: I9e24f6f1f856d053d09db1b1aae100f219f2a6de
wui/Snapshot.cpp
eb46ce54a843e4ba13e97c4cfea83bcdc693684b 29-Mar-2016 Greg Kaiser <gkaiser@google.com> accessorytest: Remove bad code

This code was calling 'free' on uninitialized stack memory. However,
we never reached this code due to the while(1) loop, so we weren't
experiencing bad behavior. Still, we remove this code to avoid
the temptation of copy/paste for someone in the future who might
leave this loop.

Change-Id: I7f4d9528ddc2f92f3118ec1ade630f98bfbacd0c
sb/tests/accessorytest/audio.c
fc6913e18a067402d11774be9aed9416004bdeb7 13-Jul-2016 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Refactor CanvasContext: move OpenGL specific code"
98980cdfff34d1cace1ab60fa54e248c0ee8bc8e 13-Jul-2016 Doris Liu <tianliu@google.com> Fix use-after-free in vector drawable animation

Added a strong pointer to hold reference to VD in the animation,
so that VD will not be released before animation is finished/destroyed.

BUG: 29438210
Change-Id: I311cd83043f988640de44f637cb474baada9b5ca
wui/PropertyValuesAnimatorSet.h
768e39335b668e8ef25fef30ab42b2d6d29a4735 09-Jul-2016 Stan Iliev <stani@google.com> Refactor CanvasContext: move OpenGL specific code

Move OpenGL specific code from CanvasContext into a new class
OpenGLPipeline.

Change-Id: I4363053f890701a4235927b59ec588861488ea8f
wui/Android.mk
wui/renderthread/CanvasContext.cpp
wui/renderthread/CanvasContext.h
wui/renderthread/IRenderPipeline.h
wui/renderthread/OpenGLPipeline.cpp
wui/renderthread/OpenGLPipeline.h
202c10b7b54a7a344415b19d4c3f93266de4ad25 12-Jul-2016 sergeyv <sergeyv@google.com> Move hwuimacro to common native benchmark infrastructure

Change-Id: I2d2b358d205b1ed950ddc9caa57360b68001893b
wui/Android.mk
wui/tests/common/TestScene.h
wui/tests/macrobench/how_to_run.txt
wui/tests/macrobench/main.cpp
52c4eba143ce88a231e2691f65abd076f9e21c18 12-Jul-2016 Chris Craik <ccraik@google.com> Merge \\"Avoid throwing when 0 size layer requested\\" into nyc-mr1-dev am: 272b827925
am: ec83bd15c8

Change-Id: If585ade667c888d2f5f8e90a76125971178a7ba5
ec83bd15c82d1983e764418139f65ef56761a52a 11-Jul-2016 Chris Craik <ccraik@google.com> Merge \"Avoid throwing when 0 size layer requested\" into nyc-mr1-dev
am: 272b827925

Change-Id: Ibd3f90aea167b7ee0e1f9add327a651ba94c7883
e3e481df762747c5f01bbd1503800fa29457fc1b 11-Jul-2016 Chris Craik <ccraik@google.com> Avoid throwing when 0 size layer requested

bug:30032790

Change-Id: I8553af0d0b0d59fea6535d03479c4e7134a9f4f9
wui/RenderNode.cpp
wui/RenderProperties.h
wui/tests/unit/RenderPropertiesTests.cpp
fced69e2b3ac5d5897340bd4738a69e907561214 11-Jul-2016 Chris Craik <ccraik@google.com> Avoid throwing when 0 size layer requested

bug:30032790

Change-Id: I8553af0d0b0d59fea6535d03479c4e7134a9f4f9
wui/RenderNode.cpp
wui/RenderProperties.h
wui/tests/unit/RenderPropertiesTests.cpp
8a33e4019991c58b06adf2e3a9ac1eeeccd8fa94 08-Jul-2016 Stan Iliev <stani@google.com> Move isSkiaEnabled to the Properties class

Move CanvasContext::isSkiaEnabled to Properties:isSkiaEnabled.

Change-Id: I0a62f43825cf59ba338a24a056e8c2a56d1c5315
wui/Properties.cpp
wui/Properties.h
wui/renderthread/CanvasContext.cpp
wui/renderthread/CanvasContext.h
8556ab87bc32883f5f01bb701967d9296b6f9b9f 08-Jul-2016 Derek Sollenberger <djsollen@google.com> Remove unused code from HWUI Layer

Change-Id: If9046add5ca5a647351187c5809841edcf0bfa9b
wui/Layer.cpp
wui/Layer.h
5e00c7ce063116c11315639f0035aca8ad73e8cc 07-Jul-2016 Chris Craik <ccraik@google.com> Delete old rendering pipeline

fixes: 30002246

Change-Id: I45df0e924708526cee045b14c291bd23aa1a92db
wui/Android.mk
wui/Caches.cpp
wui/Caches.h
wui/CanvasState.cpp
wui/CanvasState.h
wui/DeferredDisplayList.cpp
wui/DeferredDisplayList.h
wui/DeferredLayerUpdater.cpp
wui/DeferredLayerUpdater.h
wui/DisplayList.cpp
wui/DisplayList.h
wui/DisplayListCanvas.cpp
wui/DisplayListCanvas.h
wui/DisplayListOp.h
wui/FontRenderer.cpp
wui/FontRenderer.h
wui/FrameBuilder.cpp
wui/FrameInfoVisualizer.cpp
wui/FrameInfoVisualizer.h
wui/Glop.h
wui/GlopBuilder.cpp
wui/GlopBuilder.h
wui/Layer.cpp
wui/Layer.h
wui/LayerCache.cpp
wui/LayerCache.h
wui/LayerRenderer.cpp
wui/LayerRenderer.h
wui/OpDumper.cpp
wui/OpenGLRenderer.cpp
wui/OpenGLRenderer.h
wui/PatchCache.h
wui/Properties.h
wui/RecordedOp.h
wui/RecordingCanvas.cpp
wui/RenderNode.cpp
wui/RenderNode.h
wui/RenderProperties.cpp
wui/RenderProperties.h
wui/Snapshot.cpp
wui/Snapshot.h
wui/TessellationCache.cpp
wui/TessellationCache.h
wui/TreeInfo.h
wui/hwui/Canvas.cpp
wui/hwui/Canvas.h
wui/renderstate/RenderState.cpp
wui/renderthread/CanvasContext.cpp
wui/renderthread/CanvasContext.h
wui/renderthread/RenderProxy.cpp
wui/tests/common/TestScene.h
wui/tests/common/TestUtils.h
wui/tests/common/scenes/TestSceneBase.h
wui/tests/microbench/DisplayListCanvasBench.cpp
wui/tests/unit/GlopBuilderTests.cpp
wui/utils/TestWindowContext.cpp
aa1735370b24428647508d2ff0f29a617cb955e9 07-Jul-2016 Tim Murray <timmurray@google.com> Merge changes from topic \\'fifo\\' into nyc-mr1-dev am: a96d445aef
am: 03b34e402c

Change-Id: If3104889f659aef9a6d7035e18ab839544c9ecb3
03b34e402c58d7425fd0318a6e69f03a59ae715e 07-Jul-2016 Tim Murray <timmurray@google.com> Merge changes from topic \'fifo\' into nyc-mr1-dev
am: a96d445aef

Change-Id: If4a5c3f65cb611aecf82ad49ad6d992f098cbfb1
a96d445aef1456398410e41e9c29d9181287edc5 07-Jul-2016 Tim Murray <timmurray@google.com> Merge changes from topic 'fifo' into nyc-mr1-dev

* changes:
Add new mode for SCHED_FIFO on UI and RenderThreads.
Add isThreadInProcess.
a1a529eec0f1183c2dbb09d9c6fd12211154bebd 07-Jul-2016 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Implement runtime switch to select default renderer mode"
33eb07f5759b85a5617f8057d8a335019c7d24dd 10-Jun-2016 Tim Murray <timmurray@google.com> Add new mode for SCHED_FIFO on UI and RenderThreads.

Add a new mode, controlled by sys.use_fifo_ui property, that enables the
top app's UI and RenderThread to be SCHED_FIFO. This eliminates almost
all jank due to scheduling competition with non-UI critical
threads. This mode may not be suitable for all devices.

bug 24503801

Change-Id: I7b8a31830ad80f7efa00236928d5476998ed4e00
wui/renderthread/RenderProxy.cpp
wui/renderthread/RenderProxy.h
6f98aa2ff83de7b3f650529c3995b4276c3d3bd5 07-Jul-2016 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Unify readback Surface/TextureView copy mechanism"
03de074d05108fa9fb07c6b847c7163ada5776da 07-Jul-2016 Stan Iliev <stani@google.com> Implement runtime switch to select default renderer mode

Add a system property debug.hwui.default_renderer, which allows
to set rendering mode to OpenGL (default), Skia OpenGL or Vulkan.

Change-Id: I8bca5bacc5108f77437e340ac61f2d8db8cc4c39
wui/Properties.cpp
wui/Properties.h
wui/renderthread/CanvasContext.cpp
wui/renderthread/CanvasContext.h
wui/renderthread/RenderProxy.cpp
wui/tests/unit/RenderNodeTests.cpp
764045da2ce980f1eee78171de5b4f09dfb601a7 07-Jul-2016 Chris Craik <ccraik@google.com> Unify readback Surface/TextureView copy mechanism

Removes last usage of old rendering pipeline.

Change-Id: Ia920dec9cd726ca221e11e888562c7df39a9761e
wui/LayerRenderer.cpp
wui/LayerRenderer.h
wui/Readback.cpp
wui/Readback.h
wui/renderthread/CanvasContext.cpp
e7f27fbf93ad0c26dfc6142ff1fde4a70b94aa23 07-Jul-2016 John Reck <jreck@google.com> Merge \\"Consider queue & dequeue times for should draw\\" into nyc-mr1-dev am: 3a465e7a12
am: 6354336493

Change-Id: Idbe85f08c27cc6f9433badd886a1fe7d9ba73c4f
63543364933f51d69475b984adf4d6fa74fff041 07-Jul-2016 John Reck <jreck@google.com> Merge \"Consider queue & dequeue times for should draw\" into nyc-mr1-dev
am: 3a465e7a12

Change-Id: I2ea38a087056e2f75aeb27c5bce03fe52690cd6e
0def73aac5956d82a065fd75e90eac4c58418e03 02-Jul-2016 John Reck <jreck@google.com> Consider queue & dequeue times for should draw

Bug: 29413700

Change-Id: I4b27b077af569e3c60c57b0e11501e9f3af70579
wui/renderthread/CanvasContext.cpp
wui/renderthread/CanvasContext.h
f1480761c1a83aecd09cdd473ec797a41d1a2f3f 04-Jul-2016 John Reck <jreck@google.com> Benchmark-mode for macrobench

Adds googlebench output format support
Adds offscreen rendering for >60fps benchmarking
Adds 'all' alias to run all registered TestScenes

Change-Id: I2579e40f2f4c941bfbd90c75efbee384c08a116b
wui/Android.mk
wui/Properties.cpp
wui/Properties.h
wui/renderthread/CanvasContext.cpp
wui/renderthread/RenderProxy.cpp
wui/renderthread/RenderProxy.h
wui/tests/common/LeakChecker.cpp
wui/tests/common/TestContext.cpp
wui/tests/common/TestContext.h
wui/tests/common/TestScene.h
wui/tests/macrobench/TestSceneRunner.cpp
wui/tests/macrobench/main.cpp
4be082a134ce3f24b6758fc16315d3efe1792353 30-Jun-2016 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Fix compile issue"
6afffb20ee16224508f566e23ca3e6c5f821efd0 30-Jun-2016 Chris Craik <ccraik@google.com> Merge \\"Handle post-record-time clipPath scaling\\" into nyc-mr1-dev am: a6b011e9b0
am: ab9e74bbbd

Change-Id: Ic204ce482a8324367e8a27e3c332b5b5797321a5
ab9e74bbbdc3237a651c8554309d1fcac45adfcf 30-Jun-2016 Chris Craik <ccraik@google.com> Merge \"Handle post-record-time clipPath scaling\" into nyc-mr1-dev
am: a6b011e9b0

Change-Id: Icdf0cb748953c9ad1db57b748719f4c93429e78a
82457c51176855b9be0b441010870093a6feb414 30-Jun-2016 Chris Craik <ccraik@google.com> Handle post-record-time clipPath scaling

bug:29547149

Change-Id: I268210b240d2d8e08638114715f9622840fc02f7
wui/ClipArea.cpp
wui/ClipArea.h
wui/Rect.h
wui/tests/unit/ClipAreaTests.cpp
9688a3d33451134d6ff54f7b60f8db7a338a40f1 30-Jun-2016 John Reck <jreck@google.com> Fix compile issue

Change-Id: Ic3423cfb23c6057210efb2e9110551b694c0101c
wui/hwui/Canvas.h
05357641d398ef77d880da387a230820ab3203fe 29-Jun-2016 Derek Sollenberger <djsollen@google.com> Remove unused method from RenderProxy and CanvasContext.

Change-Id: I324bbfa40a2155d0212fa20c6bd39df5bb21d27a
wui/renderthread/CanvasContext.cpp
wui/renderthread/CanvasContext.h
wui/renderthread/RenderProxy.cpp
wui/renderthread/RenderProxy.h
b657b9b7febd38e309bef943dcfc55dbb7b30c2c 28-Jun-2016 Chris Craik <ccraik@google.com> Merge \"Merge \\"Fix savelayer rounding\\" into nyc-mr1-dev am: 754ea612ec\" into nyc-mr1-dev-plus-aosp
am: 46813558a3

Change-Id: I6afdba716240f52cfa0beba6fb70404bf00429f8
b1d6dd216c764f2bfd735945609d3878afa15074 28-Jun-2016 Chris Craik <ccraik@google.com> Merge \"Fix savelayer rounding\" into nyc-mr1-dev
am: 754ea612ec

Change-Id: Ib86ae01c824b57c4c93562aefb6c264b02538e28
754ea612ec74d0bb13bfef0e88f9684a72a28db2 28-Jun-2016 Chris Craik <ccraik@google.com> Merge "Fix savelayer rounding" into nyc-mr1-dev
e4f6d968f51ba3bb867e8e124dca97b7e9c3fea5 28-Jun-2016 Chris Craik <ccraik@google.com> Fix savelayer rounding

bug:29456451

Change-Id: I8022163d2c004510da5db74efdca27582484224d
wui/RecordingCanvas.cpp
wui/tests/unit/RecordingCanvasTests.cpp
a1a0bbddba8d01830e9c7e2c90f34306c2802add 28-Jun-2016 John Reck <jreck@google.com> Merge \\"Fix SurfaceViewPositionListener race bugs\\" into nyc-mr1-dev am: 8701bff9ba
am: 892f8e7d4f

Change-Id: I1e66186dce36e52cafe6c0d027aeae7c9345703c
892f8e7d4f6391ce267d5add91638014e6c0e5d5 28-Jun-2016 John Reck <jreck@google.com> Merge \"Fix SurfaceViewPositionListener race bugs\" into nyc-mr1-dev
am: 8701bff9ba

Change-Id: I17b1cf4e81321edb04ae9ac99449160a705ba824
8701bff9bacd033ecade271c9f30ef5d734e8cc0 28-Jun-2016 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Fix SurfaceViewPositionListener race bugs" into nyc-mr1-dev
a0e19f7f8f04f90d6ab14a1335f11f518452f049 28-Jun-2016 John Reck <jreck@google.com> Merge \\\"Add missing roundOut for layer damage\\\" into nyc-dev am: 48cde353eb am: aecf607eb6
am: 27875c2f31

Change-Id: I5a153e5c5a43bbdb7e3ace4b19ea08c08416ffa1
27875c2f318800ab362b99fdadad01b9a63ddc67 28-Jun-2016 John Reck <jreck@google.com> Merge \\"Add missing roundOut for layer damage\\" into nyc-dev am: 48cde353eb
am: aecf607eb6

Change-Id: Iede184ab8942798a932f67d1ece3f7fd5e0f9d66
11858f170acb1a89905047bbf0039e0582a5b4d2 28-Jun-2016 John Reck <jreck@google.com> Merge \"Add missing roundOut for layer damage\" into nyc-dev
am: 48cde353eb

Change-Id: I99532e6b7992452523c4fb0716a7161c06b92950
aecf607eb6beccf36a604ab1699e6c29424d862f 28-Jun-2016 John Reck <jreck@google.com> Merge \"Add missing roundOut for layer damage\" into nyc-dev
am: 48cde353eb

Change-Id: If4ca933e218fc33fa78dc063b687e03793635e6c
48cde353eb7b6bd8f4ff335da0e04fcd390cf0da 28-Jun-2016 John Reck <jreck@google.com> Merge "Add missing roundOut for layer damage" into nyc-dev
ac046387be01e586ab29519adb6d865381efa37f 28-Jun-2016 John Reck <jreck@google.com> Add missing roundOut for layer damage

fixes: 29771171

This is a regression from HWUI_NEW_OPS, a roundOut
was missing in the new path that was in the old one

Change-Id: Ibf223d550bb5525781864dd9b7f7cd6d73adb98b
wui/LayerUpdateQueue.cpp
wui/tests/unit/LayerUpdateQueueTests.cpp
65c0d9d29043843de91857a0a63edcc4da144dbe 27-Jun-2016 Chris Craik <ccraik@google.com> Round unclipped saveLayers
am: 45e83338e5

Change-Id: I3ecb7fdd2097779cf7f596c0e6a3f7914902ca39
45e83338e525070702c12d68d904107989f439f9 24-Jun-2016 Chris Craik <ccraik@google.com> Round unclipped saveLayers

fixes: 29456451

Change-Id: I2be8b47c46936e75071ad0819a718f72b96cbd2b
(cherry picked from commit d5a90114128f4d3d528f1a0e93651496c968f940)
wui/FrameBuilder.cpp
wui/tests/unit/FrameBuilderTests.cpp
7b570deea65bc7ac417a26ce3e4103bcef30e957 27-Jun-2016 John Reck <jreck@google.com> Fix SurfaceViewPositionListener race bugs

Bug: 29628138

1: Make windowPositionLost synchronous as that's
what the Java side was expecting

2: Make the listener ref counted as otherwise
there's a race condition with the GC, which could
end up with use-after-frees

3: Ensure that all position updates are invoked
prior to frame completion

Change-Id: Iedbc017f611ba2878a49b4586612f79249ca2fe3
wui/RenderNode.h
wui/renderthread/CanvasContext.cpp
c3f709c7ed262b946998642889ca1b2d836e7a75 25-Jun-2016 Chris Craik <ccraik@google.com> Merge \\"Round unclipped saveLayers\\" into nyc-mr1-dev am: fdef509c93
am: 366f7476ea

Change-Id: I61e1d5a8b03d2946fd6e572690304343f524e580
366f7476eaf550c1e9cb08e12e766e9568115b98 25-Jun-2016 Chris Craik <ccraik@google.com> Merge \"Round unclipped saveLayers\" into nyc-mr1-dev
am: fdef509c93

Change-Id: I815b90f2d26a9043db3c76b69c64a3b42d3369ca
d5a90114128f4d3d528f1a0e93651496c968f940 24-Jun-2016 Chris Craik <ccraik@google.com> Round unclipped saveLayers

fixes: 29456451

Change-Id: I2be8b47c46936e75071ad0819a718f72b96cbd2b
wui/FrameBuilder.cpp
wui/tests/unit/FrameBuilderTests.cpp
91fcf575f1a712ba04b58a260752df3a333fa57f 24-Jun-2016 Doris Liu <tianliu@google.com> Merge \\"Fix NPE for checking for whether animators should play together\\" into nyc-mr1-dev am: 7f9c189f06
am: b53c9c1658

Change-Id: Ia8b14a4e79c60e3c83f12ab07160ff2d36247088
b53c9c1658e2108f14b667f550dec1a76bc86ab9 24-Jun-2016 Doris Liu <tianliu@google.com> Merge \"Fix NPE for checking for whether animators should play together\" into nyc-mr1-dev
am: 7f9c189f06

Change-Id: I3ea0e652dd39dfffe279b4c2c0bb19d362eb91af
c470466d7c89b55d8c5a13d79076fa2f8d624da1 23-Jun-2016 Doris Liu <tianliu@google.com> Fix NPE for checking for whether animators should play together

BUG: 29586505
Change-Id: Ic2a67d51d2ac8d5bfb11ed7773c7c7e413cc28c7
wui/PropertyValuesAnimatorSet.cpp
d2be84ff7c0f98adbec25e6d02429d428998c882 22-Jun-2016 John Reck <jreck@google.com> Merge "Delete unused args"
e1780c026c82c584c8eecb35707003dc0f9b4c95 22-Jun-2016 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Script cleanup"
ab1080c4d075b008cebdd9a2031ebbd51f9c2729 22-Jun-2016 John Reck <jreck@google.com> Delete unused args

Bug: 21170575
Change-Id: Icc832f70f206342557f44667ad3498405d04db78
wui/renderthread/CanvasContext.cpp
wui/renderthread/CanvasContext.h
wui/renderthread/RenderProxy.cpp
wui/renderthread/RenderProxy.h
wui/tests/macrobench/TestSceneRunner.cpp
wui/utils/TestWindowContext.cpp
65d978b407f668cd65a37c78e36819593332a0f5 22-Jun-2016 John Reck <jreck@google.com> Script cleanup

Fix bullhead locking
Split out locking from stopping system
Normalize ;

Change-Id: I0577f72c514d6add96920529c3bfe29e0917917e
wui/tests/scripts/prep_buller.sh
wui/tests/scripts/prep_volantis.sh
wui/tests/scripts/stopruntime.sh
422e2b4829e28e422f0010e0e3ce04f45fb9efd8 21-Jun-2016 sergeyv <sergeyv@google.com> HWUI: move microbench to APCT infrastructure

bug:29515780
Change-Id: I06f0518e2948d4268a1fa8ec99e08b5fcaaa3afd
wui/Android.mk
wui/tests/microbench/how_to_run.txt
cf81fdb37ba0608c8743d41b45879aeb74851e1a 20-Jun-2016 Treehugger Robot <treehugger-gerrit@google.com> Merge "DisplayEventDisplatcher: Quiet down dispatcher Vsync pulse messages"
cb96c826f3bfbe85ca7359908fb2f6f1362bd803 18-Jun-2016 John Reck <jreck@google.com> Merge \\\"Avoid re-calculating vsync mid-frame\\\" into nyc-dev am: fc275d244e am: cb0649f72b
am: a32df88d7d

Change-Id: Ica67f2cf6e78bdde5170e47ef6fb150f234a47cf
2d30d672499a61287b6e20cf3065eee4ec2bc9ea 18-Jun-2016 John Reck <jreck@google.com> Merge \"Avoid re-calculating vsync mid-frame\" into nyc-dev
am: fc275d244e

Change-Id: I295b6e60a7b2fdcdce3692e74fe54755845132e0
f5159155d0df0a5ff5f471146a5779e675d3a83d 18-Jun-2016 John Reck <jreck@google.com> Merge \"DO NOT MERGE Move SurfaceView offscreen if the app stops drawing it\" into nyc-dev
am: d11b5e6661

Change-Id: I1caf2fbac785c68c6afeb61b60493e728a83a670
a32df88d7d2f344d170608966dee661d258163dc 18-Jun-2016 John Reck <jreck@google.com> Merge \\"Avoid re-calculating vsync mid-frame\\" into nyc-dev am: fc275d244e
am: cb0649f72b

Change-Id: I7cc9443c1ab3e876daa3aeecbcb9a41085f359af
d11b5e6661ba922cf7b4e02cf72373ea634bb8fe 18-Jun-2016 TreeHugger Robot <treehugger-gerrit@google.com> Merge "DO NOT MERGE Move SurfaceView offscreen if the app stops drawing it" into nyc-dev
cb0649f72b8ef8bfe57c7159bb4f32134f0f709d 18-Jun-2016 John Reck <jreck@google.com> Merge \"Avoid re-calculating vsync mid-frame\" into nyc-dev
am: fc275d244e

Change-Id: Ic46d2d9627c4dcbd345b49f01af0bf3b8247259c
9b24bb24c2d8e8389a141006afb839309c96a851 18-Jun-2016 Sergei Vasilinetc <sergeyv@google.com> Merge "HWUI: add leak check for macrobench"
29d562fa01c32b620d5672a122d5edafb73eee4f 17-Jun-2016 John Reck <jreck@google.com> Merge \\"Move SurfaceView offscreen if the app stops drawing it\\" into nyc-mr1-dev am: e66dedf35b
am: 61513724f0

Change-Id: Ic02576c35007d6aaaa8807c529ab54717d2740a7
7dc370bfe3223dfbcb368e0006c688dfd668ab01 17-Jun-2016 sergeyv <sergeyv@google.com> HWUI: add leak check for macrobench

Change-Id: Id2037921fdbe599b3c722f2e1d17b99f3b74361c
wui/Android.mk
wui/tests/common/LeakChecker.cpp
wui/tests/common/LeakChecker.h
wui/tests/common/TestUtils.cpp
wui/tests/macrobench/main.cpp
wui/tests/unit/main.cpp
0825164007d429729a8e272aa2c0de37ceb317f2 17-Jun-2016 John Reck <jreck@google.com> Merge \\\\"Performance Optimization: Align texture dirty rect\\\\" am: 4e6a73c16a am: ec45adde70 am: 89132e094f
am: 8ef6b2e628

Change-Id: I46613fa164ab541a313abeadd2b2c4a3b48aad50
501ff9acfe9dd656c1fb6d82ec0533c3244fd88b 17-Jun-2016 John Reck <jreck@google.com> Avoid re-calculating vsync mid-frame

Fixes: 29072773

By using computeFrameTime AnimationContext would
potentially end up modifying the latest vsync if
a very-slow frame was received from the UI thread.

This could potentially desync animations that were
RT & UI thread 'synchronized', but more significantly
it would confuse the swap chain which tries to only
draw one frame per vsync causing unneccessary frame
drops.

Change-Id: Ibd2ec3157ce32fee1eec8d56837c45a35e622895
wui/AnimationContext.cpp
wui/renderthread/TimeLord.cpp
wui/renderthread/TimeLord.h
34bf49e4de4c1994b5d9c19166606bc9b7ad1b9c 17-Jun-2016 John Reck <jreck@google.com> DO NOT MERGE Move SurfaceView offscreen if the app stops drawing it

Bug: 29360411
Change-Id: Iefb9d7a9dafb34a2b4f79130a2a8b5a7cf7de906
(cherry picked from commit aa6e84f21ddf89ea649a3f00044bc23adfe86978)
wui/RenderNode.cpp
wui/RenderNode.h
61513724f075aa8e4a1dfc04fa15aca7f8359365 17-Jun-2016 John Reck <jreck@google.com> Merge \"Move SurfaceView offscreen if the app stops drawing it\" into nyc-mr1-dev
am: e66dedf35b

Change-Id: I3d070161a4bdacd0cdcf2e61f026f9fffe15890e
aa6e84f21ddf89ea649a3f00044bc23adfe86978 17-Jun-2016 John Reck <jreck@google.com> Move SurfaceView offscreen if the app stops drawing it

Bug: 29360411
Change-Id: Iefb9d7a9dafb34a2b4f79130a2a8b5a7cf7de906
wui/RenderNode.cpp
wui/RenderNode.h
99a8e2faac20b3480ada3e9ded7af136640127ce 17-Jun-2016 Seigo Nonaka <nona@google.com> Merge "Follow the minikin namespace changes"
83b2cb1304818a2c2f69ee1f8c0f6a9b4a29fdac 17-Jun-2016 Sergei Vasilinetc <sergeyv@google.com> Merge "Test scene that mocks list view with text items faded on left edge."
06a62f6f5379aa5f11f6da3e7ee066e9f640b91a 16-Jun-2016 sergeyv <sergeyv@google.com> Test scene that mocks list view with text items faded on left edge.

Change-Id: I6159f02fa511241beaff4f0eb605c4f0bee360d1
wui/Android.mk
wui/tests/common/TestListViewSceneBase.cpp
wui/tests/common/TestListViewSceneBase.h
wui/tests/common/scenes/ListOfFadedTextAnimation.cpp
wui/tests/common/scenes/ListViewAnimation.cpp
8ef6b2e628a14db8f191dda6fbbf5a9360dde854 16-Jun-2016 ywen <ywen@codeaurora.org> Merge \\\"Performance Optimization: Align texture dirty rect\\\" am: 4e6a73c16a am: ec45adde70
am: 89132e094f

Change-Id: I198fc7403ad5e42dbb0caaac33185c8169b3aebc
89132e094f23d7086d4a36fc58ac469a1ebb59f3 16-Jun-2016 John Reck <jreck@google.com> Merge \\"Performance Optimization: Align texture dirty rect\\" am: 4e6a73c16a
am: ec45adde70

Change-Id: Ice5c2f216dab71fe26b07f9299f8c4300b80f665
ec45adde7096e9e4a69d62e21d67d6062fc43a75 16-Jun-2016 ywen <ywen@codeaurora.org> Merge \"Performance Optimization: Align texture dirty rect\"
am: 4e6a73c16a

Change-Id: I2bafdfadd3d6ff88be44475f77158236015acfde
4e6a73c16ab35c6a8d7f524fa2dad6b8b822d7a9 16-Jun-2016 John Reck <jreck@google.com> Merge "Performance Optimization: Align texture dirty rect"
efeda4694b023a65950c9b27f5374a11f47a5ba6 16-Jun-2016 John Stultz <john.stultz@linaro.org> DisplayEventDisplatcher: Quiet down dispatcher Vsync pulse messages

My logcat is packed with these dispatcher vsync pulse messages
that really don't seem to be describing an error case (though
maybe I'm wrong?).

So quiet it down a bit and set the loglevel to verbose.

Change-Id: Ic4359f64f9cecfc1ffe49275f5f63327ba1b6f1d
Signed-off-by: John Stutlz <john.stultz@linaro.org>
ndroidfw/DisplayEventDispatcher.cpp
02e68a161900f73c9a8ad040b3c65081b901519d 16-Jun-2016 Adam Lesinski <adamlesinski@google.com> Merge \\\"ResourcesManager: Allow managed addition of library asset paths\\\" into nyc-dev am: 464bda8a2b am: c3ab1b7c0a
am: f4152a9c7e

Change-Id: I2b3190f567f62bfaeed54ec6047cfd42bcd246e8
f4152a9c7ecdf9ef392df5b96d35fc928d6a3090 16-Jun-2016 Adam Lesinski <adamlesinski@google.com> Merge \\"ResourcesManager: Allow managed addition of library asset paths\\" into nyc-dev am: 464bda8a2b
am: c3ab1b7c0a

Change-Id: I6d268a2d0871de19a57358ff7755c525906aae1c
1dda5b39d46104cd592b5e1f66000fde0c2d7af6 16-Jun-2016 Adam Lesinski <adamlesinski@google.com> Merge \"ResourcesManager: Allow managed addition of library asset paths\" into nyc-dev
am: 464bda8a2b

Change-Id: I0609c73c4f36b48970bba83b6ea5bd95e6c2d956
c3ab1b7c0ac255d26545a44b47d50de5b1c90ded 16-Jun-2016 Adam Lesinski <adamlesinski@google.com> Merge \"ResourcesManager: Allow managed addition of library asset paths\" into nyc-dev
am: 464bda8a2b

Change-Id: I352c56482aca030efab49ca39301679b51e44e05
464bda8a2bd4ec61ec0ac9ba1e9a90ca4c5f8890 16-Jun-2016 Adam Lesinski <adamlesinski@google.com> Merge "ResourcesManager: Allow managed addition of library asset paths" into nyc-dev
25f48886b2bc2f4edc65d80ff836561853b7ed50 14-Jun-2016 Adam Lesinski <adamlesinski@google.com> ResourcesManager: Allow managed addition of library asset paths

This allows WebView to add itself to the ResourcesManager and
remain their even after configuration changes and multi-window
changes.

Bug:29112218
Change-Id: I2cb131ae2c61fb58c48babafdd46c1882be96aa9
ndroidfw/ResourceTypes.cpp
7e5f96f1a37e51164a594930ecc862a94cc8c231 14-Jun-2016 Roozbeh Pournader <roozbeh@google.com> Move matching Tagalog and Filipino to ResourceTypes.cpp

Previously, if a mix of "fil" and "tl" resources existed in Resources
(from mixing resources from libraries for example), only resources
from one or the other would be chosen, resulting in default resources
getting surprisingly used. Now, we resolve the equivalent languages
at a per-resource levels (breaking ties for the identical code).

Also, previously if both "tl" and "fil" resources were present in
assets, getLocales() could return a list with duplicate locales.
This change removes Filipino duplicates in the return value of
AssetManager::getLocales().

Finally, there was a bug in the replacement of "tl" with "fil" that
considered any locale starting with the letter "tl" to be Tagalog.
This failed in case of various languages, including Klingon ("tlh")
and Tlingit ("tli"). It's now fixed.

Bug: 29073000
Change-Id: I0e8b9ae337ced2e640a2575897948c4c5ca307d3
ndroidfw/AssetManager.cpp
ndroidfw/ResourceTypes.cpp
ndroidfw/tests/ConfigLocale_test.cpp
229cad0ab219289adf34a8f40c3237b688b6a764 15-Feb-2016 ywen <ywen@codeaurora.org> Performance Optimization: Align texture dirty rect

Align x offset and width to 32, y offset and height to 4.
It improves the font texture upload performance.

Change-Id: I967eeed90658f2ce1eb08cb2740d5dc34c72f40b
wui/font/CacheTexture.cpp
21a7b6e8e36dc9d4a163d809f9cdccb867e9b19c 14-Jun-2016 John Reck <jreck@google.com> Merge \\\"Redraw if dirty during stopped when resumed\\\" into nyc-dev am: 5b4ff21a74 am: fc4c59a10c
am: 6c3281a7c7

Change-Id: I67192e2450293a6520a30ed78c8381b89558841b
6c3281a7c7a2d57ff8de89dcad1ab62e34bf0d5d 14-Jun-2016 John Reck <jreck@google.com> Merge \\"Redraw if dirty during stopped when resumed\\" into nyc-dev am: 5b4ff21a74
am: fc4c59a10c

Change-Id: Id572ab8137655b8f64e563d78897d2461442dd39
f22f6cf0f36156811b75d3202473dfc35005226c 14-Jun-2016 John Reck <jreck@google.com> Merge \"Redraw if dirty during stopped when resumed\" into nyc-dev
am: 5b4ff21a74

Change-Id: I75235a18c29939b4f221c8af664d5f7218660aed
fc4c59a10cfd3cdbecf83657b74fbcedc70d3ada 14-Jun-2016 John Reck <jreck@google.com> Merge \"Redraw if dirty during stopped when resumed\" into nyc-dev
am: 5b4ff21a74

Change-Id: If4eedb4a4c1ff6d4e96f8b0db4ddd846a2967a9f
5b4ff21a749dbe2e8990fc1000eb1e2694c04e4f 14-Jun-2016 John Reck <jreck@google.com> Merge "Redraw if dirty during stopped when resumed" into nyc-dev
ce3616cf23cd9d32cffee6b2e75f51bff66e10f0 14-Jun-2016 Doris Liu <tianliu@google.com> Merge \\"Test RenderNode\\'s prepareTree when its DL is null and non-null\\" into nyc-mr1-dev am: 3d66bdb56d
am: 33b9430e90

Change-Id: I7da03063523bd731b83a8a412592dec4b30b2fd9
33b9430e908b97296ba98fd90965feb5f3ca68cc 14-Jun-2016 Doris Liu <tianliu@google.com> Merge \"Test RenderNode\'s prepareTree when its DL is null and non-null\" into nyc-mr1-dev
am: 3d66bdb56d

Change-Id: I55aab1c33b1da1b28eb5cb0b9347d7edad5c8666
ff3371e2820c8ef0b806210a0b96a501763bedf5 14-Jun-2016 Doris Liu <tianliu@google.com> Merge \\"Chcek for valid render content before damaging RenderNode for dirty VD\\" into nyc-mr1-dev am: d53dd6fd3f
am: 9559ef45e7

Change-Id: I6c80525dcc5f0cc72a4631246280193b31c4e278
9559ef45e71e51e06874e531364f8e049b56e173 14-Jun-2016 Doris Liu <tianliu@google.com> Merge \"Chcek for valid render content before damaging RenderNode for dirty VD\" into nyc-mr1-dev
am: d53dd6fd3f

Change-Id: If41865d28e7f57258c40c0b087d9f70a823c38e9
a7952b33f6a41f95aa221a0b20d195002aed0144 13-Jun-2016 Doris Liu <tianliu@google.com> Test RenderNode's prepareTree when its DL is null and non-null

BUG: 29320878
Change-Id: I3325e957025d0039faf366144dcd2d95790ccfd1
wui/tests/unit/RenderNodeTests.cpp
07c056d627be315796d53bf07f8e06f449d92668 13-Jun-2016 Doris Liu <tianliu@google.com> Chcek for valid render content before damaging RenderNode for dirty VD

BUG: 29320878
Change-Id: I847d76467bad92c956a4bb7617627983d64e90f9
wui/RenderNode.cpp
306f331f91a86da271ce30d4f14d6badf0d25704 11-Jun-2016 John Reck <jreck@google.com> Redraw if dirty during stopped when resumed

Change-Id: I0034d1da7704de53c4ba3da3e8ef3109445f9e6a
Fixes: 28283031
wui/renderthread/CanvasContext.cpp
wui/renderthread/CanvasContext.h
cbcc3d5c3ade6212e7c48cbf3ef0a79151cc9594 10-Jun-2016 Chris Craik <ccraik@google.com> Merge \\\"Fix framebuffer incomplete errors\\\" into nyc-dev am: 4bcf66030d am: 7156913021
am: 22696fc0e4

Change-Id: Ib824dd0b3df68c37e3fd7ff5613b99d0687add69
22696fc0e477a9de4e9564e72eb256eb62ad09af 10-Jun-2016 Chris Craik <ccraik@google.com> Merge \\"Fix framebuffer incomplete errors\\" into nyc-dev am: 4bcf66030d
am: 7156913021

Change-Id: I7f01add5270c4979a189b03feed2aea0d97fa819
bc640cb016133f6ca489504de851703b2e57fbfb 10-Jun-2016 Chris Craik <ccraik@google.com> Merge \"Fix framebuffer incomplete errors\" into nyc-dev
am: 4bcf66030d

Change-Id: If578de7d7ea10cceb0e19eb68e305432e4177d04
715691302185d12bcbb2769715a536cb22581c5b 10-Jun-2016 Chris Craik <ccraik@google.com> Merge \"Fix framebuffer incomplete errors\" into nyc-dev
am: 4bcf66030d

Change-Id: I478d99bc0b1f1f10fef38505282711e95b7f5a09
ae1aa85d0c7305bb621f1f8003bd674285aa3b63 09-Jun-2016 Seigo Nonaka <nona@google.com> Follow the minikin namespace changes

Bug: 29233740
Change-Id: I0ec7c5c88e64daa626751d3a03e24b9c36521c17
wui/hwui/Canvas.cpp
wui/hwui/MinikinSkia.cpp
wui/hwui/MinikinSkia.h
wui/hwui/MinikinUtils.cpp
wui/hwui/MinikinUtils.h
wui/hwui/Paint.h
wui/hwui/PaintImpl.cpp
wui/hwui/Typeface.cpp
wui/hwui/Typeface.h
wui/tests/common/scenes/GlyphStressAnimation.cpp
wui/tests/unit/RecordingCanvasTests.cpp
d4fe4d3b30aaefcaaae6a6d1b8dc4bf59e034768 10-Jun-2016 Chris Craik <ccraik@google.com> Fix framebuffer incomplete errors

bug:29127615

Primarily fixes case where 0 dimensioned layers could be
created/updated. Additionally, adds more logging in incomplete
framebuffer cases, if they still occur.

Change-Id: Ib90dbbafd6905aca3c8f46e64064e13a308f713d
wui/Android.mk
wui/BakedOpRenderer.cpp
wui/FrameBuilder.cpp
wui/RenderNode.cpp
wui/RenderProperties.h
wui/tests/unit/RenderPropertiesTests.cpp
7da4903bf98892d216eef68561746bf84c967d20 10-Jun-2016 Doris Liu <tianliu@google.com> Merge changes from topic \'VectorDrawable polishing cherrypicks from master\' into nyc-mr1-dev
am: ea06280b3e

Change-Id: I8d5a26b50f6737964047d06e5e27abbdc4ba6381
09087eaac9c0bf0ee61dcb4c78b2d32587635e14 09-Jun-2016 Doris Liu <tianliu@google.com> Merge \"Handle hidden RT VectorDrawable animators\" into nyc-mr1-dev
am: 3f6a95283a

Change-Id: I909f3c33690fcb932f1b751def1837d82adb28f4
c9493879d7b38b9d0b5b09aa3760966a3ca33eac 03-Jun-2016 Doris Liu <tianliu@google.com> Support Keyframe definition for AVD on RT

BUG: 27441613
Change-Id: Iece386f65f3704d1b7caa2b3690a8d3048ccf6e2
wui/PropertyValuesHolder.cpp
wui/PropertyValuesHolder.h
718cd3eb70703c43f29ca37907bbf0e153d8cca0 18-May-2016 Doris Liu <tianliu@google.com> Handle hidden RT VectorDrawable animators

This CL changes the target of VD specific animators to VectorDrawable,
instead of RenderNode. The benefit of doing so is that animators can
now detect whether the animation is meaningful by checking whether
their VD target is in the display list. If not, that means the VD is
not drawing for the current frame, in which case we can be smarter
and more power efficient by removing the animator from the list and
posting a delayed onFinished listener callback.

By setting VD as the animation target, when an ImageView decides to
update its drawable from one AVD to something else, we'll be able
to detect that the previous AVD is no longer in the display list,
and stop providing animation pulse to the stale AVD, which is
something we couldn't do previously. This change also
handles the case where one AVD instance could be drawn in two
different views.

Bug: 27441375
Change-Id: Iaad1ed09cfd526276b95db0dd695275c28e074e8
wui/AnimationContext.h
wui/Animator.cpp
wui/Animator.h
wui/DisplayList.cpp
wui/DisplayList.h
wui/DisplayListCanvas.cpp
wui/PropertyValuesAnimatorSet.cpp
wui/PropertyValuesAnimatorSet.h
wui/RecordingCanvas.cpp
wui/RenderNode.cpp
wui/VectorDrawable.h
wui/renderthread/CanvasContext.cpp
44d6e652c840e4418c0cdccfadb9f8375522430f 09-Jun-2016 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Remove Pointer Capture API"
7e1d49326719076401b43b28649a827478ea6487 09-Jun-2016 Doris Liu <tianliu@google.com> Merge "Support Keyframe definition for AVD on RT"
a6b967cfc54408f6ee78ae0e4695eca6efd62e89 03-Jun-2016 Doris Liu <tianliu@google.com> Support Keyframe definition for AVD on RT

BUG: 27441613
Change-Id: Iece386f65f3704d1b7caa2b3690a8d3048ccf6e2
wui/PropertyValuesHolder.cpp
wui/PropertyValuesHolder.h
93b5f434a4bc21220eed002697506854684dc019 16-May-2016 Michael Wright <michaelwr@google.com> Remove Pointer Capture API

The underlying implementation needs to be completely rethought. If a
process crashed while you were in pointer capture mode, you were
pretty much stuck in it. If the mouse happened to move outside of
your bounds right before you called the API, you'd never actually get
an event (whatever it was hovering over would). There's no easy way
for the system to tell you when you enter or exit this mode because
it doesn't actually track who the current request is from.

These are all solvable, but not in the N time frame. Maybe next time.

Bug: 26830970
Change-Id: I899649594c7ca8db5962fcdaa71c5b21d3aa42c3
nput/PointerController.cpp
nput/PointerController.h
e051f6f1fdb5e21cbed394d29dfcab5c642e4129 13-May-2016 Michael Wright <michaelwr@google.com> Rename PointerIcon and Pointer Capture APIs

This is a response to API council feedback.

Bug: 26830970
Change-Id: I1be541a53e3943d06640169671824f7daea15462
nput/PointerController.cpp
nput/PointerController.h
91ae5e8209ae15fca868f4392818367fe5f6f791 02-Jun-2016 sergeyv <sergeyv@google.com> Merge "HWUI: do not call glCopyTexSubImage2D on empty area." into nyc-dev am: e4e240f13f am: e136aba4ad
am: e105927fa4

* commit 'e105927fa4f71e74051bf13f87186c2905a14a4b':
HWUI: do not call glCopyTexSubImage2D on empty area.

Change-Id: I5fe170f0ec7ac82f4502b545fb756cc9df51f0fb
e136aba4adcef06eea4d237eb18b031704c37f59 02-Jun-2016 sergeyv <sergeyv@google.com> Merge "HWUI: do not call glCopyTexSubImage2D on empty area." into nyc-dev
am: e4e240f13f

* commit 'e4e240f13f6c64049ef346b27d1cf78699fa800e':
HWUI: do not call glCopyTexSubImage2D on empty area.

Change-Id: Ica6dcf88c3fea43f07352f460343d97599280cdc
e4e240f13f6c64049ef346b27d1cf78699fa800e 02-Jun-2016 Sergei Vasilinetc <sergeyv@google.com> Merge "HWUI: do not call glCopyTexSubImage2D on empty area." into nyc-dev
ab3f8c2e3277af88935c8fa3bb7a36470d2b0116 01-Jun-2016 sergeyv <sergeyv@google.com> HWUI: do not call glCopyTexSubImage2D on empty area.

Previous check .isEmpty() is not sufficient, because getWidth() may have
value 0.5, so technically it is not empty, but when this size is passed
to texture calls it is converted to uint_32 and it becomes zero.

bug:28941093
Change-Id: Ia7c2bf0340466d5376f235fb5da54ad2ddfa0a03
wui/BakedOpRenderer.cpp
9751618c873f6a0be51f40c6b644e12825341fe7 01-Jun-2016 sergeyv <sergeyv@google.com> Merge "HWUI: do nothing in case of empty layer" into nyc-dev am: 21a608f27f am: 6544a0e2e2
am: caeade2914

* commit 'caeade2914a4f5366ed89c3e8ba7f188434465c2':
HWUI: do nothing in case of empty layer

Change-Id: I77de8747f9c7bed869cb1e8a2533e27f01cfe33f
6544a0e2e255b676770d64fa89f4f616a7021e63 01-Jun-2016 sergeyv <sergeyv@google.com> Merge "HWUI: do nothing in case of empty layer" into nyc-dev
am: 21a608f27f

* commit '21a608f27f1f7b9c0fcfbb982f290fed29cc1817':
HWUI: do nothing in case of empty layer

Change-Id: I264e20e2290f474636a21eb7322377e308d316c2
21a608f27f1f7b9c0fcfbb982f290fed29cc1817 01-Jun-2016 Sergei Vasilinetc <sergeyv@google.com> Merge "HWUI: do nothing in case of empty layer" into nyc-dev
aebbbef5658fea13b06586d39adca351135d9edb 31-May-2016 sergeyv <sergeyv@google.com> HWUI: do nothing in case of empty layer

bug:28862058
Change-Id: I8e09a5c33d0eb00a829be4df706dab49cad48b1e
wui/BakedOpDispatcher.cpp
wui/tests/unit/BakedOpDispatcherTests.cpp
0794f537daa6422566124bdcf2e11dcc86f2f1f4 28-May-2016 Doris Liu <tianliu@google.com> Merge "Copy native tree's property when mutate vector drawable"
8fc70289b5cf8a0f93a4dd02cf9b61243b3cda3d 28-May-2016 Doris Liu <tianliu@google.com> Merge "Copy native tree\'s property when mutate vector drawable" into nyc-dev
am: fceaa60e24

* commit 'fceaa60e249575021e41b873673e12d9b4123fbe':
Copy native tree's property when mutate vector drawable

Change-Id: I86969033da46b58268df0ea026749f992068bc2b
028029730bf2d177f84316d2d444d409eba4b6cb 27-May-2016 Doris Liu <tianliu@google.com> Copy native tree's property when mutate vector drawable

When mutating vector drawables, we need to not only copy over
the VD tree structure, but also the properties of the VD tree,
such as alpha.

Bug: 28974071
Change-Id: I265e7e3cb92455b876cae248bcb9811230cb34f9
wui/VectorDrawable.cpp
wui/VectorDrawable.h
335d7d174464ea3fc2d058dcff6e436df1cf0fd9 27-May-2016 Doris Liu <tianliu@google.com> Copy native tree's property when mutate vector drawable

When mutating vector drawables, we need to not only copy over
the VD tree structure, but also the properties of the VD tree,
such as alpha.

Bug: 28974071
Change-Id: If793f5f2b6e116472a1c6da0fb60d8278a78b03f
wui/VectorDrawable.cpp
wui/VectorDrawable.h
e221f808e54fe45a4b44099f0a2b5a998d604672 26-May-2016 John Reck <jreck@google.com> Merge "Add lock-clocks script for bullhead/angler"
f143417bab8ed47981e1833595090812943aa772 26-May-2016 Doris Liu <tianliu@google.com> Merge "Handle hidden RT VectorDrawable animators"
67ce99b66ebc816ae8bbc222db8f3695fb15495b 18-May-2016 Doris Liu <tianliu@google.com> Handle hidden RT VectorDrawable animators

This CL changes the target of VD specific animators to VectorDrawable,
instead of RenderNode. The benefit of doing so is that animators can
now detect whether the animation is meaningful by checking whether
their VD target is in the display list. If not, that means the VD is
not drawing for the current frame, in which case we can be smarter
and more power efficient by removing the animator from the list and
posting a delayed onFinished listener callback.

By setting VD as the animation target, when an ImageView decides to
update its drawable from one AVD to something else, we'll be able
to detect that the previous AVD is no longer in the display list,
and stop providing animation pulse to the stale AVD, which is
something we couldn't do previously. This change also
handles the case where one AVD instance could be drawn in two
different views.

Bug: 27441375
Change-Id: Id4b3b37f28274c917cb9beb9dcd3d1e6991b5c5d
wui/AnimationContext.h
wui/Animator.cpp
wui/Animator.h
wui/DisplayList.cpp
wui/DisplayList.h
wui/DisplayListCanvas.cpp
wui/PropertyValuesAnimatorSet.cpp
wui/PropertyValuesAnimatorSet.h
wui/RecordingCanvas.cpp
wui/RenderNode.cpp
wui/VectorDrawable.h
wui/renderthread/CanvasContext.cpp
f070a3f2f4a714142782c060899dadb5f93ccb82 26-May-2016 John Reck <jreck@google.com> Add lock-clocks script for bullhead/angler

Change-Id: I572a8603368425066c25a4096d09374b177a1be5
wui/tests/scripts/prep_buller.sh
4f6ae7bbaa4654e14d70e9fa503ceb713c90c342 26-May-2016 Michael Wright <michaelwr@google.com> Merge "DO NOT MERGE Remove Pointer Capture API" into nyc-dev
am: c396f0f70e

* commit 'c396f0f70ef40ea0fb42a0872a13f4c4e9a6a5f0':
DO NOT MERGE Remove Pointer Capture API

Change-Id: Iede50a709849ed27cb9723a565b946e00fb23be7
c396f0f70ef40ea0fb42a0872a13f4c4e9a6a5f0 26-May-2016 Michael Wright <michaelwr@google.com> Merge "DO NOT MERGE Remove Pointer Capture API" into nyc-dev
fa29d8c368c9958e577db7487fd121f456ddee41 25-May-2016 John Reck <jreck@google.com> Merge "Merge "Fix a translate issue with saveLayer" into nyc-dev am: f4ae997719 am: e5a3df612a" into nyc-mr1-dev-plus-aosp
am: ebe36fb4f7

* commit 'ebe36fb4f7800ae58777809d765ff207a4c30f8f':
Fix a translate issue with saveLayer

Change-Id: I061f21b1e2ab6764394e9e95d2f2757bb84f6268
55c65e082179fd75bf1a23400c48ebbad9875c44 25-May-2016 John Reck <jreck@google.com> Merge "Fix a translate issue with saveLayer" into nyc-dev am: f4ae997719
am: e5a3df612a

* commit 'e5a3df612adb24dbf89ddde96a75f75ff5ffd380':
Fix a translate issue with saveLayer

Change-Id: Id3051e9bf217d3d24d2662bde0f7a1863efa8c59
c57a36a634106603161d3840b0af504c5be807bc 25-May-2016 John Reck <jreck@google.com> Merge "Fix a translate issue with saveLayer" into nyc-dev
am: f4ae997719

* commit 'f4ae9977190d4d406ec5e2aaddb78ea84873f1f0':
Fix a translate issue with saveLayer

Change-Id: I5ae92450069533898880ab728532657da1dbc399
c9bb1a38d356087a4e5578307a6839eac0a1e6ee 25-May-2016 John Reck <jreck@google.com> Fix a translate issue with saveLayer

Bug: 28667141

saveLayer clips the layer to the size it needs to
be and will translate content if necessary, but
the drawLayerOp that results from that was not
translated to handle the shifted draw content.

This fixes that

Change-Id: I3c9ffd5d0282fa1b958bced94c25e9744281e9be
wui/FrameBuilder.cpp
wui/OpDumper.cpp
wui/OpDumper.h
wui/tests/unit/FrameBuilderTests.cpp
6a56d2b1206b91d7307a0355113753a99c46b5f5 24-May-2016 Chih-Hung Hsieh <chh@google.com> Merge "Merge "Merge "Fix misc-macro-parentheses warnings in common_time." am: c49d21f9c4 am: ba11b8e441" into nyc-dev-plus-aosp am: e60c649ada" into nyc-mr1-dev-plus-aosp
am: ce685d90a5

* commit 'ce685d90a53dd47c9c8d02a8ec5fd4fe59afd77e':
Fix misc-macro-parentheses warnings in common_time.

Change-Id: I08ca821a4d6b9295efc1522c558f3449126ef5f3
2473acbc0a907e46b31b26b9c6f84c023ccab023 24-May-2016 Chih-Hung Hsieh <chh@google.com> Merge "Fix misc-macro-parentheses warnings in common_time." am: c49d21f9c4
am: ba11b8e441

* commit 'ba11b8e441ab8637b377183d2f5941fcc0a37717':
Fix misc-macro-parentheses warnings in common_time.

Change-Id: I848549377eb4ad8834a09ef4f12de52d1fb683c3
c49d21f9c4ac128bf150ba7c78c0c416640b8f77 24-May-2016 Treehugger Robot <treehugger-gerrit@google.com> Merge "Fix misc-macro-parentheses warnings in common_time."
c7edbbafea33c30e25decd3e512fe9801fce83b5 21-May-2016 Adam Lesinski <adamlesinski@google.com> Merge "Performance improvements in AssetManager" into nyc-dev am: 3765d34d36 am: 2b798a2344
am: 76308ce86f

* commit '76308ce86f89cf57cd18e0a48a1bf19d669abfcc':
Performance improvements in AssetManager

Change-Id: I893a8a5e7b81f89b48214f2c6f207663d762b717
76308ce86f89cf57cd18e0a48a1bf19d669abfcc 21-May-2016 Adam Lesinski <adamlesinski@google.com> Merge "Performance improvements in AssetManager" into nyc-dev am: 3765d34d36
am: 2b798a2344

* commit '2b798a2344feeeb64b74e8dab4042f7d7f3879ab':
Performance improvements in AssetManager

Change-Id: I01c50ad7695e478f299f497441fdea0ab8e24116
bffbb765d70deb832a4181b8d64e7b68991c147f 21-May-2016 Adam Lesinski <adamlesinski@google.com> Merge "Performance improvements in AssetManager" into nyc-dev
am: 3765d34d36

* commit '3765d34d364e76817e9dbea55819df86d858df10':
Performance improvements in AssetManager

Change-Id: Id552f8bc9753f2d336ab2e9cf1f05d5e5b2a2409
76da37e1cf5c1381d9ccbaca86463fca52bd40f5 20-May-2016 Adam Lesinski <adamlesinski@google.com> Performance improvements in AssetManager

Change the implementation of getLocales() to iterate the set of
configurations using a templated method, instead of using the result
of getConfigurations().

Also remove the check for AndroidManifest.xml when adding an asset path.
This is unneccessary.

Bug:28625993
Change-Id: I16de5da598d0c371421d1dc8eee054dce9baf53a
ndroidfw/AssetManager.cpp
ndroidfw/ResourceTypes.cpp
1ec2fd72cea31d46cca6e8f6686115fabe885664 20-May-2016 The Android Automerger <android-build@android.com> stephenli@ manually merge many commits up to '032dcff'

* commit '032dcff': (22 commits)
Remove outdated google services links.
Fix misc-macro-parentheses warnings in services jni.
Fix misc-macro-parentheses warnings in hwui and graphic jni.
Fix misc-macro-parentheses warnings in aapt and androidfw.
docs: Update to column widths for Complications table
Fix a11y crash when window layer isn't unique.
Never set resized while not drag resizing for pinned stack.
While turning OFF do not honor ON requests.
Fix GATT autoConnect race condition
Fix GATT autoConnect race condition
Fix RTL issue in delete dialog.
Incorporate feedback on new wallpaper-related APIs
Mapping up/down of legacy Gps vs. Gnss Status
Fixed a bug where the chronometer was invisible
Fixed a bug where the chronometer wasn't updating the time
Update BlockedNumberContract javadocs.
[RenderScript] Fix ScriptIntrinsicBlur documentation.
Update documentation about copyTo and copyFrom.
DO NOT MERGE Cherry pick libpng usage fixes
Start the Wear Time System Service with SystemServer
...
d5bb8487d58b168543d6504504d8e89e062a6b8b 20-May-2016 Adam Lesinski <adamlesinski@google.com> Merge "Fix misc-macro-parentheses warnings in aapt and androidfw." am: 6f4b566169
am: f55c9f7aa6

* commit 'f55c9f7aa64660712242705d4e5e89e2191bbf69':
Fix misc-macro-parentheses warnings in aapt and androidfw.

Change-Id: I23f28430cf242be3f77926016626ea3e5705d4ec
6f4b5661696355d230c515a45aca2dddd8fe99b1 20-May-2016 Adam Lesinski <adamlesinski@google.com> Merge "Fix misc-macro-parentheses warnings in aapt and androidfw."
0a870594527a3af036b1238983abfe4e6118178b 20-May-2016 Chih-Hung Hsieh <chh@google.com> resolve merge conflicts of 404e2b2 to nyc-dev-plus-aosp

Change-Id: I3c486e83a3f2b27ee0e6bfe4e3bba3df3af758a5
cef190de850f163dd4b95d667a8d46d46e860363 20-May-2016 Chih-Hung Hsieh <chh@google.com> Fix misc-macro-parentheses warnings in hwui and graphic jni.

Bug: 28705665
Change-Id: I7d1eb38a713fe6cc7f41a3cc3f2f9d0aa0114b2c
wui/DisplayListOp.h
wui/Matrix.cpp
wui/OpenGLRenderer.cpp
wui/Properties.h
wui/RenderProperties.h
wui/font/FontUtil.h
wui/utils/LinearAllocator.cpp
2bd7a3efc408e9102f586428ce9ec6e4186e05e2 20-May-2016 Chih-Hung Hsieh <chh@google.com> Fix misc-macro-parentheses warnings in common_time.

Bug: 28705665
Change-Id: Ibdab4631f0e692b8a291faecdeb4a6062f906ea5
ommon_time/common_time_server_api.cpp
ommon_time/common_time_server_packets.cpp
e819d01e3e120844e95cc4c534382d20d2beb623 20-May-2016 Chih-Hung Hsieh <chh@google.com> Fix misc-macro-parentheses warnings in aapt and androidfw.

Bug: 28705665
Change-Id: Iac353e66718aadad384183cf300330695df25909
ndroidfw/ResourceTypes.cpp
1831ca8f04e117a49227e1b3dc0c8ba1dde06cd5 19-May-2016 Michael Wright <michaelwr@google.com> Merge "DO NOT MERGE Rename PointerIcon and Pointer Capture APIs" into nyc-dev
am: a1e0cebf3a

* commit 'a1e0cebf3a18ac097d370e21d698e079f974bfff':
DO NOT MERGE Rename PointerIcon and Pointer Capture APIs

Change-Id: I20532a3148a99d4ea91ba7dc050f8669d5f19400
a1e0cebf3a18ac097d370e21d698e079f974bfff 19-May-2016 TreeHugger Robot <treehugger-gerrit@google.com> Merge "DO NOT MERGE Rename PointerIcon and Pointer Capture APIs" into nyc-dev
0353c378badf58c7385bd77f4bd019c0eb8859d3 17-May-2016 Sergei Vasilinetc <sergeyv@google.com> Merge "Add gmock to hwui library"
8bd5edf804d5995fe266f3f612b70ee0ee104130 14-May-2016 sergeyv <sergeyv@google.com> Add gmock to hwui library

Change-Id: I1dec4cd234e5ee8bb01140b969d0cf817a849047
wui/Android.mk
wui/debug/DefaultGlesDriver.cpp
wui/debug/DefaultGlesDriver.h
wui/debug/FatalBaseDriver.cpp
wui/debug/FatalBaseDriver.h
wui/debug/GlesDriver.cpp
wui/debug/GlesDriver.h
wui/debug/GlesErrorCheckWrapper.cpp
wui/debug/GlesErrorCheckWrapper.h
wui/debug/MockGlesDriver.h
wui/debug/NullGlesDriver.cpp
wui/debug/NullGlesDriver.h
wui/debug/ScopedReplaceDriver.h
wui/debug/gles_decls.in
wui/debug/gles_stubs.in
wui/debug/gles_undefine.h
wui/debug/nullgles.cpp
wui/debug/unwrap_gles.h
wui/debug/wrap_gles.cpp
wui/debug/wrap_gles.h
wui/tests/microbench/main.cpp
wui/tests/unit/MeshStateTests.cpp
wui/tests/unit/main.cpp
778e3b91acad6da04341d439f0c66a4fd09def4f 16-May-2016 Michael Wright <michaelwr@google.com> DO NOT MERGE Remove Pointer Capture API

The underlying implementation needs to be completely rethought. If a
process crashed while you were in pointer capture mode, you were
pretty much stuck in it. If the mouse happened to move outside of
your bounds right before you called the API, you'd never actually get
an event (whatever it was hovering over would). There's no easy way
for the system to tell you when you enter or exit this mode because
it doesn't actually track who the current request is from.

These are all solvable, but not in the N time frame. Maybe next time.

Bug: 26830970
Change-Id: I03efd63c499b86dc278491ca3284566c1965581f
nput/PointerController.cpp
nput/PointerController.h
f9d9ce7705475874c82af04eb9b208a7fb556792 13-May-2016 Michael Wright <michaelwr@google.com> DO NOT MERGE Rename PointerIcon and Pointer Capture APIs

This is a response to API council feedback.

Bug: 26830970
Change-Id: Ia2d284b5c1ab8365bedfdc37d129be4b8146036b
nput/PointerController.cpp
nput/PointerController.h
f6856b0f345797ecf988fdbfaa9b4da1266f71d2 17-May-2016 Chris Craik <ccraik@google.com> Merge "Fix hw layer overdraw/update visualization" into nyc-dev am: 189e3e5ec5 am: bd2edfca03
am: f075b05d5a

* commit 'f075b05d5a8516ff98d9c25c1b5ac307fdfc234a':
Fix hw layer overdraw/update visualization

Change-Id: I70968a90dbc3ea13654b7dbb8065d5a577a0f9ae
bd2edfca03bf09143a941c3859c4fbd3f8115aba 17-May-2016 Chris Craik <ccraik@google.com> Merge "Fix hw layer overdraw/update visualization" into nyc-dev
am: 189e3e5ec5

* commit '189e3e5ec5b698f1062fb98692fa75d3750148e0':
Fix hw layer overdraw/update visualization

Change-Id: Ic4c49b25e0d1709d34974adb828c3ab4644415e5
189e3e5ec5b698f1062fb98692fa75d3750148e0 17-May-2016 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Fix hw layer overdraw/update visualization" into nyc-dev
37413289478a965336239c731ebfea37ac4dde28 13-May-2016 Chris Craik <ccraik@google.com> Fix hw layer overdraw/update visualization

Fixes: 28748255

Change-Id: I83b531cdf5e4407fd17edd72d96e6189924926fa
wui/Android.mk
wui/BakedOpDispatcher.cpp
wui/BakedOpRenderer.cpp
wui/FrameBuilder.cpp
wui/renderstate/OffscreenBufferPool.h
wui/tests/common/TestUtils.h
wui/tests/unit/BakedOpDispatcherTests.cpp
wui/tests/unit/TestUtilsTests.cpp
76e990374900aa37050a5a757debf3c95490dcf1 14-May-2016 Chris Craik <ccraik@google.com> Merge "Fix Skia filter behavior test" into nyc-dev am: 0c5bd7dffe am: de6400a282
am: ec51ed4aa7

* commit 'ec51ed4aa774fddb8d8741aaf627730a19fa675d':
Fix Skia filter behavior test

Change-Id: I832a61ef95dcc998477b10bffa7e3155acc43066
ec51ed4aa774fddb8d8741aaf627730a19fa675d 14-May-2016 Chris Craik <ccraik@google.com> Merge "Fix Skia filter behavior test" into nyc-dev am: 0c5bd7dffe
am: de6400a282

* commit 'de6400a2824b4396e971fc5105f6dc29b97cebc7':
Fix Skia filter behavior test

Change-Id: Ia19db77125a90b546e9766e070917f562c08d49e
0cf377c6ae8877af10b4ccdf508a2d84da31fd26 14-May-2016 Chris Craik <ccraik@google.com> Merge "Fix Skia filter behavior test" into nyc-dev
am: 0c5bd7dffe

* commit '0c5bd7dffec8e5a5f21eed79dc827ef809048c2a':
Fix Skia filter behavior test

Change-Id: I505e0cf42d47afed31dda7dfcae8a890f17f2dff
36ce80d5301664b4839ebd2f4570f062cbabf862 13-May-2016 Chris Craik <ccraik@google.com> Fix Skia filter behavior test

Fixes: 28751534

Change-Id: Ie5e2ee946b21702539fc0cc7358d0f9550e7d095
wui/tests/unit/SkiaBehaviorTests.cpp
dcf3203ca6f9acf0923c19dea17d5e50067df2ce 12-May-2016 John Reck <jreck@google.com> Add a benchmark

Change-Id: I0238d79372bc4b2d2f265c026d172b37e3e38c0f
wui/tests/microbench/DisplayListCanvasBench.cpp
2173c7536e037740b781f810fa2fc0a82a07cb57 12-May-2016 Sergei Vasilinetc <sergeyv@google.com> Merge "Move gl calls from PatchCache to MeshState"
571e48c4ae383432a072fd4d8d8d653f8718efbc 12-May-2016 sergeyv <sergeyv@google.com> Merge "Merge "Draw textShadow always first." into nyc-dev am: 45d6e79565 am: ac26a7c427" into nyc-mr1-dev-plus-aosp
am: ae8a928350

* commit 'ae8a928350b4abbb2b1b197f0ed9b7a17013f52d':
Draw textShadow always first.

Change-Id: I3cd44d019931d14faace09bb3c5b829449041fe2
fd3744b7d88d0015cfb36be2b485c4b6ba0c1b58 12-May-2016 sergeyv <sergeyv@google.com> Move gl calls from PatchCache to MeshState

bug:27358166
Change-Id: I5f544f497e9480e64faa2ddd369eb16318e82dc3
wui/Caches.cpp
wui/PatchCache.cpp
wui/PatchCache.h
wui/renderstate/MeshState.cpp
wui/renderstate/MeshState.h
da5cbe00ab14149f83d90c54bf679cf5f24c0505 12-May-2016 sergeyv <sergeyv@google.com> Merge "Draw textShadow always first." into nyc-dev am: 45d6e79565
am: ac26a7c427

* commit 'ac26a7c42776e0feb2a30729ba178169e33dc927':
Draw textShadow always first.

Change-Id: I6c5d8f8a5f08359fbd1bd2fe9b9ab152f7465475
db607a6cded8cae1876198ef5f28964dab185eee 11-May-2016 sergeyv <sergeyv@google.com> Merge "Draw textShadow always first." into nyc-dev
am: 45d6e79565

* commit '45d6e7956544051c06a228755b7fd7c179bcdbfe':
Draw textShadow always first.

Change-Id: Ic7b600ef444bf58d37203266f3faede21cd50711
45d6e7956544051c06a228755b7fd7c179bcdbfe 11-May-2016 Sergei Vasilinetc <sergeyv@google.com> Merge "Draw textShadow always first." into nyc-dev
a7a6be1085c8ed62f20749559ea8510b81a012cb 11-May-2016 Tenghui Zhu <ztenghui@google.com> Merge "Turn off some path drawing logs by default"
3727a7fadade6d52188d30d35236d810a638b67e 11-May-2016 Matt Sarett <msarett@google.com> Remove dead code from NinePatch::Draw

This will give me the flexibility to change this API.

Change-Id: I1ee34986e37fffeb03b8a349f29923541f95b593
wui/utils/NinePatchImpl.cpp
284b765e3c1647859d4dac772744e8859c033216 10-May-2016 sergeyv <sergeyv@google.com> Draw textShadow always first.

Interleaving text and shadow rendering resulted in issuing draw commands from FontRenderer::renderDropShadow.

bug: 28528923
Change-Id: Ife2677f58180aaf10ec74d7c6efe5c44fe248daa
wui/BakedOpDispatcher.cpp
wui/tests/unit/BakedOpDispatcherTests.cpp
860f1bce7c2486b9d56dc161eeaf66a7338e12db 11-May-2016 Adam Lesinski <adamlesinski@google.com> Merge "Resource shared libraries: fix theme references" into nyc-dev am: 47521a6631 am: 63d0964fc0
am: 887b2720f2

* commit '887b2720f20bc995236edeace2245ce17ec7e8c0':
Resource shared libraries: fix theme references

Change-Id: Ic06c96bab3d09310c3f27de911b0bc7c5004e5cd
63d0964fc0b638fac1d144ce57a1f2ae5dde8bfd 11-May-2016 Adam Lesinski <adamlesinski@google.com> Merge "Resource shared libraries: fix theme references" into nyc-dev
am: 47521a6631

* commit '47521a66314555e2450192a77e75ccbeb19acbb0':
Resource shared libraries: fix theme references

Change-Id: Ie0265ea7652bb29d017eedae16ecff85c665d71f
8ac51d14b614ba6a12df2ba90d50a01f50d548aa 10-May-2016 Adam Lesinski <adamlesinski@google.com> Resource shared libraries: fix theme references

Theme values that would reference other theme values would not work
if they were declared in a shared library.

We now introduce a parallel resource type to TYPE_DYNAMIC_REFERENCE,
TYPE_DYNAMIC_ATTRIBUTE, which allows us to lookup and resolve
theme value references from shared libraries.

Bug:28687378
Change-Id: I4f2364e3e8b567679f90784fcaaea12b6b05e926
ndroidfw/ResourceTypes.cpp
ndroidfw/tests/ResTable_test.cpp
ndroidfw/tests/data/lib/R.h
ndroidfw/tests/data/lib/lib_arsc.h
ndroidfw/tests/data/lib/res/values/values.xml
6d89da7a91aa837cf7433400020ad32cec946596 05-May-2016 Chris Craik <ccraik@google.com> Merge "Add layer tracing tags in new pipeline" into nyc-dev am: f8892359b0 am: 85bf1a85bd
am: ca4af965e1

* commit 'ca4af965e1dbbc8c01226cc29800ecdcc2739e3a':
Add layer tracing tags in new pipeline

Change-Id: I22b83a2709182951e09236ce4639c4da994e2676
85bf1a85bd694419f005641686bcbe034b4349f4 05-May-2016 Chris Craik <ccraik@google.com> Merge "Add layer tracing tags in new pipeline" into nyc-dev
am: f8892359b0

* commit 'f8892359b0ae07031160a71cf3f7e3a86604c2b1':
Add layer tracing tags in new pipeline

Change-Id: Id77f8234013d6bdbfd75b8fbc6a63b724820fd95
f8892359b0ae07031160a71cf3f7e3a86604c2b1 05-May-2016 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Add layer tracing tags in new pipeline" into nyc-dev
aff230f6f9f9e44a5e111ba3f087d03f7a0e24f3 05-May-2016 Chris Craik <ccraik@google.com> Add layer tracing tags in new pipeline

bug:28596354

Change-Id: I351cb50c8c9ddfc73be73d28a1af94d2a8f9992e
wui/FrameBuilder.cpp
wui/LayerBuilder.cpp
wui/renderstate/OffscreenBufferPool.cpp
b5d88fb974526a2ac929adebdd5b529779908c73 04-May-2016 Chris Craik <ccraik@google.com> Merge "Update nullegl to support swapbuffers with damage"
40205a76aedf7aedfeda0ceab615be7b32dab53d 04-May-2016 Chris Craik <ccraik@google.com> Merge "Use LUT for computing final shadow alpha" into nyc-dev am: b2e36d7939 am: 92e7158f81
am: cd10b8870e

* commit 'cd10b8870ed56f252ad28a7e88bfaebeebbef2d4':
Use LUT for computing final shadow alpha

Change-Id: If999e689416f661107f10c1d5aa0c70bc045c06a
92e7158f81843c23215d55dced1e25f15304eca5 04-May-2016 Chris Craik <ccraik@google.com> Merge "Use LUT for computing final shadow alpha" into nyc-dev
am: b2e36d7939

* commit 'b2e36d7939610de538a6ec95a821b61b365b3073':
Use LUT for computing final shadow alpha

Change-Id: Ia17e3b93e9ade0633aee5a1e9edd60b92dd1e062
b2e36d7939610de538a6ec95a821b61b365b3073 04-May-2016 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Use LUT for computing final shadow alpha" into nyc-dev
63cd1b4d1150e47d1aa9a2124772ecbd223054e4 04-May-2016 Chris Craik <ccraik@google.com> Update nullegl to support swapbuffers with damage

Change-Id: I4bc4682c624c02f51235a3c4a6b4a6d5b17a3b6f
wui/debug/nullegl.cpp
138c21fbec12bead3c7ca1f181c3fd35542ccb00 29-Apr-2016 Chris Craik <ccraik@google.com> Use LUT for computing final shadow alpha

bug:27415250

Significantly reduces shadow fragment shader computation.

Change-Id: Ie9b3c712700754b3734d0ae9cda8751c298fc59e
wui/AmbientShadow.cpp
wui/BakedOpDispatcher.cpp
wui/Caches.cpp
wui/Glop.h
wui/GlopBuilder.cpp
wui/GlopBuilder.h
wui/OpenGLRenderer.cpp
wui/ProgramCache.cpp
wui/SpotShadow.cpp
wui/renderstate/RenderState.cpp
wui/renderstate/TextureState.cpp
wui/renderstate/TextureState.h
02453ecae5ed4c4c594a85bcc5c565ec8fd73815 03-May-2016 Chris Craik <ccraik@google.com> Merge "Add LightingFilter behavior test" into nyc-dev am: 7039adafa9 am: 3a86af812a
am: 2670842b8d

* commit '2670842b8d55c237ec52317fbe3bdd80aa7aeb06':
Add LightingFilter behavior test

Change-Id: I1aa609663d6e1a96758debf9c3500a043eacd681
2670842b8d55c237ec52317fbe3bdd80aa7aeb06 03-May-2016 Chris Craik <ccraik@google.com> Merge "Add LightingFilter behavior test" into nyc-dev am: 7039adafa9
am: 3a86af812a

* commit '3a86af812a217231db210ab1aadcf545a2715ea2':
Add LightingFilter behavior test

Change-Id: Id2d3a6fbb8eccab22b0d57be41f17a19cf18f5c7
f921dfc23d1b1eea4d9480d6a3ac6e9e4bde83a0 03-May-2016 Chris Craik <ccraik@google.com> Merge "Add LightingFilter behavior test" into nyc-dev
am: 7039adafa9

* commit '7039adafa9a99f8eb4f8ccab9a6f9d2208454150':
Add LightingFilter behavior test

Change-Id: Iab2b353423990cfe78c72e980d76ba7fec6b7f7b
7039adafa9a99f8eb4f8ccab9a6f9d2208454150 03-May-2016 Chris Craik <ccraik@google.com> Merge "Add LightingFilter behavior test" into nyc-dev
b494f840e244932e119be13f884f4c29290cd166 03-May-2016 Chih-hung Hsieh <chh@google.com> Merge "Fix google-explicit-constructor warnings."
d53e3bed1ca4a14b2a86d53eaef6969bd043176e 03-May-2016 Chih-Hung Hsieh <chh@google.com> Fix google-explicit-constructor warnings.

Bug: 28341362
Change-Id: I080090d50f1a368a4e7c1a0732297bb6a295e34f
wui/renderthread/CanvasContext.cpp
wui/tests/macrobench/TestSceneRunner.cpp
wui/tests/microbench/TaskManagerBench.cpp
wui/tests/unit/FrameBuilderTests.cpp
wui/tests/unit/RenderNodeTests.cpp
wui/utils/TestWindowContext.cpp
494e6b6e5efbf173d873e12e50dfc1d463eafcb1 03-May-2016 Doris Liu <tianliu@google.com> Merge "Count native allocation for VD against Java heap" into nyc-dev am: 6543533f29 am: 031fc2de5c
am: 5b41913606

* commit '5b41913606b4a134b2e852b8e1dceb6d90f10513':
Count native allocation for VD against Java heap

Change-Id: Ib18ac599272de1cd9177d841e3146d3d67379c5d
031fc2de5caa949b1e1f2b327339dcc61e8643af 03-May-2016 Doris Liu <tianliu@google.com> Merge "Count native allocation for VD against Java heap" into nyc-dev
am: 6543533f29

* commit '6543533f29d869d5cbbc1c403e4e0ed219fcc300':
Count native allocation for VD against Java heap

Change-Id: I2bc21681d07d759f7fd668ec286f719b7ea6707a
6543533f29d869d5cbbc1c403e4e0ed219fcc300 03-May-2016 Doris Liu <tianliu@google.com> Merge "Count native allocation for VD against Java heap" into nyc-dev
3f0154833a85e946aba9f2862a9511103d4fb60d 03-May-2016 John Reck <jreck@google.com> Merge "Remove high-overhead low-signal trace section" into nyc-dev am: a2c10caef2 am: 750600e0d0
am: 6eac229e9c

* commit '6eac229e9c5b878d1ad071813216f19fab1c816d':
Remove high-overhead low-signal trace section

Change-Id: I439a5b116fdb2db2dd74d408132a81d53ef72db4
6eac229e9c5b878d1ad071813216f19fab1c816d 03-May-2016 John Reck <jreck@google.com> Merge "Remove high-overhead low-signal trace section" into nyc-dev am: a2c10caef2
am: 750600e0d0

* commit '750600e0d04208c77cf71f7a4f09c9dd314c7af3':
Remove high-overhead low-signal trace section

Change-Id: I0830a655744f6571564253b2b8849950c6e4d671
d023da1fa9ea0d7deab38f8cf0be6a60e901dfb7 03-May-2016 John Reck <jreck@google.com> Merge "Remove high-overhead low-signal trace section" into nyc-dev
am: a2c10caef2

* commit 'a2c10caef20bbdb447844c09a822073fd0c9d62f':
Remove high-overhead low-signal trace section

Change-Id: I26b96da6906374c7ed86b93d8e0594a2e7066f9d
ded1d3c45be0307b175bd0cace12749e39814b84 03-May-2016 John Reck <jreck@google.com> Remove high-overhead low-signal trace section

Bug: 28519669

This trace tag makes shadows look way more expensive
than they actually are, particularly troublesome
when tracing things with large number of shadows.

Change-Id: Ib6558b1388edd4b006ec15127470cb9ab563f954
wui/thread/Task.h
f8d131cc8dc4ef675b8f8fc57dcc26062d575d32 30-Apr-2016 Doris Liu <tianliu@google.com> Count native allocation for VD against Java heap

There are two parts to VD's native allocation:
1) VD's internal data structure (i.e. groups, paths, etc that make
up of the VD tree). This structure can change, when a VD is used
to load a different drawable resource.
2) Two bitmap caches, not both of which will necessarily be allocated
The size of the bitmap cache depends on canvas matrix and drawable
bounds, and therefore can often change.

We need to count the native allocation from the above against Java heap.

Bug: 26269056
Change-Id: If833aedcf7f3efe00ea73a41ddccb1b48066ffd8
wui/VectorDrawable.cpp
wui/VectorDrawable.h
20136f31941e3b036bf25537f1dac364a58483c9 30-Apr-2016 Chris Craik <ccraik@google.com> Add LightingFilter behavior test

bug:28519669

Change-Id: I81ca4109bae04387f2eb73374d0f11821745fea1
wui/tests/unit/SkiaBehaviorTests.cpp
436c6262dca4f72bcb9d4c37c73da1babbc60944 29-Apr-2016 John Reck <jreck@google.com> Merge "Merge "Support transform\'d GraphicBuffers" into nyc-dev am: 6d42b5c6e3 am: 88e7238235" into nyc-mr1-dev-plus-aosp
am: 36dec9f831

* commit '36dec9f831a516fea3799f99cd3d1e3a95057fd1':
Support transform'd GraphicBuffers

Change-Id: I6bcd0fec1f19a2255c15c3eeadae120c214e5ced
fa1088497b1e17bb488c5118452f26564ea2311a 29-Apr-2016 John Reck <jreck@google.com> Merge "Support transform\'d GraphicBuffers" into nyc-dev am: 6d42b5c6e3
am: 88e7238235

* commit '88e7238235e9edf147f44edf89ebcfc6aa5d93ab':
Support transform'd GraphicBuffers

Change-Id: I9f4240f4c6bfcbf79d0ab292157a580a8998557f
1fd9f817457229b960ef9732f68460b8e0a48471 29-Apr-2016 John Reck <jreck@google.com> Merge "Support transform\'d GraphicBuffers" into nyc-dev
am: 6d42b5c6e3

* commit '6d42b5c6e399a10799d2bba3f7113dd198cbcae6':
Support transform'd GraphicBuffers

Change-Id: I620f9ef9e1e2ce4df6471b37d1ec06b0fcdb2a88
6d42b5c6e399a10799d2bba3f7113dd198cbcae6 29-Apr-2016 John Reck <jreck@google.com> Merge "Support transform'd GraphicBuffers" into nyc-dev
2f69d6d4fdd4994912e5515016421625d1e1c4ec 28-Apr-2016 John Reck <jreck@google.com> Support transform'd GraphicBuffers

Bug: 28428955
Change-Id: I23e2fc9b96a67c7cfda42d9d7319e478194a7fa7
wui/GlopBuilder.cpp
wui/GlopBuilder.h
wui/Matrix.h
wui/Readback.cpp
c968879eb69d933fa260f43605a124a6dc7d0ea3 28-Apr-2016 Chih-Hung Hsieh <chh@google.com> Merge "resolve merge conflicts of 1599b981 to nyc-dev-plus-aosp am: 85e0c89ba5" into nyc-mr1-dev-plus-aosp
am: 99feacb026

* commit '99feacb0263f8331e9afcbfdbc0a4322de75593c':
Fix google-explicit-constructor warnings.

Change-Id: Ifb8bda3157f17c400ae403056bbef3b3c3625ea8
85e0c89ba55188ecc484538efbfdb570606fc1a2 28-Apr-2016 Chih-Hung Hsieh <chh@google.com> resolve merge conflicts of 1599b981 to nyc-dev-plus-aosp

Change-Id: I90807581e10b6a0024515ff634ac8b29eaa5fc9f
6e35557ad34a9722c27a70b30930104c2f36f78b 28-Apr-2016 Chih-hung Hsieh <chh@google.com> Merge "Fix google-explicit-constructor warnings."
7134ce35406f942dd640a95583430b39e770f0da 07-Apr-2016 Shammi Khattar <skhattar@codeaurora.org> ZipUtils: Fix wrong timestamps when getEntryInfo

"tm_mon" format should align with "ZipEntry::setModWhen" in aapt.
"tm_isdst" should be initialized, or it will because random value
and cause error in function mktime().

BUG:28021145

(cherry picked from commit bb0eb3f4cb33c077b296a18555a9a1a966ff696b)

Change-Id: Ia39cf63fcd4bb39c24af080562960279106f526c
ndroidfw/tests/ZipUtils_test.cpp
c8b49a8348d929e284c0f4e52217cb2c82add13b 28-Apr-2016 Yuqian Li <liyuqian@google.com> Merge "Remove SkTLazy"
d7160b83cda3b25340d67934642ba586df4115bf 28-Apr-2016 Narayan Kamath <narayan@google.com> Merge "ZipUtils: Fix wrong timestamps when getEntryInfo" am: 3f0355f am: b7dd102 am: e53f658
am: 5198d4a

* commit '5198d4a9128b203d7ad9a1eb448d1ca12a9aad75':
ZipUtils: Fix wrong timestamps when getEntryInfo

Change-Id: Iccab4530db98166126115feb1b3328400ae0a9a0
e53f65897d03776d2ca3a3f99d29fad105c33441 28-Apr-2016 Narayan Kamath <narayan@google.com> Merge "ZipUtils: Fix wrong timestamps when getEntryInfo" am: 3f0355f
am: b7dd102

* commit 'b7dd1026f3ee076a5620aeb09125719147c99116':
ZipUtils: Fix wrong timestamps when getEntryInfo

Change-Id: I964fcec6b7b88dae0d2b53cafe40707f814271ca
1ead474f61fb3fe7d77ccdd8e65037fb8c93ad6d 07-Apr-2016 Shammi Khattar <skhattar@codeaurora.org> ZipUtils: Fix wrong timestamps when getEntryInfo

"tm_mon" format should align with "ZipEntry::setModWhen" in aapt.
"tm_isdst" should be initialized, or it will because random value
and cause error in function mktime().

BUG:28021145
Change-Id: I1e8d5c14e5d7b875bf9cd940cb7f4c5b93a1bcd6
ndroidfw/tests/ZipUtils_test.cpp
750ccd53331105b2af96db052ffd28035490c4f2 28-Apr-2016 The Android Automerger <android-build-merger@google.com> Manually merge branch 'nyc-mr1-dev-plus-aosp' to shortcircuit automerger b/28407115
fd92ee4b731bee39f8b100cd138fb491de9d66ee 27-Apr-2016 Yuqian Li <liyuqian@google.com> Remove SkTLazy

Change-Id: Ibce5cea66fe67fceb994ff45c9afb527dbaf641b
wui/SkiaCanvas.cpp
eb7bb568d275325e5b7e7e7875c531a0d120578c 27-Apr-2016 Chris Craik <ccraik@google.com> Merge "Fix oval positioning when drawn with patheffect" into nyc-dev
am: 8438a72

* commit '8438a7297c16c1ee73f4e67efef18ad9062e15f1':
Fix oval positioning when drawn with patheffect

Change-Id: If367a59c4faef13e6f43f3c7512abceb14bf7f42
8438a7297c16c1ee73f4e67efef18ad9062e15f1 27-Apr-2016 Chris Craik <ccraik@google.com> Merge "Fix oval positioning when drawn with patheffect" into nyc-dev
c6baf563ba6aa207a48317c177b29f1d2b70cf3d 27-Apr-2016 Chih-Hung Hsieh <chh@google.com> Fix google-explicit-constructor warnings.

Bug: 28341362
Change-Id: Ibdd6a210bb7ff228e3624cc319169f77aca3b51e
ndroidfw/ResourceTypes.cpp
ndroidfw/ZipUtils.cpp
wui/AnimatorManager.cpp
wui/DeferredDisplayList.cpp
wui/SkiaCanvas.cpp
wui/TessellationCache.cpp
wui/renderstate/RenderState.cpp
wui/renderthread/RenderThread.cpp
wui/unit_tests/LinearAllocatorTests.cpp
torage/IMountService.cpp
torage/IObbActionListener.cpp
8bdf39e19caee7d46519112c186fc93cce1661e5 27-Apr-2016 The Android Automerger <android-build-merger@google.com> Manually merge branch 'nyc-mr1-dev-plus-aosp' to fix automerger blockage b/28407115
f97dca612e178414fecf94efdec59b608a104b6f 27-Apr-2016 John Reck <jreck@google.com> Merge "API tweaks to PixelCopy and make it public" into nyc-dev
am: 7f209d3

* commit '7f209d37f17d4df09475137c38b84a3338c84023':
API tweaks to PixelCopy and make it public

Change-Id: I1aac8afacfd054fe10fc26a73552608c51dfa9f5
7f209d37f17d4df09475137c38b84a3338c84023 27-Apr-2016 John Reck <jreck@google.com> Merge "API tweaks to PixelCopy and make it public" into nyc-dev
4dd1175cddd8a853405fbc9ada2473312c8fe0d0 27-Apr-2016 sergeyv <sergeyv@google.com> Merge "Stop always set OffsetByFudgeFactor in renderVertexBuffer" into nyc-dev am: b7d1657 am: 55d2936
am: 3f4c05f

* commit '3f4c05feae7f9a3febcd07a82e450d0f8bba16d7':
Stop always set OffsetByFudgeFactor in renderVertexBuffer

Change-Id: I56c4a84e76ed4e5b24f5366ed778175b66903c11
e94cbc76d560a157c0a0d47181b4ed2a0aadbeb1 25-Apr-2016 John Reck <jreck@google.com> API tweaks to PixelCopy and make it public

Bug: 27708453
Change-Id: I81667ce42f9ca1c1a13e1e61299927900845fc84
wui/Readback.cpp
wui/Readback.h
wui/renderthread/RenderProxy.cpp
wui/renderthread/RenderProxy.h
e98a046d3110eb2ff11a17f4ff27764b803a1379 27-Apr-2016 Chris Craik <ccraik@google.com> Fix oval positioning when drawn with patheffect

Fixes: 28396277

Change-Id: I9e21696d81d7cd219f3eaa081bf3d9ba988fe051
wui/BakedOpDispatcher.cpp
wui/tests/unit/BakedOpDispatcherTests.cpp
55d2936f4c91fbe3942a56aa9183157f3bcbd655 26-Apr-2016 sergeyv <sergeyv@google.com> Merge "Stop always set OffsetByFudgeFactor in renderVertexBuffer" into nyc-dev
am: b7d1657

* commit 'b7d1657016d5f5b384e231979c6dcf18b0334ca4':
Stop always set OffsetByFudgeFactor in renderVertexBuffer

Change-Id: If537a4039c3490737ad35b3d537098f0328ea391
b7d1657016d5f5b384e231979c6dcf18b0334ca4 26-Apr-2016 Sergei Vasilinetc <sergeyv@google.com> Merge "Stop always set OffsetByFudgeFactor in renderVertexBuffer" into nyc-dev
85d99528b23b5575d97f614fe25f839d19740abc 25-Apr-2016 Teng-Hui Zhu <ztenghui@google.com> Turn off some path drawing logs by default

Originally the logs are added to track potential performance bug.
Like unexpectedly deep recursion loop.
However so far, we haven't captured anything by these logs.
And they are causing some misunderstanding in some bugs.
So I think it is better to disable it by default.

In the future, we will consider switching to direct Skia arcTo support
and drop this part.

Change-Id: Iff6df7a92e40b4775a644a1497e113de0eedbc8a
wui/Debug.h
wui/VectorDrawable.h
wui/utils/VectorDrawableUtils.cpp
0aa97e75ac85e435535d90c7f6e9e114a02ff4eb 25-Apr-2016 John Reck <jreck@google.com> Merge "PixelCopy fixes" into nyc-dev am: a5bbbe5 am: d928ad6
am: 00b7da2

* commit '00b7da2e1b5e58df38a876cdf93d6e006c6154cd':
PixelCopy fixes

Change-Id: I6edd921af305ca090fdf240831bd292b78f06edc
00b7da2e1b5e58df38a876cdf93d6e006c6154cd 25-Apr-2016 John Reck <jreck@google.com> Merge "PixelCopy fixes" into nyc-dev am: a5bbbe5
am: d928ad6

* commit 'd928ad61e87ce8ecc1a7edae26bced459c923859':
PixelCopy fixes

Change-Id: Iaae3de7f8fd4b90856006bd7e4d3823a61168810
187c1d48221dc8c51a9eaa173c34e841f31bc123 25-Apr-2016 John Reck <jreck@google.com> Merge "PixelCopy fixes" into nyc-dev
am: a5bbbe5

* commit 'a5bbbe55b74d3a835b64fa18959f487da2df967e':
PixelCopy fixes

Change-Id: I4a49425cea5316ac4c977432c60caf9a6f667b76
a5bbbe55b74d3a835b64fa18959f487da2df967e 25-Apr-2016 John Reck <jreck@google.com> Merge "PixelCopy fixes" into nyc-dev
2f78327cfcd4c7b23aae9bb0262e64050d093a64 19-Apr-2016 John Reck <jreck@google.com> PixelCopy fixes

Bug: 27708453

Fixes some issues with camera sources. Previously
it was using GL_TEXTURE_2D target which doesn't
work properly if the source is YUV. It is critical
to ensure GL_TEXTURE_EXTERNAL_OES is used throughout
so the right sampler is used.

Change-Id: I0dcd8941ba08331f24809467b0e828663a38e93b
wui/GlopBuilder.cpp
wui/GlopBuilder.h
wui/Readback.cpp
92a5d4b99a5554adca0e94627d44d2bd7f4f0bc0 20-Apr-2016 sergeyv <sergeyv@google.com> Stop always set OffsetByFudgeFactor in renderVertexBuffer

bug:27857128
Change-Id: Id92e0a5790b14f76cfa8bb38e8b11ce649775da0
wui/BakedOpDispatcher.cpp
wui/tests/unit/BakedOpDispatcherTests.cpp
dbf4bb707bc1ce5f8afbc3c1adf8d22e173e6cba 21-Apr-2016 Adam Lesinski <adamlesinski@google.com> Merge "Fix order of operation issue with ResStringPool" into nyc-dev am: b53e8a7a8a am: da749ed997
am: 6841ff299c

* commit '6841ff299c9e41285a562266bfe8895ed64de1ac':
Fix order of operation issue with ResStringPool

Change-Id: I89655a9a2f11fb4a4af73b80857ca7d30c299b54
da749ed997644b2ad5e3643768c13f92e839db62 21-Apr-2016 Adam Lesinski <adamlesinski@google.com> Merge "Fix order of operation issue with ResStringPool" into nyc-dev
am: b53e8a7a8a

* commit 'b53e8a7a8aa495289ab2872032f80501edd472ef':
Fix order of operation issue with ResStringPool

Change-Id: Idaca4dee242389680b82b9d58728d281a65f9116
b53e8a7a8aa495289ab2872032f80501edd472ef 21-Apr-2016 Adam Lesinski <adamlesinski@google.com> Merge "Fix order of operation issue with ResStringPool" into nyc-dev
b7900f7fcc16acc207075e0e930d2861e8985c7e 21-Apr-2016 Chris Craik <ccraik@google.com> Merge "Fix shadow radius too large for RS" into nyc-dev am: 924d8227c4 am: 4293527405
am: b80cfbec40

* commit 'b80cfbec40d473e0ab8e17410284675a10f48267':
Fix shadow radius too large for RS

Change-Id: Icabb8f60d8cff3cc4e5b6662d6d907c2264ead66
42935274055b0760a61d234f73a7c69bebc163f9 21-Apr-2016 Chris Craik <ccraik@google.com> Merge "Fix shadow radius too large for RS" into nyc-dev
am: 924d8227c4

* commit '924d8227c4c790f05fb90d6140de15fa8abb704b':
Fix shadow radius too large for RS

Change-Id: I14e606d89f456bedb240f564acc7867b629bf8ed
666b6fbba15dec2a29a40c11ddb3aa590eb9d1b0 21-Apr-2016 Adam Lesinski <adamlesinski@google.com> Fix order of operation issue with ResStringPool

Due to ! taking precedence over bitwise &, the condition for
checking non-null terminated string blocks is incorrect.

Adds parentheses for the correct behavior.

Bug:28288210
Change-Id: Ie31fa239e5f869e6bb28deb6ae190f41f1aa4d92
ndroidfw/ResourceTypes.cpp
f3754a84289680782b2c7caac30fda18207a5c23 20-Apr-2016 Chris Craik <ccraik@google.com> Fix shadow radius too large for RS

bug:28276925

Change-Id: I3d962ace75be7bbf49f5a95320390d8f5a9bf951
wui/Android.mk
wui/FontRenderer.cpp
wui/tests/unit/FontRendererTests.cpp
6d1ce48ff101fa3bf3ca078a0389f7f67c4316cc 19-Apr-2016 John Reck <jreck@google.com> Merge "Don\'t reuse LOST_SURFACE for stopped" into nyc-dev am: 9110429 am: 5cc4428
am: 0f694e9

* commit '0f694e945a5b82d75b348d4ce89e2409e0131063':
Don't reuse LOST_SURFACE for stopped

Change-Id: Ied8d4602334c13c34fab6b7779fbfdd206bf6103
5cc4428bec11d4bcccb7165b0572014f434d6ccb 19-Apr-2016 John Reck <jreck@google.com> Merge "Don\'t reuse LOST_SURFACE for stopped" into nyc-dev
am: 9110429

* commit '9110429f0d8acac0d621d805050103fa58953fb9':
Don't reuse LOST_SURFACE for stopped

Change-Id: Ia7c609029215da17c61eb77bd3279c077d1b7713
9110429f0d8acac0d621d805050103fa58953fb9 19-Apr-2016 John Reck <jreck@google.com> Merge "Don't reuse LOST_SURFACE for stopped" into nyc-dev
7a8db64547ee90621706de0709302dd7f1af1e41 19-Apr-2016 John Reck <jreck@google.com> Merge "Make getFrameNumber lazy" into nyc-dev am: 8cddce3 am: a7fcaab
am: 31330bb

* commit '31330bbcadd6819185bc25c4f83e7157ad28606f':
Make getFrameNumber lazy

Change-Id: I408a5476589dcf7042f85aa4cc576cc16cf3bb21
a7fcaabbe22cab48293919466129debcf082b29e 19-Apr-2016 John Reck <jreck@google.com> Merge "Make getFrameNumber lazy" into nyc-dev
am: 8cddce3

* commit '8cddce3f8f503b2aa8b993fef6406645c3e80da6':
Make getFrameNumber lazy

Change-Id: If81ee9732424750465ceae5d2136bb23288f6a5f
8cddce3f8f503b2aa8b993fef6406645c3e80da6 19-Apr-2016 John Reck <jreck@google.com> Merge "Make getFrameNumber lazy" into nyc-dev
a5c005d992c29c5e5abc5d28b53cf9181f4186f2 19-Apr-2016 Adam Lesinski <adamlesinski@google.com> Merge "Optimize ResTable::getLocales() to improve bindApplication performance" into nyc-dev am: bfdc202 am: ea9d9daf2
am: 877b275

* commit '877b2750305f173bbb25495de446c377021bf6ae':
Optimize ResTable::getLocales() to improve bindApplication performance

Change-Id: I2cf0affd8b90cdb13b4a0db5c76fc4be67b7baab
877b2750305f173bbb25495de446c377021bf6ae 19-Apr-2016 Adam Lesinski <adamlesinski@google.com> Merge "Optimize ResTable::getLocales() to improve bindApplication performance" into nyc-dev am: bfdc202
am: ea9d9daf2

* commit 'ea9d9daf2b70f738c0adad166e9db89c370b5c1c':
Optimize ResTable::getLocales() to improve bindApplication performance

Change-Id: I569a7485304241339ab022f74ea8e72a6133c0ef
af2758a962179826b1945c4b31728d89377281a3 19-Apr-2016 Adam Lesinski <adamlesinski@google.com> Merge "Optimize ResTable::getLocales() to improve bindApplication performance" into nyc-dev
am: bfdc202

* commit 'bfdc2020b94d6368a7a8cf97bf545d28c757e0fd':
Optimize ResTable::getLocales() to improve bindApplication performance

Change-Id: I5148dabc722ec2c31008ba05adb3ccdfa357857a
bfdc2020b94d6368a7a8cf97bf545d28c757e0fd 19-Apr-2016 Adam Lesinski <adamlesinski@google.com> Merge "Optimize ResTable::getLocales() to improve bindApplication performance" into nyc-dev
b7e1ce07756aaca829828c2053eca0d66dd4d440 12-Apr-2016 Adam Lesinski <adamlesinski@google.com> Optimize ResTable::getLocales() to improve bindApplication performance

Change from linear searching for uniqueness to binary search.

Bug:27198799
Change-Id: I1ccb6e93cc213810848f07d631d9d8de7c719803
ndroidfw/AssetManager.cpp
ndroidfw/ResourceTypes.cpp
ndroidfw/tests/ResTable_test.cpp
ndroidfw/tests/TestHelpers.h
ndroidfw/tests/data/system/R.h
ndroidfw/tests/data/system/res/values-sv/values.xml
ndroidfw/tests/data/system/system_arsc.h
28912a508493e583c48772e2a234e0ed66849490 18-Apr-2016 John Reck <jreck@google.com> Make getFrameNumber lazy

Change-Id: I783de544ad9a3636ea90f1c8c4034738997bfbc8
Fixes: 28246085
wui/TreeInfo.h
wui/renderthread/CanvasContext.cpp
wui/renderthread/CanvasContext.h
2295f604bfc82f4a6be96f544c0ada24e20b56f8 18-Apr-2016 Chris Craik <ccraik@google.com> Merge "Improve multi-window render clipping logic" into nyc-dev am: c79c324 am: 2554b09
am: d424d50

* commit 'd424d505580ef745228f04dba40a55cfa9dc7876':
Improve multi-window render clipping logic

Change-Id: Idf950bb645d4702e68cffce93f7badef6e50b800
2554b09fc91fda917aa4bd7242908468488bcb13 18-Apr-2016 Chris Craik <ccraik@google.com> Merge "Improve multi-window render clipping logic" into nyc-dev
am: c79c324

* commit 'c79c3246c9a3e0d2aa34afd18fddc95a6aff0f30':
Improve multi-window render clipping logic

Change-Id: I4be0f6cefba71f7928fec559481fe389d9de800b
c79c3246c9a3e0d2aa34afd18fddc95a6aff0f30 18-Apr-2016 Chris Craik <ccraik@google.com> Merge "Improve multi-window render clipping logic" into nyc-dev
9a17da8125c36c82ba73e7f4b3ed80b9c633767f 18-Apr-2016 John Reck <jreck@google.com> Don't reuse LOST_SURFACE for stopped

Fixes: 28218991

If a draw() happens while we are stopped, don't report
that the surface is lost because this will prompt
a tear-down of the surface which isn't desired. It can
result in ViewRootImpl ending up in an internally-bad state
in this case.

Change-Id: If3eb8c6bc8702299e5330bc0917952624dce3b7e
wui/renderthread/DrawFrameTask.cpp
wui/renderthread/DrawFrameTask.h
9cd1bbe5c9e14472e631d8cc10005613925f34af 15-Apr-2016 Chris Craik <ccraik@google.com> Improve multi-window render clipping logic

Fixes: 28125010

Restructures 'scene defer', to implement window backdrop overdraw
avoidance in new render pipeline, and disable clipping to content draw
bounds.

Also restructures FrameBuilder's constructors, to separate out into
multiple defer methods.

Change-Id: I53facb904c1a4a4acc493d8a489921a79a50494e
wui/FrameBuilder.cpp
wui/FrameBuilder.h
wui/LayerBuilder.cpp
wui/renderthread/CanvasContext.cpp
wui/tests/common/TestUtils.h
wui/tests/microbench/FrameBuilderBench.cpp
wui/tests/unit/FrameBuilderTests.cpp
wui/tests/unit/LeakCheckTests.cpp
e827bcca5763d2fda3724f203f54e06308ff7969 16-Apr-2016 John Reck <jreck@google.com> Merge "Switch JankTracker to FrameInfo::duration()" into nyc-dev am: f91cbc7
am: b827a1c

* commit 'b827a1cea9170d98f4faf2c3fdc83de83e11add3':
Switch JankTracker to FrameInfo::duration()

Change-Id: Ic8caa55a36f32c54f13507eff464998af6596862
b827a1cea9170d98f4faf2c3fdc83de83e11add3 16-Apr-2016 John Reck <jreck@google.com> Merge "Switch JankTracker to FrameInfo::duration()" into nyc-dev
am: f91cbc7

* commit 'f91cbc7fd24e58a8e87b16c21363da94c3e039ea':
Switch JankTracker to FrameInfo::duration()

Change-Id: I6339004d6cca3f8efaa4bc70d3a5628fc8795ef5
f91cbc7fd24e58a8e87b16c21363da94c3e039ea 16-Apr-2016 John Reck <jreck@google.com> Merge "Switch JankTracker to FrameInfo::duration()" into nyc-dev
126720aa65fd90105bdf54c04f327f146763c5cf 16-Apr-2016 John Reck <jreck@google.com> Switch JankTracker to FrameInfo::duration()

Fixes: 27533462

FrameInfo::duration() will remove time spent waiting
in the queue from the duration. This is desired because
that time is otherwise accounted for by the previous frame,
so we don't want to double count it.

This shows up mostly in TestSceneRunner & shadowgrid2
due to a combination of slow frame times and continous rendering.

Change-Id: I27c42d5c24d266de4ada8ea00ec9164d518754f8
wui/JankTracker.cpp
ad3a76fa4e777210e50dfa9f50bb2afbfe8762db 15-Apr-2016 John Reck <jreck@google.com> Merge "Turn off HWUI_ENABLE_OPENGL_VALIDATION" into nyc-dev am: b8563f1
am: 93b93ed

* commit '93b93ed22883e7c9a737c9825644ee6524add646':
Turn off HWUI_ENABLE_OPENGL_VALIDATION

Change-Id: Id04c280aa28d438cd5f5c27e27554ad8eefc06dd
93b93ed22883e7c9a737c9825644ee6524add646 15-Apr-2016 John Reck <jreck@google.com> Merge "Turn off HWUI_ENABLE_OPENGL_VALIDATION" into nyc-dev
am: b8563f1

* commit 'b8563f1ae4c56da7ca7839739c1427ed0ca6a281':
Turn off HWUI_ENABLE_OPENGL_VALIDATION

Change-Id: I9f46cbffaa702e62310dc4dfccb4b4c004206bf3
b8563f1ae4c56da7ca7839739c1427ed0ca6a281 15-Apr-2016 John Reck <jreck@google.com> Merge "Turn off HWUI_ENABLE_OPENGL_VALIDATION" into nyc-dev
9a7fa83bc5f653b9a3558e303abea345a93e9571 15-Apr-2016 John Reck <jreck@google.com> Merge "Add a callback for when a gl functor is released" into nyc-dev am: 85cfc8c
am: 9e06acf

* commit '9e06acf392e82cb539b9e40ec9909a9c8dbc221b':
Add a callback for when a gl functor is released

Change-Id: I4f3d272a598f45a6124a6fc64f9178f1c4d659a0
9e06acf392e82cb539b9e40ec9909a9c8dbc221b 15-Apr-2016 John Reck <jreck@google.com> Merge "Add a callback for when a gl functor is released" into nyc-dev
am: 85cfc8c

* commit '85cfc8c368523359be8c12b8551e122b94972ab7':
Add a callback for when a gl functor is released

Change-Id: Ie9f602710d46faf045d04ff425bee8428d6fe9c7
85cfc8c368523359be8c12b8551e122b94972ab7 15-Apr-2016 John Reck <jreck@google.com> Merge "Add a callback for when a gl functor is released" into nyc-dev
756619da203bcdb9db19238ba6712c5bfb062009 15-Apr-2016 John Reck <jreck@google.com> Turn off HWUI_ENABLE_OPENGL_VALIDATION

Fixes: 28212865

Disable glGetError() checking after every gl call

Change-Id: I849934172a56150122a8d0114b0307515d988fe7
wui/Android.mk
9403bbe677c0b4abfed1d2ccbff11953d8b27275 15-Apr-2016 Doris Liu <tianliu@google.com> Merge "Fix ref count of fillGradient and strokeGradient" into nyc-dev am: da62de4
am: 7611bd1

* commit '7611bd1d96ada8b0dbc7c3b85f95e6cf7c23f9f1':
Fix ref count of fillGradient and strokeGradient

Change-Id: I277e161407b3882fd27af2f4d58b4e65d2bd9f78
cd1c3eba69d044b551cededad75474038f919890 14-Apr-2016 John Reck <jreck@google.com> Add a callback for when a gl functor is released

Bug: 27709981

Change-Id: Id5be3e8f88d6d84a9c59c7ed23e7e8862feefbe8
wui/DisplayList.cpp
wui/DisplayList.h
wui/DisplayListCanvas.cpp
wui/DisplayListCanvas.h
wui/GlFunctorLifecycleListener.h
wui/RecordingCanvas.cpp
wui/RecordingCanvas.h
wui/RenderNode.cpp
wui/SkiaCanvas.cpp
wui/hwui/Canvas.h
wui/tests/unit/FrameBuilderTests.cpp
wui/tests/unit/RenderNodeTests.cpp
7611bd1d96ada8b0dbc7c3b85f95e6cf7c23f9f1 15-Apr-2016 Doris Liu <tianliu@google.com> Merge "Fix ref count of fillGradient and strokeGradient" into nyc-dev
am: da62de4

* commit 'da62de4f65ccffc4734299f82f1c9ce4836e1c58':
Fix ref count of fillGradient and strokeGradient

Change-Id: Id4aa38d26fd568f4a312fd5ba507306b84ce8ac7
da62de4f65ccffc4734299f82f1c9ce4836e1c58 15-Apr-2016 Doris Liu <tianliu@google.com> Merge "Fix ref count of fillGradient and strokeGradient" into nyc-dev
ad21fe27627c8f4a1de886a2d1c5296694dc3501 15-Apr-2016 Doris Liu <tianliu@google.com> Fix ref count of fillGradient and strokeGradient

Bug: 28086621
Change-Id: Ibb52bdfb20904f0ad102878fbb33d3679bb5132d
wui/VectorDrawable.h
a93e7e6dc44f82fa64dcf47b09f0672b6add6a7d 15-Apr-2016 Tim Murray <timmurray@google.com> Merge "Revert "Optimize ResTable::getLocales() to improve bindApplication performance"" into nyc-dev am: 117cff7
am: 62047f9

* commit '62047f93d4948b5b5be1939c0700d12b960379a3':
Revert "Optimize ResTable::getLocales() to improve bindApplication performance"

Change-Id: I01e6021b1f756351358f83ee94ef70527adcaf5f
62047f93d4948b5b5be1939c0700d12b960379a3 15-Apr-2016 Tim Murray <timmurray@google.com> Merge "Revert "Optimize ResTable::getLocales() to improve bindApplication performance"" into nyc-dev
am: 117cff7

* commit '117cff790e34948e847d724be624ed2dd00bc82c':
Revert "Optimize ResTable::getLocales() to improve bindApplication performance"

Change-Id: I86b5cc6eddf38cdd015fe80f1180ca246a97352a
98e80076c6c4e31f04c580c8774eeea4036d32c1 15-Apr-2016 Tim Murray <timmurray@google.com> Revert "Optimize ResTable::getLocales() to improve bindApplication performance"

This reverts commit 5520581b5f043fb858b5b2044ff33ad8545a6d38.

bug 28189634

Change-Id: I2d2b859f6d9bd44434fa901cce990583f514980c
ndroidfw/AssetManager.cpp
ndroidfw/ResourceTypes.cpp
ndroidfw/tests/ResTable_test.cpp
ndroidfw/tests/TestHelpers.h
ndroidfw/tests/data/system/R.h
ndroidfw/tests/data/system/res/values-sv/values.xml
ndroidfw/tests/data/system/system_arsc.h
3a9ed31f2c3528a95a3e53c53190c4582187c917 14-Apr-2016 Christopher Wiley <wiley@google.com> Merge "libstorage needs libbinder include paths" am: c91f028 am: 17634ea
am: d4876ca

* commit 'd4876ca8e58e102ee42cf7b3bdbf1362c04f5da5':
libstorage needs libbinder include paths

Change-Id: Ie03b6dfe23d6fa449dd6d39f5acb432b1feb677c
a749cfa88f5c217c93034abb58ac3632ae6c3341 14-Apr-2016 John Reck <jreck@google.com> Merge "Revert "Revert "Make stopped state a first-class thing""" into nyc-dev am: d6a25c2
am: fe16c4b

* commit 'fe16c4b105c34f451b4b100c970e1711e793dfe1':
Revert "Revert "Make stopped state a first-class thing""

Change-Id: I5bd0dd197e2b33d852b48545a24cbf43670a3e4c
648b25a91a284b44df2404dc5c140a9d02d7bf8a 14-Apr-2016 Chris Craik <ccraik@google.com> Merge "Avoid reentrance on ClipArea APIs" into nyc-dev am: 5ce4e2e
am: 8a851e5

* commit '8a851e527716f5498409bd6ca7d1b10e62514898':
Avoid reentrance on ClipArea APIs

Change-Id: I2c7a38c95fe66c6158a97d53f0d057f7d6efeb38
d4876ca8e58e102ee42cf7b3bdbf1362c04f5da5 14-Apr-2016 Treehugger Robot <treehugger-gerrit@google.com> Merge "libstorage needs libbinder include paths" am: c91f028
am: 17634ea

* commit '17634ea84db72ecafc31be9b85e7bbde7c919518':
libstorage needs libbinder include paths

Change-Id: If949089e6ba990912d95881f30ca0664b59e5bf8
fe16c4b105c34f451b4b100c970e1711e793dfe1 14-Apr-2016 John Reck <jreck@google.com> Merge "Revert "Revert "Make stopped state a first-class thing""" into nyc-dev
am: d6a25c2

* commit 'd6a25c2b3e7fd5a98741e2f770cf54d539b29258':
Revert "Revert "Make stopped state a first-class thing""

Change-Id: Iff85c259e93a54c3e3a9db3f3d2b2f826526de0a
d6a25c2b3e7fd5a98741e2f770cf54d539b29258 14-Apr-2016 John Reck <jreck@google.com> Merge "Revert "Revert "Make stopped state a first-class thing""" into nyc-dev
8afcc76920499d0a384dba1470c5a377f80ed768 13-Apr-2016 John Reck <jreck@google.com> Revert "Revert "Make stopped state a first-class thing""

This reverts commit eab3f2658aa41d37c3b05d49a2ce4e3f4ed85399.

Fixes first-frame issue, mReportNextDraw needs to override
mStopped

Fixes: 28118961
Fixes: 27286867

Change-Id: I5c811759637d08ba9f3b342016d1b3006986d5a2
wui/renderthread/CanvasContext.cpp
wui/renderthread/CanvasContext.h
wui/renderthread/DrawFrameTask.cpp
wui/renderthread/EglManager.cpp
wui/renderthread/RenderProxy.cpp
wui/renderthread/RenderProxy.h
8a851e527716f5498409bd6ca7d1b10e62514898 14-Apr-2016 Chris Craik <ccraik@google.com> Merge "Avoid reentrance on ClipArea APIs" into nyc-dev
am: 5ce4e2e

* commit '5ce4e2e78f3f4e1c39423a79ad1787e05b961e14':
Avoid reentrance on ClipArea APIs

Change-Id: Iac7810d1732fa2435436c324490bcc313f31c475
1e06bde16e7bcbb2aeeeb6882571b3b07e2bc2f1 14-Apr-2016 Christopher Wiley <wiley@google.com> libstorage needs libbinder include paths

This library is almost all binder related. It should be
using libbinder's published include path.

Bug: 27804373
Test: This library compiles with a slightly modified libbinder include
path.

Change-Id: Ib8e00b59604cdda69ec36cf1c90150b4b9033879
torage/Android.mk
5ce4e2e78f3f4e1c39423a79ad1787e05b961e14 14-Apr-2016 Chris Craik <ccraik@google.com> Merge "Avoid reentrance on ClipArea APIs" into nyc-dev
bf27b995ae1bc36ee0b24effcaf41ec477e7fae3 14-Apr-2016 Chris Craik <ccraik@google.com> Avoid reentrance on ClipArea APIs

bug:28144676

Calling ClipArea::clipRegion from within ClipArea::clipPathWithTransform
has us handling op-based special casing twice, which caused all clip
paths to appear to be replace ops.

Change-Id: Ib842db53ffed4eee29470f773d59a3a1d07a1a0e
wui/ClipArea.cpp
wui/tests/unit/ClipAreaTests.cpp
f2489ad45681cdf2b1d0d374efbfdcb5bbcc5716 14-Apr-2016 Adam Lesinski <adamlesinski@google.com> Merge "Optimize ResTable::getLocales() to improve bindApplication performance" into nyc-dev am: b5abb78
am: eaf83ef

* commit 'eaf83ef61b33383ae47d1e2e96e99d7d312d2d3b':
Optimize ResTable::getLocales() to improve bindApplication performance

Change-Id: If52c56fbc0ffff43e5eb836aacd11f3f8764e4c7
eaf83ef61b33383ae47d1e2e96e99d7d312d2d3b 14-Apr-2016 Adam Lesinski <adamlesinski@google.com> Merge "Optimize ResTable::getLocales() to improve bindApplication performance" into nyc-dev
am: b5abb78

* commit 'b5abb78b7c329069d5d5e7fd9c6a6e5e81f79c90':
Optimize ResTable::getLocales() to improve bindApplication performance

Change-Id: I9b2e5d8488f15a400287f8cfacc3531bdb007068
b5abb78b7c329069d5d5e7fd9c6a6e5e81f79c90 13-Apr-2016 Adam Lesinski <adamlesinski@google.com> Merge "Optimize ResTable::getLocales() to improve bindApplication performance" into nyc-dev
5520581b5f043fb858b5b2044ff33ad8545a6d38 12-Apr-2016 Adam Lesinski <adamlesinski@google.com> Optimize ResTable::getLocales() to improve bindApplication performance

Change from linear searching for uniqueness to binary search.

Bug:27198799
Change-Id: Ifa4672929df286c4693ab1f77716f08945941b0c
ndroidfw/AssetManager.cpp
ndroidfw/ResourceTypes.cpp
ndroidfw/tests/ResTable_test.cpp
ndroidfw/tests/TestHelpers.h
ndroidfw/tests/data/system/R.h
ndroidfw/tests/data/system/res/values-sv/values.xml
ndroidfw/tests/data/system/system_arsc.h
eaa0a72abe8a6cd02cf7554d7fe92e491406557e 13-Apr-2016 Doris Liu <tianliu@google.com> Merge "Allow leading spaces in path string (to keep behavior consistent)" into nyc-dev am: a184abe
am: 61ce25a

* commit '61ce25a24bf55c476bcd034a6f5dda7c31ca28af':
Allow leading spaces in path string (to keep behavior consistent)

Change-Id: I743fbcecce8851d26e17753ff1b8e336648c1c9b
61ce25a24bf55c476bcd034a6f5dda7c31ca28af 13-Apr-2016 Doris Liu <tianliu@google.com> Merge "Allow leading spaces in path string (to keep behavior consistent)" into nyc-dev
am: a184abe

* commit 'a184abe4b0348b7c4633fb2c9922d2ec82cee34a':
Allow leading spaces in path string (to keep behavior consistent)

Change-Id: I9340d31fe79251de3a37f999c0d7228bbd759e23
9f9ad32fd3b34f33d4f5830578408da2b13e8e06 13-Apr-2016 Doris Liu <tianliu@google.com> Merge "rm log spam" into nyc-dev am: 70eff90
am: d3473ff

* commit 'd3473ffd95bb90a99efcffddd28cc06ed44abff6':
rm log spam

Change-Id: I5472c2a02bfd26c4e78329c5271e0ea2b4dd12a5
ae8dcce034b7fd4eb71e463805eed65bae7e3410 13-Apr-2016 Doris Liu <tianliu@google.com> Merge "Fix translationY not being set correctly for VD during animation" into nyc-dev am: 3513035
am: da6c6eb

* commit 'da6c6ebebc78d29f8be5db3c44a2572428529328':
Fix translationY not being set correctly for VD during animation

Change-Id: Ie0a499746708785476fbb900e600694453f65624
d3473ffd95bb90a99efcffddd28cc06ed44abff6 13-Apr-2016 Doris Liu <tianliu@google.com> Merge "rm log spam" into nyc-dev
am: 70eff90

* commit '70eff906ad6d944fab92608e2ad11deb3fbb396e':
rm log spam

Change-Id: I6c2a4865ba4146ffdec555346c35b5f77fa147bd
da6c6ebebc78d29f8be5db3c44a2572428529328 13-Apr-2016 Doris Liu <tianliu@google.com> Merge "Fix translationY not being set correctly for VD during animation" into nyc-dev
am: 3513035

* commit '351303531f440b661215cb35394331d11568ac68':
Fix translationY not being set correctly for VD during animation

Change-Id: I340fb647e4475607658f64eb9a6233aeccff8d37
a184abe4b0348b7c4633fb2c9922d2ec82cee34a 13-Apr-2016 Doris Liu <tianliu@google.com> Merge "Allow leading spaces in path string (to keep behavior consistent)" into nyc-dev
70eff906ad6d944fab92608e2ad11deb3fbb396e 13-Apr-2016 Doris Liu <tianliu@google.com> Merge "rm log spam" into nyc-dev
351303531f440b661215cb35394331d11568ac68 13-Apr-2016 Doris Liu <tianliu@google.com> Merge "Fix translationY not being set correctly for VD during animation" into nyc-dev
952670d9cf533ed3529b7960f6c88399a400a147 13-Apr-2016 Doris Liu <tianliu@google.com> rm log spam

Bug: 27385133
Change-Id: Ia97fbba61da691e2fde91ed1a857e0478046f8c0
wui/Animator.cpp
32d7cda0b89a114171f14de0753674090b3d75fc 08-Apr-2016 Doris Liu <tianliu@google.com> Fix translationY not being set correctly for VD during animation

Bug: 28056917
Change-Id: Ic5b7d14ac3dff8cad1c62f08b6d3389f979a2b00
wui/VectorDrawable.h
wui/tests/unit/VectorDrawableTests.cpp
5fbd15c9606ff45ea596dedd08b4d32af612fcb3 13-Apr-2016 John Reck <jreck@google.com> Merge "Merge "Fix reset() to zero slowFrameCounts" into nyc-dev am: 7239d95" into nyc-dev-plus-aosp
am: 9b857d3

* commit '9b857d3469a399d96265ab88d119a81785ae80ea':
Fix reset() to zero slowFrameCounts

Change-Id: I2100797709d1f50af2b9a146fabd35016796d938
aa21d56cfac36cb283e8284bf612fa934894762b 13-Apr-2016 John Reck <jreck@google.com> Merge "Fix reset() to zero slowFrameCounts" into nyc-dev
am: 7239d95

* commit '7239d957e9cd30c28c6d06fff0320258f0ae3a4f':
Fix reset() to zero slowFrameCounts

Change-Id: I8a15edd4b1e672998438d1befc986cfac2b02b4e
b35da390601e3c24e777d72daacd8dbeb4d1d9c4 12-Apr-2016 Doris Liu <tianliu@google.com> Allow leading spaces in path string (to keep behavior consistent)

Bug: 28132454
Change-Id: Iee799c13a85738db3d6940aca0fe917f284fa651
wui/PathParser.cpp
wui/PathParser.h
wui/VectorDrawable.cpp
wui/tests/microbench/PathParserBench.cpp
wui/tests/unit/VectorDrawableTests.cpp
8f55d00c2aa351d6914dca4d0cc2c07725002d90 12-Apr-2016 John Reck <jreck@google.com> Fix reset() to zero slowFrameCounts

Change-Id: I9f7f7280bcd28c361e5665de39a4bd7c594ab521
Fixes: 26386641
wui/JankTracker.cpp
d8b22c5ff9f3dcf3fcd685a06651822debda666e 12-Apr-2016 John Reck <jreck@google.com> Merge "Framework-side of SurfaceView#getBitmap" into nyc-dev am: d2eec0e
am: f3c2dee

* commit 'f3c2dee3e117433c76e04513047b39cad2d2b5e6':
Framework-side of SurfaceView#getBitmap

Change-Id: I60d5b10c643fbb646a69fa6896f3c83bde273256
f3c2dee3e117433c76e04513047b39cad2d2b5e6 12-Apr-2016 John Reck <jreck@google.com> Merge "Framework-side of SurfaceView#getBitmap" into nyc-dev
am: d2eec0e

* commit 'd2eec0efb2e47b23b2a12ab2967e422f0be49094':
Framework-side of SurfaceView#getBitmap

Change-Id: I4da75d89a536c11dbaa9ee1feba8e5838fbb5a41
d2eec0efb2e47b23b2a12ab2967e422f0be49094 12-Apr-2016 John Reck <jreck@google.com> Merge "Framework-side of SurfaceView#getBitmap" into nyc-dev
849ffa33bc5f1e30e170fb469b802266c0d993fc 12-Apr-2016 Sergei Vasilinetc <sergeyv@google.com> Merge "Stop comparing Descriptions with memcmp" into nyc-dev am: e414371
am: 55134c8

* commit '55134c89fe5a524be26558b4ccccdfa6ffa0105f':
Stop comparing Descriptions with memcmp

Change-Id: I43ea9f9bc2f3f7ba607a85d08dbecf95fcb9e585
55134c89fe5a524be26558b4ccccdfa6ffa0105f 12-Apr-2016 sergeyv <sergeyv@google.com> Merge "Stop comparing Descriptions with memcmp" into nyc-dev
am: e414371

* commit 'e41437167b9730d2d3550b1cbb5e2813a101b5f0':
Stop comparing Descriptions with memcmp

Change-Id: Ib8bbf379bed2f48d81957d759804168a20b13455
10dd0585c11dcedb5a271d54e645594f1d215d5c 01-Apr-2016 John Reck <jreck@google.com> Framework-side of SurfaceView#getBitmap

Bug: 27708453

Change-Id: Ie6fd7eca522d3e6549d8af587c975fd7e6053649
wui/Android.mk
wui/Readback.cpp
wui/Readback.h
wui/renderthread/RenderProxy.cpp
wui/renderthread/RenderProxy.h
e41437167b9730d2d3550b1cbb5e2813a101b5f0 12-Apr-2016 Sergei Vasilinetc <sergeyv@google.com> Merge "Stop comparing Descriptions with memcmp" into nyc-dev
77c414a0d82df76c6ef67f5bd53759247eb8b875 11-Apr-2016 Chris Craik <ccraik@google.com> Merge "Apply clip at reorder barriers to shadows" into nyc-dev am: b38cb04
am: 7e5a2d8

* commit '7e5a2d86cf683333061a039263b8128ff40589db':
Apply clip at reorder barriers to shadows

Change-Id: Ifa5cd5b62eda3389af067dbd86add6036218aa9c
7e5a2d86cf683333061a039263b8128ff40589db 11-Apr-2016 Chris Craik <ccraik@google.com> Merge "Apply clip at reorder barriers to shadows" into nyc-dev
am: b38cb04

* commit 'b38cb04952202c330b29237aaeeda51165298a57':
Apply clip at reorder barriers to shadows

Change-Id: I33bad16dda8a2618d14e9b345069758f081ed4eb
b38cb04952202c330b29237aaeeda51165298a57 11-Apr-2016 Chris Craik <ccraik@google.com> Merge "Apply clip at reorder barriers to shadows" into nyc-dev
f641379e1e275c4cfe89ab17a230165e6371b0d4 11-Apr-2016 John Reck <jreck@google.com> Merge "Revert "Make stopped state a first-class thing"" into nyc-dev am: 825fa4d
am: 26d6685

* commit '26d6685d1eb59da2799d6c4d45b9ff67a537e99b':
Revert "Make stopped state a first-class thing"

Change-Id: Ibcbd0b9a3246f67e41c293f5f1e79cffca3a9ec8
fbfd47e5651f426bf21d0ac9ed6e5982989da975 11-Apr-2016 Raph Levien <raph@google.com> Merge "Follow the constructor signature change in Minikin." into nyc-dev am: f9104e3
am: fda187f

* commit 'fda187f040eba119130358b091f6ec62301926b4':
Follow the constructor signature change in Minikin.

Change-Id: I3a6ffcc1178b0909cd2633041f629ac5a45d8691
26d6685d1eb59da2799d6c4d45b9ff67a537e99b 11-Apr-2016 John Reck <jreck@google.com> Merge "Revert "Make stopped state a first-class thing"" into nyc-dev
am: 825fa4d

* commit '825fa4d5ae7b2907ee1769d09e6333306de2a92e':
Revert "Make stopped state a first-class thing"

Change-Id: I2f2a6281d0e0ba9587b00cdb6f1cb32ac632ee41
fda187f040eba119130358b091f6ec62301926b4 11-Apr-2016 Seigo Nonaka <nona@google.com> Merge "Follow the constructor signature change in Minikin." into nyc-dev
am: f9104e3

* commit 'f9104e33e496aeb5581ba9b89f1564d0cbec71fd':
Follow the constructor signature change in Minikin.

Change-Id: I5d0e3eb8140b28d1ec1313937492713c40816596
825fa4d5ae7b2907ee1769d09e6333306de2a92e 11-Apr-2016 John Reck <jreck@google.com> Merge "Revert "Make stopped state a first-class thing"" into nyc-dev
eab3f2658aa41d37c3b05d49a2ce4e3f4ed85399 11-Apr-2016 John Reck <jreck@google.com> Revert "Make stopped state a first-class thing"

This reverts commit 945961f78a78eced823d5ba78505c781b079703d.

Change-Id: Iebc1d49fac33380233f8785fc39bec6c30a5e714
wui/renderthread/CanvasContext.cpp
wui/renderthread/CanvasContext.h
wui/renderthread/DrawFrameTask.cpp
wui/renderthread/EglManager.cpp
wui/renderthread/RenderProxy.cpp
wui/renderthread/RenderProxy.h
7224e2b624daea67b5653285c9640f170c096bdb 08-Apr-2016 sergeyv <sergeyv@google.com> Stop comparing Descriptions with memcmp

bug:27894959
Change-Id: I379c11381c08f6f77577a914638b32415768f26e
wui/PathCache.cpp
wui/PathCache.h
wui/TessellationCache.cpp
wui/TessellationCache.h
wui/utils/Macros.h
d645640180c25c2711e99aa82ec629155f8e91ba 11-Apr-2016 Chris Craik <ccraik@google.com> Apply clip at reorder barriers to shadows

Fixes: 28004930

Change-Id: I208b78430c770a3135afd68c53cf8ff3fba50c52
wui/DisplayList.h
wui/FrameBuilder.cpp
wui/FrameBuilder.h
wui/RecordingCanvas.cpp
wui/RecordingCanvas.h
wui/tests/unit/FrameBuilderTests.cpp
wui/tests/unit/RecordingCanvasTests.cpp
b93872ad64afaafa1799a293850f48a96708182e 11-Apr-2016 Seigo Nonaka <nona@google.com> Follow the constructor signature change in Minikin.

Bug: 28105730
Change-Id: I933521ba08e89c0538b5aa9efa5dcc5e2a17b905
wui/hwui/MinikinSkia.cpp
wui/hwui/MinikinSkia.h
f26298f8ae51e79d8232a7c21351ff7b16c00d1f 08-Apr-2016 Doris Liu <tianliu@google.com> resolve merge conflicts of 0e89f98 to nyc-dev-plus-aosp
am: 9d5c93f

* commit '9d5c93f40758636fea18616cf915d49eca67d7b0':
Improve error logging for parsing failures

Change-Id: I1a0a30961f939b9023480d2f3de36665ad8afab9
9d5c93f40758636fea18616cf915d49eca67d7b0 08-Apr-2016 Doris Liu <tianliu@google.com> resolve merge conflicts of 0e89f98 to nyc-dev-plus-aosp

Change-Id: Ifa9dea0e4a0337c24dad899a10b5def46679742c
0e89f9804420a9b667eeaadff7916c227e6608cf 08-Apr-2016 Doris Liu <tianliu@google.com> Merge "Improve error logging for parsing failures" into nyc-dev
0a1a5167be26d363d4e27bdc7b816f425b7b4e66 08-Apr-2016 Doris Liu <tianliu@google.com> Improve error logging for parsing failures

Bug: 27043594
Change-Id: I901b65f734c49444a78e0714e007e15e2340ab9d
wui/PathParser.cpp
wui/PathParser.h
wui/tests/unit/VectorDrawableTests.cpp
34ea6b68de0d989d4502161d53b4fc8920e8f586 08-Apr-2016 Raph Levien <raph@google.com> Merge "Avoid copying of font table data, provide raw font bytes" into nyc-dev am: c147dbb
am: eadd2b8

* commit 'eadd2b8aba89ebab859149c25779127bd755ace9':
Avoid copying of font table data, provide raw font bytes

Change-Id: If2a32510f97d15924970e31454f805757745a9fc
eadd2b8aba89ebab859149c25779127bd755ace9 08-Apr-2016 Raph Levien <raph@google.com> Merge "Avoid copying of font table data, provide raw font bytes" into nyc-dev
am: c147dbb

* commit 'c147dbbca4ea1870bcf88c5889e6a83865ceed54':
Avoid copying of font table data, provide raw font bytes

Change-Id: Icf7e1aa1bc8ae759aaff94a3eeea7261a5456b47
c147dbbca4ea1870bcf88c5889e6a83865ceed54 08-Apr-2016 Raph Levien <raph@google.com> Merge "Avoid copying of font table data, provide raw font bytes" into nyc-dev
296bf8c55aaba0025f3e5b904fda3b6e15686753 07-Apr-2016 Raph Levien <raph@google.com> Avoid copying of font table data, provide raw font bytes

Minikin is changing its approach to table access to use HarfBuzz to
access the tables, based on raw font data, rather than calling the
MinikinFont::GetTable() virtual method. This patch provides raw access
to the font data to make this work.

There's a bit of plumbing to make sure fonts get a pointer to the raw
data as well.

Bug: 27860101
Change-Id: I638e18cf363644bf22fbc9fb9b3358a9e731087f
wui/hwui/MinikinSkia.cpp
wui/hwui/MinikinSkia.h
wui/hwui/Typeface.cpp
7c2a5700353189e5990d33289597e30c45da1338 08-Apr-2016 John Reck <jreck@google.com> Merge "Make stopped state a first-class thing" into nyc-dev am: c724dcf
am: 620a86e

* commit '620a86e464d585c796e51a16dad419d46d3837e4':
Make stopped state a first-class thing

Change-Id: Idd258fd34c68ec214e41ceb90f1d911901535802
06cf0cb47aa896ceb54e27fe96d76e2edadb664b 08-Apr-2016 John Reck <jreck@google.com> Merge "Fix a derp" into nyc-dev am: 4a73544
am: 944e6b5

* commit '944e6b51b1ee5001f6eda258d247d2efd3ad4338':
Fix a derp

Change-Id: I14c821a4e30f5f57f0aa71fba6a3e4a1bf980982
620a86e464d585c796e51a16dad419d46d3837e4 08-Apr-2016 John Reck <jreck@google.com> Merge "Make stopped state a first-class thing" into nyc-dev
am: c724dcf

* commit 'c724dcf23c5e2ebd22c042a8a6f2424b7e9d5029':
Make stopped state a first-class thing

Change-Id: Idfa3cc5d8fa5b07c742c2700b38441ff7d692f42
944e6b51b1ee5001f6eda258d247d2efd3ad4338 08-Apr-2016 John Reck <jreck@google.com> Merge "Fix a derp" into nyc-dev
am: 4a73544

* commit '4a735441e82207e18036be09d0d02c855930938f':
Fix a derp

Change-Id: I1975a6ed121ad0ddfc12784c45092c8af3823bdf
c724dcf23c5e2ebd22c042a8a6f2424b7e9d5029 08-Apr-2016 John Reck <jreck@google.com> Merge "Make stopped state a first-class thing" into nyc-dev
4a735441e82207e18036be09d0d02c855930938f 08-Apr-2016 John Reck <jreck@google.com> Merge "Fix a derp" into nyc-dev
63c168acf7a99a0120566a0a09a40ae04c789c5a 04-Dec-2015 Michael Wright <michaelwr@google.com> Add choreographer API to the NDK.

Change-Id: Icb8cffd3cd3bd06814466be72db3e26f6a62cbc6
ndroidfw/Android.mk
ndroidfw/DisplayEventDispatcher.cpp
a41f2445156fe0bcfde6bd4d813dfc43796a526d 08-Apr-2016 John Reck <jreck@google.com> Fix a derp

Fixes: 28074465

I knew I added that flag for a reason...

Change-Id: I6e28237dcd50191769a828bf2646c3a00c14387c
wui/renderthread/RenderProxy.cpp
wui/renderthread/RenderProxy.h
wui/tests/macrobench/TestSceneRunner.cpp
9dc4eca66b9ce5b7bba16cf849a4068b18b234d8 08-Apr-2016 Chris Craik <ccraik@google.com> Merge "Support replace op in new pipeline" into nyc-dev am: d306065
am: 6e5c652

* commit '6e5c652347a4a260adaa197e6ceeff5829a3fb12':
Support replace op in new pipeline

Change-Id: Ife7464f061d53a1cb39b5626ea667c26a5b95836
6e5c652347a4a260adaa197e6ceeff5829a3fb12 08-Apr-2016 Chris Craik <ccraik@google.com> Merge "Support replace op in new pipeline" into nyc-dev
am: d306065

* commit 'd30606575783acd8689cfac604cba51e537b6b77':
Support replace op in new pipeline

Change-Id: Iab37f13a5fca72b2e581a897f7e03c17f9ce0b84
d30606575783acd8689cfac604cba51e537b6b77 08-Apr-2016 Chris Craik <ccraik@google.com> Merge "Support replace op in new pipeline" into nyc-dev
4e2838ead6405acb407c072bdf01bc7b77c67680 08-Apr-2016 John Reck <jreck@google.com> Merge "Fix some edge cases" into nyc-dev am: 4a62eff
am: c01a9b6

* commit 'c01a9b6a9ba2662fafa6f4152ca9986faacd2d66':
Fix some edge cases

Change-Id: I52d65ed7c5da33b33a4f98953800c1dedea2bf09
c01a9b6a9ba2662fafa6f4152ca9986faacd2d66 08-Apr-2016 John Reck <jreck@google.com> Merge "Fix some edge cases" into nyc-dev
am: 4a62eff

* commit '4a62effbfe8ad9a0eb7049c2f52a57d39bb64e29':
Fix some edge cases

Change-Id: I35a99c3164bf3bf91f609ce8bec01d15ca8b7c0d
945961f78a78eced823d5ba78505c781b079703d 08-Apr-2016 John Reck <jreck@google.com> Make stopped state a first-class thing

Bug: 27286867

WindowManager has committed to stopped state
controlling the lifecycle of the Surface, so
make that a first-class thing in HWUI as well.

This makes it more resistent to things like
a rogue updateSurface() happening while mStopped=true,
leading to bad things down the line. Instead let
the surface be changed/updated as often as desired,
and just block any attempt to draw on that surface.

Also removes some unnecessary makeCurrent()s, as
EglManager ensures that we *always* have a valid
GL context now (using a pbuffer surface if there is
no window surface set)

Change-Id: Iead78ddebc7997e8fdb0c9534836352f5e54b9bd
wui/renderthread/CanvasContext.cpp
wui/renderthread/CanvasContext.h
wui/renderthread/DrawFrameTask.cpp
wui/renderthread/EglManager.cpp
wui/renderthread/RenderProxy.cpp
wui/renderthread/RenderProxy.h
04d46eb69fb4f4c4c332c36c6ae845da3b2ae848 07-Apr-2016 Chris Craik <ccraik@google.com> Support replace op in new pipeline

bug:26562461

Change-Id: Ie48d2da30f5e9d9abe88a5cd973dfb26e38abf63
wui/Android.mk
wui/BakedOpState.cpp
wui/ClipArea.cpp
wui/ClipArea.h
wui/FrameBuilder.cpp
wui/OpDumper.cpp
wui/Snapshot.cpp
wui/Snapshot.h
wui/tests/unit/ClipAreaTests.cpp
wui/tests/unit/FrameBuilderTests.cpp
wui/tests/unit/RecordingCanvasTests.cpp
wui/tests/unit/SnapshotTests.cpp
51f2d606dcbfba3cc5b03dfea37c1304b91c232f 06-Apr-2016 John Reck <jreck@google.com> Fix some edge cases

Bug: 27709981

This desperately needs a refactor, but to keep
the current (really needed & nice) behavior of
dispatching after sync finishes would be difficult
to handle cleanly without lots of ripping so... #yolo

Change-Id: I831a06c6ae7412a062720d68ecbe3085190f0258
wui/RenderNode.cpp
wui/RenderNode.h
wui/renderthread/CanvasContext.cpp
wui/renderthread/CanvasContext.h
wui/renderthread/DrawFrameTask.cpp
wui/renderthread/DrawFrameTask.h
wui/renderthread/RenderProxy.cpp
wui/renderthread/RenderProxy.h
wui/tests/common/TestUtils.h
wui/tests/common/scenes/GlyphStressAnimation.cpp
wui/tests/common/scenes/ListViewAnimation.cpp
wui/tests/macrobench/TestSceneRunner.cpp
wui/utils/TestWindowContext.cpp
64a2e245839fb3642a6b84f4da7e68d83b3629cc 05-Apr-2016 Chris Craik <ccraik@google.com> Fix OffscreenBuffer leak am: 74af6e2
am: 4d5c376

* commit '4d5c3769c04dc4774ab06bd167cf621a5367bba7':
Fix OffscreenBuffer leak

Change-Id: I7ccd370a356f955a48ca4b2edc596c42982b7774
4d5c3769c04dc4774ab06bd167cf621a5367bba7 05-Apr-2016 Chris Craik <ccraik@google.com> Fix OffscreenBuffer leak
am: 74af6e2

* commit '74af6e282f8a8f75928a071e8200039517cf5c12':
Fix OffscreenBuffer leak

Change-Id: I24c16488d73588efe15e64ab711f8d3bc7a580b7
74af6e282f8a8f75928a071e8200039517cf5c12 05-Apr-2016 Chris Craik <ccraik@google.com> Fix OffscreenBuffer leak

Fixes: 27941148

Make OffscreenBuffer lifecycle an explicit (and tested) contract between
FrameBuilder and BakedOpRenderer, entirely separate from dispatch. This
makes it safe to reject any rendering work via overdraw content
rejection (before it gets to a BakedOpDispatcher).

Adds a couple tests around OffscreenBuffer leaks, and switches
OffscreenBuffer tests to RENDERTHREAD_TEST macro, as appropriate.

Change-Id: Id114b835d042708ae921028fb4b17e5fa485fe64
wui/BakedOpDispatcher.cpp
wui/BakedOpRenderer.cpp
wui/BakedOpRenderer.h
wui/FrameBuilder.h
wui/RecordedOp.h
wui/renderstate/OffscreenBufferPool.cpp
wui/tests/unit/FrameBuilderTests.cpp
wui/tests/unit/LeakCheckTests.cpp
wui/tests/unit/OffscreenBufferPoolTests.cpp
5e0f2ee2ee0928d38fbb30c50a2710f17992e662 05-Apr-2016 Sergei Vasilinetc <sergeyv@google.com> Merge "Fix opacity setup in FrameBuilder" into nyc-dev am: 5169c62
am: f7f9844

* commit 'f7f984425dd40f55d028e6dcb361c3ab92b2fc48':
Fix opacity setup in FrameBuilder

Change-Id: I41104b398393ef002233a32fd161f53ba65b0219
f7f984425dd40f55d028e6dcb361c3ab92b2fc48 05-Apr-2016 sergeyv <sergeyv@google.com> Merge "Fix opacity setup in FrameBuilder" into nyc-dev
am: 5169c62

* commit '5169c62c6c0acbf9d5a36a90233e7ba2e9532e58':
Fix opacity setup in FrameBuilder

Change-Id: Ic887d694e745d365b8e0cfe335814e0ecd8e682f
5169c62c6c0acbf9d5a36a90233e7ba2e9532e58 05-Apr-2016 Sergei Vasilinetc <sergeyv@google.com> Merge "Fix opacity setup in FrameBuilder" into nyc-dev