Commit Graph

9025 Commits

Author SHA1 Message Date
John Reck
997ac15bcb Merge "Quick fix: Make incorrect animator usage a warning" into oc-mr1-dev am: 2d362d7159
am: a54a5f6512

Change-Id: I3e78ede76656eff16fce54808a052ab79105ae79
2017-09-26 16:52:15 +00:00
John Reck
a54a5f6512 Merge "Quick fix: Make incorrect animator usage a warning" into oc-mr1-dev
am: 2d362d7159

Change-Id: I7e2895fdb802c25389a689f87e60fe408c955405
2017-09-26 16:34:45 +00:00
John Reck
d2080d52b3 Quick fix: Make incorrect animator usage a warning
Change-Id: I6d59033433a63d02be746bb8523b312d7c8fe9fa
Bug: 65160121
Test: Repro from bug doesn't repro anymore
2017-09-25 23:27:38 +00:00
Derek Sollenberger
71b36912e0 Merge "Reduce overhead by combining libskia and libhwui into a single library." 2017-09-25 15:45:34 +00:00
Chris Craik
eeca86f7a8 Merge "Speculative fix for missing target crash" into oc-mr1-dev am: a6aafa33ec
am: e188aa84ef

Change-Id: I952357aa76aca5bb6f90d427ddf3d4d5d38f06fe
2017-09-22 23:07:16 +00:00
Chris Craik
e188aa84ef Merge "Speculative fix for missing target crash" into oc-mr1-dev
am: a6aafa33ec

Change-Id: I30c5f2f7b27fb4f35991082bcff5c8995fbcdd75
2017-09-22 22:58:43 +00:00
TreeHugger Robot
a6aafa33ec Merge "Speculative fix for missing target crash" into oc-mr1-dev 2017-09-22 22:41:59 +00:00
Dake Gu
626be1518c Merge "hwuitest: added hwui test for TV application" into oc-mr1-dev am: 88dd458c9a
am: 9a98142be3

Change-Id: I1f90d7c4a1e028bbe967aa5fbe47c8f0c24f5a35
2017-09-22 19:55:42 +00:00
Tenghui Zhu
c0c225a837 Merge "Add systrace for VectorDrawable inflation and draw" into oc-mr1-dev
am: dbe5afd90d

Change-Id: I906a1762d0f768fdb1cac2147a29ae9e0ab8ffe2
2017-09-22 19:49:58 +00:00
Tenghui Zhu
dbe5afd90d Merge "Add systrace for VectorDrawable inflation and draw" into oc-mr1-dev 2017-09-22 19:45:17 +00:00
ztenghui
3d30ca1d3c Add systrace for VectorDrawable inflation and draw
We didn't trace the draw from cache.
Here we add trace for draw into bitmap, which is normally heavy.

fix: 65060698
Bug: 65060698
Test: run test app and get systrace and check

Change-Id: Ia81127c4aa285b3277e9c9edbdf356d85cb28b5e
(cherry picked from commit cf0c41dbc2)
2017-09-22 19:44:24 +00:00
Dake Gu
9a98142be3 Merge "hwuitest: added hwui test for TV application" into oc-mr1-dev
am: 88dd458c9a

Change-Id: I8aa8b1c90f18aaac3342b0652979834fadccc167
2017-09-22 19:35:35 +00:00
Dake Gu
88dd458c9a Merge "hwuitest: added hwui test for TV application" into oc-mr1-dev 2017-09-22 19:26:42 +00:00
Chris Craik
89cd62c8f3 Speculative fix for missing target crash
Bug: 66451158
Test: manual app usage

Change-Id: I2db3aa73edcb80da25ead64205011705f0beef91
2017-09-22 10:00:14 -07:00
Stan Iliev
1843ac7cc9 Fix alpha fading in System UI
Fix alpha not being applied for Views that have non overlapping
rendering (getHasOverlappingRendering is false).

Test: Ran system UI
Bug: 65857651
Change-Id: I31001de0f67bf95ab8425189a4b78427d062585d
2017-09-21 17:14:10 -04:00
Dake Gu
bec4a06812 hwuitest: added hwui test for TV application
This is a test that simulates a standard TV application screen.

The UI elements:
A full screen background bitmap.
Few rows of cards.
Each card has a bitmap and an info area.
Info area has two lines text.
Each card is dimmed, implemented in two modes:
1. adding translucent color RenderNode on top of card
2. applying ColorFilter to bitmap.
Firt card of each row is scaled up and has shadow.

The animations:
Cards are updating translation Y and updating display list
and overlay color alpha or colorfilter.

Test: there are four tests:
tvapp: baseline test, with rounded corner, use Color RenderNode to dim
tvapp_norc: no rounded corner
tvapp_cf: use colorfilter to dim
tvapp_norc_cf: no rounded corner, use colorfilter to dim

Bug: 64990221

Change-Id: I385e349386c41e32b7313180db8c81b8f3e39f88
2017-09-20 17:42:03 -07:00
John Reck
42add1e926 Merge "Remove all FATAL_IFs from graphicsstats service" into oc-mr1-dev am: 879a9677b9
am: 7d7022f73a

Change-Id: Id45c62c6b7dd8f080ab54a1c2ee439fb0dd10c34
2017-09-19 21:00:03 +00:00
John Reck
7d7022f73a Merge "Remove all FATAL_IFs from graphicsstats service" into oc-mr1-dev
am: 879a9677b9

Change-Id: I62eeec65e62e5f4d422b95847b7bbab93e1a4fbe
2017-09-19 20:48:24 +00:00
TreeHugger Robot
885a134bf2 Merge "Fix VectorDrawable dirty flag logic" 2017-09-19 18:00:20 +00:00
Stan Iliev
d7b8af13d6 Fix VectorDrawable dirty flag logic
Pass VD staging dirty flag value to the render thread dirty flag.
This is fixing animation on growing VD bounds, which looked bad
because cache was not refreshed and scaling it up 100 times did
not look good.

Test: Ran GoogleCamera app and HWUI unit tests.
Bug: 65534766
Change-Id: Ie83cbb6839c772556340b4ec526ba3699fc84255
2017-09-19 10:01:50 -04:00
John Reck
5206a871dc Remove all FATAL_IFs from graphicsstats service
As graphicsstats can be subjected to data coming
from the disk and is in system_server we want
to bias towards best-effort instead of strict
no-errors that the rest of HWUI typically uses.

So treat any dump/merge of graphics stats as
best effort, ignoring any errors that occur.

Bug: 65652900
Test: verified 'dumpsys graphicsstats' still works

Change-Id: Ia9b91b745c2a9aedad2f22e3087e1d4bf37a1135
2017-09-18 12:55:17 -07:00
Tenghui Zhu
56c093cad2 Merge "Add systrace for VectorDrawable inflation and draw" 2017-09-15 16:55:56 +00:00
ztenghui
cf0c41dbc2 Add systrace for VectorDrawable inflation and draw
We didn't trace the draw from cache.
Here we add trace for draw into bitmap, which is normally heavy.

fix: 65060698
Test: run test app and get systrace and check

Change-Id: Ia81127c4aa285b3277e9c9edbdf356d85cb28b5e
2017-09-14 15:56:50 -07:00
Derek Sollenberger
843fb74ab5 Merge "Enable multi-threading of cpu intensive tasks when using Skia pipelines" 2017-09-14 20:58:01 +00:00
TreeHugger Robot
8e7418509d Merge changes from topic "dropbox"
* changes:
  Add a cmd line tool to StatsService to parse log files from Dropbox
  Add a DropboxWriter in statsd.
2017-09-14 03:41:38 +00:00
Yao Chen
482d272d7c Add a cmd line tool to StatsService to parse log files from Dropbox
Test: adb shell cmd stats all-logs
Change-Id: I7803c9c021a971619f60fbf6bdfabd33d2f476ef
2017-09-13 16:58:41 -07:00
Yi Jin
4518ea94fd Merge changes Icdcbeded,I6753df11
* changes:
  Extract IncidentHeaderProto to a separated file for statsd to consume
  Implement Pii Stripper Part 3
2017-09-12 21:40:31 +00:00
John Reck
91cf84cda2 Merge "Fix flicker from multiwindow resize" into oc-mr1-dev am: facdce3ab2
am: a0c211120a

Change-Id: I701b817d0109c650069d445548280bec4193729d
2017-09-11 22:00:02 +00:00
John Reck
a0c211120a Merge "Fix flicker from multiwindow resize" into oc-mr1-dev
am: facdce3ab2

Change-Id: I217c2db8adcb5b2b9ad2ffcd3226176c7e7c08c4
2017-09-11 21:36:05 +00:00
Dan Willemsen
116abe23c4 Merge changes I93cf24d4,I32e438ef am: 30798ad13a am: c28d591b36 am: 59225490b8
am: 2e9ec5f0de

Change-Id: Ie590c34bce9d0218bb9b48294756dae04e9210b7
2017-09-10 02:15:34 +00:00
Dan Willemsen
2e9ec5f0de Merge changes I93cf24d4,I32e438ef am: 30798ad13a am: c28d591b36
am: 59225490b8

Change-Id: I6cf57e951900b3df816070feee0d3bf92a6a5a7d
2017-09-10 02:05:05 +00:00
Dan Willemsen
c28d591b36 Merge changes I93cf24d4,I32e438ef
am: 30798ad13a

Change-Id: I0b178c8523d0c5829d731f6ed05cfa3fe89ad9b4
2017-09-10 01:44:06 +00:00
Dan Willemsen
d3eac266b0 Convert host tools to Android.bp
See build/soong/README.md for more information.

Test: m libinstrumentation interrupter accessorychat accessorytest bit obbtool pbkdf2gen libsplit-select_tests split-select protoc-gen-javastream validatekeymaps libaapt_tests aapt
Test: mmma frameworks/base
Test: out/host/linux-x86/nativetest64/libaapt_tests/libaapt_tests
Test: out/host/linux-x86/nativetest64/libsplit-select_tests/libsplit-select_tests
Change-Id: I93cf24d4b232353a52d53be8ed85781b8f4a3877
2017-09-09 06:18:48 +00:00
John Reck
f138b174fd Fix flicker from multiwindow resize
Move content bounds into DrawFrameTask. This ensures
that changes in bounds are synchronized with changes in
rendering commands, avoiding potential underdraw.

Bug: 64200212
Test: Repro steps in bug. Drag up/down on resize handle, verify
no flicker.

Change-Id: I3109acf262e23c2a7d8904f1dcbfc8273aaed65b
2017-09-08 11:00:42 -07:00
Derek Sollenberger
8ec9e88cda Enable multi-threading of cpu intensive tasks when using Skia pipelines
Test: CtsUiRenderingTestCases
Change-Id: Ifa36371f55d3f2d78faf0a23fb283c904ff1af5f
2017-09-08 10:24:27 -04:00
Yi Jin
0f0471623e Implement Pii Stripper Part 3
The incident request args sets privacy spec. Strip action is optimized
to run once for each type of spec and ready for flush multiple times.
Incident command is updated to take -p option to specify privacy spec.

Bug: 64687253
Test: unit tests written, manually run incident command to test as well
Change-Id: I6753df117f76dc1a5f4d2152baa3fbbf56b490e4
2017-09-07 10:53:51 -07:00
Adam Lesinski
92c2fc4fb7 Merge "Merge "idmap: include idmap version in check for stale file" am: 609887a980 am: a15992086c am: d7f3a7b095" into oc-mr1-dev-plus-aosp
am: 9964aa9160

Change-Id: Ibeb55f3d4b7c10b1d192bbea06ce293509e695bb
2017-09-06 22:23:30 +00:00
Adam Lesinski
d0a60f9406 Merge "idmap: include idmap version in check for stale file" am: 609887a980 am: a15992086c
am: d7f3a7b095

Change-Id: I7f580393d3eb044f69b9017c7528dd4e19a35aba
2017-09-06 21:08:35 +00:00
Adam Lesinski
a15992086c Merge "idmap: include idmap version in check for stale file"
am: 609887a980

Change-Id: I4779cd92041fe33a95c0034c539c48989ca8e6df
2017-09-06 20:36:28 +00:00
Derek Sollenberger
f7df184fa1 Only flush after all layers are drawn instead of after each layer.
This approach avoids paying for any extra overhead in flushing
commands from Skia to the GPU.

Test: LauncherJankTests#testOpenAllAppsContainer
Change-Id: Ie4be3592d1b032a06d848c994b8be435638d24c8
2017-09-05 14:37:28 -04:00
Derek Sollenberger
04f1f01139 Switch default renderer to back to Skia's OpenGL pipeline once more.
Bug: 63910712
Test: CtsGraphicsTestCases, CtsUiRenderingTestCases, CtsViewTestCases
Change-Id: Idb862a0dece6b13dc7a105f6a47e4e33911ecc4a
2017-09-05 13:12:19 +00:00
Mårten Kongstad
42ebcb80b5 idmap: include idmap version in check for stale file
Teach is_idmap_stale_fd to include the idmap version in the list of
criteria used to determine if an idmap file is already up to date.

Change-Id: I3e4e2aa502fe76a034c3977bdb055a1df7e665be
2017-09-04 13:16:16 +02:00
Chris Craik
1346202dbc Merge "Add test for first draw blend behavior in HWUI pipeline" into oc-mr1-dev am: 8f50f52eb2
am: 391a7e694a

Change-Id: Ib79c2c3ad22c27c3405313c62e0cfeebf0f35729
2017-09-02 00:59:36 +00:00
Chris Craik
391a7e694a Merge "Add test for first draw blend behavior in HWUI pipeline" into oc-mr1-dev
am: 8f50f52eb2

Change-Id: Iefa8ffe5b27c2499fe03575056ba5c6f6de0ebf6
2017-09-02 00:47:20 +00:00
Chris Craik
01ed792ade Add test for first draw blend behavior in HWUI pipeline
Bug: 65077146
Test: BakedOpRendererTests
Change-Id: Ia3139a01fe25344a19f2b947069bd686303b9fd5
2017-09-01 14:39:18 -07:00
Chris Craik
9a43f654d7 Merge "Fix blending behavior with first draw op" into oc-mr1-dev am: da910e805b
am: 02f3efdeff

Change-Id: Ib0f28495a0f5028657cbb4f4cab58642779d8227
2017-09-01 04:24:06 +00:00
Chris Craik
02f3efdeff Merge "Fix blending behavior with first draw op" into oc-mr1-dev
am: da910e805b

Change-Id: I167213959eac6ba72a1e8ca32fcd4e536e56aeee
2017-09-01 04:11:02 +00:00
Chris Craik
e47aadd9b8 Fix blending behavior with first draw op
Bug: 65077146
Test: Manual - uirendering tests don't allow test draw content
to be displayed first.

It's not always valid to disable blending on the first draw to the framebuffer,
since some blend modes affect the framebuffer in different ways. We now only
disable blending if the op is SRC_OVER to be safe.

For example:

    canvas.drawColor(0xfeff0000, PorterDuff.Mode.CLEAR);
    canvas.drawColor(Color.BLUE, PorterDuff.Mode.DST_OVER);

The BLUE should always be seen - the other draw should just clear the buffer.
Prior to this fix, the above code (put in a window background) would draw black.

In addition, this removes the disable behavior in drawRects(), since that should
never benefit from the optimization - that decoration is always drawn at the end
of a frame.

Change-Id: I34e8d9d62d6e1dfa00e9301f44c277475f2940a8
2017-08-31 17:45:39 -07:00
Derek Sollenberger
7fe53c1eaf Render VectorDrawables in software and then upload to the VDAtlas.
For frames with multiple VDs the context switching involved was causing
worst case frame times of ~40ms to draw all VDs in the frame whereas
this new approach has worst case performance of ~5ms when drawing the
same frame (w/ approximately 26 VDs).

Bug: 64487466
Test: SystemUiJankTests#testGoToFullShade
Change-Id: I5cad0b5df86e5eac3722ee8695fc7511b38b8a7c
2017-08-31 15:50:41 -04:00
Derek Sollenberger
9552c2c98c Adding traces and some generic cleanup.
Test: CtsUiRenderingTestCases
Change-Id: I6863eca20bf6ca2d17e9867c3c3ac12cb35dc809
2017-08-31 15:37:52 -04:00