• Home
  • History
  • Annotate
  • only in /frameworks/native/services/surfaceflinger/tests/
History log of /frameworks/native/services/surfaceflinger/tests/
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
41b08b5e97b04d726fb8bbacddbce563a1c890f9 02-Jun-2017 Robert Carr <racarr@google.com> SurfaceFlinger: Fix final cropping of child layers.

Straightforward mistake documented by the test case. Not sure how it
made it this long.

Test: Included in Transaction_test.cpp. Manual from bug. go/wm-smoke.
Bug: 37511473
Change-Id: I87a57825cca879c5519fe72fef199168f7c23479
ransaction_test.cpp
7bf247e2db180da661b18084d50e0b389686fc0c 18-May-2017 Robert Carr <racarr@google.com> SurfaceFlinger: setGeometryAppliesWithResize crop latching fixes.

The same sort of thing we had with setPosition...not sure why I didn't
realize we would need the fixes here too! In particular we need to ensure
the following scenarios work:

1. Additional calls to set(Final)Crop while in the setGeometryAppliesWithResize
state are eventually applied.
2. Additional calls to set(Final)Crop while in the setGeometryAppliesWithResize
state are not immediately applied.
3. In LayerRejector.cpp we have to be sure we are not just latching a buffer
at the old size, which we still allow. This is the correct time to latch
the transparentRegion as it is content dependent, but doesn't represent
a size changing.

The difference between this and the original CL which was reverted has to do with
point 3. The original CL tried to solve point 3 by moving the latching logic from
the LayerRejecter in to Layer::doTransaction. However, in general doTransaction
will not be called in between Latching the buffer and drawing the frame, so this
introduced errors. The new test "FinalCropLatchingBufferOldSize" encapsulates this.

Bug: 37621737
Bug: 37531386
Test: Included in Transaction_test.cpp
Change-Id: I14bd09d01ac6b85895caa1b707d6fa7dac962074
ransaction_test.cpp
a3ed032256c475ce13c52b0261da6a5e2ffa77be 16-May-2017 Rob Carr <racarr@google.com> Revert "SurfaceFlinger: setGeometryAppliesWithResize crop latching fixes."

This reverts commit 1e079c2804edfae77925150280fe79418e58750b.

Bug: 38331032
Change-Id: Ib703b7b80a940550487a80d8ad62947e4becae93
ransaction_test.cpp
1e079c2804edfae77925150280fe79418e58750b 09-May-2017 Robert Carr <racarr@google.com> SurfaceFlinger: setGeometryAppliesWithResize crop latching fixes.

The same sort of thing we had with setPosition...not sure why I didn't
realize we would need the fixes here too! In particular we need to ensure
the following scenarios work:

1. Additional calls to set(Final)Crop while in the setGeometryAppliesWithResize
state are eventually applied.
2. Additional calls to set(Final)Crop while in the setGeometryAppliesWithResize
state are not immediately applied.
3. When we latch the buffer completing the resize...current hasn't been swapped
to drawing...which means our location in LayerRejector.cpp was the wrong
place to update the crop. This raises questions about whether the
Transparent region latching works.

Bug: 37531386
Test: Included in Transaction_test.
Change-Id: I5140d44fd5e591a4afe5bddc201db45f7bcb5674
ransaction_test.cpp
412903fce3a93f411c85c54375a1851bfb370400 27-Apr-2017 Dan Stoza <stoza@google.com> SurfaceFlinger: Select which layer state to visit

Modifies the traverseIn[Reverse]ZOrder methods to also take an enum
value specifying whether to traverse the current state or the drawing
state.

This has the effect of fixing a bug where we weren't performing
transactions on a child layer because its parent was only visiting its
drawing layers (rather than its current layers) and was thus skipping
the child, which had not yet been moved from current to drawing.

Bug: 36858924
Test: ChildLayerTest.Bug36858924 doesn't hang
Change-Id: I1959f40bc07e77864ba024511d429592a398a67a
ransaction_test.cpp
1725eeeb7db8a2c933dcc9d01cce14e17c76c6e6 27-Apr-2017 Robert Carr <racarr@google.com> SurfaceFlinger: Correct extra parent scaling with buffer transforms.

We need to account for the buffer transform when calculating the extra
parent scaling.

Bug: 37673612
Test: Regression test included in Transaction_test
Change-Id: Ice21f1ecf3789358646d95c753ee361f50c0d246
ransaction_test.cpp
9b429f41cbd5964f96f9fb746af3b6932e4acc66 17-Apr-2017 Robert Carr <racarr@google.com> SurfaceFlinger: Inherit non-transform Scaling from parent.

When a Layer is fixed-size, we may apply additional scaling
to the buffer not accounted for in the transform. This means
that if the WindowManager calls setSize we will scale the parent
surface but not the child surfaces, breaking the contract that
the WM can treat the child surfaces as pixels in the parent.

Test: Included test in Transaction_test.
Bug: 36820947
Bug: 37344435
Change-Id: I5478bad176388fe8e5407379bc36cdfd6600ab97
ransaction_test.cpp
db66e627ad8904491e384c64f82fc77a939b9705 11-Apr-2017 Robert Carr <racarr@google.com> SurfaceFlinger: Add parent-less relative layering.

This is a temporary functionality for the intermediate state where not
all child-surface like things in WM land are ported to use Child
Surfaces. In particular, we have ported SurfaceView to use child
surfaces and relative Z ordering. However the TV frameworks provide a
View framework component which overlays views over the SurfaceView but
below the main application window. Since we have not ported View
framework surfaces to use child layers, there is nothing the WM or
View Framework can do about this situation. Luckily the WM API's to
have requested this are @hide but we have the one media framework
component using it. In order to solve this issue we provide a method
to set Z ordering relative to another window without inheriting
its coordinate space as a child window would. This way the WM can
recognize these TYPE_APPLICATION_MEDIA_OVERLAY windows and Z-order
them at -1 with respect to the parents (and the SurfaceView can be at
-2).

Test: Included in transaction tests. Also manual test of bug repro steps with accomp frameworks/base CL
Bug: 36693738
Change-Id: I921852d3d34f67f79ec745b9703f9e679867e7a1
ransaction_test.cpp
6452f12c95e855a96ab8f690f28914cd37de762b 21-Mar-2017 Robert Carr <racarr@google.com> SurfaceFlinger: Inherit Alpha for child surfaces.

Necessary for various animations to work correctly and
for the general goal of treating child surfaces like
pixels in the parent surface.

Test: Includes new test in SurfaceFlinger_test
Bug: None yet ;)
Change-Id: Ic8309518bd327bbba6ad2f79f265e24cf37898e7
ransaction_test.cpp
8b71dc3c7e57c2cbed47934c00bb440ac43f3832 21-Mar-2017 Robert Carr <racarr@google.com> Add SurfaceFlinger test filter for presubmit.

HWC2 tests and SurfaceInterceptor tests aren't yet passing. See
second attached bug for more context on test filters for pre-submit.

Test: Verify Surfaceflinger_test.filter appears in output folder after build.
Bug: 36117490
Bug: 36359778
Change-Id: If3199d7c005722c235f065766f2961e2ed2d6e0d
ndroid.mk
urfaceFlinger_test.filter
8d5227b8416b099c884429312daf2d60496fa484 16-Mar-2017 Robert Carr <racarr@google.com> Include finalCrop in setGeometryAppliesWithResize.

A refresher on this archaic function. Normally window crop and
position apply immediately. This is so the window manager can always
crop surfaces (e.g. while docked resizing) even if the app is lagging
behind. In some cases though the apps position or cropping may depend
on whether the resize has occured or not. For example when an app
gains shadows, we need to move expand the Surface and move it by a
negative offset for the content to remain in the same place. This
movement needs to be synchronized with the buffer latching for the
expansion.

We implemented setGeometryAppliesWithResize to take care of this. At
the time it wasn't clear if it was needed for finalCrop so we let it
be. Now that we are exclusively using final crop in the pinned stack
however it is required. The same way we have an issue with position
and shadows, we have an issue with expanding the crop rect (we may
have actually been cropping out part of a larger surface that is now
supposed to be shadows).

Also includes a test suite for setGeometryAppliesWithResize behavior
which was previously untested.

Bug: 35396882
Test: SurfaceFlinger_test
Change-Id: Ie4d32162eb21154496bb231161692d18341a1e1e
ransaction_test.cpp
9f3283a11aa74e2afdcde38d290f08323c537456 16-Mar-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Add a simple SurfaceFlinger stress test."
eb8939942d917c8f4b200a4cdafdf8c39aacff82 10-Mar-2017 Robert Carr <racarr@google.com> Add a simple SurfaceFlinger stress test.

Obviously such tests are always a little arbitrary but this one
seems pretty useful. It runs in ~2 seconds, I got 10 passes in a row with
the fix for 36117490 applied, and 3 system restarts in a row (before giving up)
without the fix applied. Clean up the other tests in preparation for presubmit enabling.

Test: Quis custodiet ipsos custodes?
Bug: 36117490
Change-Id: Ifef2ff4e51aa9af193ddf003fe4aba053b28738f
ndroid.mk
tress_test.cpp
urfaceInterceptor_test.cpp
bb68dcc8af3833e8d15102d898909563778bee85 15-Mar-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "test-hwc2: fix build error from ui/mat4.h include"
ff4bc528be20936c496d4fbf006c97f7972dc8ff 15-Mar-2017 Marissa Wall <marissaw@google.com> Merge "test-hwc2: fix build errors on other branches" am: ea8d46f1ab am: acfd2a846b
am: 96074086df

Change-Id: Iac974deaf0c4a0df9512ff666ff382a18ad270b6
dde19448624ca514e0598f0343029c1ca4960c05 14-Mar-2017 Marissa Wall <marissaw@google.com> test-hwc2: fix build error from ui/mat4.h include

ui/mat4.h is located at math/mat4.h on internal master. Change
test cases to reflect that.

Test: run the test-hwc2 tests

Change-Id: I1d2fb59efc2fcea40dc901664dc43841c5454353
wc2/Android.mk
wc2/Hwc2TestBuffer.cpp
0fa8676f2f301bc2a071a2ded35e21fcb9323212 14-Mar-2017 Marissa Wall <marissaw@google.com> test-hwc2: fix build errors on other branches

Currently, test-hwc2 does not build on other branches due to
differences in GraphicBufferAlloc. Switch to directly allocating
graphic buffers.

Test: run the test-hwc2 tests

Change-Id: I63a058a9b0bf48d1e3236f5e124ecaa1dfb4593a
wc2/Hwc2TestBuffer.cpp
wc2/Hwc2TestBuffer.h
2676e92d321ad7ad5c16ecbd1313505c7396511f 14-Mar-2017 Rob Carr <racarr@google.com> Merge "Revert "Add a simple SurfaceFlinger stress test.""
b7fbaf2c2e11f62f273059955730e7f24f0d7be5 14-Mar-2017 Rob Carr <racarr@google.com> Revert "Add a simple SurfaceFlinger stress test."

This reverts commit 2d906b41c0720ba90fab20fe4ddae2400f9bbbd7.

Reason for revert: Semantic conflict introduced build break...

Change-Id: I3dbd11a8f73ab2636a732693639edcf869be8033
ndroid.mk
tress_test.cpp
urfaceInterceptor_test.cpp
57f7d10741b0a9f67d0f615d901825ea9547b962 13-Mar-2017 Rob Carr <racarr@google.com> Merge "Add a simple SurfaceFlinger stress test."
a96d2f1d7e27b307dbc6eed6eef53f36bdb28ce2 13-Mar-2017 Marissa Wall <marissaw@google.com> Merge changes from topic 'test-hwc2' am: 29943c1971 am: 92360b14a0
am: d47b3c13da

Change-Id: I616fe5646001c45933d466ee77824dc435819c5b
2d906b41c0720ba90fab20fe4ddae2400f9bbbd7 10-Mar-2017 Robert Carr <racarr@google.com> Add a simple SurfaceFlinger stress test.

Obviously such tests are always a little arbitrary but this one
seems pretty useful. It runs in ~2 seconds, I got 10 passes in a row with
the fix for 36117490 applied, and 3 system restarts in a row (before giving up)
without the fix applied. Clean up the other tests in preparation for presubmit enabling.

Test: Quis custodiet ipsos custodes?
Bug: 36117490
Change-Id: Ieb9a113f5b21ffb4b8ccd933069ab44e0a2b7a9d
ndroid.mk
tress_test.cpp
urfaceInterceptor_test.cpp
ae7d324fcad6d561bc0ee460f296ff2ad8306b00 15-Dec-2016 Marissa Wall <marissaw@google.com> test-hwc2: dump

Test: Add "#define HAVE_NO_SURFACE_FLINGER" to
frameworks/native/libs/gui/BufferQueueCore.cpp.
Recompile and flash.
Run "mm" in frameworks/native/services/surfaceflinger/tests/hwc2.
Push test-hwc2 to device.
Run "adb root && adb shell stop".
Run test case. Ex: "./test-hwc2"

Change-Id: I0215fea464fd126b5f9041435bef7e00b46c6ac8
wc2/Hwc2Test.cpp
bad1bc78ef50648fadbe725a1fe1c28d62097351 21-Feb-2017 Marissa Wall <marissaw@google.com> test-hwc2: virtual displays

Test: Add "#define HAVE_NO_SURFACE_FLINGER" to
frameworks/native/libs/gui/BufferQueueCore.cpp.
Recompile and flash.
Run "mm" in frameworks/native/services/surfaceflinger/tests/hwc2.
Push test-hwc2 to device.
Run "adb root && adb shell stop".
Run test case. Ex: "./test-hwc2"

Change-Id: Ia10ec761712ee03f56782e3df2d6eabf7fb77760
wc2/Android.mk
wc2/Hwc2Test.cpp
wc2/Hwc2TestProperties.cpp
wc2/Hwc2TestProperties.h
wc2/Hwc2TestVirtualDisplay.cpp
wc2/Hwc2TestVirtualDisplay.h
35040c559d26d00d6123c894cfc9573b0a5aa860 15-Dec-2016 Marissa Wall <marissaw@google.com> test-hwc2: color and hdr requests

Test: Add "#define HAVE_NO_SURFACE_FLINGER" to
frameworks/native/libs/gui/BufferQueueCore.cpp.
Recompile and flash.
Run "mm" in frameworks/native/services/surfaceflinger/tests/hwc2.
Push test-hwc2 to device.
Run "adb root && adb shell stop".
Run test case. Ex: "./test-hwc2"

Change-Id: Id515de0fac7e842724ae8f27e865fad4933256e6
wc2/Hwc2Test.cpp
563030b4402f4b9aa08cece732f2a4a756a0f72c 21-Feb-2017 Marissa Wall <marissaw@google.com> test-hwc2: present display

Test: Add "#define HAVE_NO_SURFACE_FLINGER" to
frameworks/native/libs/gui/BufferQueueCore.cpp.
Recompile and flash.
Run "mm" in frameworks/native/services/surfaceflinger/tests/hwc2.
Push test-hwc2 to device.
Run "adb root && adb shell stop".
Run test case. Ex: "./test-hwc2"

Change-Id: I845320afdf635d1716310d1183bcb10515615517
wc2/Android.mk
wc2/Hwc2Test.cpp
wc2/Hwc2TestLayer.cpp
wc2/Hwc2TestLayer.h
wc2/Hwc2TestLayers.cpp
wc2/Hwc2TestLayers.h
wc2/Hwc2TestProperties.h
f18cfb0a780c69f12439457ccc3f5272db767fdd 21-Feb-2017 Marissa Wall <marissaw@google.com> test-hwc2: add client target support

Test: Add "#define HAVE_NO_SURFACE_FLINGER" to
frameworks/native/libs/gui/BufferQueueCore.cpp.
Recompile and flash.
Run "mm" in frameworks/native/services/surfaceflinger/tests/hwc2.
Push test-hwc2 to device.
Run "adb root && adb shell stop".
Run test case. Ex: "./test-hwc2"

Change-Id: I94c86795b2e334df0570c6c5a3cbbcb5a8ca2826
wc2/Android.mk
wc2/Hwc2Test.cpp
wc2/Hwc2TestBuffer.cpp
wc2/Hwc2TestBuffer.h
wc2/Hwc2TestClientTarget.cpp
wc2/Hwc2TestClientTarget.h
wc2/Hwc2TestLayers.cpp
wc2/Hwc2TestLayers.h
706178db2a89e2bf44e95bfad74dc4451a277b3d 15-Dec-2016 Marissa Wall <marissaw@google.com> test-hwc2: get and accept display changes

Test: Add "#define HAVE_NO_SURFACE_FLINGER" to
frameworks/native/libs/gui/BufferQueueCore.cpp.
Recompile and flash.
Run "mm" in frameworks/native/services/surfaceflinger/tests/hwc2.
Push test-hwc2 to device.
Run "adb root && adb shell stop".
Run test case. Ex: "./test-hwc2"

Change-Id: Ia1d1a0ee5fce43e7904ee49f13a86df0e7adc428
wc2/Hwc2Test.cpp
1cd789cd2b300427467586f4ec721a8123f118b7 27-Jan-2017 Marissa Wall <marissaw@google.com> test-hwc2: validate display

Test: Add "#define HAVE_NO_SURFACE_FLINGER" to
frameworks/native/libs/gui/BufferQueueCore.cpp.
Recompile and flash.
Run "mm" in frameworks/native/services/surfaceflinger/tests/hwc2.
Push test-hwc2 to device.
Run "adb root && adb shell stop".
Run test case. Ex: "./test-hwc2"

Change-Id: I9a9df2902213d99d4f043e3bdea1e5e2fc77b01d
wc2/Hwc2Test.cpp
wc2/Hwc2TestLayer.cpp
wc2/Hwc2TestLayer.h
wc2/Hwc2TestLayers.cpp
wc2/Hwc2TestLayers.h
wc2/Hwc2TestProperties.cpp
wc2/Hwc2TestProperties.h
f7618ed1b4d806e06c872c0fccce57163cf93b6a 15-Dec-2016 Marissa Wall <marissaw@google.com> test-hwc2: set layer visible region

Test: Add "#define HAVE_NO_SURFACE_FLINGER" to
frameworks/native/libs/gui/BufferQueueCore.cpp.
Recompile and flash.
Run "mm" in frameworks/native/services/surfaceflinger/tests/hwc2.
Push test-hwc2 to device.
Run "adb root && adb shell stop".
Run test case. Ex: "./test-hwc2"

Change-Id: I0e620fa6763d258d7875da9bf85d41c182e015d2
wc2/Hwc2Test.cpp
wc2/Hwc2TestLayer.cpp
wc2/Hwc2TestLayer.h
wc2/Hwc2TestLayers.cpp
wc2/Hwc2TestLayers.h
wc2/Hwc2TestProperties.cpp
wc2/Hwc2TestProperties.h
5a240aaf0e3a1dd52be6a8d0811ec727369a210d 15-Dec-2016 Marissa Wall <marissaw@google.com> test-hwc2: set layer buffer

Test: Add "#define HAVE_NO_SURFACE_FLINGER" to
frameworks/native/libs/gui/BufferQueueCore.cpp.
Recompile and flash.
Run "mm" in frameworks/native/services/surfaceflinger/tests/hwc2.
Push test-hwc2 to device.
Run "adb root && adb shell stop".
Run test case. Ex: "./test-hwc2"

Change-Id: Ie42d1fd4c2d0248c4a3ecf09a9b5871d501f6172
wc2/Android.mk
wc2/Hwc2Test.cpp
wc2/Hwc2TestBuffer.cpp
wc2/Hwc2TestBuffer.h
wc2/Hwc2TestLayer.cpp
wc2/Hwc2TestLayer.h
wc2/Hwc2TestProperties.cpp
wc2/Hwc2TestProperties.h
ad761818a4426b4e6a0696ba90e05056aa35553c 15-Dec-2016 Marissa Wall <marissaw@google.com> test-hwc2: set layer surface damage

Test: Add "#define HAVE_NO_SURFACE_FLINGER" to
frameworks/native/libs/gui/BufferQueueCore.cpp.
Recompile and flash.
Run "mm" in frameworks/native/services/surfaceflinger/tests/hwc2.
Push test-hwc2 to device.
Run "adb root && adb shell stop".
Run test case. Ex: "./test-hwc2"

Change-Id: Ie30032c7285d76d26e51b36b0cfded909f4c3480
wc2/Android.mk
wc2/Hwc2Test.cpp
wc2/Hwc2TestLayer.cpp
wc2/Hwc2TestLayer.h
wc2/Hwc2TestProperties.cpp
wc2/Hwc2TestProperties.h
2a0aaf9f5a3daeb0525249eda40242bb63f56468 15-Dec-2016 Marissa Wall <marissaw@google.com> test-hwc2: set cursor position

Test: Add "#define HAVE_NO_SURFACE_FLINGER" to
frameworks/native/libs/gui/BufferQueueCore.cpp.
Recompile and flash.
Run "mm" in frameworks/native/services/surfaceflinger/tests/hwc2.
Push test-hwc2 to device.
Run "adb root && adb shell stop".
Run test case. Ex: "./test-hwc2"

Change-Id: I4b265826befcf33c3f71b52bfabc076c48efed5f
wc2/Hwc2Test.cpp
wc2/Hwc2TestLayer.cpp
wc2/Hwc2TestLayer.h
ee24278db26505369c0e917d2a83e7e9fda36e4c 15-Dec-2016 Marissa Wall <marissaw@google.com> test-hwc2: set layer color

Test: Add "#define HAVE_NO_SURFACE_FLINGER" to
frameworks/native/libs/gui/BufferQueueCore.cpp.
Recompile and flash.
Run "mm" in frameworks/native/services/surfaceflinger/tests/hwc2.
Push test-hwc2 to device.
Run "adb root && adb shell stop".
Run test case. Ex: "./test-hwc2"

Change-Id: Ic280f91189a4d6ddd67a33901244714f3c0a46dd
wc2/Hwc2Test.cpp
wc2/Hwc2TestLayer.cpp
wc2/Hwc2TestLayer.h
wc2/Hwc2TestProperties.cpp
wc2/Hwc2TestProperties.h
c57468f1f6dfc870bea10e814a686793e64f6cf3 15-Dec-2016 Marissa Wall <marissaw@google.com> test-hwc2: set layer source crop

Test: Add "#define HAVE_NO_SURFACE_FLINGER" to
frameworks/native/libs/gui/BufferQueueCore.cpp.
Recompile and flash.
Run "mm" in frameworks/native/services/surfaceflinger/tests/hwc2.
Push test-hwc2 to device.
Run "adb root && adb shell stop".
Run test case. Ex: "./test-hwc2"

Change-Id: If3079efd7a035d1d182f04c56dc55300cdcedc47
wc2/Hwc2Test.cpp
wc2/Hwc2TestLayer.cpp
wc2/Hwc2TestLayer.h
wc2/Hwc2TestProperties.cpp
wc2/Hwc2TestProperties.h
600a73b6110d6fdcebe072a9d8e2dbbe6de1c6b7 15-Dec-2016 Marissa Wall <marissaw@google.com> test-hwc2: set layer display frame

Test: Add "#define HAVE_NO_SURFACE_FLINGER" to
frameworks/native/libs/gui/BufferQueueCore.cpp.
Recompile and flash.
Run "mm" in frameworks/native/services/surfaceflinger/tests/hwc2.
Push test-hwc2 to device.
Run "adb root && adb shell stop".
Run test case. Ex: "./test-hwc2"

Change-Id: I4431ad0d207924b9fcde2c4c2f34382ec8ddc4d8
wc2/Hwc2Test.cpp
wc2/Hwc2TestLayer.cpp
wc2/Hwc2TestLayer.h
wc2/Hwc2TestLayers.cpp
wc2/Hwc2TestLayers.h
wc2/Hwc2TestProperties.cpp
wc2/Hwc2TestProperties.h
273b1dfa05287a0016ae1fc230cd3a5b1b7433fa 15-Dec-2016 Marissa Wall <marissaw@google.com> test-hwc2: set layer z order

Test: Add "#define HAVE_NO_SURFACE_FLINGER" to
frameworks/native/libs/gui/BufferQueueCore.cpp.
Recompile and flash.
Run "mm" in frameworks/native/services/surfaceflinger/tests/hwc2.
Push test-hwc2 to device.
Run "adb root && adb shell stop".
Run test case. Ex: "./test-hwc2"

Change-Id: I2c51df36d62f9d809583003b81c24dbd7a744301
wc2/Android.mk
wc2/Hwc2Test.cpp
wc2/Hwc2TestLayer.cpp
wc2/Hwc2TestLayer.h
wc2/Hwc2TestLayers.cpp
wc2/Hwc2TestLayers.h
ac10819373b1ed4901f26c822484a789a7ca4be0 15-Dec-2016 Marissa Wall <marissaw@google.com> test-hwc2: set layer transform

Test: Add "#define HAVE_NO_SURFACE_FLINGER" to
frameworks/native/libs/gui/BufferQueueCore.cpp.
Recompile and flash.
Run "mm" in frameworks/native/services/surfaceflinger/tests/hwc2.
Push test-hwc2 to device.
Run "adb root && adb shell stop".
Run test case. Ex: "./test-hwc2"

Change-Id: I55e318cbddf957d1728435488c6283f8ce77a3d6
wc2/Hwc2Test.cpp
wc2/Hwc2TestLayer.cpp
wc2/Hwc2TestLayer.h
wc2/Hwc2TestProperties.cpp
wc2/Hwc2TestProperties.h
2b1f53060ea8587a428f826cf7890354ff124722 15-Dec-2016 Marissa Wall <marissaw@google.com> test-hwc2: set layer plane alpha

Test: Add "#define HAVE_NO_SURFACE_FLINGER" to
frameworks/native/libs/gui/BufferQueueCore.cpp.
Recompile and flash.
Run "mm" in frameworks/native/services/surfaceflinger/tests/hwc2.
Push test-hwc2 to device.
Run "adb root && adb shell stop".
Run test case. Ex: "./test-hwc2"

Change-Id: I48146953f745dc650ead5a6e9d6f456cf5a9d7ef
wc2/Hwc2Test.cpp
wc2/Hwc2TestLayer.cpp
wc2/Hwc2TestLayer.h
wc2/Hwc2TestProperties.cpp
wc2/Hwc2TestProperties.h
b72b5c9ef4a6235c5bc2c4a3cceb23baf963815b 15-Dec-2016 Marissa Wall <marissaw@google.com> test-hwc2: set layer dataspace

Test: Add "#define HAVE_NO_SURFACE_FLINGER" to
frameworks/native/libs/gui/BufferQueueCore.cpp.
Recompile and flash.
Run "mm" in frameworks/native/services/surfaceflinger/tests/hwc2.
Push test-hwc2 to device.
Run "adb root && adb shell stop".
Run test case. Ex: "./test-hwc2"

Change-Id: Ia5bc9e53815d519e2016f3db12d69c6cc70a9b26
wc2/Hwc2Test.cpp
wc2/Hwc2TestLayer.cpp
wc2/Hwc2TestLayer.h
wc2/Hwc2TestProperties.cpp
wc2/Hwc2TestProperties.h
ffc67daf8b834ff2206d221ce15809cd5f21be55 15-Dec-2016 Marissa Wall <marissaw@google.com> test-hwc2: set layer blend mode

Test: Add "#define HAVE_NO_SURFACE_FLINGER" to
frameworks/native/libs/gui/BufferQueueCore.cpp.
Recompile and flash.
Run "mm" in frameworks/native/services/surfaceflinger/tests/hwc2.
Push test-hwc2 to device.
Run "adb root && adb shell stop".
Run test case. Ex: "./test-hwc2"

Change-Id: Id5a7a568fb81ac9aff388d04077a12765cc135a3
wc2/Hwc2Test.cpp
wc2/Hwc2TestLayer.cpp
wc2/Hwc2TestLayer.h
wc2/Hwc2TestProperties.cpp
wc2/Hwc2TestProperties.h
6bd8bfde4a965b743d3d4ebff5fdaa3db03a4bbc 15-Dec-2016 Marissa Wall <marissaw@google.com> test-hwc2: set layer composition type

Test: Add "#define HAVE_NO_SURFACE_FLINGER" to
frameworks/native/libs/gui/BufferQueueCore.cpp.
Recompile and flash.
Run "mm" in frameworks/native/services/surfaceflinger/tests/hwc2.
Push test-hwc2 to device.
Run "adb root && adb shell stop".
Run test case. Ex: "./test-hwc2"

Change-Id: I9e71d0c01daa70f28031dd8310f2a40d7162a68e
wc2/Android.mk
wc2/Hwc2Test.cpp
wc2/Hwc2TestLayer.cpp
wc2/Hwc2TestLayer.h
wc2/Hwc2TestProperties.cpp
wc2/Hwc2TestProperties.h
dd4087f4eab87607662b7ee87e9e7b1298f7a3fc 15-Dec-2016 Marissa Wall <marissaw@google.com> test-hwc2: get display name

Test: Add "#define HAVE_NO_SURFACE_FLINGER" to
frameworks/native/libs/gui/BufferQueueCore.cpp.
Recompile and flash.
Run "mm" in frameworks/native/services/surfaceflinger/tests/hwc2.
Push test-hwc2 to device.
Run "adb root && adb shell stop".
Run test case. Ex: "./test-hwc2"

Change-Id: I935329c0c572368f25aeefdbc913a7044f655aa5
wc2/Hwc2Test.cpp
572a1eedae1d15a8544c95f0284e5b1216a187d2 15-Dec-2016 Marissa Wall <marissaw@google.com> test-hwc2: enable vsync

Test: Add "#define HAVE_NO_SURFACE_FLINGER" to
frameworks/native/libs/gui/BufferQueueCore.cpp.
Recompile and flash.
Run "mm" in frameworks/native/services/surfaceflinger/tests/hwc2.
Push test-hwc2 to device.
Run "adb root && adb shell stop".
Run test case. Ex: "./test-hwc2"

Change-Id: I704fcf0ef097602440835981a47dc6c3785e332d
wc2/Hwc2Test.cpp
03c917316507dd1c12cdb15a84f5e41576ab4bde 15-Dec-2016 Marissa Wall <marissaw@google.com> test-hwc2: power mode support

Test: Add "#define HAVE_NO_SURFACE_FLINGER" to
frameworks/native/libs/gui/BufferQueueCore.cpp.
Recompile and flash.
Run "mm" in frameworks/native/services/surfaceflinger/tests/hwc2.
Push test-hwc2 to device.
Run "adb root && adb shell stop".
Run test case. Ex: "./test-hwc2"

Change-Id: I4439f8215bb8d0652e6f5ad40f0c4625f7e97f9b
wc2/Hwc2Test.cpp
93dc04fda8de625d780bcd9b3cef15ad7a4932a8 15-Dec-2016 Marissa Wall <marissaw@google.com> test-hwc2: get and set active config

Test: Add "#define HAVE_NO_SURFACE_FLINGER" to
frameworks/native/libs/gui/BufferQueueCore.cpp.
Recompile and flash.
Run "mm" in frameworks/native/services/surfaceflinger/tests/hwc2.
Push test-hwc2 to device.
Run "adb root && adb shell stop".
Run test case. Ex: "./test-hwc2"

Change-Id: I2ac012a27b31e34886e3ec7f04a8bfc3fd1b83c4
wc2/Hwc2Test.cpp
cf935cbfa66ec65a71485e91e63a5929dc2922a1 15-Dec-2016 Marissa Wall <marissaw@google.com> test-hwc2: get display configs and attributes

Test: Add "#define HAVE_NO_SURFACE_FLINGER" to
frameworks/native/libs/gui/BufferQueueCore.cpp.
Recompile and flash.
Run "mm" in frameworks/native/services/surfaceflinger/tests/hwc2.
Push test-hwc2 to device.
Run "adb root && adb shell stop".
Run test case. Ex: "./test-hwc2"

Change-Id: I7aa1200057d9fa3cc7988554e8efcf6db2674584
wc2/Hwc2Test.cpp
1db2e37295cd89946ec5280c1db2dc11bba45ee2 15-Dec-2016 Marissa Wall <marissaw@google.com> test-hwc2: create and destroy layers

Test: Add "#define HAVE_NO_SURFACE_FLINGER" to
frameworks/native/libs/gui/BufferQueueCore.cpp.
Recompile and flash.
Run "mm" in frameworks/native/services/surfaceflinger/tests/hwc2.
Push test-hwc2 to device.
Run "adb root && adb shell stop".
Run test case. Ex: "./test-hwc2"

Change-Id: I508174a871a74d4c4d2843fc0ded84c517553bce
wc2/Hwc2Test.cpp
cfb9a07ff9bcc36afc08cef5874344aec03f18fa 18-Feb-2017 Marissa Wall <marissaw@google.com> test-hwc2: display type support

Test: Add "#define HAVE_NO_SURFACE_FLINGER" to
frameworks/native/libs/gui/BufferQueueCore.cpp.
Recompile and flash.
Run "mm" in frameworks/native/services/surfaceflinger/tests/hwc2.
Push test-hwc2 to device.
Run "adb root && adb shell stop".
Run test case. Ex: "./test-hwc2"

Change-Id: I0b1be456e360ac5a218ca0cd0e9f297e178c8727
wc2/Hwc2Test.cpp
a4b01488e852c0c16df89d04914e6f060dd862e3 18-Feb-2017 Marissa Wall <marissaw@google.com> test-hwc2: register callback functions

Test: Add "#define HAVE_NO_SURFACE_FLINGER" to
frameworks/native/libs/gui/BufferQueueCore.cpp.
Recompile and flash.
Run "mm" in frameworks/native/services/surfaceflinger/tests/hwc2.
Push test-hwc2 to device.
Run "adb root && adb shell stop".
Run test case. Ex: "./test-hwc2"

Change-Id: Ic48431a830115f40e9e851bca8f7c730b06f6529
wc2/Hwc2Test.cpp
4d600057db0c977e75c5d6e2d5f01fa69d30b364 15-Dec-2016 Marissa Wall <marissaw@google.com> test-hwc2: open and close hwc2 device

Test: Add "#define HAVE_NO_SURFACE_FLINGER" to
frameworks/native/libs/gui/BufferQueueCore.cpp.
Recompile and flash.
Run "mm" in frameworks/native/services/surfaceflinger/tests/hwc2.
Push test-hwc2 to device.
Run "adb root && adb shell stop".
Run test case. Ex: "./test-hwc2"

Change-Id: Ie7d3963540b0c96db8251bd745f37beab8dd340b
wc2/Android.mk
wc2/Hwc2Test.cpp
77c073bdbe1b24a332056e1194a6162b7717a848 01-Mar-2017 Rob Carr <racarr@google.com> Merge changes from topic 'surfaceview-without-wm'

* changes:
Add detachChildren transaction.
Add deferTransaction variant taking GraphicBufferProducer.
3b14c2ac6af21b4d37788001908796fc0a1748d8 01-Mar-2017 Rob Carr <racarr@google.com> Merge "SurfaceFlinger: Trivial Transaction_test refactoring."
6961b6bc1f6f172745deee98e7dcb34a3668e4e6 01-Mar-2017 Mathias Agopian <mathias@google.com> Remove unneeded references to IMemory

Test: compiled & run
Bug: cleanup
Change-Id: Ifef6695275f244a420df574b3bc49adb99c93fbf
ransaction_test.cpp
9524cb3b37a91b5741790c77ff24fd825b02bca7 13-Feb-2017 Robert Carr <racarr@google.com> Add detachChildren transaction.

Add SurfaceControl#detachChildren for use by the WindowManager.
This method is used in cases where the WM would previously preserve
windows the client tried to destroy. For example, when becoming invisible
(in the activity lifecycle sense, not in the SurfaceFlinger sense)
an app will destroy its child surfaces. Previously the WM would keep child
windows alive until the animation finishes to prevent glitches. The new
scheme for this is the WM will detach the children at this point,
at which point the parent layer becomes the owner of the children and the WM
can control the lifecycle as it wishes. I also included a test for reparentChildren
as I realized I had forgotten that.

Test: New test in Transaction_test.cpp
Change-Id: I79c22b2ccccceb9bdcc37b70c491bdf33dcf83d2
ransaction_test.cpp
2b91c826ac5fc1d0f9370d02fd8c2373e5ca85d3 22-Feb-2017 Robert Carr <racarr@google.com> SurfaceFlinger: Trivial Transaction_test refactoring.

Make consistent use of the assertBG/FG color helpers
introduced in a past CL.

Test: Existing test passes.
Change-Id: Ic793c195e9ff8a99a3b6fbcfc9995b522c252c9a
ransaction_test.cpp
1f0a16a5d7cd00ba7fda82e7d315afa1fd1303b9 25-Oct-2016 Robert Carr <racarr@google.com> SurfaceFlinger and libgui: Support for child layers.

Add support for parenting Layers in a tree. Layers
follow scene-graph style rules, that is to say:
1. A child is cropped to the final bounds of the parent.
2. A child inherits the parent's transform (including position)
3. A child's Z ordering is relative to the parent and bounded between
the parents siblings.
4. A childs lifetime is bounded by it's parents lifetime.

Test: New tests in Transaction_test plus manual testing with later branches.
Change-Id: I96f8ad863665b9a70b6f845561344c297b7e6eff
ndroid.mk
ransaction_test.cpp
4f89564970a9e8187a1eaa37000bcb50d6dfadc4 14-Oct-2016 Elliott Hughes <enh@google.com> Rely on the platform -std default.

Bug: http://b/32019064
Test: builds
Change-Id: I03f8e660cfff247e061c838d74761a4e61ae15e8
ndroid.mk
ffc9efc4b55df38ac524f20cdd1a2fca8e259fae 28-Jul-2016 Irvel <irvel@google.com> Add display tracing to SurfaceInterceptor

Change-Id: Iaae5a840ca7dca7a9a70dde1ccab0fa3944cd863
urfaceInterceptor_test.cpp
426ab7b1b42ad0f67b9eccd4e068973fc6266ff7 30-Jul-2016 Mukul Sati <msati@google.com> Remove unused variable

Remove an unused local variable in surfaceflinger tests
Change-Id: I30bc41094bb3487bc1d90586eda8d1a87ccae35a
ransaction_test.cpp
c274c6313bee6044208a46137c40fb05f7f6e485 14-Jun-2016 Irvel <irvel@google.com> Add SurfaceInterceptor initial implementation

SurfaceInterceptor allows capturing streams of surface updates
that come into SurfaceFlinger. It captures the creation and
deletion of surfaces, changes to a surface like size or position,
buffer updates, and hw vsync updates (for a complete list of what
is captured see
/frameworks/native/cmds/surfacecapturereplay/proto/src/trace.proto)
SurfaceInterceptor uses a protocol buffer object to store each
trace. This allows for the produced trace to be either played back
into SurfaceFlinger or manually inspected.

To enable the interceptor: service call SurfaceFlinger 1020 i32 1
To disable the interceptor: service call SurfaceFlinger 1020 i32 0

Each trace file will be saved to /data/SurfaceTrace.dat
For SurfaceInterceptor to work SELinux must be set to permissive.

Change-Id: I5adff9dcd19456d86cfd5b1f51096dff9990e086
ndroid.mk
urfaceInterceptor_test.cpp
15311bd8a5e8a8b74e7abe6314c764e02491a12d 02-Jun-2016 Pablo Ceballos <pceballos@google.com> Push empty sync transaction before taking screenshot in tests

Because of ag/1043009 it's now necessary to push an empty sync
transaction before taking a screenshot to ensure that all transactions
have been applied.

Bug 29074285

Change-Id: I9f1b4a5b6b1f39e1ff26d536817aef6f40865177
ransaction_test.cpp
05289c2b78d21308a95ea6ef8f1d8f24359147cd 15-Apr-2016 Pablo Ceballos <pceballos@google.com> SF: Don't pop pending state into mCurrentState

Let mCurrentState always represent the most up to date state, even if
there are transactions we don't want to commit yet. Past snapshots of
the state are kept in mPendingState. In doTransaction(), grab the
correct pending state from mPendingState, but save it to a local copy
that gets committed rather than overriding mCurrentState.

Bug 27205755

Change-Id: Ib0ea809da1954409787c52b8f41d7963a57a6a4c
ransaction_test.cpp
acbe67888f0bd65d5400400f0115bae6bd6199dc 04-Mar-2016 Pablo Ceballos <pceballos@google.com> Add final crop implementation

Bug 26559810

Change-Id: Idaccd13cd625c92d18665ddecebdbb266ea365f3
ransaction_test.cpp
5e4fcbe411f0a941d604d8a9974a02faa3fda170 02-Sep-2015 Pablo Ceballos <pceballos@google.com> SF: Improve surface flinger unit tests

- Fix compiler warnings
- Make checkPixel print out the actual/expected values on failure
- Add unit tests for setLayerStack, setFlags, and setMatrix
- Make the tests work when the display is off

Change-Id: I53ac1279b967fe06ff8cdb10d3ee4c0e2349b2d0
ransaction_test.cpp
d575096d797628d7b39417fef23b78ca6e035d1a 28-Jul-2015 Haixia Shi <hshi@google.com> Add more SF tests to Transaction_test

TEST=verify all tests pass on hammerhead-eng
BUG=none

Change-Id: Idb4df0996ac4ebbef3784ee86bd43c584d62cf1f
ransaction_test.cpp
7ca5a395ec3e6035e04e6bd8b17576ed879d9c79 21-Jul-2015 Haixia Shi <hshi@google.com> Delete outdated SurfaceFlinger tests.

These tests either do not build or no longer make sense. We should
probably write some new tests.

BUG=18138368

Change-Id: I4cc2681ca65e7af1f6bbf921f02a13cd6993581c
esize/Android.mk
esize/resize.cpp
creencap/Android.mk
creencap/screencap.cpp
ransform/Android.mk
ransform/TransformTest.cpp
8dfd1da50d5f09ded74774745ee092e4bcd3ff5d 20-Jul-2015 Haixia Shi <hshi@google.com> Fix build errors in test-resize.

This is one of the SurfaceFlinger tests that doesn't build on TOT.

BUG=18138368

Change-Id: I338867c3b80afd6d5ede462a72566b04280c7964
esize/Android.mk
esize/resize.cpp
5a16a62950de06d48769e29f0c68a154ed7a7a89 21-May-2015 Michael Lentine <mlentine@google.com> Fix surfaceflinger tests.

Update the screenshot code and add correct return values to surface flinger's
capturescreenshot function.

Buf: 18138368

Change-Id: Ieb42d289088589f941502fbd69da7aa939265e07
ransaction_test.cpp
56f8c6c42dab4c3636edb62162088e5d765fa956 26-Feb-2015 Greg Hackmann <ghackmann@google.com> Merge "Error compiling waitforvsync.cpp"
5b06dc00ac143e030292ada48ed8afc0ac079a30 14-Feb-2015 Nanik Tolaram <nanikjava@gmail.com> vsync.cpp test is throwing error whe compiled

frameworks/native/services/surfaceflinger/tests/vsync/vsync.cpp:55:44: error: 'ALOOPER_EVENT_INPUT' was not declared in this scope
loop->addFd(myDisplayEvent.getFd(), 0, ALOOPER_EVENT_INPUT, receiver,
^
frameworks/native/services/surfaceflinger/tests/vsync/vsync.cpp:64:18: error: 'ALOOPER_POLL_WAKE' was not declared in this scope
case ALOOPER_POLL_WAKE:
^
frameworks/native/services/surfaceflinger/tests/vsync/vsync.cpp:67:18: error: 'ALOOPER_POLL_CALLBACK' was not declared in this scope
case ALOOPER_POLL_CALLBACK:
^
frameworks/native/services/surfaceflinger/tests/vsync/vsync.cpp:70:18: error: 'ALOOPER_POLL_TIMEOUT' was not declared in this scope
case ALOOPER_POLL_TIMEOUT:
^
frameworks/native/services/surfaceflinger/tests/vsync/vsync.cpp:73:18: error: 'ALOOPER_POLL_ERROR' was not declared in this scope
case ALOOPER_POLL_ERROR:
^

it is missing one header file

Change-Id: Ie2fb02523a866b13a99edf837f072d101cacb466
Signed-off-by: Nanik Tolaram <nanikjava@gmail.com>
sync/vsync.cpp
ee9701744a01acb558cb1082de9cc1415d0dbaff 13-Feb-2015 Nanik Tolaram <nanikjava@gmail.com> Error compiling waitforvsync.cpp

The waitforvsync.cpp throws error when compiling. Following is the error log

target thumb C++: test-waitforvsync <= frameworks/native/services/surfaceflinger/tests/waitforvsync/waitforvsync.cpp
frameworks/native/services/surfaceflinger/tests/waitforvsync/waitforvsync.cpp: In function 'int main(int, char**)':
frameworks/native/services/surfaceflinger/tests/waitforvsync/waitforvsync.cpp:43:17: error: 'close' was not declared in this scope
close(fd);
^
....
....

make: *** [out/target/product/grouper/obj/EXECUTABLES/test-waitforvsync_intermediates/waitforvsync.o] Error 1

the file is missing #include <unistd.h>

Change-Id: I57728dbde65641cd3138625f9a590f9db8648158
Signed-off-by: Nanik Tolaram <nanikjava@gmail.com>
aitforvsync/waitforvsync.cpp
b79dfe672138805b4f70183fd738d9af58591148 12-Sep-2014 Dan Albert <danalbert@google.com> Clean cruft out of makefiles.

Cleans up manual uses of stlport and bionic (and removes uses of private
bionic headers).

Change-Id: I157309d702e59152adfa3450939082248ae4c043
ndroid.mk
35ffa6a868f1aa650c90956a4129bb70f780fc99 13-Mar-2013 Mathias Agopian <mathias@google.com> Surface can now be created only from an IGraphicBufferProducer

it can't write itself to a parcel, nor can it be created from a
parcel.

Change-Id: I69165d5c54d6024b3e546e80d8b57e3dedda7893
urface/Android.mk
urface/surface.cpp
e3c697fb929c856b59fa56a8e05a2a7eba187c3d 15-Feb-2013 Mathias Agopian <mathias@google.com> Refactoring: Rename SurfaceTextureClient to Surface

Change-Id: Ibed34175ae273608393aaa5f0a7df207dc40d709
ransaction_test.cpp
esize/resize.cpp
9d4e3d2f42e93e2d12bacabe97d307d30c3c20dd 25-Aug-2012 Jeff Brown <jeffbrown@google.com> Banish DisplayID from the SurfaceFlinger API.

Use only display tokens in the API to refer to new displays.

Don't require the caller to specify the display when creating
a surface (since in general a surface could be shown on
any display).

This is intended to be a minimum change just to update the API.
Note that SurfaceFlinger still uses DisplayID in a few places
internally that might cause some features not to work properly
when there are multiple displays (LayerScreenshot, for example).

Change-Id: I3d91eec2da406eefd97bcd53655d403ad865a7e6
ransaction_test.cpp
esize/resize.cpp
creencap/screencap.cpp
urface/surface.cpp
c666cae2d5995097ec49a87e375e2afdd92802b7 26-Jul-2012 Mathias Agopian <mathias@google.com> get rid of the shared-memory control block

Change-Id: If814060aca1d2ff2619d4adcd57296983d207f7f
ransaction_test.cpp
9e0b1f880bd790b6e4643387668c74729b891a10 27-Mar-2012 Colin Cross <ccross@android.com> remove libandroid.so from targets that don't need it

pdk builds don't have libandroid.so available. Remove it from
projects that aren't actually using it.

Change-Id: I100dc84aaf8160c1062a122ef6d5aec0534d73fa
ndroid.mk
90ac799241f077a7b7e6c1875fd933864c8dd2a7 26-Feb-2012 Mathias Agopian <mathias@google.com> fix libgui header location

Change-Id: Iec71706cdd4f29c6904993648ce873e83ef9cafe
ransaction_test.cpp
esize/resize.cpp
creencap/screencap.cpp
urface/surface.cpp
e8c9ec64f06a0a8aeb95a41523c17b53b6128903 09-Feb-2012 Glenn Kasten <gkasten@google.com> createSurface getpid() first parameter was removed

Most of these tests in this directory don't currently build,
but test-surface did build incorrectly by bad luck, using the old API.
test-resize still doesn't build, but when the other build errors
are fixed then it will use the right API.

Change-Id: I388d6d59fe0a2328f352214dcdc28839a24043f0
esize/resize.cpp
urface/surface.cpp
3cf199aef6250552555344944c3e3a6e4ab05f92 01-Feb-2012 Mathias Agopian <mathias@google.com> fix an issue with vsync event delivery

vsync events were sometimes delivered to connected
client who didn't request them. this happened if
another client requested the delivery and that client
was first in the client list.

also fix the vsync test which didn't request any events as
well as DisplayEventReveiver documentation which was misleading
about the necessity to request vsync events.

Change-Id: Ie990fda3f337f8f0042745c4b2cde67936c45686
sync/vsync.cpp
9d4536835248525f32f1504a3d28d5bbfa0a2910 20-Dec-2011 Steve Block <steveblock@google.com> Rename (IF_)LOGD(_IF) to (IF_)ALOGD(_IF) DO NOT MERGE

See https://android-git.corp.google.com/g/156016

Bug: 5449033
Change-Id: I4c4e33bb9df3e39e11cd985e193e6fbab4635298
ransaction_test.cpp
d0566bc26fcf6ca396118701fa11900b627f2c09 18-Nov-2011 Mathias Agopian <mathias@google.com> Add support for sending VSYNC events to the framework

use gui/DisplayEvent to receive the events. Events are
dispatched through a unix pipe, so the API is compatible
with utils/Looper. see gui/DisplayEvent.h for more info.

Bug: 1475048
Change-Id: Ia720f64d1b950328b47b22c6a86042e481d35f09
sync/Android.mk
sync/vsync.cpp
aitforvsync/Android.mk
aitforvsync/waitforvsync.cpp
23c2c5d1c6aaeaeb1804b7aa9b667e7e58c941bb 12-Oct-2011 Jamie Gennis <jgennis@google.com> SurfaceFlinger: add some layer update tests

This change adds two tests for SurfaceFlinger's behavior when updating
the position and size of a layer.

Change-Id: Id5e3ca1d7e629a3bd2c2d28275d80c7f9256d6da
ndroid.mk
ransaction_test.cpp
698c0873cf2e07bdc7fd1e72169aee2a19fa40d7 29-Jun-2011 Mathias Agopian <mathias@google.com> SF transactions are now O(1) wrt IPC instead of O(N).

Change-Id: I57669852cbf6aabae244ea86940a08a5a27ffc43
esize/resize.cpp
urface/surface.cpp
697526bc9e44ce61c88614f98387ae8bbf0a187e 01-May-2011 Iliyan Malchev <malchev@google.com> frameworks/base: android_native_buffer_t -> ANativeWindowBuffer

Change-Id: Idc2eabaa805bb6d308ebb315872623f28d428417
Signed-off-by: Iliyan Malchev <malchev@google.com>
urface/surface.cpp
47d8730a2463f38a695ab95b533b0d9728f266a3 06-Apr-2011 Mathias Agopian <mathias@google.com> remove more unused references to ISurface

Change-Id: I2201f1ca2bb8f203a081d94a0134f798778dfbef
esize/resize.cpp
d87f162026454f5a3e6437ed0c9ef51651a6b939 26-Mar-2011 Mathias Agopian <mathias@google.com> merge libsurfaceflinger_client into libgui

this is the first step in unifying surfacetexture and surface.
for this reason the header files were not moved, as most of them
will eventually go away.

NOTE: currently we keep libsurfaceflinger_client.so as an empty
library to workaround prebuilt binaries wrongly linking against
it.

Change-Id: I130f0de2428e8579033dc41394d093f4e1431a00
esize/Android.mk
creencap/Android.mk
urface/Android.mk
5f7204cb66b5500c814b5987af5db99b2b8fe90c 17-Mar-2011 James Dong <jdong@google.com> Fix missing AOSP copyright headers for more files

o Update the copyright date on InputDispatcher_test.cpp and InputReader_test.cpp
because these two files were moved from other places to the current location,
and were actually created in 2010.

bug - 4119349

Change-Id: Ic93b81ddafb58e9e72a2e9e02ca3d9f173d6dca7
esize/resize.cpp
urface/surface.cpp
a5529c8778c2f407f482fc12165aeb76c0f505c2 08-Dec-2010 Mathias Agopian <mathias@google.com> remove support for PUSH_BUFFER surfaces and overlays

the same functionality is now supported through
the h/w composer HAL, and YUV support in the GPU.

Change-Id: I8146605449954b8e8fd7f78810b7d873c2d8f5bf
verlays/Android.mk
verlays/overlays.cpp
esize/resize.cpp
urface/surface.cpp
0694d0f3b3d016b9eedda13c447e8e7735a4a177 24-Oct-2010 Mathias Agopian <mathias@google.com> fix [3118445] Transform * Transform does not work as expected

The problem wasn't in the multiply operator, but rather in the code
that built the transform from the HAL bitmask.

We now use the multiply operator to build the Transform from the bitmask,
which guarantees, it'll always be correct.

Also added a simple test for Transform.

Change-Id: I09bf3b0e51d92f59d83ea91c4cc94fc2aa0bf227
ransform/Android.mk
ransform/TransformTest.cpp
df85c455c34a920d22a8e3f7459a1cc615efcd27 29-Sep-2010 Mathias Agopian <mathias@google.com> refactored screenshot code

the core screenshot function now can capture the screen at any lower resolution
performing bilinear filtering.

we also now have some client code to interface with the screenshot service.

it's now possible to request a screenshot at a lower resolution.

Change-Id: I33689bba98507ab928d0898b21596d0d2fe4b953
creencap/screencap.cpp
06e7056660d65d4b0bbe1bb2cbf3e779074dbd9f 25-Sep-2010 Mathias Agopian <mathias@google.com> simple test app for screen capture API

Change-Id: I1f7c453508ccfd4faaa8b1279968a358ce3f1e5a
creencap/Android.mk
creencap/screencap.cpp
208cb0772429b9ac800010829ecc7b854bdc2d24 28-Jul-2010 Mathias Agopian <mathias@google.com> fix [2873058] Surface::dequeueBuffer blocks on last buffer, i.e. cannot dequeue all allocated buffers at once.

this situation happened when the last buffer needed to be resized
(or allocated, the first time). the assumption was that the buffer
was in use by SF itself as the current buffer (obviously, this
assumption made no sense when the buffer had never been allocated, btw).

the system would wait until some other buffer became the "front" buffer.

we fix this problem by entirely removing the requirement that the
buffer being resized cannot be the front buffer. instead, we just
allocate a new buffer and replace the front buffer by the new one.

the downside is that this uses more memory (an extra buffer) for a
brief amount of time while the old buffer is being reallocated and
before it has actually been replaced.

Change-Id: I022e4621209474ceb1c671b23deb4188eaaa7285
urface/Android.mk
urface/surface.cpp
81bac09fa6b01dd1495644d9c825c3666762fced 15-Jul-2010 Mathias Agopian <mathias@google.com> move native services under services/

moved surfaceflinger, audioflinger, cameraservice

all native services should now reside in this location.

Change-Id: Iee42b83dd2a94c3bf5107ab0895fe2dfcd5337a8
ndroid.mk
verlays/Android.mk
verlays/overlays.cpp
esize/Android.mk
esize/resize.cpp