82c049843870fc72ff36f48b970dfaf413db0687 |
19-Apr-2017 |
Chris Forbes <chrisforbes@google.com> |
ui: Rework GraphicBuffer + Allocator for 64bit usage Removes gralloc1-style flags, and replaces with HIDL-style single 64bit usage. Internal storage of the usage is still 32bit; to be addressed with a future change. Change-Id: I60062208cbb06bc8cf6c293e7c7e1530c1147912 Bug: b/33350696 Test: Bullhead: booted to launcher, take photo, watch youtube
raphicBuffer.h
raphicBufferAllocator.h
|
cb8405e7e74398aeafc9ef6ddb59af2d7cc6d2a6 |
18-Apr-2017 |
Chia-I Wu <olv@google.com> |
libui: remove gralloc0/gralloc1 support We now talk to HIDL gralloc exclusively. Bug: 37433368 Test: boots Change-Id: Iecd2f9a02c7066b2f33f24c1de57e9c4af8e28f5
ralloc1.h
ralloc1On0Adapter.h
ralloc2.h
raphicBufferAllocator.h
raphicBufferMapper.h
|
5bac7f36ee9d5ed0c2e8a0141909ca94351965a8 |
06-Apr-2017 |
Chia-I Wu <olv@google.com> |
libui: update for revised HIDL gralloc The revised HIDL gralloc is implementable on top of gralloc0 and gralloc1, which enables us to remove all legacy code. However, it lacks the ability to query buffer properties from a buffer handle. GetBufferFromHandle in VR always fails. Bug: 36481301 Test: builds and boots on Pixel Change-Id: Id7cfa2d2172dfc008803860f24fcf4f03ba05f11
ralloc2.h
rallocAllocator.h
rallocMapper.h
raphicBufferAllocator.h
raphicBufferMapper.h
|
e06ad18acd9c679816bdfa79eef206f77998cce4 |
22-Mar-2017 |
Courtney Goeltzenleuchter <courtneygo@google.com> |
Add debug string functions for graphics.h enums Test: see dataspace and colormode details when running with debug Bug: 29940137 Change-Id: I9d3c60b1f9c71c44aba475450c7f867dcd68627e
ebugUtils.h
|
f543e5a7110868647e6dc16788b72ad7de80fa38 |
04-Apr-2017 |
Mathias Agopian <mathias@google.com> |
Remove useless GraphicBuffer() constructor Test: compiled & run Bug: 36869708 Change-Id: I83d80a1cde28671135b7716a434c503aeefcec46
raphicBuffer.h
|
b42f171a5a76985fde2689d90fd6d2d7e4920564 |
21-Mar-2017 |
Chia-I Wu <olv@google.com> |
libui: clean up GraphicBuffer interface Other than transferring the ownership, some callers want to control whether to register or to clone the handle when creating a GraphicBuffer from a handle. Add a new constructor with HandleWrapMethod for finer controls, to replace the one that has only a boolean, keepOwnership. The motivation is to enable users to construct GraphicBuffer without fighting with GraphicBufferMapper::registerBuffer first. More generally, GraphicBufferMapper::{registerBuffer,unregisterBuffer} is tricky to use correctly. They should really be considered private by most. While at it, deprecate constructors that do not distinguish producer/consumer usage. It turns out GraphicBuffer is used by some proprietary libraries. I have to maintain the ABI and cannot remove the deprecated constructors. Bug: 36355756 Test: boots Change-Id: Ieea618d8495f06a6233299d076fb821127cd6bf8
raphicBuffer.h
|
982cf471dcdcda1f29ad0928864d18f8e5243446 |
27-Mar-2017 |
Romain Guy <romainguy@google.com> |
Update native ColorSpace API for libhwui Test: colorspace_test Bug: 32984164 Change-Id: Id0728bfa90192173eb45c2d26a8b81ce970398d7
olorSpace.h
|
6e1193af40c870c50013affec37c8429986b3c7b |
07-Mar-2017 |
Pawin Vongmasa <pawin@google.com> |
Make IGraphicBufferProducer a hybrid interface. android::IGraphicBufferProducer will now become a hybrid interface on top of the HIDL interface android::hardware::graphics::bufferqueue::V1_0::IGraphicBufferProducer. This CL also removes the hybrid interface mechanism from libbinder and splits BufferQueueDefs into two parts, ui and gui. Test: Camera, Photos, YouTube and Play Movies apps. Bug: 35442034 Bug: 33854657 Change-Id: Idbbfdc8d9be375281b533050cea03c56fded9075
ufferQueueDefs.h
|
fe2f54fc8a9810708fe05d719721af19aea10a4a |
16-Feb-2017 |
Mathias Agopian <mathias@google.com> |
cleanup libui’s includes - remove unneeded includes - include a cpp’s header first in all cpps Test: compiled & booted Bug: 35164655 Change-Id: I0890913fcc6614cce156aff19fccdef183145beb
NativeObjectBase.h
isplayInfo.h
ralloc1.h
ralloc1On0Adapter.h
rallocMapper.h
raphicBuffer.h
raphicBufferAllocator.h
raphicBufferMapper.h
|
1d77b719d51a01cbd6954a048fb64e79d50a950e |
18-Feb-2017 |
Mathias Agopian <mathias@google.com> |
move vector math out of libui created a new header-only static libmath lib Test: built & ran Bug: n/a Change-Id: Ic63ef5f54d9a0de07a9ab9e4d67be01ab6169fc0
olorSpace.h
MatHelpers.h
QuatHelpers.h
VecHelpers.h
alf.h
at2.h
at3.h
at4.h
uat.h
calar.h
ec2.h
ec3.h
ec4.h
|
bf3729bf6cfae80d88a0e90eb2e5fc784f02b769 |
18-Feb-2017 |
TreeHugger Robot <treehugger-gerrit@google.com> |
Merge "Add tool to generate color space conversion 3D LUTs"
|
fb94f1db72bd769d4a63e2baf0b5a4ca5da7a86f |
17-Feb-2017 |
TreeHugger Robot <treehugger-gerrit@google.com> |
Merge "Break a dependency of libui on libandroid"
|
25bbdcfb69d0b8fc8957b1630981632d6c9ff85d |
17-Feb-2017 |
Romain Guy <romainguy@google.com> |
Add tool to generate color space conversion 3D LUTs The tool needs to be run on an Android device and must be compiled manually (i.e. it's not compiled as part of a regular Android build). The tool outputs 3D LUTs in a format that can be included directly in a C/C++ file/header. Bug: 32984164 Test: ran lutgen and checked output Change-Id: I96f7d0d088965c3b63c0fb4079ddeaeee7246418
olorSpace.h
|
873e2eee781f323a8aa0283cab5924fa4cd7ecfe |
17-Feb-2017 |
TreeHugger Robot <treehugger-gerrit@google.com> |
Merge "Move FloatRect from libgfx to libui"
|
a9347647eca3101c014be902b713772de3977d87 |
14-Feb-2017 |
Mathias Agopian <mathias@google.com> |
Break a dependency of libui on libandroid This was only a header dependency, but it still created a circular dependency, which will cause problems in another CL. We fix this by creating a libarect static library containing only that header. both libui and libandroid now depend on it and reexport the header. We also make sure rect.h ends-up in the right place. Test: built and booted device Bug: 35164655 Change-Id: Iba25b8b801b26b26ec1401c00caf367a06f197ca
ralloc1On0Adapter.h
ect.h
|
0ed70ddebe2a392c32b010e00229b9f0e2fd2e09 |
17-Feb-2017 |
Romain Guy <romainguy@google.com> |
Merge "Add RGBA 10:10:10:2 format for surfaces"
|
5a423eaa86f4c990afcef8c55e3949d0872068b4 |
16-Feb-2017 |
Dan Stoza <stoza@google.com> |
Move FloatRect from libgfx to libui Moves FloatRect from libgfx (which is being disintegrated) to libui Test: Builds and sailfish boots Change-Id: I68c1b7d86a363066fe4d6f0c038ca9d92d7ab9c7
loatRect.h
ect.h
|
a34320a81c9787958f1b02e93e828472e54864b5 |
16-Feb-2017 |
Dan Stoza <stoza@google.com> |
libui: Remove STL from Fence Renames Fence::hasSignaled to Fence::getStatus, and changes its return type from std::experimental::optional (STL is no longer permitted in libui) to an enum class. Also updates its one caller. Test: Builds and sailfish boots Change-Id: I682039b9fd88bf79f1e2a955944c4a564ed6f60b
ence.h
|
541f22658ab1617c9d12c98684ab40248df8749b |
11-Feb-2017 |
Romain Guy <romainguy@google.com> |
Add RGBA 10:10:10:2 format for surfaces Bug: 2984164 Test: CtsHardwareTestCases Change-Id: Ifc90e413f414a19ac09e923e48ec7ff45d3e930b
ixelFormat.h
|
7bd8adbb2dd02cf07626d27fcd32ae305a35e3ee |
10-Feb-2017 |
Chia-I Wu <olv@google.com> |
libui: add notes to registerBuffer(buffer_handle_t) The method is semi-broken on gralloc0 devices. It calls down to Gralloc1On0Adapter::managementHook, which will return GRALLOC1_ERROR_BAD_HANDLE when the handle is received from a remote process. Test: make Change-Id: Ia0ca2b51e38e8afe66a917ca7fe2282db3968f53
raphicBufferMapper.h
|
841abed655e96e51506ae6a78e6b4dab6740bfd7 |
11-Feb-2017 |
Mathias Agopian <mathias@google.com> |
clean-ups, remove warnings, fix includes. Test: built and run Bug: none Change-Id: I505df89e2263952d90fae432c5eaa7d00056c6f0
raphicBuffer.h
|
5c0a87e5a2cba5c1b199e77f3a42e931e706569b |
10-Feb-2017 |
Mathias Agopian <mathias@google.com> |
Merge "Break dependency of libui on libbinder"
|
21f9b57df9ca0017639e8a2cdd0bb9cfd5c7bda9 |
09-Feb-2017 |
TreeHugger Robot <treehugger-gerrit@google.com> |
Merge "VR: Update VR HWC and VR WM to use GrallocMapper"
|
1c457103ccd9a520b723c1a90189d4e88a0bdd63 |
07-Feb-2017 |
Daniel Nicoara <dnicoara@google.com> |
VR: Update VR HWC and VR WM to use GrallocMapper Removes the gralloc hacks to access buffer internals and re-enables building of VR Window Manager. Bug: b/34878847 Test: Compiled Change-Id: I06aa5ec0428b2f282a36ee89dbc4da9838c25782
raphicBuffer.h
|
e1f5e6fd7ad07778fa4381059852a94567d77dfc |
07-Feb-2017 |
Mathias Agopian <mathias@google.com> |
Break dependency of libui on libbinder the dependency existed only because of HdrCapabilities, which inherited from Parcelable, instead of LightFlatenable<>. An added benefit is that HdrCapabilities isn’t virtual anymore. Also, since the dtor is not trivial, move it to the cpp, to avoid inlining. Fix-up includes. Test: built and booted device Change-Id: Iaf9c4ef9dcc5cb28b29f79d9f7d8f21800223eb8
drCapabilities.h
|
2a902d763f7a04777f8432bc98917d5772070686 |
08-Feb-2017 |
Mathias Agopian <mathias@google.com> |
Merge "move GraphicEnv from libgui to libui"
|
991d2545afb325a3ebb8679519c4b0c13e29fada |
06-Feb-2017 |
Mathias Agopian <mathias@google.com> |
move GraphicEnv from libgui to libui This breaks a circular dependency between libEGL and libgui. Test: compiled and booted a device Change-Id: I78932bba07fb9ef310d8e1622bd3a47f57e89c45
raphicsEnv.h
|
58a1ef23ca0f82cb9b8278f74e8b337947a97b93 |
02-Feb-2017 |
Craig Donner <cdonner@google.com> |
Adds support for more gralloc1 functions to GrallocMapper. Bug: 34939453 Test: added native CTS tests checked with cts-tradefed run cts-dev -m CtsNativeHardwareTestCases Change-Id: I2393f6ec6c7eff5d229a5aa61ff2a52a9366fd1e
ralloc1.h
ralloc1On0Adapter.h
rallocMapper.h
raphicBufferMapper.h
|
e96a325aff9da4e02abeb7b9178592583cf3b78c |
02-Feb-2017 |
Craig Donner <cdonner@google.com> |
Add methods for allocating and locking GraphicBuffers via gralloc1 flags Bug: 34050596 Test: manual Change-Id: I9515e60fe6b67d2c6f02b1bb78651669430f12ef
raphicBuffer.h
raphicBufferAllocator.h
raphicBufferMapper.h
|
eedb69abbde29ad3dd624f1f9dfc72e4f35d5234 |
31-Jan-2017 |
Romain Guy <romainguy@google.com> |
Add ColorSpace::createLUT Generates a 3D LUT of a specified size. The generated LUT is meant to be used as a 3D OpenGL texture for fast color space conversions in shaders. This will be used to convert from P3 bitmaps to scRGB. Bug: 32984164 Test: colorspace_test Change-Id: I01f7276f885c71bde480e79260013d62786b377c
olorSpace.h
VecHelpers.h
|
545347429606f5ef7facbb1639b42e5c9b44b6ec |
28-Jan-2017 |
Romain Guy <romainguy@google.com> |
Add color space connection This will be used to generate a 3D LUT to convert wide gamut bitmaps to the render target's color space at draw time. Bug: 32984164 Test: colorspace_test Change-Id: I1ea8d2b3129dfc8b994c8abc926b24e7e097558c
olorSpace.h
|
11ecb63414d2fea2f4217db8bb06a998bcf8b425 |
28-Jan-2017 |
Romain Guy <romainguy@google.com> |
Add various vector functions - map() - Bool vectors - any(), all(), comparison functions Example: all(lessThan(abs(v1 - v0), epsilon)) Bug: 32984164 Test: vec_test Change-Id: I7d030387f5a280a499ea480015b69138cef38459
VecHelpers.h
ec2.h
ec3.h
ec4.h
|
b621c5f0672244c6f67ef8a24a40ee7a53b89a57 |
16-Jan-2017 |
Brian C. Anderson <brianderson@google.com> |
Merge "Clean up Fence a little."
|
911907815e02f8ddc8bbc852326d65bac9824084 |
14-Jan-2017 |
Brian C. Anderson <brianderson@google.com> |
Merge changes I6f728af0,I580409f0 * changes: Surface unit tests for getFrameTimestamps. Avoid sync calls for unsupported/non-existant times
|
175a7206c5aea70236b916d7707ab25025eb9cd6 |
11-Oct-2016 |
Brian Anderson <brianderson@google.com> |
Clean up Fence a little. Test: Cleanup patch only. Fences still work. Change-Id: I65e5cdf5e3c067bc475c085ab6d3577d9753231c
ence.h
|
3da8d2748580b2575e368e203ce2c7f8d34dea05 |
29-Jul-2016 |
Brian Anderson <brianderson@google.com> |
Surface unit tests for getFrameTimestamps. Verifies the following: 1) The timestamps and fences aren't transferred if the feature isn't explicitly enabled. 2) Attempts to get the timestamps will fail if not enabled. 3) Timestamps are transferred if enabled. 4) The support for Present/Retire timestamps are properly queried from the ISurfaceComposer. 5) Timestamps correspond to the correct frame. 6) The consumer doesn't send the acquire fence back to the producer and a sync call isn't made to try and get it from the producer. 7) A sync call isn't made when no timestamps are requested. 8) If the consumer sent the producer fences, the consumer can get the timestamps without a sync call. 9) If there was no GL composite performed, a sync call isn't made to get a non-existant fence/time. 10) When asking for the retire or release time of the most recent frame, a sync call isn't made. 11) Requests for unsupported timestamps return an error and do not result in a sync call. Test: Test: adb shell /data/nativetest/libgui_test/libgui_test --gtest_filter=*GetFrameTimestamps* Change-Id: I6f728af0d4a0f431c9e47131da64584a589559e7
enceTime.h
|
e0ea99cc4ba89452b9b6b1baa33bddcb11f3351a |
12-Jan-2017 |
Mark Salyzyn <salyzyn@google.com> |
resolve merge conflicts of a2c2d11f9 to master Test: compile Bug: 26552300 Bug: 31289077 Change-Id: I84d0ffa430df3beca0dcc6ed205ce220d7be1f87
|
fbc97581511f1fa6aba808a970afa912706fbdea |
12-Jan-2017 |
Mark Salyzyn <salyzyn@google.com> |
Merge "Replace cutils/log.h and rationalize log/log.h and android/log.h" am: d655e61a22 am: 16a30c1ac8 Change-Id: I697418fbab0dbbd447d0dca2eda5b1545cc2522e
|
7823e124e00576e20e47ec717cbe8bc89f0f2bf2 |
29-Sep-2016 |
Mark Salyzyn <salyzyn@google.com> |
Replace cutils/log.h and rationalize log/log.h and android/log.h - cutils/log.h treat as deprecated and lead by example - android/log.h to be used instead of log/log.h if possible - add system includes that are assumed as side effects - define LOG_TAG first Test: compile Bug: 31289077 Bug: 30465923 Change-Id: I8d99b24c333578c9b5aa9f2a01324bd0bba268dd
ect.h
|
ace30d2b6e1773a381e321d1c0e895c4d40646d4 |
06-Jan-2017 |
Steve Paik <spaik@google.com> |
Merge "Add android/log.h to Rect.h" am: a422103c90 am: 20b8c55a5e am: a58d700c85 am: b6e4061cde Change-Id: I50160499ab02584343f903372de922abd8793218
|
a58d700c852ff981442c2270612ca16f17ca5550 |
06-Jan-2017 |
Steve Paik <spaik@google.com> |
Merge "Add android/log.h to Rect.h" am: a422103c90 am: 20b8c55a5e Change-Id: I48190e464c2667edaf8cf71a27581c8bd929c1be
|
003b412e3378bbd453cae8e5c499294b0d3a4a67 |
05-Jan-2017 |
Steve Paik <spaik@google.com> |
Add android/log.h to Rect.h Rect.h uses definitions from log.h. Test: Build succeeds when C file doesn't include log.h. Change-Id: Ia85372ca61edafadea92165121dc6fbd1546674b
ect.h
|
71bded513d37a6c1260b4a62c69ecc0d24be95f7 |
19-Oct-2016 |
Dan Stoza <stoza@google.com> |
Create libgfx, starting with FloatRect Creates libgfx, the future home of everything currently in libui and libgui, which will be rigorously checked with -Weverything (with a few common-sense exceptions) and clang-tidy and formatted using the included .clang-format file. Starts by moving FloatRect out of services/surfaceflinger since it will be used by other libgfx primitives later. Test: m Change-Id: I5045ac089020e6ee380e81e8735117c500264b37
ect.h
|
316694751e5f20e24ad2eb3cb36d99f5498d373d |
07-Dec-2016 |
Chia-I Wu <olv@google.com> |
libui: use HIDLized gralloc-mapper Test: builds and boots Change-Id: If42bea782e6dda5cab31c270085d934879fcdb54
rallocMapper.h
|
67e376d6564f8b9f996a347c9402bdc9da789321 |
19-Dec-2016 |
Chia-I Wu <olv@google.com> |
Replace non-const references by pointers Use pointers for outputs to be consistent with the rest of libui/libsurfaceflinger. Remove assignFromHidlVec now that hidl_vec can be casted to std::vector. Test: builds and boots Change-Id: I656367028302e7b877a766eaf6aa2431fe07643b
rallocAllocator.h
rallocMapper.h
|
d3e08d4811e13aefd656e3376e7d56e2d37bb388 |
16-Dec-2016 |
Romain Guy <romainguy@google.com> |
Remove RGBX_FP16 format Bug: 32984164 Test: compile Change-Id: I4e0eadc3066717d4644d71cf2684a617bae34a1f
ixelFormat.h
|
e2caadca83c8842bbfe74e21f11b9e2b5aeb4e13 |
15-Dec-2016 |
TreeHugger Robot <treehugger-gerrit@google.com> |
Merge "Add fp16 pixel and window formats"
|
ff415149dc5a83a4eb5960daf2cb2c310ef89847 |
14-Dec-2016 |
Romain Guy <romainguy@google.com> |
Add fp16 pixel and window formats Bug: 32984164 Test: compile Change-Id: I8303afbf857796295a280c0d9438a3c403a11437
ixelFormat.h
|
d46a65c3c37e2c8ff80d5d74145f7e2345b61cd2 |
04-Dec-2016 |
Brian C. Anderson <brianderson@google.com> |
Merge "Add Fence helpers: Time, Timeline, Snapshot"
|
3691aba91aea72a5d285c12328ed19699661602f |
01-Dec-2016 |
Courtney Goeltzenleuchter <courtneygo@google.com> |
Fix typo on function comment Test: NA Change-Id: Iad930615262b3e43f57041ba6cc3f097b4c782ee
at3.h
|
b018bf0e0877b19e3c7cc2697d0b7729c711eadd |
22-Nov-2016 |
Chia-I Wu <olv@google.com> |
libui: update for IAllocator changes Create an IAllocatorClient to allocate/free graphics buffers. Test: builds and boots Change-Id: I9978b61ee2cb6302cce34ed6d740a5616fb7e8f1
rallocAllocator.h
|
221de2a33d456738f7f64db0b015a960211d4834 |
22-Sep-2016 |
Brian Anderson <brianderson@google.com> |
Add Fence helpers: Time, Timeline, Snapshot FenceTime will be used to: 1) Cache and share the result of a Fence's getSignalTime with all clients that care about it, instead of requiring a syscall for each client. 2) Allow tests to override the valid state and signalTimes of the underlying fence by acting as a shim. FenceTimeline will be used to efficiently get the signal times of Fences without having query for Fences that likely haven't signaled. FenceTime::Snapshot is a stable copy of a FenceTime that can be used for serialization since it doesn't change while flattening. Test: adb shell /data/nativetest/libgui_test/libgui_test --gtest_filter=*GetFrameTimestamps* Change-Id: I9a28df7ce797311dc4d56b1147edf590e9de1517
ence.h
enceTime.h
|
5901fda2c112390f0877ed1a916fe824d36b222b |
17-Nov-2016 |
Chia-I Wu <olv@google.com> |
Use android.hardware.graphics.common@1.0 Some types in composer@2.1 and allocator@2.0 are now in common@1.0. Test: builds and boots Change-Id: Ied8e5d1b555cd6bfd2c0381cec537293900d3ffe
rallocAllocator.h
rallocMapper.h
|
13a20a278332f6eb734d9acc4d9a5b35be1e499f |
15-Nov-2016 |
TreeHugger Robot <treehugger-gerrit@google.com> |
Merge "Don't clamp when converting to XYZ"
|
597cd600ab062758857772f266fd82cae89cc75d |
15-Nov-2016 |
Romain Guy <romainguy@google.com> |
Don't clamp when converting to XYZ Test: colorspace_test Bug: 29940137 Change-Id: I37bf0b6a7724e2ee155ab26835847fcbfd58e0fd
olorSpace.h
|
6ebc46a7c01b22bc19d3c00b493f8d930b15b43a |
22-Oct-2016 |
Craig Donner <cdonner@google.com> |
Add layered buffer support to libui and libgui. Bug: 31686534 Test: manual Change-Id: Ia40270701467f4b785660324cad883e7da08989a
ralloc1.h
ralloc1On0Adapter.h
rallocMapper.h
raphicBuffer.h
raphicBufferAllocator.h
|
caf2ca414f69d460c516e2370cf42bcf49178d95 |
10-Nov-2016 |
Romain Guy <romainguy@google.com> |
Add ColorSpace class The ColorSpace class can be used to create an RGB color space from either primaries/whitepoint or an RGB->XYZ matrix. The primaries and whitepoint are in xyY space. A utility function is provided to compute xyY coordinates from XYZ coordinats. The class contains numerous functions to create common RGB color spaces (sRGB, DCI-P3, etc.). Test: colorspace_test Bug: 29940137 Change-Id: Ifba8701377d058f5877176dabf4183e904a4cde0
olorSpace.h
MatHelpers.h
VecHelpers.h
alf.h
at2.h
at3.h
at4.h
uat.h
calar.h
ec2.h
ec3.h
ec4.h
|
5d4bae7f170640e0e280b3ca8a22b18e80801a8a |
08-Nov-2016 |
Romain Guy <romainguy@google.com> |
Merge Filament's math library This math library was derived from Android's and is API compatible. It adds new useful types (quat and half) as well as many missing functions and optimizations. The half type (fp16) is going to be used for HDR/color management. Test: mat_test, quat_test, half_test and vec_test Change-Id: I4c61efb085d6aa2cf5b43cdd194719b3e855aa9b
MatHelpers.h
QuatHelpers.h
VecHelpers.h
alf.h
at2.h
at3.h
at4.h
uat.h
calar.h
ec2.h
ec3.h
ec4.h
|
f873bd4d31c7055695ce74f44b2c97f9df71f5a6 |
18-Oct-2016 |
Dan Stoza <stoza@google.com> |
libui: Change hasSignaled to return optional<bool> am: 6db42ac36e Change-Id: I9b845b9f8c0e752733cca4ee50b2f92573e96a28
|
6db42ac36e69ab203e9078e9f70c2ff762af87cd |
13-Oct-2016 |
Dan Stoza <stoza@google.com> |
libui: Change hasSignaled to return optional<bool> Since the android::Fence::wait() call can possibly return an error, we need some way of indicating to the caller of hasSignaled that a fence that has not yet signaled (because it is in an error state) will never signal. To do this, we return an optional<bool>, where true and false indicate both that the fence is valid and that it has or hasn't signaled. If an error is returned from wait(), we return a default optional value (that is neither true nor false). Test: m Change-Id: Ibce48cd2e71ddb8ccf6cabe3284afe0efca8c132
ence.h
|
0eeb676e662bd9747ff2fbdb854d3dc3448dfbd7 |
13-Oct-2016 |
Dan Stoza <stoza@google.com> |
libui: Change hasSignaled to return optional<bool> Since the android::Fence::wait() call can possibly return an error, we need some way of indicating to the caller of hasSignaled that a fence that has not yet signaled (because it is in an error state) will never signal. To do this, we return an optional<bool>, where true and false indicate both that the fence is valid and that it has or hasn't signaled. If an error is returned from wait(), we return a default optional value (that is neither true nor false). Test: m Change-Id: Ibce48cd2e71ddb8ccf6cabe3284afe0efca8c132
ence.h
|
70d2598ce8ef1833496a0be67f2bb52038286666 |
13-Oct-2016 |
Dan Stoza <stoza@google.com> |
libui: Add hasSignaled() method to Fence am: 5736f7dc15 am: 236c475de4 Change-Id: I31c163114384d0db3fabe52cd24fddc322d300e1
|
236c475de47a41df4dfab4c2716818dce5c12ffa |
13-Oct-2016 |
Dan Stoza <stoza@google.com> |
libui: Add hasSignaled() method to Fence am: 5736f7dc15 Change-Id: I14519e0db9d203d88655906b84e5bac7310ca2df
|
9ba189dc5c03040d45dad2080a81115f48f099c3 |
22-Sep-2016 |
Chia-I Wu <olv@google.com> |
libui: add support for android.hardware.graphics Add Gralloc2::Allocator and Gralloc2::Mapper as wrappers to android.hardware.graphics.allocator@2.0 and android.hardware.graphics.mapper@2.0 respectively. Prefer Gralloc2::{Allocator,Mapper} in GraphicBufferAllocator/GraphicBufferMapper. The new path has these differences - it does not support gralloc0 - it does not dup-and-close fence fds to and from HAL (not sure why we did that) - release implies native_handle_close and native_handle_delete (same as in gralloc1?) When all interesting targets have android.hardware.graphics implementations, the old path will be removed. That is why the new path is added in the least intrusive way, as in: if (new-path-valid) { new-path; } else { old-path; } despite the ugliness. Test: booted to launcher, tested with YouTube and some games Change-Id: Idabb6c62e73c96a59736b497c6d6d1366095e7e3
rallocAllocator.h
rallocMapper.h
raphicBufferAllocator.h
raphicBufferMapper.h
|
5736f7dc1535452799ef2ea2026b7d1465567a31 |
12-Oct-2016 |
Dan Stoza <stoza@google.com> |
libui: Add hasSignaled() method to Fence Adds a hasSignaled() method to android::Fence. This will make it easier to write client code that only cares whether a fence has signaled, and allows such code to gain the performance benefits of wait(0) (which is significantly faster than getSignalTime()) while still being obvious about what it is trying to do. Test: m Change-Id: Ia28ce6cff3860a171254ea20a24f3f1bfbc67eb8
ence.h
|
6a242bac1145da44ac9b7aa3a2a7d44a4bee4eed |
10-Oct-2016 |
Matthew Bouyack <mbouyack@google.com> |
Use snprintf for SurfaceFlinger fence name am: fd4c8c3805 am: c7d352eb17 Change-Id: I41e5e4313af7784cb2ddbd4f278eb4e675cb3a08
|
c7d352eb17bc507d9e28ec878895bd888166e514 |
10-Oct-2016 |
Matthew Bouyack <mbouyack@google.com> |
Use snprintf for SurfaceFlinger fence name am: fd4c8c3805 Change-Id: I16d3eb7cde318f2078be36acea22b9bc84975b63
|
fd4c8c38051f9dad028e4e43e0eb39ba412b2c0a |
07-Oct-2016 |
Matthew Bouyack <mbouyack@google.com> |
Use snprintf for SurfaceFlinger fence name snprintf is significantly faster than String8::format This change saves ~50us per frame on Android Wear Change-Id: I6ac47c2434662ca561208daae232f02a9f136aaf
ence.h
|
00dfc466657b25bdc2e4e063bc41097e7a3f8fa0 |
29-Sep-2016 |
Chih-hung Hsieh <chh@google.com> |
Merge "Fix google-explicit-constructor warnings in gui and ui." am: 170454b0fa am: 5a283bbd40 am: e7f4cb46c4 am: d2c6b7fd1e Change-Id: I557d2a036bb1200349157c0cf872b10dc28f0164
|
d2c6b7fd1e769ad14097bbfb6665dbd146437636 |
29-Sep-2016 |
Chih-hung Hsieh <chh@google.com> |
Merge "Fix google-explicit-constructor warnings in gui and ui." am: 170454b0fa am: 5a283bbd40 am: e7f4cb46c4 Change-Id: I46d36b040e143dd5eedae7597ec7875ab920ac7b
|
170454b0fac58071c42b55f9ad9fcea533fe1ecb |
29-Sep-2016 |
Chih-hung Hsieh <chh@google.com> |
Merge "Fix google-explicit-constructor warnings in gui and ui."
|
a7715f498a757fe50cbba9f4aed4fc45fe231211 |
28-Sep-2016 |
Colin Cross <ccross@android.com> |
Merge "Fix order of operations warning in libui" am: 73d4186757 am: 1b080b15aa am: 544c391292 am: 1f54f9b392 Change-Id: I0e844f953819730fff3539023d5bdeea274ab4d5
|
793c047af86c8f49c811536368976dfc945ec51e |
28-Sep-2016 |
Colin Cross <ccross@android.com> |
Merge "Fix struct vs. class mismatch in forward definitions" am: 8cdcd15c38 am: 5c9421500e am: ef2e1afdc2 am: 8bd2f6c499 Change-Id: Ifbbe4207f744ff55e990b86df0cebb10b59244e2
|
1f54f9b392006ac617712d2d29b790d0432e2195 |
28-Sep-2016 |
Colin Cross <ccross@android.com> |
Merge "Fix order of operations warning in libui" am: 73d4186757 am: 1b080b15aa am: 544c391292 Change-Id: I8fbce66a7a5f41281fa12ce34869f2a1b5e10413
|
8bd2f6c499d1ced6170ca1af3b11a960815822ec |
28-Sep-2016 |
Colin Cross <ccross@android.com> |
Merge "Fix struct vs. class mismatch in forward definitions" am: 8cdcd15c38 am: 5c9421500e am: ef2e1afdc2 Change-Id: I1656836e48b6092602c0a4bf8135084fe8da7df5
|
27224160b09be374d9bb3ccad23a0e51da79cdf3 |
27-Sep-2016 |
Colin Cross <ccross@android.com> |
Fix order of operations warning in libui The warnings were being hidden by the use of -isystem to include frameworks/native/include. Bug: 31752268 Test: m -j Change-Id: I21f34567927125d3eeeecd8f00271a175f93af21
ralloc1On0Adapter.h
|
a2362b44b4053344bdf29481ce4d65705f9346ac |
26-Sep-2016 |
Colin Cross <ccross@android.com> |
Fix struct vs. class mismatch in forward definitions The warnings were being hidden by the use of -isystem to include frameworks/native/include. Bug: 31752268 Test: m -j Change-Id: If2bae8b2fbc4238d6251cdd78bc7b5216684f99d
ralloc1On0Adapter.h
|
5b443e35e5b8c5010e665aa0d6475793cf1440bb |
28-Sep-2016 |
Colin Cross <ccross@android.com> |
Fix constructor parameters shadowing member variables am: 382ecd3d63 am: 6c79fc7bec am: 177b452c8c am: 3dee7b766a Change-Id: I0e557029e344ace9c92dd998ae8482b6f7714402
|
e26b76214f3fe779f5093e1c543c290bf2ae2d9a |
28-Sep-2016 |
Colin Cross <ccross@android.com> |
Use uint32_t consistently for region op am: 8f279960c6 am: 19bf9a2f27 am: 66b52bae7a am: 461b4e449f Change-Id: Idcb2301afeb7142f54e34545c70e948e3dbcb703
|
28f36ea725d2036c43e0fa5e3854397863cd574e |
28-Sep-2016 |
Colin Cross <ccross@android.com> |
Fix trailing semicolon warnings am: 17576de056 am: 170ae8a510 am: df1b5a19fd am: b0300ea6f1 Change-Id: Id0a494fe0f1815225e8ff9e9fdbbd7ed06fb8c58
|
3dee7b766a240b00069cff92e5f7a98bb8ed58aa |
28-Sep-2016 |
Colin Cross <ccross@android.com> |
Fix constructor parameters shadowing member variables am: 382ecd3d63 am: 6c79fc7bec am: 177b452c8c Change-Id: I1798f49b90a0431c84711c531706e96783fa6802
|
461b4e449f433344fb6167d926893944ff3434a5 |
28-Sep-2016 |
Colin Cross <ccross@android.com> |
Use uint32_t consistently for region op am: 8f279960c6 am: 19bf9a2f27 am: 66b52bae7a Change-Id: Ic88d190dd73525e901279bdf80897bd0cace004f
|
b0300ea6f1f37973851b87b4c0892967f11c537a |
28-Sep-2016 |
Colin Cross <ccross@android.com> |
Fix trailing semicolon warnings am: 17576de056 am: 170ae8a510 am: df1b5a19fd Change-Id: I1beb53002656be0ca988c18108d5e9a565a1f707
|
382ecd3d6345aeeda158a8d94cc0aee1bd3a45dc |
26-Sep-2016 |
Colin Cross <ccross@android.com> |
Fix constructor parameters shadowing member variables Using the same name for the constructor parameter and the member variable causes a warning that was being hidden by the use of -isystem to include frameworks/native/include. Prefix the parameter with an underscore. Bug: 31752268 Test: m -j Change-Id: I7748934f1e9515176e2ae98d2c0e58d165a7a5c2
ralloc1On0Adapter.h
oint.h
|
8f279960c6ad8803e36503250b7ab89e34c9477b |
26-Sep-2016 |
Colin Cross <ccross@android.com> |
Use uint32_t consistently for region op An implicit conversion warning was being hidden by the use of -isystem to include frameworks/native/include. Bug: 31752268 Test: m -j Change-Id: I008ef537a24311d58816fae12ef8c4aeaba07547
egion.h
|
17576de056a57753eb4af797545db88ef4f81ef0 |
26-Sep-2016 |
Colin Cross <ccross@android.com> |
Fix trailing semicolon warnings Remove semicolons after inline function definitions. The warnings were being hidden by the use of -isystem to include frameworks/native/include. Bug: 31752268 Test: m -j Change-Id: I1027e87f459c36a575cd04b3afb645736832b07b
rameStats.h
ralloc1On0Adapter.h
|
f62eaf5994ac86f4d84e2d34af727617919d7bb7 |
02-Jun-2016 |
Dan Stoza <stoza@google.com> |
Squashed: gralloc1/binder/requestor This is a combination of the following three commits: libui: Convert Allocator and Mapper to gralloc1 Converts GraphicBufferAllocator and GraphicBufferMapper to speak gralloc 1.0 (via the C++ shim and optionally the 1On0 adapter) instead of gralloc 0.x. ----- Create graphic buffer using binder interfaces Using binder interfaces rather than directly allocating the buffer prevents SELinux warnings. ----- Add requestor name to GraphicBuffer alloc metadata Adds a requestor name (usually the BufferQueue consumer's name) to the metadata that GraphicBufferAllocator stores on allocation so that `dumpsys SurfaceFlinger` can attempt to attribute buffer usage to the correct client. Bug: 28401203 Bug: 29402015 Bug: 30776557
raphicBuffer.h
raphicBufferAllocator.h
raphicBufferMapper.h
|
eb03fd3a8bb5b1217b6a0eec513666856d7c6df3 |
12-Jan-2016 |
Dan Stoza <stoza@google.com> |
libui: Add Gralloc1On0Adapter and C++ shim Adds an adapter which provides the gralloc1 interface on top of a gralloc 0.x device as well as a C++ shim which wraps a gralloc1 device and provides a somewhat nicer interface to the rest of the system. This has also been squashed with a later commit that added mutexes to protect both the buffer list and the descriptor list from concurrent access. Bug: 28401203 Bug: 29420918 Change-Id: I0eeafc998b56e2e2fc39de6fad41e3ed2e19658a
ralloc1.h
ralloc1On0Adapter.h
|
65d4787875544af168de512d3172777595ab59f7 |
01-Sep-2016 |
Chih-Hung Hsieh <chh@google.com> |
Fix google-explicit-constructor warnings in gui and ui. * Add explicit keyword to conversion constructors. Bug: 28341362 Test: build with WITH_TIDY=1 Change-Id: I476ad1e9a4d47acb11bf4a87ad8baa855f441417
ence.h
|
024e9313ce69ced1f853d737de680ef9f50ed26d |
24-Aug-2016 |
Dan Stoza <stoza@google.com> |
Add requestor name to GraphicBuffer alloc metadata Adds a requestor name (usually the BufferQueue consumer's name) to the metadata that GraphicBufferAllocator stores on allocation so that `dumpsys SurfaceFlinger` can attempt to attribute buffer usage to the correct client. Bug: 30776557 Change-Id: I6e0f346584c871bb3b9d5481f82b697b0475a916
raphicBuffer.h
raphicBufferAllocator.h
|
d4079aff759713e7c7dd14cecb585a7290e80772 |
23-Aug-2016 |
Dan Stoza <stoza@google.com> |
Add requestor name to GraphicBuffer alloc metadata Adds a requestor name (usually the BufferQueue consumer's name) to the metadata that GraphicBufferAllocator stores on allocation so that `dumpsys SurfaceFlinger` can attempt to attribute buffer usage to the correct client. Bug: 30776557 Change-Id: I6e0f346584c871bb3b9d5481f82b697b0475a916
raphicBuffer.h
raphicBufferAllocator.h
|
c4cba997508820c5ffbbcdca8d4769944a7caacf |
20-Jul-2016 |
Michael Wright <michaelwr@google.com> |
Merge commit '19cd2f88b6914e2f4c43a9595532e81a697304fe' into fresh-again Change-Id: I6032eea1ad12960fc1c88582ae295f83c84bb37e
|
28f24d0ab481bd9c6fd5618414fee694e837c5c6 |
12-Jul-2016 |
Michael Wright <michaelwr@google.com> |
Color transforms are now color modes. Rename color transforms to color modes for all interfaces exposed to surfaceflinger clients. Also split it out to be a separate configuration value from display modes. Bug: 29044347 Change-Id: I87e937f7c954a50c946e8e2c606797caa416c5d8
isplayInfo.h
|
bd3577ef5bae7d65e54bddc04f90b619330edb89 |
21-Jun-2016 |
Pablo Ceballos <pceballos@google.com> |
Make sure constructors initialize all members - Add default constructors to Parcelables that didn't have them and make sure all members are initialized by the constructors. - Add missing fields to BufferItem flatten/unflatten. Change-Id: I9aa83b326dc3aee757762e63be499dc96a74df91
isplayInfo.h
isplayStatInfo.h
|
923c0668eb2427bb148a56bd1ac7834cc371d5a0 |
22-Jun-2016 |
Dan Stoza <stoza@google.com> |
gralloc1: Add mutexes Adds mutexes to protect both the buffer list and the descriptor list from concurrent access Bug: 29420918 Change-Id: I4d14353ceb167276570c56c9f92d48b28b2d4c53
ralloc1On0Adapter.h
|
4e36f6e29b1642ffba4d645ff543038e7a5e7544 |
14-Jun-2016 |
Dan Stoza <stoza@google.com> |
Merge changes from topic 'gralloc1' into nyc-mr1-dev * changes: libui: Convert Allocator and Mapper to gralloc1 libui: Adds C++ shim for gralloc1 libui: Add Gralloc1On0Adapter
|
8deb4da6e8fe4687991da32ae68fa0bca4cb8212 |
02-Jun-2016 |
Dan Stoza <stoza@google.com> |
libui: Convert Allocator and Mapper to gralloc1 Converts GraphicBufferAllocator and GraphicBufferMapper to speak gralloc 1.0 (via the C++ shim and optionally the 1On0 adapter) instead of gralloc 0.x. Bug: 28401203 Change-Id: Ie1649f0ee72801579be2c2d3c47177b52962a825
raphicBufferAllocator.h
raphicBufferMapper.h
|
41b1261e233e78553ad4e3a11dda80b1c5df07c5 |
20-May-2016 |
Dan Stoza <stoza@google.com> |
libui: Adds C++ shim for gralloc1 Adds a C++ shim which wraps a gralloc1 device and provides a somewhat nicer interface to the rest of the system. Bug: 28401203 Change-Id: I934ed41999bd4b9aa04d9ad8d40e7f8fba6f30ee
ralloc1.h
|
1e2a2a0ee81401072d9fc0f842c7ec1a915c5a07 |
12-Jan-2016 |
Dan Stoza <stoza@google.com> |
libui: Add Gralloc1On0Adapter Adds an adapter which provides the gralloc1 interface on top of a gralloc 0.x device. Bug: 28401203 Change-Id: I0eeafc998b56e2e2fc39de6fad41e3ed2e19658a
ralloc1On0Adapter.h
|
324b700b4b0669683efff3d696324dc0d4e24ec5 |
13-Jun-2016 |
Pablo Ceballos <pceballos@google.com> |
Add FrameStats default constructor am: 9a8c42a72b am: 8cd7d257de am: 67105cc24d am: b990d75315 am: a1952f0a6d am: 81d678cf18 am: ed968dc61c am: d1d1d4e922 Change-Id: I581c4df5e3866e8a2326830e6b9e6ca2ffb3bf1c
|
81d678cf189d8b1df1022ab7dfbf94c25db05b8c |
13-Jun-2016 |
Pablo Ceballos <pceballos@google.com> |
Add FrameStats default constructor am: 9a8c42a72b am: 8cd7d257de am: 67105cc24d am: b990d75315 am: a1952f0a6d Change-Id: Icc23cc2a483b13c6ac2134008d553574fffe06f4
|
a1952f0a6ddab4c4e950ee9d924735ea5c96743f |
13-Jun-2016 |
Pablo Ceballos <pceballos@google.com> |
Add FrameStats default constructor am: 9a8c42a72b am: 8cd7d257de am: 67105cc24d am: b990d75315 Change-Id: Ibc0caec8dc613a6701791f1a633f3793522615af
|
b990d753154a1675ddcb608806a5996c762b7c2f |
13-Jun-2016 |
Pablo Ceballos <pceballos@google.com> |
Add FrameStats default constructor am: 9a8c42a72b am: 8cd7d257de am: 67105cc24d Change-Id: Icf85c944e561763b0a9c353f84d614a992168c20
|
8cd7d257de075d20af7c878362b103105b62043d |
13-Jun-2016 |
Pablo Ceballos <pceballos@google.com> |
Add FrameStats default constructor am: 9a8c42a72b Change-Id: Ib78d68c71438391711ea3b91102408d5ad0b966b
|
9a8c42a72b072bd03f0c830ffe1094b199146e74 |
27-May-2016 |
Pablo Ceballos <pceballos@google.com> |
Add FrameStats default constructor Bug 28592402 Change-Id: I857e46c9ab3ffae0d96923d665d13a4128a6cafa
rameStats.h
|
7d7ae7345abfb91be55c4aed6c9be9d09a144e4c |
16-Mar-2016 |
Dan Stoza <stoza@google.com> |
HWC2: Add getHdrCapabilities to C++ shim Adds support for the getHdrCapabilities call to the HWC2 C++ shim. Bug: 25684127 Change-Id: Ib4635ee437a06b48945e7f0328492c1e74e27aaa
drCapabilities.h
|
b2a54ab9590141ce16455883aa1e95f42b6e1772 |
11-Jan-2016 |
Dan Stoza <stoza@google.com> |
Merge "libui: Remove FramebufferNativeWindow"
|
4e643af56d8805b24cccb0ceb6b67a24cf437fb7 |
08-Jan-2016 |
Dan Stoza <stoza@google.com> |
libui: Make Rect constructor 32/64-bit friendly Makes the width/height constructor for the Rect class more flexible with the types of integers it will accept. Change-Id: Id88b4e6da2f84d6826e19d1cabd93fe86ad48c8d
ect.h
|
9c024aa3977ba8ab3bcb72c27a11021d02e372cf |
08-Jan-2016 |
Dan Stoza <stoza@google.com> |
libui: Remove FramebufferNativeWindow We no longer support the framebuffer device, so FramebufferNativeWindow is no longer relevant. Change-Id: I97c427bb7c0b209bbf33e61900466bde7df43e85
ramebufferNativeWindow.h
|
811710d6b34c68379090a0311af1a84e2d5547b1 |
30-Sep-2015 |
Sergio Giro <sgiro@google.com> |
am 41659e2e: am b450d9d8: am 77f147ff: Merge "frameworks/native: remove superfluous mention of SharedBuffer in Region.h" * commit '41659e2e6b42b7b379f4314af96045793bbd5fd0': frameworks/native: remove superfluous mention of SharedBuffer in Region.h
|
41659e2e6b42b7b379f4314af96045793bbd5fd0 |
30-Sep-2015 |
Sergio Giro <sgiro@google.com> |
am b450d9d8: am 77f147ff: Merge "frameworks/native: remove superfluous mention of SharedBuffer in Region.h" * commit 'b450d9d8940f7406def0b1ccd7c139bb7203115f': frameworks/native: remove superfluous mention of SharedBuffer in Region.h
|
46f7593a240a58f3e41492230f54ceb813347acd |
30-Sep-2015 |
Sergio Giro <sgiro@google.com> |
frameworks/native: remove superfluous mention of SharedBuffer in Region.h Towards deprecation of SharedBuffer Change-Id: I9c853c86fb057280013405cb8c3c725e13175ea4
egion.h
|
48d1d1fc902543ea16e5826a4739346714691d8c |
23-Sep-2015 |
Sergio Giro <sgiro@google.com> |
am f1519eeb: am 64b83133: Merge "Remove usage of SharedBuffer" * commit 'f1519eeb21ee03a956d973545f9f0f742727faaa': Remove usage of SharedBuffer
|
f53f3c80bf2dcf6c1b70320765f9fc8019b829a2 |
11-Sep-2015 |
Pablo Ceballos <pceballos@google.com> |
Remove usage of SharedBuffer - Remove getSharedBuffer() from Region - Don't use SharedBuffer for memory management in HWCLayerVersion1, instead keep shallow copies of the Regions. Bug 23962051 (cherry picked from commit d814cf2a3e3a2fdb73efa80539fe8af0a93da1db) Change-Id: I8fa17beed57936648c7b4defc9219dff1d5b337f
egion.h
|
d814cf2a3e3a2fdb73efa80539fe8af0a93da1db |
11-Sep-2015 |
Pablo Ceballos <pceballos@google.com> |
Remove usage of SharedBuffer - Remove getSharedBuffer() from Region - Don't use SharedBuffer for memory management in HWCLayerVersion1, instead keep shallow copies of the Regions. Bug 23962051 Change-Id: I8fa17beed57936648c7b4defc9219dff1d5b337f
egion.h
|
71b2947cfd1be2795a2e1313f4b799c5588c3430 |
04-Sep-2015 |
Dan Stoza <stoza@google.com> |
am afdbddbe: am e5ce0db8: am f090d598: am 3e4c8ccc: Merge "SF: Add colorTransform to DisplayInfo" into mnc-dr-dev * commit 'afdbddbef57b3ffafa5b6a2107f37fda06dec9d4': SF: Add colorTransform to DisplayInfo
|
f2699fc3a8c12b2bf95120c068801e050168bd96 |
31-Aug-2015 |
Dan Stoza <stoza@google.com> |
SF: Add colorTransform to DisplayInfo Adds the colorTransform field, which defines a vendor-specific color transform (e.g., wide gamut, sRGB, etc.) to the DisplayInfo class, and populates it from the HWC interface. Bug: 20853317 Change-Id: I153edc36a361407656f3eb5082b96c2da2ecbec7
isplayInfo.h
|
60d6922a011fe18c111b8d30fb6ef1f655b6b15e |
07-Aug-2015 |
Pablo Ceballos <pceballos@google.com> |
libsgui: Change Rect default constructor The current Rect default constructor initializes to all zeroes. Change it to initialize to an invalid Rect. Modify all of the existing invocations of the default constructor to maintain the existing behavior. Bug 18173359 Change-Id: Ibbad076f1550a94f56d7b1cf5350071f2022e09a
ect.h
|
993772a60ac43e458f16b08c27e1f97dcfcfe3e1 |
03-Jun-2015 |
Dan Stoza <stoza@google.com> |
libgui: Add generation numbers to BufferQueue This change allows producers to set a generation number on a BufferQueue. This number will be embedded in any new GraphicBuffers created in that BufferQueue, and attempts to attach buffers which have a different generation number will fail. It also plumbs the setGenerationNumber method through Surface, with the additional effect that any buffers attached to the Surface after setting a new generation number will automatically be updated with the new number (as opposed to failing, as would happen on through IGBP). Bug: 20923096 Change-Id: I32bf726b035f99c3e5834beaf76afb9f01adcbc2 (cherry picked from commit 812ed0644f8f8f71ca403f4e5793f0dbc1fcf9b2)
raphicBuffer.h
|
812ed0644f8f8f71ca403f4e5793f0dbc1fcf9b2 |
03-Jun-2015 |
Dan Stoza <stoza@google.com> |
libgui: Add generation numbers to BufferQueue This change allows producers to set a generation number on a BufferQueue. This number will be embedded in any new GraphicBuffers created in that BufferQueue, and attempts to attach buffers which have a different generation number will fail. It also plumbs the setGenerationNumber method through Surface, with the additional effect that any buffers attached to the Surface after setting a new generation number will automatically be updated with the new number (as opposed to failing, as would happen on through IGBP). Bug: 20923096 Change-Id: I32bf726b035f99c3e5834beaf76afb9f01adcbc2
raphicBuffer.h
|
9de7293b0a1b01ebe6fb1ab4a498f144adc8029f |
17-Apr-2015 |
Dan Stoza <stoza@google.com> |
libgui: Allow an IGBProducer to disable allocation Adds a new method IGBP::allowAllocation, which controls whether dequeueBuffer is permitted to allocate a new buffer. If allocation is disallowed, dequeueBuffer will block or return an error as it normally would (as controlled by *ControlledByApp). If there are free buffers, but they are not of the correct dimensions, format, or usage, they may be freed if a more suitable buffer is not found first. Bug: 19801715 Change-Id: I0d604958b78b2fd775c2547690301423f9a52165
raphicBuffer.h
|
5065a55291b67f584d7b0be3fa3cfc4e29a3cd1c |
18-Mar-2015 |
Dan Stoza <stoza@google.com> |
libgui: Pass surface damage through BufferQueue This change adds support for passing surface damage all of the way down from the EGL interface through the consumer side of the BufferQueue. Depends on system/core change Ie645e6a52b37b5c1b3be19481e8348570d1aa62c Bug: 11239309 Change-Id: I4457ea826e9ade4ec187f973851d855b7b93a31b
ect.h
egion.h
|
82c6bcc9705eabcaf5b9e45bc81867b0e2d61a02 |
20-Feb-2015 |
Eino-Ville Talvala <etalvala@google.com> |
DO NOT MERGE Add dataSpace to buffer queues; remove old format enums. - Wire up new dataSpace parameter through buffer queue stack - Update tests to include the parameter - Switch eglApi to using dataSpace to indicate sRGB gamma/linear difference - Remove RAW_SENSOR in favor of RAW16 - Remove use of sRGB format enums - Add default dataspace to buffer queue core - Add query for default dataspace Cherry pick of I070bd2e7c56506055c419004c29e2e3feac725df Change-Id: I461952389c18051176c6b75e664f20ad369f5760
ixelFormat.h
|
fe4966d59b31ae6fd6dd4d81dd73d2f4f7be33fe |
22-Dec-2014 |
Bernhard Rosenkraenzer <Bernhard.Rosenkranzer@linaro.org> |
Restore Region::set(uint32_t, uint32_t) The Region::set(uint32_t,uint32_t) ABI is used by the Nexus 10 graphics driver blobs. After commit dd883c0b08d2a60f89542b9b9f5fdabcb14885c7, Nexus 10 blobs need a rebuild unless the old ABI is added back Change-Id: I138dcc1cc281b8d3cde0021282bf874054ec4eaf Signed-off-by: Bernhard Rosenkraenzer <Bernhard.Rosenkranzer@linaro.org>
egion.h
|
dd883c0b08d2a60f89542b9b9f5fdabcb14885c7 |
18-Nov-2014 |
Dan Stoza <stoza@google.com> |
libgui: Enable -Weverything and -Werror Enables -Weverything and -Werror, with just a few exceptions for warnings we can't (or shouldn't need to) work around. This is a squashed commit based on an initial change with a couple of fixes to avoid breaking certain targets. The source commits are: d723bd7669b4fc88dc282d8bf8ba5ecb2849d22f 00d504c06ea034befe143e6b8cb34d004670ed02 429ba89cd293633d2f882165066b422c96597df2 Change-Id: I034abec27bf4020d84af60d7acc1939c59986dd6
ect.h
|
d31824004277f554000417cea349d69f18655e95 |
17-Nov-2014 |
Dan Stoza <stoza@google.com> |
libui: Enable -Weverything and -Werror Enables -Weverything and -Werror, with just a few exceptions for warnings we can't (or shouldn't need to) work around. Change-Id: I470a267e9b1c373f2d5c960f005c3b0e02b2db63 (cherry picked from commit 303b9a51239d36d237a7d40c67b5085cdb3c1059)
ence.h
raphicBuffer.h
raphicBufferAllocator.h
raphicBufferMapper.h
ixelFormat.h
egion.h
|
01049c8321aab30cd431e2febeddd79242ae5a4f |
11-Nov-2014 |
Dan Stoza <stoza@google.com> |
Enable clang for libui/libgui/surfaceflinger Enables clang and C++11 for libui/libgui/surfaceflinger, and eliminates all compile-time warnings. Change-Id: Ie237fdb5ae44f2bfcddaa884f9c65ec3f08ae50f (cherry picked from commit f10c46ef855b6410b20ebd8b1351d4d78d8eca8e)
ramebufferNativeWindow.h
raphicBuffer.h
|
f3929d6611bb8278e561fdd4b05a21915ac9de76 |
30-Oct-2014 |
Dan Stoza <stoza@google.com> |
am e42cba8f: Merge "Initialize ARect fields in default ctor" * commit 'e42cba8feb2bbfe385f162a06e41e2c2c0f40c99': Initialize ARect fields in default ctor
|
bccab86174f2cce787333aebb13ac5ef9a9247cc |
29-Oct-2014 |
Dmitriy Ivanov <dimitry@google.com> |
Initialize ARect fields in default ctor So that we can use Rect() for update and such. Bug: 18095940 Change-Id: I03ed87121d2d279f22013b75e95dd7254551ca1f
ect.h
|
b2e19208ddf3274e7cc044ca1abfcd02787a7cf1 |
29-Oct-2014 |
Dmitriy Ivanov <dimitry@google.com> |
Initialize ARect fields in default ctor So that we can use Rect() for update and such. Bug: 18095940 Change-Id: I03ed87121d2d279f22013b75e95dd7254551ca1f
ect.h
|
67d8bd66aaf04805cb8f2616ba964141b865e3b9 |
11-Sep-2014 |
Lajos Molnar <lajos@google.com> |
surfaceflinger: add getDisplayStats() method This is used by media service to schedule video frames at the proper time, based on precise vsync timings. Bug: 14659809 Change-Id: I1a90603f3dc09dca9aa4f90a3aa845fab56e0a5e
isplayStatInfo.h
|
457296ad6c8bf3533a90780a8c28ced84a2301e7 |
04-Sep-2014 |
Stephen Hines <srhines@google.com> |
Fix undefined behavior (not returning a value from a function with return). Bug: 17379740 This function was missing a return statement, even though it declares a return type. This is undefined behavior, which clang miscompiled into just falling through to a later function in some cases. Adding the return statement fixes the undefined behavior (and probably fixes a bug too). Change-Id: I05c03b6473b831769dc4fa8b5ba43fb4249f7626
at4.h
|
03414a1cfe6c1222fd7723949bd622f9cba145aa |
01-Jul-2014 |
Riley Andrews <riandrews@google.com> |
Turn on support for async cursor update in surfaceflinger. If available, surfaceflinger will use the hwc setCursorPositionAsync() api to change the position of supported cursor layers outside of the usual prepare/set loop. Change-Id: Ib3fc5c0c390b3489ddbba202379840a1d2748917
raphicBuffer.h
|
91b2ca8562763c981c4ce93148db80adb51d0cb6 |
13-Jun-2014 |
Andy McFadden <fadden@android.com> |
Add two new display info fields This adds SurfaceFlinger's app VSYNC offset and buffer deadline values to DisplayInfo. Bug 14612039 Change-Id: Ie0ab21d388fe2764f2b6f71bd1cefa33dc861a73
isplayInfo.h
|
f974bffb36a97d21432a504a741330c4f4245746 |
12-May-2014 |
Greg Hackmann <ghackmann@google.com> |
am 38c9e132: am c1ffd351: am bd20e551: Merge "Use asynchronous lock/unlock API" * commit '38c9e1327a5b24267c3dab5293bc9d7ada6e9fc9': Use asynchronous lock/unlock API
|
8f3960179c56767e5077be8337792bd4e244b7d7 |
01-Apr-2014 |
Francis Hart <fhart@nvidia.com> |
Use asynchronous lock/unlock API The gralloc API now provides a way for using lock/unlock with the Android explicit synchronisation concept. This changes updates the GraphicBuffer class to also expose this functionality, and updates the Surface class to make use of in line with the dequeueBuffer/queueBuffer mechanism. This new behaviour is dependent on GRALLOC_MODULE_API_VERSION_0_3. If the local gralloc module does not support this then the existing synchronous lock/unlock mechanism will be used. Change-Id: I8c3fd9592e0c5400ac9be84450f55a77cc0bbdc5
raphicBuffer.h
raphicBufferMapper.h
|
2f3dca149a2bcae96f18e38f7ba99a95c3e1b08c |
10-May-2014 |
Greg Hackmann <ghackmann@google.com> |
am 9493d492: am 9eb142e3: am a9d49f99: Merge "Revert "Use asynchronous lock/unlock API"" * commit '9493d4924a59f14b698389386337a9c07a7ea3c4': Revert "Use asynchronous lock/unlock API"
|
02528cf6aaedbbfec55be57d33389e1c57d88245 |
09-May-2014 |
Greg Hackmann <ghackmann@google.com> |
am 4b46776f: am 8a6cd189: am f60564a1: Merge "Use asynchronous lock/unlock API" * commit '4b46776ff88c5a365700b88e8b2b04e1b2c77e6e': Use asynchronous lock/unlock API
|
53ec72523a4083b88eaa13e2e720976523a7ebf8 |
09-May-2014 |
Greg Hackmann <ghackmann@google.com> |
Revert "Use asynchronous lock/unlock API" This reverts commit 378ef07760eda717367d9429428c42d54d54d9a7. Change-Id: I1de5ab973b5383633e75924fe90ac3ca8216c36a
raphicBuffer.h
raphicBufferMapper.h
|
7f7da32569f8e0b3d383a40b95f8ac1d55afd801 |
03-May-2014 |
Dan Stoza <stoza@google.com> |
Enable changing display configuration This allows querying and switching display device configurations through the ISurfaceComposer/SurfaceComposerClient interface. Bug: 14320401 Change-Id: I8c22165698950e5da32204c1c4da92122f91a715
isplayInfo.h
|
378ef07760eda717367d9429428c42d54d54d9a7 |
01-Apr-2014 |
Francis Hart <fhart@nvidia.com> |
Use asynchronous lock/unlock API The gralloc API now provides a way for using lock/unlock with the Android explicit synchronisation concept. This changes updates the GraphicBuffer class to also expose this functionality, and updates the Surface class to make use of in line with the dequeueBuffer/queueBuffer mechanism. This new behaviour is dependent on GRALLOC_MODULE_API_VERSION_0_3. If the local gralloc module does not support this then the existing synchronous lock/unlock mechanism will be used. Change-Id: I77daa1beb197b63b1c2f281b8414ac4ae4b5b03c
raphicBuffer.h
raphicBufferMapper.h
|
21f18e693528bd255719801539f68e37b4a97418 |
11-Apr-2014 |
Dan Stoza <stoza@google.com> |
Merge "Add unique ID to GraphicBuffer"
|
d85084b2b65828442eafaff9b811e9b6c9ca9fad |
20-Mar-2014 |
Svetoslav <svetoslavganov@google.com> |
Adding render stats APIs to UiAutomation (framework native). bug:12927198 Change-Id: Ibb1c07f7d89e11281e5c1f27f412a29ac6f9c4ab
rameStats.h
|
b1363d37fc6a661508fad106eb7698c5850a6c17 |
28-Mar-2014 |
Dan Stoza <stoza@google.com> |
Add unique ID to GraphicBuffer Adds a globally-unique ID (PID + sequence number) to every GraphicBuffer, which will remain the same while crossing Binder, even if the underlying handles change. Change-Id: Ib11330a4c5e99621b82204e0adb31b9a88658426
raphicBuffer.h
|
2e336496c3b3b78910cf1c496e21dc4909ee32ad |
06-Mar-2014 |
Andy McFadden <fadden@android.com> |
FramebufferNativeWindow.h is obsolete This adds a deprecation #warning to the header. Change-Id: Ia32f16e491cb01d435ec8846dda3d9a7d1a9cfc5
ramebufferNativeWindow.h
|
1c284a9431f98bbefd27a30c3368bbf7366dff3a |
10-Feb-2014 |
Michael Wright <michaelwr@google.com> |
Add contains point method to Region Change-Id: I553433ff7ac39f14ffca8278960d2abc95b4dd63
egion.h
|
6a5d35dd5cd8710c6c9f100076e62ffbdb0b868b |
08-Jan-2014 |
Dan Stoza <stoza@google.com> |
libgui: Add a test for SRGB surfaces Add SRGBTest.RenderToSRGBSurface, which validates that passing the SRGB colorspace attributes to eglCreateWindowSurface actually results in an SRGB surface by comparing the output values to those of a standard RGB surface. Change-Id: I3d5fef8070ed8fa2357ddd1c5fcc849ae3fbd12a
ixelFormat.h
|
c1c05de415854eb7a13a16b7e22a22de8515123a |
18-Sep-2013 |
Mathias Agopian <mathias@google.com> |
fix camera API 2.0 orientation we add a flag to ANativeWindow::setBufferTransform that means "apply the inverse rotation of the display this buffer is displayed onto to". Bug: 10804238 Change-Id: Id2447676271950463e8dbcef1b95935c5c3f32b2
MatHelpers.h
|
1d4d8f94e2989b7c8667602304df9059d2701653 |
02-Sep-2013 |
Mathias Agopian <mathias@google.com> |
improve mat44 implementation this will make it easier to create matrices of different sizes Change-Id: I2c1771ba0823c42d737762e2dfc2cd47eb302767
MatHelpers.h
VecHelpers.h
at4.h
ec2.h
ec3.h
ec4.h
|
595ea77f6bdb5e9d0ddd3305da7a44b56f326b2c |
22-Aug-2013 |
Mathias Agopian <mathias@google.com> |
vector and matrix classes for graphics use - this implements vec2, vec3, vec4, which are float vectors of size 2, 3 and 4 respectively. the code allows easy instantiation of vectors of a different type via the tvec{2|3|4}<T> template classes. - this also implements mat4 which is a float 4x4 matrix. the tmat44<T> template class allows easy instantiation of a 4x4 matrix of a different value_type. The vector types have some minimal support for the glsl style swizzled access; for instance: vec4 u; vec3 v = u.xyz; only .x, .xy, .xyz and their .stpq / .rgba equivalent are supported. most operators are supported on both vector and matrices: arithmetic, unary, compound assignment and comparison (bit-wise operators NOT supported). - operations available on vectors include: dot, length, distance, normalize and cross - operations available on matrices include: transpose, inverse, trace - and a few utilities to create matrices: ortho, frustum, lookAt Change-Id: I64add89ae90fa78d3f2f59985b63495575378635
MatHelpers.h
VecHelpers.h
at4.h
ec2.h
ec3.h
ec4.h
|
87f9b877964b7d7db9b59ba45b73b4b1a779ecf8 |
01-Aug-2013 |
Mathias Agopian <mathias@google.com> |
remove unused code form GraphicBuffer Change-Id: I0dd67f1f93f654331e8f17b55730931dbc695ca7
raphicBuffer.h
|
e142428a9c8b9d2380032cd4d7b55ee440fe8770 |
30-Jul-2013 |
Mathias Agopian <mathias@google.com> |
Make Flattenable not virtual Fallout from the Flattenable change, update all its uses. Additionnaly, fix/tighten size checks when (un)flatten()ing things. Removed the assumption by some flattenables (e.g.: Fence) that the size passed to them would be exact (it can and will be larger in some cases) The code in Parcel is a bit complicated so that we don't have to expose the full implementation (and also to keep the code smallish). Change-Id: I0bf1c8aca2a3128491b4f45510bc46667e566dde
ence.h
raphicBuffer.h
egion.h
|
c2414bb0989763641ca57cf72c11ef6d86565a23 |
26-Jul-2013 |
Mathias Agopian <mathias@google.com> |
get rid of HAL pixelformats 5551 and 4444 Change-Id: I39409103144c1ba09078c4ddc323a58987fb09ea
ixelFormat.h
|
5773d3f5b2694c647e010246dff99acc70131289 |
26-Jul-2013 |
Mathias Agopian <mathias@google.com> |
get rid of PixelFormatInfo and simplify things Change-Id: I025a362cc12d5b9b794fac14be500e25aab65396
isplayInfo.h
ixelFormat.h
|
1fe854f6788f6fe9177fcca85185d13ba37d1911 |
26-Jul-2013 |
Mathias Agopian <mathias@google.com> |
get rid of PIXEL_FORMAT_A_8 Change-Id: I4e409a69c01b95b48f20112084dd927e2d043407
ixelFormat.h
|
2381033ad001960c606d13e3a4198e5da3672ec7 |
17-May-2013 |
Mathias Agopian <mathias@google.com> |
am e6eef6c1: am ea74d3b7: make the warning timout of Fence::waitForever() implicit and longer * commit 'e6eef6c136b007f3a7e1e19884875b855c0c5f95': make the warning timout of Fence::waitForever() implicit and longer
|
ea74d3b78d607cde17790a7bb83e6f68ffd34cfd |
17-May-2013 |
Mathias Agopian <mathias@google.com> |
make the warning timout of Fence::waitForever() implicit and longer - timeout is now 3 seconds instead of 1 - simplifies the API a bit - allows us to change/tweak this timeout globaly Bug: 8988871 Change-Id: I8d3c6ec43a372f602fb3f29856710339f86c0ec9
ence.h
|
f3e85d432749ca77ad707bec523b67d741d43e6e |
11-May-2013 |
Mathias Agopian <mathias@google.com> |
take the "transparent region" into account for blending until now it was only used to discard a layer entirely. we're now reducing the size of the layer if it is still visible, if possible. this works for instance when a surfaceView is used and only the menu bar is displayed over it. Change-Id: I3f5527c5cd1e69ecc968272c8948f1513ada8c55
ect.h
|
6c7f25afb75ac155bad0b3bc17c0089d0337d060 |
10-May-2013 |
Mathias Agopian <mathias@google.com> |
reformat Rect.{cpp|h} Change-Id: I45b1f6646541a1abacce1e70df00a770e47b820e
ect.h
|
c43946b931de5dafd28f49963f9af78e05390b26 |
05-May-2013 |
Eino-Ville Talvala <etalvala@google.com> |
Add support for HAL_PIXEL_FORMAT_YCbCr_420_888 - Add fields to CpuConsumer::LockedBuffer for new information - New lock methods for GraphicBuffer and GraphicBufferMapper for the format Bug: 8734880 Change-Id: If31f82c62d64b6942cf4cc6e5715585c03273f12
raphicBuffer.h
raphicBufferMapper.h
|
2ca79399b933935eb1b6c0ec1f746f8c4475369c |
03-Apr-2013 |
Mathias Agopian <mathias@google.com> |
latch transparent region hint only when we get a new frame since the transparent region hint really depends on the content of the window containing the SurfaceView (it's calculated by the view hierarchy based on overlapping views), it makes sense to latch it only when the content of the window (the app) changes. This should help fixing drawing artifacts when changing the layout of a window containing a SurfaceView. Bug: 8511430 Change-Id: Ic3aa668495293cb4d82a2cd7dcf3b6a337287678
egion.h
|
e041716ba17674b9af957f68750ad6b2df376c22 |
07-Mar-2013 |
Mathias Agopian <mathias@google.com> |
Make GraphicBuffer a RefBase - this gives us access to RefBase's refcounting debugging - it doesn't cost much because GraphicBuffer already has a vtable Change-Id: I7f696e421fea14b14bfaeb83880689b83e96af4d
raphicBuffer.h
|
3e010f3138593cc6953039ee0e3db8ee31881296 |
26-Feb-2013 |
Chris Craik <ccraik@google.com> |
Add createTJunctionFreeRegion T-junction free regions are useful for rendering regions with various geometric transformations, and the Region's span-ordered, sorted rect list supports T-junction free storage without modification. This approach creates a T-junction free region by splitting each rectangle that is part of a vertical T-junction. This approach is two pass (up and down) so that divisions can trickle up/down to other adjacent spans. Change-Id: Ifcf5e6fe0034c96b00ef09a4433b2b0fce8f4300
egion.h
|
89592bbede762588248006f20afd8bd9d4bf5a98 |
26-Feb-2013 |
Igor Murashkin <iam@google.com> |
GraphicBuffer.h: Remove redundant friend class declaration causing warnings Change-Id: I8a4b0e0b4d0a1cf472de820553c31f2d42044543
raphicBuffer.h
|
e3c697fb929c856b59fa56a8e05a2a7eba187c3d |
15-Feb-2013 |
Mathias Agopian <mathias@google.com> |
Refactoring: Rename SurfaceTextureClient to Surface Change-Id: Ibed34175ae273608393aaa5f0a7df207dc40d709
raphicBuffer.h
|
82dbc7429f5f9f2b303b31dc5b9f2bfd1bbe6add |
09-Nov-2012 |
Jamie Gennis <jgennis@google.com> |
SurfaceFlinger: refactor frame time tracking This change moves the frame time history tracking code out of Layer and into a new class called FrameTracker. It also changes the tracking to use signal timestamps from fences when available for more accurate results. Change-Id: I323c5f075c58bf86ce363b52af885ad0f6365f2b
ence.h
|
dd3cb84cfbe8068790c6233b5829fae9c4a0ee93 |
20-Oct-2012 |
Jamie Gennis <jgennis@google.com> |
SurfaceFlinger: add support for secure displays This change adds support for displays that are not allowed to display surfaces with the eSecure flag set. All non-virtual displays are considered secure, while virtual displays have their secure-ness specified at creation time. Bug: 7368436 Change-Id: I81ad535d2d1e5a7ff78269017e85b111f0098500
isplayInfo.h
|
b5c9dcdf3bdab1862047060b8e18c9d1831db8bb |
09-Oct-2012 |
Mathias Agopian <mathias@google.com> |
Fence didn't manager sync_wait error codes properly error codes are returned in errno, this caused ::waitForwever() to only wait for 1 second and return improper error code (-1). needed to help debugging 7316632 Bug: 7316632 Change-Id: Ie144f614a88393393972a3a770c6b4b0581f961a
ence.h
|
ba607d53c6a94ea8c4c12571980c4ad159af308b |
01-Oct-2012 |
Jesse Hall <jessehall@google.com> |
Add Fence::waitForever which logs a warning timeout, and use it Bug: 7217641 Change-Id: If0c1a613ead307c4045a47824174bf40c72bc7d7
ence.h
|
4803b74e2a12a508f7bbfde6f6a962fe3299c61c |
25-Sep-2012 |
Andy McFadden <fadden@android.com> |
Show build config in dumpsys SurfaceFlinger This adds a line to the "dumpsys SurfaceFlinger" output that shows build-time configuration values. Example: Build configuration: [sf HAS_CONTEXT_PRIORITY] [libui] \ [libgui USE_FENCE_SYNC] Bug 7206633 Change-Id: Ibe1856b459d34a4be6ee83a4ebfd2807e6cc68a0
iConfig.h
|
068d47f29dfead847999a7b33b4217ee9514152b |
12-Sep-2012 |
Mathias Agopian <mathias@google.com> |
strengthen region validation Change-Id: I75ee7bc4dd7a2f5357ac8994a23bc8b8bfb6eb44
egion.h
|
2401ead70099c982796ecc3ec63ec8a5570948fc |
01-Sep-2012 |
Mathias Agopian <mathias@google.com> |
Add a way to retrieve a Region as a SharedBuffer Change-Id: Ia53cb905fbc88f899521658545f990fb9217b1e1
egion.h
|
3ab68558fa5a4b8f792a54965a010f03385bd271 |
31-Aug-2012 |
Mathias Agopian <mathias@google.com> |
change how we store Region data internally We used to keep the bounds of the region as a separate rectangle. Instead we now store it as the last element of the Vector<> of Rects. This has the benefit of being slightly more efficient when copying regions and reduces the overhead of small regions, but more importantly will allow us to export the underlaying SharedBuffer (eventually). Change-Id: I80790e4fb1a09a747a5616000cfef852ac4ce9e9
egion.h
|
9f54ac38860761ef62d9bb8282d54ff51a1a68a3 |
22-Aug-2012 |
Jamie Gennis <jgennis@google.com> |
ui/Fence: change the TIMEOUT_NEVER value to -1 Change-Id: I3ef0a4c06f80990b53a8bf2eda6edbfcbefd0f34
ence.h
|
8683fca395d01734ec7946e9f0595ec5d7b754c6 |
13-Aug-2012 |
Mathias Agopian <mathias@google.com> |
improve [un]marshalling of non-binder objects this change introduces a new class LightFlattenable<> which is a protocol to flatten simple objects that don't require binders or file descriptors; the benefit of this protocol is that it doesn't require the objects to have a virtual table and give us a consitant way of doing this. we also introduce an implementation of this protocol for POD structures, LightFlattenablePod<>. Parcel has been update to handle this protocol automatically. Sensor, Rect, Point and Region now use this new protocol. Change-Id: Icb3ce7fa1d785249eb666f39c2129f2fc143ea4a
oint.h
ect.h
egion.h
|
747c480b0e3cf9401ff53421be6a82b23fdc04c2 |
28-Jul-2012 |
Ed Heyl <ed@google.com> |
Merge remote-tracking branch 'goog/jb-dev-mako' into jb-mr1-dev Conflicts: include/media/hardware/CryptoAPI.h Change-Id: I84bf34edbef000558f088bbf1d1e5b55d6217d2e
|
c666cae2d5995097ec49a87e375e2afdd92802b7 |
26-Jul-2012 |
Mathias Agopian <mathias@google.com> |
get rid of the shared-memory control block Change-Id: If814060aca1d2ff2619d4adcd57296983d207f7f
isplayInfo.h
|
0bc64be3f5198f8dda1ced21bbc957a1d76efbb7 |
29-Jun-2012 |
Naseer Ahmed <naseer@codeaurora.org> |
libs/ui: Add support for triple framebuffers Change-Id: I90dd38deeeda9a3785b87286cc7d252c6f948750
ramebufferNativeWindow.h
|
c777b0b3b9b0ea5d8e378fccde6935765e28e329 |
28-Jun-2012 |
Jesse Hall <jessehall@google.com> |
Pass fences with buffers from SurfaceTextureClient Change-Id: I09b49433788d01e8b2b3684bb4d0112be29538d3
ence.h
|
f9783af225aa3b41ec0af36f90941a714269abb7 |
25-Jun-2012 |
Jesse Hall <jessehall@google.com> |
Return fence to client in dequeuBuffer Change-Id: Ic19750793ad993f0e85391f3cabd743ba565d4c9
ence.h
|
ef19414bd8b77a26f5751f3845be79025a8263fe |
14-Jun-2012 |
Jesse Hall <jessehall@google.com> |
Transfer HWC release fences to BufferQueue After a HWC set, each SurfaceFlinger Layer retrieves the release fence HWC returned and gives it to the layer's SurfaceTexture. The SurfaceTexture accumulates the fences into a merged fence until the next updateTexImage, then passes the merged fence to the BufferQueue in releaseBuffer. In a follow-on change, BufferQueue will return the fence along with the buffer slot in dequeueBuffer. For now, dequeueBuffer waits for the fence to signal before returning. The releaseFence default value for BufferQueue::releaseBuffer() is temporary to avoid transient build breaks with a multi-project checkin. It'll disappear in the next change. Change-Id: Iaa9a0d5775235585d9cbf453d3a64623d08013d9
ence.h
|
d8e812ce6fe9ae0388e98b08456e1d18b9498239 |
14-Jun-2012 |
Jamie Gennis <jgennis@google.com> |
Update ANativeWindow clients for sync This change updates the uses of ANativeWindow to use the new ANW functions that accept and return Sync HAL fence file descriptors. Change-Id: I3ca648b6ac33f7360e86754f924aa072f95242f6
ramebufferNativeWindow.h
|
f25e183a70bd631f75dce51e85b7d568472a0cdb |
14-Jun-2012 |
Jamie Gennis <jgennis@google.com> |
libui: add the Fence class This change adds the Fence class to libui for to wrap the libsync functionality. Change-Id: I93a31baeee608b93c14da807a32013dabf783f84
ence.h
|
b82203a6601728a507bc3e7d5b2b042356004aae |
14-May-2012 |
Mathias Agopian <mathias@google.com> |
minor Rect.h cleanup add getBounds(), getWidth(), getHeight(), width() and height() are kept for backward compatibility. Change-Id: I83837abf17dc2f8bded1beff73430e8c7d9bbdb3
ect.h
|
f15a83f5814219c167f87cb8aaea622fc8493499 |
11-May-2012 |
Jamie Gennis <jgennis@google.com> |
SurfaceFlinger: add a crop to the layer state This change adds a crop rectangle specified in window coordinates to the layer state. The all window pixels outside this crop rectangle are treated as though they were fully transparent. This change also adds the plumbing necessary for WindowManager to set that crop. Change-Id: I582bc445dc8c97d4c943d4db8d582a6ef5a66081
ect.h
|
59332804306c054082a39e9b004146bd03ae1d30 |
07-May-2012 |
Jamie Gennis <jgennis@google.com> |
libui: add the Rect::transform method This change adds a method to Rect to transform a rectangle by a graphics HAL transform. Change-Id: Ic0d0988e731bdb5662faee41a5927b1242891658 Bug: 6299171
ect.h
|
5f2165f9455d4893b581b73a67c5431f4344b47e |
25-Feb-2012 |
Mathias Agopian <mathias@google.com> |
remove dependency on android_native{s_priv|buffer}.h Change-Id: Ie4b95f7061c240f37c504414259f92d72c4ffc89
NativeObjectBase.h
GLNativeSurface.h
ramebufferNativeWindow.h
raphicBuffer.h
ndroid_native_buffer.h
gl/android_natives.h
|
870b8aa15cb5c722b5d8eb7726eaa5f1a7c23d69 |
25-Feb-2012 |
Mathias Agopian <mathias@google.com> |
remove libui dependency on libEGL Change-Id: I1194f04085637d5c384e134967249430cc43b6ee
GLUtils.h
|
ff615cc7a1cceedd705b0623b058c54669b29596 |
24-Feb-2012 |
Mathias Agopian <mathias@google.com> |
deprecate L_8, LA_88 and RGB_332 in sdk re-add support for pixelformats L_8, LA_88 and RGB_332 in libui for backward compatibility. This may or may not fix 6058926 Bug: 6049685 Change-Id: Ic1b8b4cc994522f7fe664da64c0ef76b98bc6d53
ixelFormat.h
|
42e2458144778596281ea2c4a98ad671053234e0 |
22-Feb-2012 |
Mathias Agopian <mathias@google.com> |
remove libui's dependency on libpixelflinger this also remove support for unused pixelformats. Change-Id: I2c759a6d2daa740f3786ed62095def8047ae933d
ixelFormat.h
|
80c39180425d6053ca536f68351bee3c5a351cc4 |
18-Feb-2012 |
Mathias Agopian <mathias@google.com> |
frameworks/base refactoring. First step. Move libui includes to their new home: androidfw. Change-Id: Ic042b52fdba72f30edc3cc6339bf30b4c1b99662
nput.h
nputTransport.h
eyCharacterMap.h
eyLayoutMap.h
eyboard.h
eycodeLabels.h
owerManager.h
irtualKeyMap.h
|
9491e81ff6a3e29ea31c9582ee1c6ab23c0e3e54 |
15-Feb-2012 |
Jeff Brown <jeffbrown@google.com> |
Clean up InputChannel file descriptor data type. File descriptors are ints. Change-Id: Ie36733bf36ddfeaa9a09ef6ebd7bd2f1788f5d27
nputTransport.h
|
a18829ab231384858456a8a67b06a3f1e37d2794 |
13-Feb-2012 |
Jeff Brown <jeffbrown@google.com> |
Accurately track the sequence numbers of batched events. Instead of sending finished signals immediately when appending to a batch, record the chain of sequence numbers that were part of the batch and then send finished signals all at once when done. This change helps the dispatcher keep track of the true state of the application and can improve ANR detection slightly. This is part of a series of changes to improve input system pipelining. Bug: 5963420 Change-Id: I463c2221e2aa8fdf1c3d670c18e39e59ab69b0db
nputTransport.h
|
0a63adaff2ffa945f5e105ee39aec9dcf22954e7 |
13-Feb-2012 |
Jeff Brown <jeffbrown@google.com> |
Enable deferred input messages to be batched. This is part of a series of changes to improve input system pipelining. Bug: 5963420 Change-Id: I6874d2128e880a35c6c33890c858cc6ee22af0fd
nputTransport.h
|
f0490c94d01aa7536e4fd3bdf6a888099ba9a5c6 |
07-Feb-2012 |
Jeff Brown <jeffbrown@google.com> |
Implement batching of input events on the consumer side. To support this feature, the input dispatcher now allows input events to be acknowledged out-of-order. As a result, the consumer can choose to defer handling an input event from one device (because it is building a big batch) while continuing to handle input events from other devices. The InputEventReceiver now sends a notification when a batch is pending. The ViewRoot handles this notification by scheduling a draw on the next sync. When the draw happens, the InputEventReceiver is instructed to consume all pending batched input events, the input event queue is fully processed (as much as possible), and then the ViewRoot performs traversals as usual. With these changes in place, the input dispatch latency is consistently less than one frame as long as the application itself isn't stalled. Input events are delivered to the application as soon as possible and are handled as soon as possible. In practice, it is no longer possible for an application to build up a huge backlog of touch events. This is part of a series of changes to improve input system pipelining. Bug: 5963420 Change-Id: I42c01117eca78f12d66d49a736c1c122346ccd1d
nputTransport.h
|
6cdee9831d8d2bf8393c2d130cbdc2eced125e15 |
04-Feb-2012 |
Jeff Brown <jeffbrown@google.com> |
Rewrite input transport using sockets. Since we will not longer be modifying events in place, we don't need to use an ashmem region for input. Simplified the code to instead use a socket of type SOCK_SEQPACKET. This is part of a series of changes to improve input system pipelining. Bug: 5963420 Change-Id: I05909075ed8b61b93900913e44c6db84857340d8
nputTransport.h
|
b8a2e98cd7edbe7513543670c94f6b5efa74462f |
08-Feb-2012 |
Romain Guy <romainguy@google.com> |
Preliminary support for clipRect(Rect, Op) This adds basic support for clip regions. It is currently disabled at compile time. Enabling clip regions will require setting up a stencil buffer. Change-Id: I638616a972276e38737f8ac0633692c3845eaa74
egion.h
|
55ef343331f5efbfe3e01bc9993d94faea236048 |
07-Jan-2012 |
Mathias Agopian <mathias@google.com> |
remove dead/usnused code Change-Id: I6fa2bc6ee01790abd2c1533f043d61a5e5c8d26e
raphicLog.h
|
e06a1748a48317adfb1bbe4ae4f49164cba03268 |
30-Nov-2011 |
Jamie Gennis <jgennis@google.com> |
Merge "SurfaceMediaSource: use the vid enc usage bit" into ics-mr1
|
9ee44c8f9456a9fc49d78b24e8cdeb9efa632c41 |
28-Nov-2011 |
Jeff Brown <jeffbrown@google.com> |
Fix application launch shortcuts. Improved quick launch bookmarks to support category-based shortcuts instead of hardcoding package and class names for all apps. Added a set of Intent categories for typical applications on the platform. Added support for some of the HID application launch usages to reduce reliance on quick launch for special purpose keys. Some keyboard vendors have hardcoded launch keys that synthesize "Search + X" type key combos. The goal is to encourage them to stop doing this by implementing more of HID. Bug: 5674723 Change-Id: I79f1147c65a208efc3f67228c9f0fa5cd050c593
eycodeLabels.h
|
b7d87c40ef3f922fb10f6a4f24e6e1437ab3c7ae |
22-Nov-2011 |
Jamie Gennis <jgennis@google.com> |
SurfaceMediaSource: use the vid enc usage bit This change makes SurfaceMediaSource add the VIDEO_ENC usage bit when allocating its GraphicBuffers rather than the HW_TEXTURE bit. Change-Id: Ie20e225c894fdbc31cad6bb82b3b64c7e98074eb
raphicBuffer.h
|
882b0a59d834be5b595713079f31a2389c32fdda |
16-Nov-2011 |
Jeff Brown <jeffbrown@google.com> |
Eliminate hw.keyboards system properties. Stop using system properties to publish information about the key character map path. Instead, we can retrieve it on demand by asking the window manager. It was possible to exhaust the supply of system properties when repeatedly adding and removing input devices. Bug: 5532806 Change-Id: Idd361a24ad7db2edc185c8546db7fb05f9c28669
nput.h
eyCharacterMap.h
eyboard.h
|
000e95e7ebf1a60bbb7fda604b54092f45c87f89 |
20-Sep-2011 |
Mathias Agopian <mathias@google.com> |
fix the float Rect in OpenGLRenderer to handle NANs - we want functions like isEmpty() to return true if NANs are involved in the Rect - also clean-up the intersect familly of calls - minor cleanup in the int32_t Rect as well These played a role in http://b/5331198. Bug: 5331198 Change-Id: I5369725ab482e4b83da9f1bd4cee5256e5de75b2
ect.h
|
73aaf0d8d22fa18e9336bdfcb97a01a242d17a23 |
14-Sep-2011 |
Jeff Brown <jeffbrown@google.com> |
Velocity Tracker II: The Revenge of Velocity Tracker Bug: 5265529 Rewrote the velocity tracker to fit a polynomial curve to pointer movements using least squares linear regression. The velocity is simply the first derivative of this polynomial. Clients can also obtain an Estimator that describes the complete terms of the estimating polynomial including the coefficient of determination which provides a measure of the quality of the fit (confidence). Enhanced PointerLocation to display the movement curve predicted by the estimator in addition to the velocity vector. By default, the algorithm computes a 2nd degree (quadratic) polynomial based on a 100ms recent history horizon. Change-Id: Id377bef44117fce68fee2c41f90134ce3224d3a1
nput.h
|
137c3c549504a1bf52b85aa983c97f10533c7083 |
10-Sep-2011 |
Jeff Brown <jeffbrown@google.com> |
Tweak VelocityTracker. Bug: 5265529 Calculate the velocity using the most recent touch sample as the point of reference instead of the oldest. This change more heavily weights recent touch samples and reduces the sample time window used for calculation. This significantly improves the accuracy of fling gesture detection. Change-Id: Ib1940933e786e5f6a731552a99bcd9400741d55f
nput.h
|
3599bf2c0727bc33e8136f5163eee6f398545e05 |
10-Aug-2011 |
Jamie Gennis <jgennis@google.com> |
SurfaceFlinger: use the HWC gralloc usage bit This change makes SurfaceFlinger always use the GRALLOC_USAGE_HW_COMPOSER usage bit when allocating buffers that may be passed to the HWComposer. Change-Id: I70362a8ede2b359fb2046853f85149d597465817
raphicBuffer.h
|
ecc7adef2ef88428bd493ca1b21fc42a26b0fdb8 |
18-Aug-2011 |
Jeff Brown <jeffbrown@google.com> |
Input system bug fixes, particularly for stylus. Bug: 5049148 Finished stylus support, including support for indirect stylus and mouse tools. Added TILT axis. When stylus tilt X/Y is available, it is transformed into an orientation and tilt inclination which is a more convenient representation and a simpler extension to the exiting API. Touch devices now only report touch data using a single input source. Previously touch devices in pointer mode would report both absolute touch pad data and cooked pointer gestures. Now we just pick one. The touch device switches modes as needed when the focused application enables/disables pointer gestures. This change greatly simplifies the code and reduces the load on the input dispatcher. Fixed an incorrect assumption that the value of ABS_(MT_)DISTANCE would be zero whenever the stylus was in direct contact. It appears that the correct way to determine whether the stylus is in direct contact (rather than hovering) is by checking for a non-zero reported pressure. Added code to read the initial state of tool buttons and axis values when the input devices are initialized or reset. This fixes problems where the input mapper state might have the wrong initial state. Moved responsibility for cancelling pending inputs (keys down, touches, etc.) to the InputDispatcher by sending it a device reset notification. This frees the InputReader from having to synthesize events during reset, which was cumbersome and somewhat brittle to begin with. Consolidated more of the common accumulator logic from SingleTouchInputMapper and MultiTouchInputMapper into TouchInputMapper. Improved the PointerLocation output. Change-Id: I595d3647f7fd7cb1e3eff8b3c76b85043b5fe2f0
eycodeLabels.h
|
5873ce46adc9e98efd6e5acbe21639a0a4d25c69 |
28-Jul-2011 |
Jeff Brown <jeffbrown@google.com> |
Refactor input reader to add stylus support. Bug: 5064702 Introduced the concept of an InputListener to further decouple the InputReader from the InputDispatcher. The InputListener exposes just the minimum interface that the InputReader needs to communicate with the outside world. The InputReader passes arguments to the InputListener by reference, which makes it easy to queue them up. Consolidated all of the InputReader locks into one simple global Mutex. The reason this wasn't done before was due to potential re-entrance in outbound calls to the InputDispatcher. To fix this, the InputReader now queues up all of the events it wants to send using a QueuedInputListener, then flushes them outside of the critical section after all of the event processing is finished. Removing all of the InputMapper locks greatly simplifies the implementation. Added tests for new stylus features such as buttons, tool types, and hovering. Added some helpers to BitSet32 to handle common code patterns like finding the first marked bit and clearing it. Fixed a bug in VelocityTracker where the wrong pointer trace could get cleared when handling ACTION_POINTER_DOWN. Oops. Changed PointerCoords so it no longer stores useless zero axis values. Removed editAxisValue because it is not very useful when all zero value axes are absent and therefore cannot be edited in place. Added dispatch of stylus hover events. Added support for distance and tool types. Change-Id: I4cf14d134fcb1db7d10be5f2af7b37deef8f8468
nput.h
|
acb7b5dfc804d2e6b2e75b688f536fd38d75641a |
11-Jun-2011 |
Pannag Sanketi <psanketi@google.com> |
Adding SurfaceEncoder for encoding FilterFrames Adding SurfaceEncoder which can be used to encode custom frame data. In a sense, it is reverse of what SurfaceTexture does. SurfaceEncoder takes in frames from a native window and passes them to an encoder, thus acting like a MediaSource. It uses GRAlloc buffers underneath for passing data. The client side sets the geometry, format in the beginning, which cannot be changed while the recording is going on. Currently, there is no common pixel format that both GRAlloc and HAL understand. Also, the encoder cannot encode using the data from the GRAlloc buffers. The SurfaceEncoder_test examines mainly the buffer passage since true encoding cannot be done at this point. SimpleDummyRecorder 'reads' the frames in the same thread as the start(), whereas DummyRecorder 'reads' in a separate thread much like the MPEG4Writer. The test with DummyRecorder is much closer to the real encoding implementation. Related to bug id: 4529323 Change-Id: I58ec19a150f8fe4d6195196dc44f55002b46c7c8
ixelFormat.h
|
5d99f17e827a927938e450076857f4cf145074c2 |
08-Jun-2011 |
Jeff Brown <jeffbrown@android.com> |
am 61220e88: am bbbab26e: am 2c180499: Merge "Revert velocity damping. Bug: 4364920" into honeycomb-mr2 * commit '61220e880ac4d9d76b7fd50744439e68e929c697': Revert velocity damping. Bug: 4364920
|
7ca7ba2064d4be0989b310907f5ddca218b58556 |
07-Jun-2011 |
Jeff Brown <jeffbrown@android.com> |
Revert velocity damping. Bug: 4364920 Velocity damping proved to be a bad idea because it would cause a significant ramp in velocity at the beginning of a gesture, instead of the desired smooth behavior. Oh well. Change-Id: Ie631946f47ef2492bd71fbed1ab44bbb39a875a8
nput.h
|
36f49c133ec0d9d14ba3a06039f9db435e4731ea |
04-Jun-2011 |
Jeff Brown <jeffbrown@android.com> |
am 56503b8d: am 8186a5f0: am 10c3f367: Merge "Implement pointer acceleration." into honeycomb-mr2 * commit '56503b8ddfe5c82407da32e18061e725f668432d': Implement pointer acceleration.
|
adab62038365be512aa9c21cf64df642dd075704 |
01-Jun-2011 |
Jeff Brown <jeffbrown@android.com> |
Implement pointer acceleration. Bug: 4124987 Change-Id: I1f31a28f1594c55302ccabe13fe3ca6d2ff71d50
nput.h
|
d3e6d3e763544511a870b354f657600d25c42b91 |
13-Apr-2011 |
Jeff Brown <jeffbrown@google.com> |
Initial checkin of spot presentation for touchpad gestures. (DO NOT MERGE) Added a new PointerIcon API (hidden for now) for loading pointer icons. Fixed a starvation problem in the native Looper's sendMessage implementation which caused new messages to be posted ahead of old messages sent with sendMessageDelayed. Redesigned the touch pad gestures to be defined in terms of more fluid finger / spot movements. The objective is to reinforce the natural mapping between fingers and spots which means there must not be any discontinuities in spot motion relative to the fingers. Removed the SpotController stub and folded its responsibilities into PointerController. Change-Id: Ib647dbd7a57a7f30dd9c6e2c260df51d7bbdd18e
nput.h
|
c5982b7bee75467f50d681ad54120eadc7a8d88e |
15-Mar-2011 |
Jeff Brown <jeffbrown@google.com> |
Improve VelocityTracker numerical stability. (DO NOT MERGE) Replaced VelocityTracker with a faster and more accurate native implementation. This avoids the duplicate maintenance overhead of having two implementations. The new algorithm requires that the sample duration be at least 10ms in order to contribute to the velocity calculation. This ensures that the velocity is not severely overestimated when samples arrive in bursts. The new algorithm computes the exponentially weighted moving average using weights based on the relative duration of successive sample periods. The new algorithm is also more careful about how it handles individual pointers going down or up and their effects on the collected movement traces. The intent is to preserve the last known velocity of pointers as they go up while also ensuring that other motion samples do not count twice in that case. Bug: 4086785 Change-Id: I95054102397c4b6a9076dc6a0fc841b4beec7920
nput.h
|
247da72a5bb1e762c73723fd2d495c9a6c4f1c68 |
10-Mar-2011 |
Jeff Brown <jeffbrown@google.com> |
Use touch pad gestures to manipulate the pointer. (DO NOT MERGE) 1. Single finger tap performs a click. 2. Single finger movement moves the pointer (hovers). 3. Button press plus movement performs click or drag. While dragging, the pointer follows the finger that is moving fastest. This is important if there are additional fingers down on the touch pad for the purpose of applying force to an integrated button underneath. 4. Two fingers near each other moving in the same direction are coalesced as a swipe gesture under the pointer. 5. Two or more fingers moving in arbitrary directions are transformed into touches in the vicinity of the pointer. This makes scale/zoom and rotate gestures possible. Added a native VelocityTracker implementation to enable intelligent switching of the active pointer during drags. Change-Id: I7b7ddacc724fb1306e1590dbaebb740d3130d7cd
nput.h
|
e959ed2533bdc37da99fd34dafa26d1967a6b4c9 |
07-May-2011 |
Jeff Brown <jeffbrown@google.com> |
Add initial API for stylus and mouse buttons. Added the concept of pointer properties in a MotionEvent. This is currently used to track the pointer tool type to enable applications to distinguish finger touches from a stylus. Button states are also reported to application as part of touch events. There are no new actions for detecting changes in button states. The application should instead query the button state from the MotionEvent and take appropriate action as needed. A good time to check the button state is on ACTION_DOWN. As a side-effect, applications that do not support multiple buttons will treat primary, secondary and tertiary buttons identically for all touch events. The back button on the mouse is mapped to KEYCODE_BACK and the forward button is mapped to KEYCODE_FORWARD. Added basic plumbing for the secondary mouse button to invoke the context menu, particularly in lists. Added clamp and split methods on MotionEvent to take care of common filtering operations so we don't have them scattered in multiple places across the framework. Bug: 4260011 Change-Id: Ie992b4d4e00c8f2e76b961da0a902145b27f6d83
nput.h
nputTransport.h
|
db05e228a4d170e644f27adc2d946558db53eb4e |
10-May-2011 |
Dianne Hackborn <hackbod@google.com> |
resolved conflicts for merge of 05be6d6f to master Change-Id: Ic6a6c5bb300f6f1d43f9ed550b284282b4f16212
|
16fe3c2c1fac36507ec7190537c95944943b0cb2 |
28-Apr-2011 |
Dianne Hackborn <hackbod@google.com> |
Better compat mode part one: start scaling windows. First step of improving app screen size compatibility mode. When running in compat mode, an application's windows are scaled up on the screen rather than being small with 1:1 pixels. Currently we scale the application to fill the entire screen, so don't use an even pixel scaling. Though this may have some negative impact on the appearance (it looks okay to me), it has a big benefit of allowing us to now treat these apps as normal full-screens apps and do the normal transition animations as you move in and out and around in them. This introduces fun stuff in the input system to take care of modifying pointer coordinates to account for the app window surface scaling. The input dispatcher is told about the scale that is being applied to each window and, when there is one, adjusts pointer events appropriately as they are being sent to the transport. Also modified is CompatibilityInfo, which has been greatly simplified to not be so insane and incomprehendible. It is now simple -- when constructed it determines if the given app is compatible with the current screen size and density, and that is that. There are new APIs on ActivityManagerService to put applications that we would traditionally consider compatible with larger screens in compatibility mode. This is the start of a facility to have a UI affordance for a user to switch apps in and out of compatibility. To test switching of modes, there is a new variation of the "am" command to do this: am screen-compat [on|off] [package] This mode switching has the fundamentals of restarting activities when it is changed, though the state still needs to be persisted and the overall mode switch cleaned up. For the few small apps I have tested, things mostly seem to be working well. I know of one problem with the text selection handles being drawn at the wrong position because at some point the window offset is being scaled incorrectly. There are probably other similar issues around the interaction between two windows because the different window coordinate spaces are done in a hacky way instead of being formally integrated into the window manager layout process. Change-Id: Ie038e3746b448135117bd860859d74e360938557
nput.h
|
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>
ramebufferNativeWindow.h
raphicBuffer.h
|
ec10d231c0eaadbcb143932e5c1bb7c1953125a7 |
02-May-2011 |
Iliyan Malchev <malchev@google.com> |
frameworks/base: move ANativeWindow/android_native_buffer_t out These definitions have been moved to system/core. Change-Id: I021b6b5f2fd72d538b5ccdcb33860ebd3004d9ad Signed-off-by: Iliyan Malchev <malchev@google.com>
ndroid_native_buffer.h
gl/android_natives.h
|
41abd67302b52aefadc2b3dea42226f16bf6d9ba |
15-Apr-2011 |
Iliyan Malchev <malchev@google.com> |
frameworks/base: make the ANativeWindow query() method const query() does not modify the object's data, so it needs to be a const method Change-Id: I67c40a3c865461e6f1cc2193fd2d74286ff6ac8f Signed-off-by: Iliyan Malchev <malchev@google.com>
ramebufferNativeWindow.h
gl/android_natives.h
|
9cdb01da71934e98b6732db0f5758ea4edd5d5c7 |
29-Apr-2011 |
Mathias Agopian <mathias@google.com> |
get rid of dependency on copybit HAL module Change-Id: Ia608099a2426c11a91d33063ba53c93e1eccb428
egion.h
|
4815f2a6ada7941680b29581d5cf5a5ed168f618 |
13-Apr-2011 |
Jeff Brown <jeffbrown@google.com> |
Initial checkin of spot presentation for touchpad gestures. Added a new PointerIcon API (hidden for now) for loading pointer icons. Fixed a starvation problem in the native Looper's sendMessage implementation which caused new messages to be posted ahead of old messages sent with sendMessageDelayed. Redesigned the touch pad gestures to be defined in terms of more fluid finger / spot movements. The objective is to reinforce the natural mapping between fingers and spots which means there must not be any discontinuities in spot motion relative to the fingers. Removed the SpotController stub and folded its responsibilities into PointerController. Change-Id: I5126b1e69d95252fda7f2a684c9287e239a57163
nput.h
|
02988ec716897ac6d501e732fc7cbef612d5fab6 |
01-Apr-2011 |
Jeff Brown <jeffbrown@google.com> |
Merge "Add a little input event consistency verifier."
|
3847f62209bef63735e8f72d04af1d845f67301c |
01-Mar-2011 |
Jeff Brown <jeffbrown@google.com> |
Add a little input event consistency verifier. The idea is to assist with debugging by identifying cases in which the input event stream is corrupted. Change-Id: I0a00e52bbe2716be1b3dfc7c02a754492d8e7f1f
nput.h
|
8f2fff35b01f704ac7999220d16e15e950230049 |
31-Mar-2011 |
Jeff Brown <jeffbrown@google.com> |
Merge "Add input filter mechanism for accessibility."
|
37159af66d7c594f4f1494d4112d087bd03e328e |
30-Mar-2011 |
Jeff Brown <jeffbrown@google.com> |
Add input filter mechanism for accessibility. This patch adds a mechanism for capturing, filtering, transforming and injecting input events at a very low level before the input dispatcher attempts to deliver them to applications. At this time, the mechanism is only intended to be used by the accessibility system to implement built-in system-level accessibility affordances. The accessibility input filter is currently just a stub. It logs the input events receives and reinjects them unchanged, except that it transforms KEYCODE_Q into KEYCODE_Z. Currently, the accessibility input filter is installed whenever accessibility is enabled. We'll probably want to change that so it only enables the input filter when a screen reader is installed and we want touch exploration. Change-Id: I35764fdf75522b69d09ebd78c9766eb7593c1afe
nput.h
|
1cd921eab3f7feb2391a22c374c408564779cc6e |
31-Mar-2011 |
Mathias Agopian <mathias@google.com> |
Revert "retire android_native_window_t" this type is still used by partner's source trees. we will get rid of it in next release's timeframe. This reverts commit 7b49b976277cb3538242151e7dbd24681ddec73e.
gl/android_natives.h
|
5cfbdc87d631cd2c885a365177ab44b38fa55186 |
24-Mar-2011 |
Iliyan Malchev <malchev@google.com> |
retire android_native_window_t Change-Id: I232c526168e1a93977d1c2d0fa74c8937cdeb23b Signed-off-by: Iliyan Malchev <malchev@google.com>
gl/android_natives.h
|
edc5ac145b136fe15203996b2c4b7a54c6f574b0 |
17-Mar-2011 |
Eino-Ville Talvala <etalvala@google.com> |
Merge "Add support for timestamps into SurfaceTexture."
|
1d01a12e7150be569557b64da9b8663c62c13594 |
18-Feb-2011 |
Eino-Ville Talvala <etalvala@google.com> |
Add support for timestamps into SurfaceTexture. API addition: The timestamps are represented as nanoseconds from some arbitrary time point. Like the SurfaceTexture transform matrix, the timestamp retrieved by getTimestamp is for the last frame sent to the GL texture using updateTexImage(). Camera HAL change: Expect vendors to set these timestamps using native_window_set_buffers_timestamp(). For now, they are autogenerated by SurfaceTextureClient if set_buffers_timestamp() is never called, but such timing is likely not accurate enough to pass a CTS test. bug:3300707 Change-Id: Ife131a0c2a826ac27342e11b8a6c42ff49e1bea7
gl/android_natives.h
|
5aaab9c6d865044aacbcfa22f4b00f9c2b715c3c |
08-Mar-2011 |
Jeff Brown <jeffbrown@google.com> |
Add 3D mode key and others. Related to an AOSP change request. Change-Id: I3f4f84b56a1af626a8783f5ecbb823eb12ba9fbe
eycodeLabels.h
|
e3d4a68f2d09098bda8c6ca6c3826877365c7267 |
16-Mar-2011 |
Jeff Brown <jeffbrown@google.com> |
Merge "Improve VelocityTracker numerical stability."
|
1593354388f622f189063314e97389f148a30b7f |
15-Mar-2011 |
Jeff Brown <jeffbrown@google.com> |
Improve VelocityTracker numerical stability. Replaced VelocityTracker with a faster and more accurate native implementation. This avoids the duplicate maintenance overhead of having two implementations. The new algorithm requires that the sample duration be at least 10ms in order to contribute to the velocity calculation. This ensures that the velocity is not severely overestimated when samples arrive in bursts. The new algorithm computes the exponentially weighted moving average using weights based on the relative duration of successive sample periods. The new algorithm is also more careful about how it handles individual pointers going down or up and their effects on the collected movement traces. The intent is to preserve the last known velocity of pointers as they go up while also ensuring that other motion samples do not count twice in that case. Bug: 4086785 Change-Id: I2632321232c64d6b8faacdb929e33f60e64dcdd3
nput.h
|
cefc876234dcbbc3f973862c8c8bbdf4dc18296e |
15-Mar-2011 |
Jamie Gennis <jgennis@google.com> |
am ceb7cb14: am 02805a40: Merge "ANativeWindow: add query for the concrete type." into honeycomb-mr1 * commit 'ceb7cb1460484eda1a3cb9cd271d7caf3a3dcbd1': ANativeWindow: add query for the concrete type.
|
391bbe2246a7547dbf3460c231b3c5ba691d4eb1 |
14-Mar-2011 |
Jamie Gennis <jgennis@google.com> |
ANativeWindow: add query for the concrete type. This change adds a query to the ANativeWindow interface for getting the concrete type of the ANativeWindow. Bug: 4086509 Change-Id: I64aa86d72fbca3b52a98e1fc35608737781a3178
gl/android_natives.h
|
fa773aa745325263745202f822335dfeec0e4c67 |
10-Mar-2011 |
Jeff Brown <jeffbrown@google.com> |
Use touch pad gestures to manipulate the pointer. 1. Single finger tap performs a click. 2. Single finger movement moves the pointer (hovers). 3. Button press plus movement performs click or drag. While dragging, the pointer follows the finger that is moving fastest. This is important if there are additional fingers down on the touch pad for the purpose of applying force to an integrated button underneath. 4. Two fingers near each other moving in the same direction are coalesced as a swipe gesture under the pointer. 5. Two or more fingers moving in arbitrary directions are transformed into touches in the vicinity of the pointer. This makes scale/zoom and rotate gestures possible. Added a native VelocityTracker implementation to enable intelligent switching of the active pointer during drags. Change-Id: I5ada57e7f2bdb9b0a791843eb354a8c706b365dc
nput.h
|
46689da7ee29902f2ebebd6224f566c4deccc274 |
09-Mar-2011 |
Jeff Brown <jeffbrown@google.com> |
Input improvements and bug fixes. Associate each motion axis with the source from which it comes. It is possible for multiple sources of the same device to define the same axis. This fixes new API that was introduced in MR1. (Bug: 4066146) Fixed a bug that might cause a segfault when using a trackball. Only fade out the mouse pointer when touching the touch screen, ignore other touch pads. Changed the plural "sources" to "source" in several places in the InputReader where we intend to refer to a particular source rather than to a combination of sources. Improved the batching code to support batching events from different sources of the same device in parallel. (Bug: 3391564) Change-Id: I0189e18e464338f126f7bf94370b928e1b1695f2
nput.h
|
ec8a5ef78dc356fdfa3313e6e54c7074ecc9ea42 |
09-Mar-2011 |
Jamie Gennis <jgennis@google.com> |
Merge "ANativeWindow: add queues-to-window-composer check." into honeycomb-mr1
|
134f0422866e8985188ed10dfbdcb8e6c34b87f7 |
08-Mar-2011 |
Jamie Gennis <jgennis@google.com> |
ANativeWindow: add queues-to-window-composer check. This change adds a new 'method' to the ANativeWindow interface to check whether buffers queued to the window will be sent directly to the system window compositor. Change-Id: I4d4b199e328c110b68b250029aea650f03c8724d Bug: 3495535
gl/android_natives.h
|
e89d1041ddc81a85c73f00f94a978e32597afa68 |
04-Mar-2011 |
Jeff Brown <jeffbrown@google.com> |
Joystick tweaks. (DO NOT MERGE) Ensure that the joystick can always reach -1.0, 0.0 and 1.0 positions even when noise filtering is applied. (Bug: 3514510) Add support for a few more standard axes. Add additional mapping modes for axes. Some axes are inverted from standard interpretation or are actually intended to be split into two distict axes such as left/right trigger controls or accelerator/brake. Add key layout file for a G25 racing wheel and XBox 360 controller to tweak behavior. They work fine without them but the axis mappings are not ideal. Change-Id: I0fddd90309af4dc14d35f34fe99ed6e521c0b7c7
eyLayoutMap.h
eycodeLabels.h
|
d5ed285606a9f28d2102e086aaee5c9d1cb819b9 |
03-Mar-2011 |
Jeff Brown <jeffbrown@google.com> |
Wake screen from external HID peripherals. Added some plumbing to enable the policy to intercept motion events when the screen is off to handle wakeup if needed. Added a basic concept of an external device to limit the scope of the wakeup policy to external devices only. The wakeup policy for internal devices should be based on explicit rules such as policy flags in key layout files. Moved isTouchEvent to native. Ensure the dispatcher sends the right event type to userActivity for non-touch pointer events like HOVER_MOVE and SCROLL. Bug: 3193114 Change-Id: I15dbd48a16810dfaf226ff7ad117d46908ca4f86
nput.h
|
80f3e7cc1506bbb4bec458e15629805a7c1df7ee |
02-Mar-2011 |
Jeff Brown <jeffbrown@google.com> |
Fade out the mouse pointer after inactivity or other events. Fades out the mouse pointer: - after 15 seconds of inactivity normally - after 3 seconds of inactivity in lights out mode - after a non-modifier key down - after a touch down Extended the native Looper to support enqueuing time delayed messages. This is used by the PointerController to control pointer fade timing. Change-Id: I87792fea7dbe2d9376c78cf354fe3189a484d9da
nput.h
eyboard.h
|
9d4d6c101d90d4a1d1ca9413cf3eb89d1f1898d6 |
27-Feb-2011 |
Jamie Gennis <jgennis@google.com> |
Add the MIN_UNDEQUEUED_BUFFERS query to ANW. This change adds a new query to ANativeWindow for getting the minimum number of buffers that must be left un-dequeued during the steady-state operation of the ANativeWindow. Change-Id: Ie8c461fc26b02ecde02ddb4f95bf763662cf1551 Related-Bug: 3356050
gl/android_natives.h
|
3ea4de826d95c580c28d854c677ded0d15d220a8 |
19-Feb-2011 |
Jeff Brown <jeffbrown@google.com> |
Add new axes for joysticks and mouse wheels. Added API on InputDevice to query the set of axes available. Added API on KeyEvent and MotionEvent to convert keycodes and axes to symbolic name strings for diagnostic purposes. Added API on KeyEvent to query if a given key code is a gamepad button. Added a new "axis" element to key layout files to specify the mapping between raw absolute axis values and motion axis ids. Expanded the axis bitfield to 64bits to allow for future growth. Modified the Makefile for keyboard prebuilts to run the keymap validation tool during the build. Added layouts for two game controllers. Added default actions for game pad button keys. Added more tests. Fixed a bunch of bugs. Change-Id: I73f9166c3b3c5bcf4970845b58088ad467525525
nput.h
eyLayoutMap.h
eyboard.h
eycodeLabels.h
|
b2d4435dfa44531ee6025563571cfd77cd1b4f97 |
17-Feb-2011 |
Jeff Brown <jeffbrown@google.com> |
Fix a regression with MotionEvent parceling. Also added some more unit tests. Change-Id: I413654294d1a998eec056884e6df5eaa50f3daf4
nput.h
|
3e3414636c71948e3f4b162b4e5b773c77d37098 |
15-Feb-2011 |
Jeff Brown <jeffbrown@google.com> |
Add support for arbitrary axes in MotionEvents. This change makes it possible to extend the set of axes that are reported in MotionEvents by defining new axis constants. The MotionEvent object is now backed by its C++ counterpart to avoid having to maintain multiple representations of the same data. Change-Id: Ibe93c90d4b390d43c176cce48d558d20869ee608
nput.h
|
79676ac8e6a95fd1b1fad2b1032f01d582614055 |
31-Jan-2011 |
Jamie Gennis <jgennis@google.com> |
am 09443aeb: am 62884505: Merge "Reset ANativeWindow crop on buffer geometry changes." into honeycomb * commit '09443aeb6470d66f5bc1938b70d74b3e2f9bbbb9': Reset ANativeWindow crop on buffer geometry changes.
|
68f9127e88ca6fd849d0f28bcd8776e04aab22e6 |
29-Jan-2011 |
Jamie Gennis <jgennis@google.com> |
Reset ANativeWindow crop on buffer geometry changes. This changes the ANativeWindow API and the two implementations to reset the window's crop rectangle to be uncropped when the window's buffer geometry is changed. Bug: 3359604 Change-Id: I64283dc8382ae687787ec0bebe6a5d5b4a0dcd6b
gl/android_natives.h
|
16f0453fee84c6aad59fe0d1c7d36f061d46cffc |
20-Jan-2011 |
Glenn Kasten <gkasten@google.com> |
Protected surface API To be used by DRM framework, implemented by display HAL Change-Id: I054a07a94f4d5dbe792f3a597e2e49a100d90eb2
raphicBuffer.h
|
ae1d9d7412ff03d76641b75cfa8c7ddecf123b55 |
26-Jan-2011 |
Jeff Brown <jeffbrown@google.com> |
am 12b2dc90: am b1e0a870: Merge "Fix crashes caused by some input devices." into honeycomb * commit '12b2dc90883ef4f930a17907acdef3677b0598a5': Fix crashes caused by some input devices.
|
eb8b9d8a22f521816ce691077ae625eeb9dbb6e0 |
26-Jan-2011 |
Jeff Brown <jeffbrown@google.com> |
Fix crashes caused by some input devices. The touch screen sometimes reports more than 10 pointers even though that's all we asked for. When this happens, we start dropping events with more than 10 pointers. This confuses applications and causes them to crash. Raised the limit to 16 pointers. Bug: 3331247 The default behavior was to identify all touch devices as touch screens. External devices that are plugged in are more likely to be touch pads not attached to a screen. Changed the default to be a touch pad and renamed some internal constants to avoid confusion. A certain mouse happens to also behave like a touch pad. That caused problems because we would see multiple concurrent traces of motion events coming from the same input device so we would batch them up. Added code to ensure that we don't batch events unless they come from the same *source* in addition to coming from the same *device*. Due to batching or misbehaving drivers, it's possible for the set of pointer ids to be different from what we expect when it comes time to split motion events across windows. As a result, we can generate motion events with 0 pointers. When we try to deliver those events, we cause an error in the InputTransport so we tear down the InputChannel and kill the application. Added code to check out assumption about pointer ids and drop the event gracefully instead. Patched up the tests to take into account the change in default behavior for identifying touch screens and touch pads. Change-Id: Ic364bd4cb4cc6335d4a1213a26d6bdadc7e33505
nput.h
|
6453b75d38b4f11e6efcb4c765e9e98248bd2b7e |
20-Jan-2011 |
Jeff Brown <jeffbrown@google.com> |
am 5f668c6e: am 8b9df978: Merge "Fix getSwitchState." into honeycomb * commit '5f668c6e6bb2515325632691a804a7c8f24ebb09': Fix getSwitchState.
|
430c21ea871436df1ac5687f1fb19908667b1a10 |
20-Jan-2011 |
Jeff Brown <jeffbrown@google.com> |
Fix getSwitchState. InputReader::getSwitchState always returns AKEY_STATE_UNKNOWN because SwitchInputMapper::getSources() returns 0 which cannot match any source mask including AINPUT_SOURCE_ANY. As a result initial lid switch detection is broken. This change adds a new source constant AINPUT_SOURCE_SWITCH that indicates that the source has switches. Change-Id: I5321ecf0ce84f1c2b4535f6c163d3f4dcf9b7a9b
nput.h
|
218e7c74e62b1fbc0984c468ceec2fb5f7c328ce |
16-Jan-2011 |
Jeff Brown <jeffbrown@google.com> |
Add joystick support to framework. Change-Id: I95374436708752e1a9cff3f85c5b9bc3e0987961
eycodeLabels.h
|
8ba32fade11abb73f3fd47ea0953c9528eb5b91f |
20-Dec-2010 |
Jamie Gennis <jgennis@google.com> |
Add the SurfaceTexture C++ implementation. This change adds the C++ implementation of SurfaceTexture and related classes. The goal of this is for a SurfaceTexture to be passed to camera service or Stagefright in place of a Surface to allow camera preview or decoded video frames to be streamed to an OpenGL ES texture that an application can use. Change-Id: I55c83a7017f1ecb81c9c9e3252cbd118b914296c
raphicBuffer.h
|
41250361577ce85d30b29ef530cfb7bea7d0604d |
03-Jan-2011 |
Jeff Brown <jeffbrown@google.com> |
Mouse pointer integration. Added support for loading the pointer icon from a resource. Moved the system server related bits of the input manager out of libui and into libinput since they do not need to be linked into applications. Change-Id: Iec11e0725b3add2b905c51f8ea2c3b4b0d1a2d67
isplayInfo.h
ventHub.h
nputDispatcher.h
nputManager.h
nputReader.h
ointerController.h
|
4c501a42173bfc0c7c9ee32312db392c59b67e13 |
24-Dec-2010 |
Jeff Brown <jeffbrown@google.com> |
Add initial support for cursor-based pointing devices. Some parts stubbed out but you can plug in a mouse and move a green cursor around to interact with the UI. Change-Id: I80d597a7f11d3bd92041890f74b3c77326975e6e
ventHub.h
nputReader.h
ointerController.h
|
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
Overlay.h
verlay.h
|
1d21a9cafc534c34a2f28c985c4c7aa176d0e67b |
02-Dec-2010 |
Erik Gilling <konkers@android.com> |
surfaceflinger: add support for gralloc dump hooks Change-Id: Ib6f539ed0132b70d040d653c03d52cc04249ac3c
ramebufferNativeWindow.h
|
02d85b5021dc3e9c042e1e3426fae2f0a903595b |
07-Dec-2010 |
Jeff Brown <jeffbrown@google.com> |
Add support for fallback keycodes. This change enables the framework to synthesize key events to implement default behavior when an application does not handle a key. For example, this change enables numeric keypad keys to perform their associated special function when numlock is off. The application is informed that it is processing a fallback keypress so it can choose to ignore it. Added a new keycode for switching applications. Added ALT key deadkeys. New default key mappings: - ESC -> BACK - Meta+ESC -> HOME - Alt+ESC -> MENU - Meta+Space -> SEARCH - Meta+Tab -> APP_SWITCH Fixed some comments. Fixed some tests. Change-Id: Id7f3b6645f3a350275e624547822f72652f3defe
nputDispatcher.h
nputReader.h
nputTransport.h
eyCharacterMap.h
eycodeLabels.h
|
b5a00fcb71426492f248ed49a0514a9b8d385065 |
08-Dec-2010 |
Mathias Agopian <mathias@google.com> |
am 48f42f8c: am 4153bf3a: Merge "[3171580] don\'t automatically log GraphicBuffer allocation failures" into gingerbread * commit '48f42f8c3fbd33b2f46c6290ff5963dd58938cf9': [3171580] don't automatically log GraphicBuffer allocation failures
|
372c56e98b93647b7050e518c285057a8a72bc74 |
07-Dec-2010 |
Mathias Agopian <mathias@google.com> |
am 4153bf3a: Merge "[3171580] don\'t automatically log GraphicBuffer allocation failures" into gingerbread * commit '4153bf3a259624a2f2dc497b77b225a1fb517abc': [3171580] don't automatically log GraphicBuffer allocation failures
|
678bdd6349344df254cc0c3377a40fd99e216635 |
04-Dec-2010 |
Mathias Agopian <mathias@google.com> |
[3171580] don't automatically log GraphicBuffer allocation failures some of these failures are not fatal and even expected in some cases so they should not emit a dump in the log in those cases. Change-Id: Idcfa252e3bfa9d74e27fe4ad8f8623aa01aa9c5e
raphicBuffer.h
raphicBufferAllocator.h
|
db360642ed7a48eb3b3607a791bbe449cc6529bb |
02-Dec-2010 |
Jeff Brown <jeffbrown@google.com> |
Improve support for external keyboards. Use Vendor ID, Product ID and optionally the Version to locate keymaps and configuration files for external devices. Moved virtual key definition parsing to native code so that EventHub can identify touch screens with virtual keys and load the appropriate key layout file. Cleaned up a lot of old code in EventHub. Fixed a regression in ViewRoot's fallback event handling. Fixed a minor bug in FileMap that caused it to try to munmap or close invalid handled when released if the attempt to map the file failed. Added a couple of new String8 conveniences for formatting strings. Modified Tokenizer to fall back to open+read when mmap fails since we can't mmap sysfs files as needed to open the virtual key definition files in /sys/board_properties/. Change-Id: I6ca5e5f9547619fd082ddac47e87ce185da69ee6
ventHub.h
nput.h
nputReader.h
eyboard.h
irtualKeyMap.h
|
53c16642e2f8176b26f61b98328051f6dd1234ae |
19-Nov-2010 |
Jeff Brown <jeffbrown@google.com> |
Ensure the ShortcutManager uses the correct key character map. The ShortcutManager used to only receive the key code of the key event that triggered the shortcut. This change now provides the shortcut manager with the whole key event so it can look up the associated character using the correct key character map. To make this more efficient, added a mechanism for recycling key events. At the moment it is only used by key events owned by the system process, since clients of the existing API (such as Views) might continue to hold on to key events after dispatch has finished so they would break if the key event were recycled by the framework. Deprecated KeyCharacterMap.BUILT_IN_KEYBOARD. Change-Id: I4313725dd63f2be01c350c005a41c7fde9bc67e8
nput.h
nputDispatcher.h
|
6688837ff6a959b4f59d9a4249aac1504f590a4b |
30-Nov-2010 |
Jeff Brown <jeffbrown@google.com> |
Support non-orientation aware keyboards and other devices. Fixed a bug with dpad keys on external keyboards being rotated according to the display orientation by adding a new input device configuration property called "keyboard.orientationAware". Added a mechanism for overriding the key layout and key character map in the input device configuration file using the new "keyboard.layout" and "keyboard.characterMap" properties. Also added "trackball.orientationAware", "touch.orientationAware" and "touch.deviceType" configuration properties. Rewrote the configuration property reading code in native code so that it can be used by EventHub and other components. Added basic support for installable idc, kl, and kcm files in /data/system/devices. However, there is no provision for copying files there yet. Disabled long-press character pickers on full keyboards so that key repeating works as expected. Change-Id: I1bd9f0c3d344421db444e7d271eb09bc8bab4791
ventHub.h
nput.h
nputReader.h
eyboard.h
|
ad1894d8dfcb56d04e7c7e80bcaa018bf4ec203f |
24-Nov-2010 |
Joe Onorato <joeo@google.com> |
Allow status bar panels to be on top of the status bar. Change-Id: I3c74ece5f7042e6302717f4263746d59d5447ec9
nputDispatcher.h
|
a3477c862a5debcac7dfb076749059406ec59512 |
11-Nov-2010 |
Jeff Brown <jeffbrown@google.com> |
Added support for full PC-style keyboards. BREAKING CHANGE: Redesigned the key character map format to accomodate full keyboards with more comprehensive suite of modifiers. Old key character maps will not work anymore and must be updated. The new format is plain text only and it not compiled to a binary file (so the "kcm" tool will be removed in a subsequent check-in). Added FULL keyboard type to support full PC-style keyboards. Added SPECIAL_FUNCTION keyboard type to support special function keypads that do not have any printable keys suitable for typing and only have keys like HOME and POWER Added a special VIRTUAL_KEYBOARD device id convention that maps to a virtual keyboard with a fixed known layout. This is designed to work around issues injecting input events on devices whose built-in keyboard does not have a useful key character map (ie. when the built-in keyboard is a special function keyboard only.) Modified several places where events were being synthesized to use the virtual keyboard. Removed support for the "qwerty" default layout. The new default layout is "Generic". For the most part "qwerty" was being used as a backstop in case the built-in keyboard did not have a key character map (probably because it was a special function keypad) and the framework needed to be able to inject key events anyways. The latter issue is resolved by using the special VIRTUAL_KEYBOARD device instead of BUILT_IN_KEYBOARD. Added the concept of a key modifier behavior so that MetaKeyKeyListener can distinguish between keyboards that use chorded vs. toggled modifiers. Wrote more robust key layout and key character map parsers to enable support for new keyboard features and user installable key maps. Fixed a bug in InputReader generating key ups when keys are released out of sequence. Updated tons of documentation. Currently QwertyKeyListener is being used for full keyboards with autotext and capitalization disabled. This mostly works but causes some problems with character pickers, etc. These issues will be resolved in subsequent changes. Change-Id: Ica48f6097a551141c215bc0d2c6f7b3fb634d354
ventHub.h
eyCharacterMap.h
eyLayoutMap.h
eyboard.h
|
3f02b88af646eb950edb44e584b6a82be06c709a |
18-Nov-2010 |
Jean-Baptiste Queru <jbq@google.com> |
am 5e069074: am a15e4886: Merge "Framebuffer: Support variable number of framebuffers in the UI" * commit '5e0690745a45f99d12d940dd4aaae814b00a429e': Framebuffer: Support variable number of framebuffers in the UI
|
af1097658321bfdfaf0cc65214a94bfcdee372ce |
18-Nov-2010 |
Jean-Baptiste Queru <jbq@google.com> |
am a15e4886: Merge "Framebuffer: Support variable number of framebuffers in the UI" * commit 'a15e4886de8f75f3cb137f51743d330414c910e8': Framebuffer: Support variable number of framebuffers in the UI
|
e33a9ecc25b91d98ea75e3c14fd24c0c7fce5089 |
11-Nov-2010 |
Jeff Brown <jeffbrown@google.com> |
Enable touch splitting for all windows by default. New default only applies to applications with targetSdkVersion >= HONEYCOMB. Old applications default to no touch splitting for their windows. In addition, enabled split touch for various system windows. Bug: 3049580 Change-Id: Idc8da9baa2cd8e1e4e76af8967d7b6a5ccb94427
nputDispatcher.h
|
af34db4dcb7dac2f69753f76c438e4a47eda93ef |
09-Nov-2010 |
Jason Bayer <bayer@google.com> |
Add new keycodes initially used for GoogleTV devices. Change-Id: I1b901037d6d401931dd3ec6f7d5e1e6ad165d1c9
eycodeLabels.h
|
d94206c41dfbac8340b86864d9e05cdc3a3a87ba |
08-Nov-2010 |
Joe Onorato <joeo@google.com> |
The CHEEK_TOUCH stuff never worked. Remove it. Bug: 3104906 Change-Id: Ia37236ba1775fc3ec8c111e2e0b85b105e0dea6a
owerManager.h
|
81499912348194a9432841398a0d337fa4079c98 |
05-Nov-2010 |
Jeff Brown <jeffbrown@google.com> |
Tell system server whether the app handled input events. Refactored ViewRoot, NativeActivity and related classes to tell the dispatcher whether an input event was actually handled by the application. This will be used to move more of the global default key processing into the system server instead of the application. Change-Id: If06b98b6f45c543e5ac5b1eae2b3baf9371fba28
nputDispatcher.h
nputTransport.h
|
71484f2f76457287a1fbf5791f530c2b2459aa0c |
03-Nov-2010 |
Rodrigo Obregon <robregon@ti.com> |
Framebuffer: Support variable number of framebuffers in the UI This change defines a macro NUM_FRAME_BUFFERS to set the desired number of framebuffers to be used by the UI, instead of hard-coding 2 framebuffers. Aditional logic has been added to handle the initialization and destruction of NUM_FRAME_BUFFERS buffers. Change-Id: I3a4bfec3e0f453432f2ffebf084c00f574d3be46 Signed-off-by: Rodrigo Obregon <robregon@ti.com>
ramebufferNativeWindow.h
|
7e5660f3e28b4a8321745e013a6a66db95c2bb3e |
01-Nov-2010 |
Jeff Brown <jeffbrown@google.com> |
Add plumbing for volume mute key. Full support for the volume mute key will be implemented in a later change. Bug: 2912307 Change-Id: I98c27d6360f159c8b7447e04b45f442eff87b38a
eycodeLabels.h
|
4c766ccea57ebc82ce08d66bc7c5e2ee871e88ea |
28-Oct-2010 |
Jeff Brown <jeffbrown@google.com> |
resolved conflicts for merge of df3cccf3 to master Change-Id: I425496a9fc4e9cbc50ad6938e9dccb14827d9558
|
fef5b04203b0efcbd6dc5d279083d57b77f3391b |
28-Oct-2010 |
Jeff Brown <jeffbrown@google.com> |
Drop all dispatcher state when dispatcher is disabled. This patch makes the dispatcher drop all of its state when it is disabled (when the screen turns off). This ensures that the dispatcher does not get stuck thinking a pointer is still down if the screen turned off while the user was touching the display (such as a fat touch while hitting the power button). Bug: 3098344 Change-Id: If50ef5804870aa1acd3179fd4b40e3cda58dd39d
nputDispatcher.h
|
bc9f0531564e3c090ae14175d77091820945aa8b |
24-Oct-2010 |
Jeff Brown <jeffbrown@google.com> |
am 2ef36763: am 860c2df4: Merge "Add unit tests for native input and fix bugs identified." into gingerbread Merge commit '2ef36763700eff5679d6012e7f078c57f1a4c465' * commit '2ef36763700eff5679d6012e7f078c57f1a4c465': Add unit tests for native input and fix bugs identified.
|
3c3cc62e243a7796f5c1e88773d34e2054cc26c6 |
21-Oct-2010 |
Jeff Brown <jeffbrown@google.com> |
Add unit tests for native input and fix bugs identified. Fixed a bug where we would lose the first touch point when swiping out of the virtual key area. Fixed a bug where we would not send an ACTION_MOVE event in cases where individual pointers went down/up and the remaining pointers actually moved. This is important since many applications do not handle pointer movements during ACTION_POINTER_DOWN or ACTION_POINTER_UP. In the case of ACTION_POINTER_UP the movement was completely lost since all pointers were dispatched using their old location rather than the new location. Improved motion event validation to check for duplicate pointer ids. Added an input source constant that was missing from the NDK api but defined in the framework api. Added a timestamp when reporting added/removed devices in EventHub. Bug: 3070082 Change-Id: I3206a030f43b7616e2f48006e5a9d522c4d92e56
nputReader.h
|
2659f40403a7927ff421cf084f3b8e8b3e763ce9 |
19-Oct-2010 |
Jeff Brown <jeffbrown@google.com> |
am f2c40603: am 7689dd49: Merge "Fix bug where home presses were not poking user activity." into gingerbread Merge commit 'f2c406030874b355ca9e4e67cc0e3aff6103c23e' * commit 'f2c406030874b355ca9e4e67cc0e3aff6103c23e': Fix bug where home presses were not poking user activity.
|
60b5776c8795b6f52d1dddf89453c42c085da50f |
18-Oct-2010 |
Jeff Brown <jeffbrown@google.com> |
Add support for calibrating touch position. Useful for tweaking touch screen alignment without having to modify the kernel device driver x/y axis bounds. Change-Id: I6ca43d3c138548f9dfb76aa33150a0c853698fb6
nputReader.h
|
ef3a8234824cc9f7c3464dd05f9aeca8ea77ebd9 |
18-Oct-2010 |
Jeff Brown <jeffbrown@google.com> |
Fix bug where home presses were not poking user activity. We now poke user activity twice: once upon dequeueing an event for dispatch and then again just before we dispatch it. The second poke is to compensate for the fact that it can take a few seconds to identify the dispatch target (if the application is responding slowly) but we want to keep the display from going to sleep for X amount of time after the app gets a chance to actually receive the event. This mirrors pre-Gingerbread behavior. Removed some unnecessary code that filters user activity pokes when sending events to KeyGuard. We don't need this because KeyGuard already tells the power manager to disable user activity. Bug: 3101397 Change-Id: I8c3a77601fdef8f584e84cfdd11aa79da0ff51db
nputDispatcher.h
|
7d8733fc7a100c6bcb1d5375e0ea067d907955d2 |
16-Oct-2010 |
Jeff Brown <jeffbrown@google.com> |
am 5f0cbfce: am c1e7b218: Merge "Improve input device calibration format." into gingerbread Merge commit '5f0cbfcecc4db20f897507c826296b3aac70c592' * commit '5f0cbfcecc4db20f897507c826296b3aac70c592': Improve input device calibration format.
|
e68d9e0be41ac93bd802579c012aca22086f6f9e |
15-Oct-2010 |
Jeff Brown <jeffbrown@google.com> |
Add support for secure system overlays. Manual merge from Gingerbread. This change adds a new window type for secure system overlays created by the system itself from non-secure system overlays that might be created by applications that have the system alert permission. Secure views ignore the presence of secure system overlays. Bug: 3098519 Change-Id: Id876736fd8bf332ff9a5428bde59f5268aa49c3a
nputDispatcher.h
|
d9dd44d867315478bbebfbe69bb952ea8138ac4e |
15-Oct-2010 |
Jeff Brown <jeffbrown@google.com> |
Add support for secure system overlays. (DO NOT MERGE) This change adds a new window type for secure system overlays created by the system itself from non-secure system overlays that might be created by applications that have the system alert permission. Secure views ignore the presence of secure system overlays. Bug: 3098519 Change-Id: I8f8398f4fdeb0469e5d71124c21bedf121bd8c07
nputDispatcher.h
|
6a817e22e4b09a982ba17c1aff57f9fcb735c950 |
13-Sep-2010 |
Jeff Brown <jeffbrown@google.com> |
Add keycodes and meta-key modifiers to support external keyboards. Added new key maps for external keyboards. These maps are intended to be shared across devices by inheriting the "keyboards.mk" product makefile as part of the device's product definition. One of the trickier changes here was to unwind some code in MetaKeyKeyListener that assumed that only the low 8 bits of the meta key state were actually used. The new code abandons bitshifts in favor of simple conditionals that are probably easier to read anyways. The special meta key state constants used by MetaKeyKeyListener are now (@hide) defined in KeyEvent now so as to make it clearer that they share the same code space even if those codes are not valid for KeyEvents. The EventHub now takes care of detecting the appropriate key layout map and key character map when the device is added and sets system properties accordingly. This avoids having duplicate code in KeyCharacterMap to probe for the appropriate key character map although the current probing mechanism has been preserved for legacy reasons just in case. Added support for tracking caps lock, num lock and scroll lock and turning their corresponding LEDs on and off as needed. The key character map format will need to be updated to correctly support PC style external keyboard semantics related to modifier keys. That will come in a later change so caps lock doesn't actually do anything right now except turn the shiny LEDs on and off... Added a list of symbolic key names to KeyEvent and improved the toString() output for debug diagnosis. Having this list in a central place in the framework also allows us to remove it from Monkey so there is one less thing to maintain when we add new keycodes. Bug: 2912307 Change-Id: If8c25e8d50a7c29bbf5d663c94284f5f86de5da4
ventHub.h
nput.h
nputReader.h
eycodeLabels.h
|
6b337e74f024fdd9e8ed3fdd3414bde3e1a3306e |
15-Oct-2010 |
Jeff Brown <jeffbrown@google.com> |
Improve input device calibration format. Added support for calibrating touch size for devices that report size as an area measurement rather than as a width. Fixed some bugs. Bug: 3096045 Change-Id: I30a12e73752883516ed054f8af407204bca45814
nputReader.h
|
b6702e59726d7719d9bc644834938c180797deee |
12-Oct-2010 |
Jeff Brown <jeffbrown@google.com> |
Track input state when transferring touch focus. Copies the input state to the destination window and sends synthesic cancelation events to the source window. Change-Id: Ia75820b0d756ed5d6cd22dce7830251ac85141ed
nputDispatcher.h
|
33d54ce97d4ac84ce0e1a84e2710b45de5e1d41d |
11-Oct-2010 |
Jeff Brown <jeffbrown@google.com> |
Fix an event injection bug when the policy is bypassed. Added the concept of a "trusted" event to distinguish between events from attached input devices or trusted injectors vs. other applications. This change enables us to move certain policy decisions out of the dispatcher and into the policy itself where they can be handled more systematically. Cherry pick of b931a1b4 from gingerbread into master. Change-Id: I700a5f07b8b227878cea9437a289a45a245c0424
nput.h
nputDispatcher.h
|
d129348647325c2040190f88378c1ac39cc3151c |
12-Oct-2010 |
Jeff Brown <jeffbrown@google.com> |
am 41aabeb5: am 1e6a3a53: Merge "Added more robust tracking and cancelation of events." into gingerbread Merge commit '41aabeb51305d19747687f246080f44fc2a74435' * commit '41aabeb51305d19747687f246080f44fc2a74435': Added more robust tracking and cancelation of events.
|
1fe6dec0975d0cf7faf367f6bcb30c67d2025a47 |
11-Oct-2010 |
Jeff Brown <jeffbrown@google.com> |
Fix an event injection bug when the policy is bypassed. Added the concept of a "trusted" event to distinguish between events from attached input devices or trusted injectors vs. other applications. This change enables us to move certain policy decisions out of the dispatcher and into the policy itself where they can be handled more systematically. Change-Id: I4d56fdcdd31aaa675d452088af39a70c4e039970
nput.h
nputDispatcher.h
|
90f0cee685f9b13e6bac7793717a9d15de8eafe8 |
09-Oct-2010 |
Jeff Brown <jeffbrown@google.com> |
Added more robust tracking and cancelation of events. This change fixes several issues where events would be dropped in the input dispatch pipeline in such a way that the dispatcher could not accurately track the state of the input device. Given more robust tracking, we can now also provide robust cancelation of input events in cases where an application might otherwise become out of sync with the event stream due to ANR, app switch, policy decisions, or forced focus transitions. Pruned some of the input dispatcher log output. Moved the responsibility for calling intercept*BeforeQueueing into the input dispatcher instead of the input reader and added support for early interception of injected events for events coming from trusted sources. This enables behaviors like injection of media keys while the screen is off, haptic feedback of injected virtual keys, so injected events become more "first class" in a way. Change-Id: Iec6ff1dd21e5f3c7feb80ea4feb5382bd090dbd9
nput.h
nputDispatcher.h
nputReader.h
|
309d3bb2f902163356f9d40b6d45c11b435d77a9 |
07-Oct-2010 |
Jamie Gennis <jgennis@google.com> |
Move binder magic from the Surface class to GraphicBuffer. - Register buffers with Gralloc when unflattening a GraphicBuffer (rather than doing it in the Surface class). - Add support for a GraphicBuffer that wraps an android_native_window_t*. Change-Id: I029ac086111bbac800e5ca37eb505f558b718cd8
raphicBuffer.h
|
6d462b1221e98a9203d84bc33b402e4fcd3f4b94 |
07-Oct-2010 |
Jeff Brown <jeffbrown@google.com> |
am 56364bcd: am 78d15acf: Merge "Make secure views tolerate IME overlays." into gingerbread Merge commit '56364bcd0d1a1b064db3e83fdb64f948ce5c2ad7' * commit '56364bcd0d1a1b064db3e83fdb64f948ce5c2ad7': Make secure views tolerate IME overlays.
|
e1c290b97d4e34a4f1938ebee30eab6678b06c2a |
07-Oct-2010 |
Mathias Agopian <mathias@google.com> |
am ff04e97f: am f4619308: Merge "fix [2835280] Add support for cancelling buffers to ANativeWindow" into gingerbread Merge commit 'ff04e97faf75c435e453d4c1caf7eeac8b9c1ceb' * commit 'ff04e97faf75c435e453d4c1caf7eeac8b9c1ceb': fix [2835280] Add support for cancelling buffers to ANativeWindow
|
35cf0e9854886c7d1a76be7c64ba9d78dfca649c |
05-Oct-2010 |
Jeff Brown <jeffbrown@google.com> |
Make secure views tolerate IME overlays. Change-Id: I3cf09b9d91045f4d9c558b4aace482a7b0bbd3d8
nputDispatcher.h
|
19957553cbda9134f542e3374c28710d3556d1ce |
02-Oct-2010 |
Mathias Agopian <mathias@google.com> |
fix [2835280] Add support for cancelling buffers to ANativeWindow There is a new ANativeWindow::cancelBuffer() API that can be used to cancel any dequeued buffer, BEFORE it's been enqueued. The buffer is returned to the list of availlable buffers. dequeue and cancel are not mutually thread safe, they must be called from the same thread or external synchronization must be used. Change-Id: I86cc7985bace8b6a93ad2c75d2bef5c3c2cb4d61
gl/android_natives.h
|
c0242197eab18a837c374b152a7450f26c22f974 |
02-Oct-2010 |
Jeff Brown <jeffbrown@google.com> |
am ea58d1ba: am e951ef07: Merge "Wait for initial device scan to finish before updating config." into gingerbread Merge commit 'ea58d1bac2960c1794f048bfa5d1a60b1a3d23a1' * commit 'ea58d1bac2960c1794f048bfa5d1a60b1a3d23a1': Wait for initial device scan to finish before updating config.
|
76025e44e45881a089a853dbb08b1f09abb30fb1 |
02-Oct-2010 |
Jeff Brown <jeffbrown@google.com> |
am e11b76d3: am f6295b35: Merge "Minor logging changes to input dispatcher to help with debugging." into gingerbread Merge commit 'e11b76d3efb056edea301d53a354d0730adf3520' * commit 'e11b76d3efb056edea301d53a354d0730adf3520': Minor logging changes to input dispatcher to help with debugging.
|
1ad00e96fe0d10c4fa9b870b42f3ea90b17a2d7f |
02-Oct-2010 |
Jeff Brown <jeffbrown@google.com> |
Wait for initial device scan to finish before updating config. This change narrows the opportunity for a race condition setting the resource Configuration while devices are being updated. Change-Id: I58efa563f4129ab0fce7108511d16a99dff7e451
ventHub.h
nputReader.h
|
2806e381cf08ef3073634b1fdd1f656c1750a7eb |
02-Oct-2010 |
Jeff Brown <jeffbrown@google.com> |
Minor logging changes to input dispatcher to help with debugging. Added dumpsys reporting to EventHub. Made the formatting a bit clearer. Added 'Locked' suffix to some internal methods of EventHub. Change-Id: Ic449560bcce378f6361895d27c66854e9724abb0
ventHub.h
|
4adce423e481c50b0dad1d1e2bb52c909bb5bd89 |
02-Oct-2010 |
Jeff Brown <jeffbrown@google.com> |
am 57fa3e8b: am 9e32a438: Merge "Support haptic feedback for virtual keys defined in key layout." into gingerbread Merge commit '57fa3e8b4c94125ddb5be015dd7fbde4a458894f' * commit '57fa3e8b4c94125ddb5be015dd7fbde4a458894f': Support haptic feedback for virtual keys defined in key layout.
|
956c0fb2386cb0cf92e08b199c706ed3a044ad1b |
01-Oct-2010 |
Jeff Brown <jeffbrown@google.com> |
Support haptic feedback for virtual keys defined in key layout. Change-Id: I83e4108a87332692e03791dc066206becbc7941f
nput.h
nputReader.h
eycodeLabels.h
|
3f0fd1897cf93dcdc910003bba613a8f02a3cd58 |
01-Oct-2010 |
Jeff Brown <jeffbrown@google.com> |
am 5d3cef8a: am e0c12c88: Merge "Move verbose logging of device capabilities to dumpsys." into gingerbread Merge commit '5d3cef8a6d1baec29512764b9e0ba240ccd7fcfe' * commit '5d3cef8a6d1baec29512764b9e0ba240ccd7fcfe': Move verbose logging of device capabilities to dumpsys.
|
26c94ff615ffceee586c52f33954122d877f6c85 |
30-Sep-2010 |
Jeff Brown <jeffbrown@google.com> |
Move verbose logging of device capabilities to dumpsys. Change-Id: I5d55eaebfdf049bd1ac1e7bab2758886cfefc9d7
nputReader.h
|
744c559ac78ecfa62d8809915a816bdbf3f87a09 |
27-Sep-2010 |
Jeff Brown <jeffbrown@google.com> |
Add support for transferring touch focus. Prerequisite for drag and drop. Change-Id: Iedbe93ed0f3e1c4083130fe66b4ba06d416afce0
nputDispatcher.h
|
d1b0a2bfe50e61241fab6a571941c207232d9212 |
27-Sep-2010 |
Jeff Brown <jeffbrown@google.com> |
Add suuport for splitting touch events across windows. This feature is currently used to enable dragging the start and end selection handles of a TextView at the same time. Could be used for other things later. Deleted some dead code in ArrowKeyMovementMethod and CursorControllers. Change-Id: I930accd97ca1ca1917aab8a807db2c950fc7b409
nput.h
nputDispatcher.h
nputReader.h
|
d8816c3c4cd99cf51108f2a892c7a01b0de24057 |
16-Sep-2010 |
Jeff Brown <jeffbrown@google.com> |
Fix app switch latency optimization. This optimization was broken due to recent changes in how ANRs are handled. Change-Id: Ic99248a12755fadac8d4893e7d305b773e038d3d
nputDispatcher.h
|
128e33421b7744126a69226d7acea717e9b6e652 |
16-Sep-2010 |
Jeff Brown <jeffbrown@google.com> |
Merge "Input API review." into gingerbread
|
53a415e6d1661d3d6278542c960f8d0cf62f6f42 |
16-Sep-2010 |
Jeff Brown <jeffbrown@google.com> |
Make input dispatcher only ANR for foreground windows. Redesigned the input dispatcher's ANR timeout mechanism so it is much closer to Froyo's policy. ANR is only ever signalled if the dispatcher is waiting on a window to finish processing its previous event(s) and there is new pending input. In the old code, we tracked the dispatch timeout separately for each input channel. This was somewhat complicated and also resulted in the situation where applications could ANR long after the user had pushed them into the background. Change-Id: I666ecada0952d4b95f1d67b9f733842b745c7f4b
nputDispatcher.h
|
6a3de9a424bb9ba426cf4d98b362f7b20664a9f7 |
15-Sep-2010 |
Mathias Agopian <mathias@google.com> |
fix a typo where the eventtags code were wrong Change-Id: I517112a1475c10b71009a0aa9c3894c76a1f270f
raphicLog.h
|
b5764e066c3ba60261c2719b4f447904605bf779 |
15-Sep-2010 |
Jeff Brown <jeffbrown@google.com> |
Input API review. Drop currently unsupported input features. Add documentation comments. Change-Id: I407d2e1dd90c5ee82983a3ccf177430d35ee7592
ventHub.h
|
b06cca6228aec6acfefbfae7edd768d7de4c7057 |
15-Sep-2010 |
Jeff Brown <jeffbrown@google.com> |
Merge "Replace epoll() with poll() and rename PollLoop to Looper." into gingerbread
|
59abe7e0909bf4b7bf7b9601e1e40a05f6d4fd8a |
14-Sep-2010 |
Jeff Brown <jeffbrown@google.com> |
Replace epoll() with poll() and rename PollLoop to Looper. As part of this change, consolidated and cleaned up the Looper API so that there are fewer distinctions between the NDK and non-NDK declarations (no need for two callback types, etc.). Removed the dependence on specific constants from sys/poll.h such as POLLIN. Instead looper.h defines events like LOOPER_EVENT_INPUT for the events that it supports. That should help make any future under-the-hood implementation changes easier. Fixed a couple of compiler warnings along the way. Change-Id: I449a7ec780bf061bdd325452f823673e2b39b6ae
nputDispatcher.h
nputTransport.h
|
35b48d10bc9e064201d3d54d2d476314684a7a05 |
14-Sep-2010 |
Mathias Agopian <mathias@google.com> |
Add logging of various important graphics events There are 16 events logged in the event log: SF_APP_DEQUEUE_BEFORE SF_APP_DEQUEUE_AFTER SF_APP_LOCK_BEFORE SF_APP_LOCK_AFTER SF_APP_QUEUE SF_REPAINT SF_COMPOSITION_COMPLETE SF_UNLOCK_CLIENTS SF_SWAP_BUFFERS SF_REPAINT_DONE SF_FB_POST_BEFORE SF_FB_POST_AFTER SF_FB_DEQUEUE_BEFORE SF_FB_DEQUEUE_AFTER SF_FB_LOCK_BEFORE SF_FB_LOCK_AFTER all events log the buffer conserned and a timestamp in microseconds. by default the logging is not enabled, to turn it on: adb shell service call SurfaceFlinger 1006 i31 1 adb shell setprop debug.graphic_log 1 The effect is immediate in SurfaceFlinger, but applications need to be restarted. Change-Id: Ifc2e31f7aed072d9a7dede20ff2ce59231edbec1
ramebufferNativeWindow.h
raphicLog.h
|
a665ca805c7ecda89ef95658f4d1c09ba6bd7f2e |
08-Sep-2010 |
Jeff Brown <jeffbrown@google.com> |
Input dispatcher ANR handling enhancements. This change is essentially a rewrite of the main input dispatcher loop with the target identification folded in. Since the input dispatcher now has all of the window state, it can make better decisions about when to ANR. Added a .5 second deadline for processing app switch keys. This behavior predates Gingerbread but had not previously been ported. Fixed some timing inaccuracies in the ANR accounting that could cause applications to ANR sooner than they should have. Added a mechanism for tracking key and motion events that have been dispatched to a window so that appropriate cancelation events can be synthesized when recovering from ANR. This change helps to keep applications in sync so they don't end up with stuck buttons upon recovery from ANRs. Added more comments to describe the tricky parts of PollLoop. Change-Id: I13dffca27acb436fc383980db536abc4d8b9e6f1
nputDispatcher.h
nputManager.h
nputReader.h
owerManager.h
|
61ce3982e1e5fd31f6e5b2be4d238b048a58f760 |
07-Sep-2010 |
Jeff Brown <jeffbrown@google.com> |
Fix key repeat delay. Change-Id: I6216e082324ee29bf50e37acc673350ca5417c4d
nputDispatcher.h
|
af30ff6020990427e0e0e73e4ac4a85a6f26a8ff |
02-Sep-2010 |
Jeff Brown <jeffbrown@google.com> |
Add support for secure views. Added the MotionEvent.FLAG_WINDOW_IS_OBSCURED flag which is set by the input manager whenever another visible window is partly or wholly obscured the target of a touch event so that applications can filter touches accordingly. Added a "filterTouchesWhenObscured" attribute to View which can be used to enable filtering of touches when the view's window is obscured. Change-Id: I936d9c85013fd2d77fb296a600528d30a29027d2
nput.h
nputDispatcher.h
nputTransport.h
|
774cf1baa17eeb76d4ad969266686df9b6248aaf |
01-Sep-2010 |
Jeff Brown <jeffbrown@google.com> |
Remove incomplete input device enumeration NDK API. Change-Id: I32de74ff5fcf0e29179a2aee03ddabd22fa485bb
nput.h
|
38a7fabd96566a229a276e7066ac1caf5157e127 |
30-Aug-2010 |
Jeff Brown <jeffbrown@google.com> |
Input device calibration and capabilities. Finished the input device capability API. Added a mechanism for calibrating touch devices to obtain more accurate information about the touch contact area. Improved pointer location to show new coordinates and capabilities. Optimized pointer location display and formatting to avoid allocating large numbers of temporary objects. The GC churn was causing the application to stutter very badly when more than a couple of fingers were down). Added more diagnostics. Change-Id: Ie25380278ed6f16c5b04cd9df848015850383498
ventHub.h
nput.h
nputReader.h
|
b661d66013b9803c50dc78ca0247ac39caef443a |
20-Aug-2010 |
Mathias Agopian <mathias@google.com> |
fix [2931513] Add support for setting the orientation of an ANativeWindow Also implement support for cropping. Change-Id: Iba5888dd242bf2feaac9e9ce26e404c1f404c280
gl/android_natives.h
|
542412c8c96ee369e7bdc197a79a2d37c7f8e020 |
19-Aug-2010 |
Jeff Brown <jeffbrown@google.com> |
Add support for throttling motion events. Change-Id: I24b3a17753e91ecda60a60fe5cd2e6b3260e033d
nputDispatcher.h
|
36cb115c771d8724a49512d5f4def534c731992b |
18-Aug-2010 |
Jeff Brown <jeffbrown@google.com> |
Merge "Fix some input device mapping bugs with certain drivers." into gingerbread
|
d64c855821457515d1da78dfac65af8306b53343 |
18-Aug-2010 |
Jeff Brown <jeffbrown@google.com> |
Fix some input device mapping bugs with certain drivers. On single-touch devices, pointer up/down is signalled by a BTN_TOUCH key event. Previously we handled BTN_TOUCH immediately but some drivers may produce the sequence BTN_TOUCH, ABS_X, ABS_Y, SYN_REPORT on pointer down which caused us to emit a bad initial pointer down location. Now we wait for SYN_REPORT before reporting the up or down. On multi-touch devices, pointer up can be signalled by as little as the sequence SYN_MT_REPORT, SYN_REPORT. This change ensures that we handle this case. Added support for reading ABS_MT_PRESSURE when available. Corrected mapping of touchMajor/touchMinor on single touch devices. Minor code cleanup. Change-Id: Ic7ec4811241ed85a06e59b8a839ca05180d491d4
nputReader.h
|
7dcaa584969253e32aec19d5bd40062704aaf95b |
22-Jun-2010 |
Jens Gulin <jens.gulin@sonyericsson.com> |
Keep track of remaining fd when devices are removed Sometimes the wrong fd was accessed when the device was addressed by device id. The earlier implementation assumed that two arrays were in sync but one of them was compacted when devices were removed. Instead of that dependency the device now keeps track of it's file descriptor. Change-Id: Ib0f320603aafb07ded354bc3687de9759c9068f2
ventHub.h
|
827630744a5bf05d25c2fa1fb7c53b9ab2b94a69 |
18-Aug-2010 |
Jeff Brown <jeffbrown@google.com> |
Optimize EventHub reads. Change-Id: Id7d09c0a6e5c741c1e29becd2b6560772c5ff372
ventHub.h
|
0cacb87f022cc2bfa6c3b40217f9b230628f3fd7 |
18-Aug-2010 |
Jeff Brown <jeffbrown@google.com> |
Fix possible race conditions during channel unregistration. Previously, the input dispatcher assumed that the input channel's receive pipe file descriptor was a sufficiently unique identifier for looking up input channels in its various tables. However, it can happen that an input channel is disposed and then a new input channel is immediately created that reuses the same file descriptor. Ordinarily this is not a problem, however there is a small opportunity for a race to arise in InputQueue. When InputQueue receives an input event from the dispatcher, it generates a finishedToken that encodes the channel's receive pipe fd, and a sequence number. The finishedToken is used by the ViewRoot as a handle for the event so that it can tell the InputQueue when the event has finished being processed. Here is the race: 1. InputQueue receives an input event, assigns a new finishedToken. 2. ViewRoot begins processing the input event. 3. During processing, ViewRoot unregisters the InputChannel. 4. A new InputChannel is created and is registered with the Input Queue. This InputChannel happens to have the same receive pipe fd as the one previously registered. 5. ViewRoot tells the InputQueue that it has finished processing the input event, passing along the original finishedToken. 6. InputQueue throws an exception because the finishedToken's receive pipe fd is registered but the sequence number is incorrect so it assumes that the client has called finish spuriously. The fix is to include a unique connection id within the finishedToken so that the InputQueue can accurately confirm that the token belongs to the currently registered InputChannel rather than to an old one that happened to have the same receive pipe fd. When it notices this, it ignores the spurious finish. I've also made a couple of other small changes to avoid similar races elsewhere. This patch set also includes a fix to synthesize a finished signal when the input channel is unregistered on the client side to help keep the server and client in sync. Bug: 2834068 Change-Id: I1de34a36249ab74c359c2c67a57e333543400f7b
nputDispatcher.h
|
8d4dfd25f7329d0cdcc8dda8bdfadd7ebec3b3a4 |
11-Aug-2010 |
Jeff Brown <jeffbrown@google.com> |
Fix safe mode and KeyEvent.getMaxKeyCode(). Bug: 2901731 Change-Id: I78617c1b9dee3790fc590e5af4b5083368873184
nputReader.h
|
b183fbd6460e6ebb7ffc568ec38ab1548dac0065 |
31-Jul-2010 |
Jeff Brown <jeffbrown@google.com> |
Enhanced VelocityTracker for > 5 pointers and fixed bugs. Improved PointerLocation tool to use VelocityTracker more efficiently and correctly when multiple pointers are down. Fixed a bug in TouchInputMapper where it was not correctly copying the id to index map in the last touch data. This could cause strange behavior on secondary pointer up events. Also added finished callback pooling in InputQueue. Change-Id: Ia85e52ac2fb7350960ea1d7edfbe81a1b3e8267b
nputReader.h
|
b51719b9ae719615d5ce66ad8a81395388ef9a5b |
30-Jul-2010 |
Jeff Brown <jeffbrown@google.com> |
Improve thread safety of input mappers. Also fixed bug where old touch screen size could be reported by getMotionRange if an orientation change occurred but the user has not yet touched the screen. Bug: 2877345 Change-Id: I7878f47458f310ed6ebe6a5d1b2c9bec2c598ab9
nputReader.h
|
f67c53eee33d2a2296f269a504e11c90904b3d39 |
29-Jul-2010 |
Jeff Brown <jeffbrown@google.com> |
DO NOT MERGE: Fix input event injection ANRs on UI thread. Added a new asynchronous injection mode and made the existing synchronization mechanism more robust. Change-Id: Ia4aa04fd9b75ea2461a844c5b7933c831c1027e6
nputDispatcher.h
nputManager.h
|
e57e8950804b08c80fb69df184b2f5af84ae103c |
24-Jul-2010 |
Jeff Brown <jeffbrown@google.com> |
Refactor input reader to support new device types more easily. Refactored the input reader so that each raw input protocol is handled by a separate subclass of the new InputMapper type. This way, behaviors pertaining to keyboard, trackballs, touchscreens, switches and other devices are clearly distinguished for improved maintainability. Added partial support for describing capabilities of input devices (incomplete and untested for now, will be fleshed out in later commits). Simplified EventHub interface somewhat since InputReader is taking over more of the work. Cleaned up some of the interactions between InputManager and WindowManagerService related to reading input state. Fixed swiping finger from screen edge into display area. Added logging of device information to 'dumpsys window'. Change-Id: I17faffc33e3aec3a0f33f0b37e81a70609378612
ventHub.h
nput.h
nputDevice.h
nputManager.h
nputReader.h
|
3cf1c9b8443f8db238b0214a97defc09b7e6fc98 |
17-Jul-2010 |
Jeff Brown <jeffbrown@google.com> |
Fix individual pointer id up/down reporting. Fix a minor threading bug in InputManager dump. Change-Id: Ic2eecf7df5a8dc9f40561fcb03ebe58a2c073778
nputReader.h
|
0e8852766d2cc0ef82ed0846a4cae55ead01fdbf |
16-Jul-2010 |
Dianne Hackborn <hackbod@google.com> |
Implement native key pre-dispatching to IMEs. This significantly re-works the native key dispatching code to allow events to be pre-dispatched to the current IME before being processed by native code. It introduces one new public API, which must be called after retrieving an event if the app wishes for it to be pre-dispatched. Currently the native code will only do pre-dispatching of system keys, to avoid significant overhead for gaming input. This should be improved to be smarted, filtering for only keys that the IME is interested in. Unfortunately IMEs don't currently provide this information. :p Change-Id: Ic1c7aeec8b348164957f2cd88119eb5bd85c2a9f
nput.h
|
5c1ed84a2dec7efe914d0d1abb6834f8543fb9f1 |
15-Jul-2010 |
Jeff Brown <jeffbrown@google.com> |
Add support for new input sources. Added several new coordinate values to MotionEvents to capture touch major/minor area, tool major/minor area and orientation. Renamed NDK input constants per convention. Added InputDevice class in Java which will eventually provide useful information about available input devices. Added APIs for manufacturing new MotionEvent objects with multiple pointers and all necessary coordinate data. Fixed a bug in the input dispatcher where it could get stuck with a pointer down forever. Fixed a bug in the WindowManager where the input window list could end up containing stale removed windows. Fixed a bug in the WindowManager where the input channel was being removed only after the final animation transition had taken place which caused spurious WINDOW DIED log messages to be printed. Change-Id: Ie55084da319b20aad29b28a0499b8dd98bb5da68
ventHub.h
nput.h
nputDevice.h
nputDispatcher.h
nputTransport.h
|
ce838a265d9da5b4bd3a0c833b01db6dbaa623f5 |
14-Jul-2010 |
Dianne Hackborn <hackbod@google.com> |
IME events are now dispatched to native applications. And also: - APIs to show and hide the IME, and control its interaction with the app. - APIs to tell the app when its window resizes and needs to be redrawn. - API to tell the app the content rectangle of its window (to layout around the IME or status bar). There is still a problem with IME interaction -- we need a way for the app to deliver events to the IME before it handles them, so that for example the back key will close the IME instead of finishing the app. Change-Id: I37b75fc2ec533750ef36ca3aedd2f0cc0b5813cd
nput.h
nputTransport.h
|
8575a87b0d61d21c286321afdf193f4fac53d681 |
01-Jul-2010 |
Jeff Brown <jeffbrown@google.com> |
Add initial gamepad support. Change-Id: I0439648f6eb5405f200e4223c915eb3a418b32b9
nputDevice.h
nputReader.h
eycodeLabels.h
|
9147d11a5f1d50496908bb1f49996e3ad23e19cc |
09-Jul-2010 |
Dianne Hackborn <hackbod@google.com> |
Add ANativeWindow API for directly drawing to the surface bits. Also other cleanup and fixes: - We now properly set the default window format to 565. - New APIs to set the window format and flags from native code. - Tweaked glue for simpler handling of the "destroy" message. - Um, other stuff. Change-Id: Id7790a21a2fa9a19b91854d225324a7c1e7c6ade
ect.h
|
9e1568cc2d12a713db524515f1002e34973ab4f4 |
08-Jul-2010 |
Chris Tate <ctate@android.com> |
Merge "More native input dispatch work." into gingerbread
|
f16c26dec9651628b0c130e2504e2cc911393aea |
03-Jul-2010 |
Jeff Brown <jeffbrown@google.com> |
More native input dispatch work. Removed old input dispatch code. Refactored the policy callbacks. Pushed a tiny bit of the power manager state down to native. Fixed long press on MENU. Made the virtual key detection and cancelation a bit more precise. Change-Id: I5d8c1062f7ea0ab3b54c6fadb058c4d5f5a9e02e
nputReader.h
|
efa10850665c8d60e562f3a488ae65e225614707 |
03-Jul-2010 |
Dianne Hackborn <hackbod@google.com> |
Add new native Looper API. This allows us to avoid exposing the file descriptor of the event queue; instead, you attach an event queue to a looper. This will also should allow native apps to be written without the need for a separate thread, by attaching the event queue to the main thread's looper and scheduling their own messages there. Change-Id: I38489282635895ae2cbfacb88599c1b1cad9b239
nputTransport.h
|
e12e3d7692cf370b8cbdb848da5201bfa0410afb |
01-Jul-2010 |
Dianne Hackborn <hackbod@google.com> |
Merge "Introduce official public NativeWindow type." into gingerbread
|
4b5e91e4820f03dba7dcc36e4b148331bc964b4b |
30-Jun-2010 |
Dianne Hackborn <hackbod@google.com> |
Introduce official public NativeWindow type. Not yet hooked up to anything in the NDK, but requires renaming the existing android_native_window_t type everywhere. Change-Id: Iffee6ea39c93b8b34e20fb69e4d2c7c837e5ea2e
ramebufferNativeWindow.h
gl/android_natives.h
|
c393eb6cf5f5685d4dc1ddaa04136475536acccf |
30-Jun-2010 |
Jeff Brown <jeffbrown@google.com> |
Fix injection of specially intercepted keys like HOME. This change mainly unwinds a premature optimization in the dispatch pipeline. To test HOME injection, run 'adb shell input keyevent 3'. Change-Id: I1c4b7377c205da7c898014b8b07fc6dc1d46e4dd
nput.h
nputReader.h
|
189ed23c1002054fdc06893e99d34a3617f24108 |
30-Jun-2010 |
Dianne Hackborn <hackbod@google.com> |
Implement default key handling for native code. The native code now maintains a list of all keys that may use default handling. If the app finishes one of these keys without handling it, the key will be passed back off to Java for default treatment. Change-Id: I6a842a0d728eeafa4de7142fae573f8c11099e18
nput.h
nputTransport.h
|
4036f7f2b44351a8d964b5cdfdf7b787795cf041 |
30-Jun-2010 |
Jeff Brown <jeffbrown@google.com> |
Fix native input dispatch in the emulator. Set a default orientation of ROTATION_0. Added some more careful checks based on whether we have valid absolute axis information from the driver. Reset key repeating during configuration changes since the keyboard device may have been removed. Change-Id: I685960828acffcb17595fc5683309e8064a76714
nputReader.h
|
9c7f8186aea675628894b8f3844f83e791870859 |
29-Jun-2010 |
Dianne Hackborn <hackbod@google.com> |
Update native activity & event APIs to follow correct conventions. Change-Id: Ie64fb3a9c68bc9c117fa5621b75d1f609e304e0e
nput.h
nputTransport.h
|
50de30a5230dd15326f8bcbb4beaf617bca265e2 |
22-Jun-2010 |
Jeff Brown <jeffbrown@google.com> |
Native input event dispatching. Target identification is now fully native. Fixed a couple of minor issues related to input injection. Native input enabled by default, can be disabled by setting WindowManagerPolicy.ENABLE_NATIVE_INPUT_DISPATCH to false. Change-Id: I7edf66ed3e987cc9306ad4743ac57a116af452ff
nput.h
nputDispatcher.h
nputManager.h
nputReader.h
|
af997c49621558dc697247040b47c3bc10ca7094 |
22-Jun-2010 |
Jens Gulin <jens.gulin@sonyericsson.com> |
Keep track of remaining fd when devices are removed Sometimes the wrong fd was accessed when the device was addressed by device id. The earlier implementation assumed that two arrays were in sync but one of them was compacted when devices were removed. Instead of that dependency the device now keeps track of it's file descriptor. Change-Id: I2b8a793d76b89ab464ae830482b309fe86031671
ventHub.h
|
4d96bb6ae38466a04acfbcce61cb202786239927 |
19-Jun-2010 |
Dianne Hackborn <hackbod@google.com> |
First stab at attaching native event dispatching. Provides the basic infrastructure for a NativeActivity's native code to get an object representing its event stream that can be used to read input events. Still work to do, probably some API changes, and reasonable default key handling (so that for example back will still work). Change-Id: I6db891bc35dc9683181d7708eaed552b955a077e
nput.h
nputTransport.h
|
51d45a710eff6da1749ae66ce9cab218144c388b |
18-Jun-2010 |
Jeff Brown <jeffbrown@google.com> |
More native input event dispatching. Added ANRs handling. Added event injection. Fixed a NPE ActivityManagerServer writing ANRs to the drop box. Fixed HOME key interception. Fixed trackball reporting. Fixed pointer rotation in landscape mode. Change-Id: I50340f559f22899ab924e220a78119ffc79469b7
nput.h
nputDispatcher.h
nputManager.h
|
f4a4ec2063dfd28e04bbfe712f67acee4bdc8e37 |
16-Jun-2010 |
Jeff Brown <jeffbrown@google.com> |
Even more native input dispatch work in progress. Added more tests. Fixed a regression in Vector. Fixed bugs in pointer tracking. Fixed a starvation issue in PollLoop when setting or removing callbacks. Fixed a couple of policy nits. Modified the internal representation of MotionEvent to be more efficient and more consistent. Added code to skip/cancel virtual key processing when there are multiple pointers down. This helps to better disambiguate virtual key presses from stray touches (such as cheek presses). Change-Id: I2a7d2cce0195afb9125b23378baa94fd2fc6671c
nput.h
nputTransport.h
|
54bc281639e5ff6955d7a86104f6f21624941aca |
15-Jun-2010 |
Jeff Brown <jeffbrown@google.com> |
More work in progress on native events. Refactored the code to eliminate potential deadlocks due to re-entrant calls from the policy into the dispatcher. Also added some plumbing that will be used to notify the framework about ANRs. Change-Id: Iba7a10de0cb3c56cd7520d6ce716db52fdcc94ff
nput.h
nputDispatchPolicy.h
nputDispatcher.h
nputManager.h
nputReader.h
|
e839a589bf582568cf220c1040ed93b948e6e362 |
23-Apr-2010 |
Jeff Brown <jeffbrown@google.com> |
Native input dispatch rewrite work in progress. The old dispatch mechanism has been left in place and continues to be used by default for now. To enable native input dispatch, edit the ENABLE_NATIVE_DISPATCH constant in WindowManagerPolicy. Includes part of the new input event NDK API. Some details TBD. To wire up input dispatch, as the ViewRoot adds a window to the window session it receives an InputChannel object as an output argument. The InputChannel encapsulates the file descriptors for a shared memory region and two pipe end-points. The ViewRoot then provides the InputChannel to the InputQueue. Behind the scenes, InputQueue simply attaches handlers to the native PollLoop object that underlies the MessageQueue. This way MessageQueue doesn't need to know anything about input dispatch per-se, it just exposes (in native code) a PollLoop that other components can use to monitor file descriptor state changes. There can be zero or more targets for any given input event. Each input target is specified by its input channel and some parameters including flags, an X/Y coordinate offset, and the dispatch timeout. An input target can request either synchronous dispatch (for foreground apps) or asynchronous dispatch (fire-and-forget for wallpapers and "outside" targets). Currently, finding the appropriate input targets for an event requires a call back into the WindowManagerServer from native code. In the future this will be refactored to avoid most of these callbacks except as required to handle pending focus transitions. End-to-end event dispatch mostly works! To do: event injection, rate limiting, ANRs, testing, optimization, etc. Change-Id: I8c36b2b9e0a2d27392040ecda0f51b636456de25
ventHub.h
nput.h
nputDispatchPolicy.h
nputDispatcher.h
nputManager.h
nputReader.h
nputTransport.h
|
b7e930db175c192464cebdeb49eb56cf6dd60114 |
02-Jun-2010 |
Mathias Agopian <mathias@google.com> |
split surface management from surface's buffers management Change-Id: If3c5655d1231f8f0c49ba68f972b1b20c93b3f87
raphicBuffer.h
|
a138f89c5e78b7e8994823e97d6e860869762837 |
22-May-2010 |
Mathias Agopian <mathias@google.com> |
added the notion of fixed-size buffers the new native_window_set_buffers_geometry allows to specify a size and format for all buffers to be dequeued. the buffer will be scalled to the window's size. Change-Id: I2c378b85c88d29cdd827a5f319d5c704d79ba381
gl/android_natives.h
|
f10d7fde03218c17251416a34d7b726a43ec528a |
21-May-2010 |
Mathias Agopian <mathias@google.com> |
added native_window_set_buffer_count() this method can be used to change the number of buffers associated to a native window. the default is two. Change-Id: I608b959e6b29d77f95edb23c31dc9b099a758f2f
gl/android_natives.h
|
1853b7d7904a78bff1728a9299b64275c1800885 |
11-May-2010 |
Jamie Gennis <jgennis@google.com> |
Merge "Add incStrong and decStrong methods to android_native_{window,buffer}_t." into kraken
|
5e67f87430d581155c700bb33ac0b43ed5de20b7 |
11-May-2010 |
Jamie Gennis <jgennis@google.com> |
Add incStrong and decStrong methods to android_native_{window,buffer}_t. This change adds the methods necessary to use sp<> to handle refcounting android_native_window_t and android_native_buffer_t. The new methods forward the refcounting operations to the corresponding android_native_base_t functions. Change-Id: I7de8e262728e439bc1efdf69374a2a9f6f432ced
ndroid_native_buffer.h
gl/android_natives.h
|
ad3f4a4561385af969e3e7ff280b59d842c6eb0b |
06-May-2010 |
The Android Open Source Project <initial-contribution@android.com> |
am f7896449: merge from open-source master Merge commit 'f78964490d8098387d51444c87bf520ad3f674e2' into kraken * commit 'f78964490d8098387d51444c87bf520ad3f674e2': Add new keycodes for the convenience of Japanese IMEs Call register_localized_collators() with the current locale. Fixed deserialization problem in DatePicker. Fix for bug 2467152 files with spaces fail to open. Set alpha value for newly created dim surface. telephony: Fix CID when CID is unknown
|
30f71ce5971b5a129e134b7a1fb8c2e53a50f23f |
06-May-2010 |
The Android Open Source Project <initial-contribution@android.com> |
merge from open-source master Change-Id: Ia9e1f4e049f5870386ea29ddb6e3ef028ea918da
|
ef1c5c314b9baa2360c62a1ebc84c9a2996613ba |
02-Oct-2009 |
mogimo <mogimogio@gmail.com> |
Add new keycodes for the convenience of Japanese IMEs Change-Id: Ibd308cef11261147856258595f6ca0137e03e05c
eycodeLabels.h
|
cc08e688f5b82b4ebd076ad138b2749e8c86ad5e |
16-Apr-2010 |
Mathias Agopian <mathias@google.com> |
added setCrop() to android_native_window_t hooked up the new method up to Surface.cpp the actual crop is not implemented in SF yet Change-Id: Ic6e313c98fd880f127a051a0ccc71808bd689751
gl/android_natives.h
|
5629eb167638a9ebfa5059177d227c7ac67db46f |
15-Apr-2010 |
Mathias Agopian <mathias@google.com> |
when a zero dimension buffer is allocated, turn the allocation into a 1x1 buffer instead of Nx1 (or 1xN) Change-Id: I27eeb15e83e13002dd9405f4e52b54f7dffc0fe7
raphicBufferAllocator.h
|
529973acc25ba41e7d71ed58448ecee793bcc657 |
08-Apr-2010 |
The Android Open Source Project <initial-contribution@android.com> |
merge from open-source master Change-Id: I975030d9572463bc69245bcffa25c47d7acb2b51
|
e5f56fb1b4fd681e0d9d9b3524c945c8dfe00daa |
27-May-2009 |
Chih-Wei Huang <cwhuang@linux.org.tw> |
Add keycodes PageUp and PageDown This is useful for applications like web browser. Change-Id: Ie9262d5b75de87ecd0971407a7c3ce9aa6e4998e
eycodeLabels.h
|
c8620b60d67390d2bd0fa0ce53cc63fc18c50244 |
25-Mar-2010 |
Mathias Agopian <mathias@google.com> |
fix [2545826] calling into gralloc with external lock held Change-Id: I2d0e017382404c684c768a0dd0423d574213f10a
raphicBufferAllocator.h
|
e156e6478f8393dc519a903d48ef09b3eabf32ad |
12-Mar-2010 |
Mathias Agopian <mathias@google.com> |
Add a new connect/disconnect API to android_native_window_t it's used to keep track of which API owns the surface. Change-Id: I1021c5905c020efc3c428e561b38189377168b22
gl/android_natives.h
|
98e71ddaede9a0bfb681fd237bec1f66c6c53193 |
12-Feb-2010 |
Mathias Agopian <mathias@google.com> |
remove a dependency of GraphicBuffer (libui) on Parcel (libbinder). Add a Flattenable interface to libutils which can be used to flatten an object into bytestream + filedescriptor stream. Parcel is modified to handle Flattenable. And GraphicBuffer implements Flattenable. Except for the overlay classes libui is now independent of libbinder.
raphicBuffer.h
|
b6121422ef641dc7317d1c3bf1d38b7d73922250 |
18-Feb-2010 |
Mathias Agopian <mathias@google.com> |
Remove a dependency of Region (libui) on Parcel (libbinder).
egion.h
|
3db21640519541141137166ce55627cf76e1974b |
17-Feb-2010 |
Mathias Agopian <mathias@google.com> |
fix a bug I introduced recently where YUV formats would crash the system
ixelFormat.h
|
54ed4f6282bdea251455f39b978626026affdbef |
17-Feb-2010 |
Mathias Agopian <mathias@google.com> |
get rid off the YUV formats at the libui layer
ixelFormat.h
|
9cce325fae8adcf7560a28eef394489f09bad74d |
10-Feb-2010 |
Mathias Agopian <mathias@google.com> |
split libsurfaceflinger_client and libcamera_client out of libui
amera.h
ameraHardwareInterface.h
ameraParameters.h
Camera.h
CameraClient.h
CameraService.h
Surface.h
SurfaceComposer.h
SurfaceFlingerClient.h
urface.h
urfaceComposerClient.h
|
a05c8227046081b2648b8150c1a716040eb08121 |
09-Feb-2010 |
Wu-cheng Li <wuchengli@google.com> |
Add exposure compensation parameter. bug:2375993
ameraParameters.h
|
391f3f8b5e8f97e002cbbc6a7535cfd73a8d16b3 |
31-Jan-2010 |
Wu-cheng Li <wuchengli@google.com> |
Add float support for set and get in CameraParameters. bug:2375989 bug:2375987
ameraParameters.h
|
077c40fee35f483df961c6a0746ee78b9d1c5a8f |
27-Jan-2010 |
Wu-cheng Li <wuchengli@google.com> |
Add focal length and view angle API. bug:2375989,2375987
ameraParameters.h
|
f091e833d339d344fbc4815bcc87ce97d8535cd8 |
23-Jan-2010 |
Chih-Chung Chang <chihchung@google.com> |
Add support for setting camera display orientation.
amera.h
ameraParameters.h
|
88eeff5270991df178ee09ffda7ce5076c9a1e59 |
25-Jan-2010 |
Wu-cheng Li <wuchengli@google.com> |
Change key to KEY_SUPPORTED_JPEG_THUMBNAIL_SIZES for consistency. bug:2375986
ameraParameters.h
|
5994a330ac949e7706540f22cd73d76d9f2a96cb |
23-Jan-2010 |
Chih-Chung Chang <chihchung@google.com> |
Add support for 180/270 degrees rotation.
Surface.h
|
52e7200b6e020bba978c36e3a928493a3f2c8a92 |
22-Jan-2010 |
Chih-Chung Chang <chihchung@google.com> |
Add an orientation parameter for overlay, so we can do camera preview in portrait mode.
Surface.h
|
963abad79ae64dae9bf4c32bfb110d9e6314c857 |
14-Nov-2009 |
Mathias Agopian <mathias@google.com> |
fix some aspects of [2258746] native crash in launcher2 Surface::validate() could sometimes dereference a null pointer before checking it wasn't null. This will prevent the application to crash when given bad parameters or used incorrectly. However, the bug above probably has another cause.
urface.h
|
6fee064809068fe1a7da63d55678d9a222b0be15 |
03-Nov-2009 |
Mathias Agopian <mathias@google.com> |
fix[2228133] pixelflinger ignores the "vertical stride" leading to artifacts when playing back video we lost the concept of vertical stride when moving video playback to EGLImage. Here we bring it back in a somewhat hacky-way that will work only for the softgl/mdp backend.
raphicBuffer.h
|
986e0dcf7ad2bbf0ec717430cd4e84ee82a3c6ea |
23-Oct-2009 |
Wu-cheng Li <wuchengli@google.com> |
Use image rect information to display zoomed picture.
ameraHardwareInterface.h
|
54ba51dff21de666c5ae3bf3abd4f0634ebb0676 |
27-Oct-2009 |
Mathias Agopian <mathias@google.com> |
fix [2143798] Need to figure out how to do video Use EGLImageKHR instead of copybit directly. We now have the basis to use streaming YUV textures (well, in fact we already are). When/if we use the GPU instead of the MDP we'll need to make sure it supports the appropriate YUV format. Also make sure we compile if EGL_ANDROID_image_native_buffer is not supported
raphicBuffer.h
|
e700501d0e888ead9ac6456c0a6fd74d634aa5fb |
08-Oct-2009 |
Mathias Agopian <mathias@google.com> |
fix [2170319] gmail bulk operation checkbox latency on passion This also fixes [2152536] ANR in browser When SF is enqueuing buffers faster than SF dequeues them. The update flag in SF is not counted and under some situations SF will only dequeue the first buffer. The state at this point is not technically corrupted, it's valid, but just delayed by one buffer. In the case of the Browser ANR, because the last enqueued buffer was delayed the resizing of the current buffer couldn't happen. The system would always fall back onto its feet if anything -else- in tried to draw, because the "late" buffer would be picked up then.
urfaceComposerClient.h
|
3330b203039dea366d4981db1408a460134b2d2c |
06-Oct-2009 |
Mathias Agopian <mathias@google.com> |
fix [2167050] glTexImage2D code path buggy in SurfaceFlinger When EGLImage extension is not available, SurfaceFlinger will fallback to using glTexImage2D and glTexSubImage2D instead, which requires 50% more memory and an extra copy. However this code path has never been exercised and had some bugs which this patch fix. Mainly the scale factor wasn't computed right when falling back on glDrawElements. We also fallback to this mode of operation if a buffer doesn't have the adequate usage bits for EGLImage usage. This changes only code that is currently not executed. Some refactoring was needed to keep the change clean. This doesn't change anything functionaly.
ufferMapper.h
raphicBuffer.h
raphicBufferAllocator.h
raphicBufferMapper.h
Surface.h
urface.h
ndroid_native_buffer.h
|
e6a550d02ff02f465d7dbb6e862671462866f024 |
29-Sep-2009 |
Wu-cheng Li <wuchengli@google.com> |
Add zoom functions and sendCommand. b2060030
amera.h
ameraHardwareInterface.h
Camera.h
|
eb16a09f59022f9fd3f1d633204049bc4e96b0f9 |
28-Sep-2009 |
Wu-cheng Li <wuchengli@google.com> |
Change FLASH_MODE_VIDEO_LIGHT to FLASH_MODE_TORCH.
ameraParameters.h
|
cc6ce203be6784130c73e6f253981c7236cdcb68 |
23-Sep-2009 |
Wu-cheng Li <wuchengli@google.com> |
Add camera parameter key constants and documentation.
ameraParameters.h
|
dd3423c6247965bf67ea30c75e484a6f5d72b1a2 |
24-Sep-2009 |
Mathias Agopian <mathias@google.com> |
fix [2132563] stuck in boot animation (framebuffer_device_open: Failed to create flip chain)
urfaceComposerClient.h
|
74faca212e2675aa55a30235c77cb6403471a4b9 |
18-Sep-2009 |
Mathias Agopian <mathias@google.com> |
Android side of the fix for [2121211] Sholes has stutter during animations a new method, compostionComplete() is added to the framebuffer hal, it is used by surfaceflinger to signal the driver that the composition is complete, BEFORE it releases its client. This gives a chance to the driver to
ramebufferNativeWindow.h
|
68a6afeb26002961387573dd64dd0ea3816bdc91 |
16-Sep-2009 |
Mathias Agopian <mathias@google.com> |
fix [2122448] android_native_window_t::setUsage() only reallocates the first buffer Take 2. We needed to check that the usage flags are "good enough" as opposed to "the same". This reverts commit 8f17a762fe9e9f31e4e86cb60ff2bfb6b10fdee6.
urface.h
|
3910f5467a344c54b3c39c45b820c184e31b449c |
16-Sep-2009 |
Mathias Agopian <mathias@google.com> |
Revert "fix [2122448] android_native_window_t::setUsage() only reallocates the first buffer" This reverts commit 486aa963b63e20b7910e1004cebb4f0afabbd80f.
urface.h
|
d18afab9d6a89d14c5c583a7d976665af4765a6b |
16-Sep-2009 |
Mathias Agopian <mathias@google.com> |
fix [2122448] android_native_window_t::setUsage() only reallocates the first buffer
urface.h
|
00900eb35473530a5fc77f7bd3ac306b6dcf19cb |
15-Sep-2009 |
Chih-Chung Chang <chihchung@google.com> |
Fix 2083478: Camera needs an auto-focus cancel API Change-Id: I13bda991b32aee47e82b5cf9d43b3021c416a9a2
amera.h
ameraHardwareInterface.h
Camera.h
|
cbb288bfe89f585bf48371bd31b2d4aafa32f32e |
08-Sep-2009 |
Mathias Agopian <mathias@google.com> |
fix [2068105] implement queueBuffer/lockBuffer/dequeueBuffer properly Rewrote SurfaceFlinger's buffer management from the ground-up. The design now support an arbitrary number of buffers per surface, however the current implementation is limited to four. Currently only 2 buffers are used in practice. The main new feature is to be able to dequeue all buffers at once (very important when there are only two). A client can dequeue all buffers until there are none available, it can lock all buffers except the last one that is used for composition. The client will block then, until a new buffer is enqueued. The current implementation requires that buffers are locked in the same order they are dequeued and enqueued in the same order they are locked. Only one buffer can be locked at a time. eg. Allowed sequence: DQ, DQ, LOCK, Q, LOCK, Q eg. Forbidden sequence: DQ, DQ, LOCK, LOCK, Q, Q
Surface.h
urface.h
urfaceComposerClient.h
|
1c97d2ebe1f035beabd90089bfc78326b73d7864 |
20-Aug-2009 |
Mathias Agopian <mathias@google.com> |
fix a bug that caused the PixelFormat viewed by Surface to be wrong. what happened is that the efective pixel format is calculated by SF but Surface nevew had access to it directly. in particular this caused query(FORMAT) to return the requested format instead of the effective format.
SurfaceFlingerClient.h
|
37b2a3744c2045cbf15a50dc1312fdd8c67ae8b1 |
17-Aug-2009 |
Mathias Agopian <mathias@google.com> |
really be more friendly with C
gl/android_natives.h
|
ba5972ffdc7179dd9a387f22032eb18666d97917 |
15-Aug-2009 |
Mathias Agopian <mathias@google.com> |
make sure to update a surface's usage bits when it changes, instead of only the first time. also fixed a few locking issues in Surface and commented how each member is protected.
urface.h
|
238a66e67b155d7e1fcdb19b672ffc0ae4a6fc94 |
14-Aug-2009 |
Mathias Agopian <mathias@google.com> |
be more friendly with C
gl/android_natives.h
|
ccde199f7ce916e42a45b5a50e937d9c17904da2 |
14-Aug-2009 |
Mathias Agopian <mathias@google.com> |
Surface::GPU and Surface::HARDWARE are now deprecated; they will be set automatically if needed. this also ripples into the window manager API by making some constant there deprecated as well.
SurfaceComposer.h
|
fae3e73b6157555e8605f8b0c1d5b0bcc5b5ea00 |
14-Aug-2009 |
Dima Zavin <dima@android.com> |
ui: make native_window_set_usage be a static inline Signed-off-by: Dima Zavin <dima@android.com>
gl/android_natives.h
|
4c8fb0a184e51c3f561fff26ba84ceb5ec75be24 |
12-Aug-2009 |
Benny Wong <Benny.Wong@motorola.com> |
Modified the camera HAL interface to use the same generic callback architecture as camera services
amera.h
ameraHardwareInterface.h
|
5221271375f361b84a6eeec3d7086f223997fbb3 |
12-Aug-2009 |
Mathias Agopian <mathias@google.com> |
second take, hopefully this time it doesn't break one of the builds: "SurfaceFlinger will now allocate buffers based on the usage specified by the clients. This allows to allocate the right kind of buffer automatically, without having the user to specify anything."
ramebufferNativeWindow.h
Surface.h
urface.h
gl/android_natives.h
|
b2fd4665e66fe81969f1f07fd724c6f68dd8f7f1 |
12-Aug-2009 |
Fred Quintana <fredq@google.com> |
Revert "SurfaceFlinger will now allocate buffers based on the usage specified by the clients. This allows to allocate the right kind of buffer automatically, without having the user to specify anything." This reverts commit 8b76a0ac6fbf07254629ed1ea86af014d5abe050.
ramebufferNativeWindow.h
Surface.h
urface.h
gl/android_natives.h
|
df37b62c62f8efd3b5a433f9b4d40d30cec13a31 |
11-Aug-2009 |
Mathias Agopian <mathias@google.com> |
SurfaceFlinger will now allocate buffers based on the usage specified by the clients. This allows to allocate the right kind of buffer automatically, without having the user to specify anything. This change makes SurfaceHolder.setType(GPU) obsolete (it's now ignored). Added an API to android_native_window_t to allow extending the functionality without ever breaking binary compatibility. This is used to implement the new set_usage() API. This API needs to be called by software renderers because the default is to use usage flags suitable for h/w.
ramebufferNativeWindow.h
Surface.h
urface.h
gl/android_natives.h
|
e186431c33fa332b585e37f6b5ef5efd39b359cf |
07-Aug-2009 |
Andreas Huber <andih@google.com> |
Expose a variation of the createRenderer API that works on a plain Surface.
urface.h
|
8c12c7aec3fdbccfa8161c2c12131d590a9b5ce8 |
08-Aug-2009 |
Mathias Agopian <mathias@google.com> |
added EGLUtils::strerror
GLUtils.h
|
b2001065b957bf0db2577c0877c4751097d627af |
07-Aug-2009 |
Android (Google) Code Review <android-gerrit@google.com> |
Merge changes 20345,20346,20347 * changes: update most gl tests to use EGLUtils added two EGL helpers for selecting a config matching a certain pixelformat or native window type added NATIVE_WINDOW_FORMAT attribute to android_native_window_t
|
6cf50a770dabd13cf5b72bb0a6fb9dd002c88db6 |
07-Aug-2009 |
Mathias Agopian <mathias@google.com> |
added two EGL helpers for selecting a config matching a certain pixelformat or native window type
GLUtils.h
|
6b1f41004fa48e96bab61f508867314261de660b |
07-Aug-2009 |
Mathias Agopian <mathias@google.com> |
added NATIVE_WINDOW_FORMAT attribute to android_native_window_t
gl/android_natives.h
|
34193b31681dcbadf0a629879ca004f561b1b149 |
06-Aug-2009 |
Iliyan Malchev <malchev@google.com> |
EventHub: pass the name of each input device up to Java Signed-off-by: Iliyan Malchev <malchev@google.com>
ventHub.h
|
c591736c66cbd4320fc96573fda28bec2b4d4100 |
04-Aug-2009 |
Dianne Hackborn <hackbod@google.com> |
Finish implementation of multiple pointer support for MotionEvent. The major things going on here: - The MotionEvent API is now extended to included "pointer ID" information, for applications to keep track of individual fingers as they move up and down. PointerLocation has been updated to take advantage of this. - The input system now has logic to generate MotionEvents with the new ID information, synthesizing an identifier as new points are down and trying to keep pointer ids consistent across events by looking at the distance between the last and next set of pointers. - We now support the new multitouch driver protocol, and will use that instead of the old one if it is available. We do NOT use any finger id information coming from the driver, but always synthesize pointer ids in user space. (This is simply because we don't yet have a driver reporting this information from which to base an implementation on.) - Increase maximum number of fingers to 10. This code has only been used with a driver that reports up to 2, so no idea how more will actually work. - Oh and the input system can now detect and report physical DPAD devices.
ventHub.h
|
764d4ab4561b8556c06f2ae7c56b7e983a5cf0b7 |
31-Jul-2009 |
Andreas Huber <andih@google.com> |
The IOMX interface now instantiates IOMXRenderers to hide the details of hardware accelerated blitting.
urface.h
|
fa170f513338322102a200de7d1fd696e51d55c8 |
31-Jul-2009 |
Android (Google) Code Review <android-gerrit@google.com> |
Merge change 9287 * changes: fixed some issues with the software renderer when surfaces are made current.
|
cb6b9041647b4f080324742eee5ce709960ff610 |
31-Jul-2009 |
Mathias Agopian <mathias@google.com> |
fixed some issues with the software renderer when surfaces are made current. there was several issues: - when a surface was made non-current, the last frame wasn't shown and the buffer could stay locked - when a surface was made current the 2nd time, it would not dequeue a new buffer now, queue/dequeue are done when the surface is made current. for this to work, a new query() hook had to be added on android_native_window_t, it allows to retrieve some attributes of a window (currently only width and height).
ramebufferNativeWindow.h
urface.h
gl/android_natives.h
|
e56271109fe59e1c1f4958bdcdeb9a3a7f53eb28 |
25-Jul-2009 |
Benny Wong <Benny.Wong@motorola.com> |
Adding resizeInput and setAttributes for overlay
verlay.h
|
811fdfd9b7863ee4e6300500b9159d11878e1664 |
20-Jul-2009 |
Android (Google) Code Review <android-gerrit@google.com> |
Merge change 5892 * changes: Hardware overlay support
|
71f771570e1b5341048a6fbf82a7c57d885bd850 |
16-Jul-2009 |
Benny Wong <Benny.Wong@motorola.com> |
Hardware overlay support Enable hardware overlay support for camera and video playback use cases
verlay.h
|
b441106276a9c5fcd47642aff8cda2a2039481c0 |
16-Jul-2009 |
Mike Lockwood <lockwood@android.com> |
EventHub: Add support for excluding devices from being opened by as a keyboard. This will be used to avoid unnecessarily listening to data from sensors that function as event devices. Signed-off-by: Mike Lockwood <lockwood@android.com>
ventHub.h
|
c968c3a9c782eaf44a5772cd388e5c690e5be4f3 |
14-Jul-2009 |
Dianne Hackborn <hackbod@google.com> |
Implement virtual button support. The kernel can now publish a property describing the layout of virtual hardware buttons on the touchscreen. These outside of the display area (outside of the absolute x and y controller range the driver reports), and when the user presses on them a key event will be generated rather than a touch event. This also includes a number of tweaks to the absolute controller processing to make things work better on the new screens. For example, we now reject down events outside of the display area. Still left to be done is the ability to cancel a key down event, so the user can slide up from the virtual keys to the touch screen without causing a virtual key to execute.
ventHub.h
|
9f1234e4600d343710635973f3296da7b39cd9a2 |
09-Jul-2009 |
Dave Sparks <davidsparks@android.com> |
resolved conflicts for merge of 04c7d0f8 to master
|
f72d640b7c7de40b4c5d83b69748535e4254c941 |
09-Jul-2009 |
Dave Sparks <davidsparks@android.com> |
Add timestamps to video frames to improve A/V sync. Bug 1927069.
amera.h
ameraHardwareInterface.h
CameraClient.h
|
0f7f88db2771ec6b08df1354f1d85290f93227d5 |
06-Jul-2009 |
Mathias Agopian <mathias@google.com> |
Merge commit 'goog/master' into merge_master
|
4361996a8c4a398d818da4ea453595a0a3404358 |
06-Jul-2009 |
Android (Google) Code Review <android-gerrit@google.com> |
am c7396025: Merge change 6084 into donut Merge commit 'c7396025e59524e7ef639fd86fc23123939ee91c' * commit 'c7396025e59524e7ef639fd86fc23123939ee91c': Return CAMERA_ERROR_SERVER_DIED to camera app when camera service dies (bug 1956726)
|
7303c6bf1a8b00a0e7d8165d774a1f259b4ccda9 |
03-Jul-2009 |
Mathias Agopian <mathias@google.com> |
get rid of references to MemoryDealer in SurfaceFlinger
SurfaceComposer.h
SurfaceFlingerClient.h
urfaceComposerClient.h
|
16f3d35459a03bf7fad41df0a0d192d2c50a0594 |
02-Jul-2009 |
James Dong <jdong@google.com> |
Return CAMERA_ERROR_SERVER_DIED to camera app when camera service dies (bug 1956726)
amera.h
|
84d1f7a09827fe195dd08b647b8c5092d03516f7 |
02-Jul-2009 |
Mathias Agopian <mathias@google.com> |
Merge commit 'goog/master' into merge_master
|
9f96145725ff3f265712d607d19078fb91a5c8ec |
30-Jun-2009 |
Mathias Agopian <mathias@google.com> |
Region::makeBoundsSelf() efficiently turns a region to its bounds
egion.h
|
ff10113dd45b6a8cb32ccaf36b2bc768c06ff26a |
30-Jun-2009 |
Android (Google) Code Review <android-gerrit@google.com> |
am 17a80081: Merge change 5544 into donut Merge commit '17a80081a42410f541a220ab7e6afc64fc6cc399' * commit '17a80081a42410f541a220ab7e6afc64fc6cc399': Pipe all the camera callbacks to Java to facilitate the addition
|
17b2ad027b4b72b96dfb663c0ea001972da7ef58 |
27-Jun-2009 |
Mathias Agopian <mathias@google.com> |
return bounds Rect by value
egion.h
|
c06b7cb6f35989580dff68ebc7edabc0352aa556 |
26-Jun-2009 |
Dave Sparks <davidsparks@android.com> |
Pipe all the camera callbacks to Java to facilitate the addition of new features. This will make it easy to add things like zoom callbacks without modifying the entire camera stack. Bug 1837832.
amera.h
|
2ab55a4e31c37d74abdd85486e1f4045c7f708e2 |
25-Jun-2009 |
Mathias Agopian <mathias@google.com> |
make use of new eglGetRenderBufferANDROID extension to clean-up a bit a few hacks added recently
ramebufferNativeWindow.h
|
69029eb5abfaeb52716b84db89e32dc742551508 |
24-Jun-2009 |
Mathias Agopian <mathias@google.com> |
hack copybit back in for video playback on msm7k. we have h/w accelerated video again
ramebufferNativeWindow.h
|
4c4b387afb2e775fcac3b81a249bb7646515dffa |
25-Jun-2009 |
Mathias Agopian <mathias@google.com> |
merge master in master_gl
|
aa8d188de37e262c1e705981d6fedc990b6dc100 |
25-Jun-2009 |
Android (Google) Code Review <android-gerrit@google.com> |
am a93466f5: Merge change 5220 into donut Merge commit 'a93466f5ca41c2ba6c3524c8d1edc2138bf753e3' * commit 'a93466f5ca41c2ba6c3524c8d1edc2138bf753e3': Cleanup header file. Disallow copy of Camera object by making copy
|
de5b60b06254748e4593d6095277da45e44acf80 |
24-Jun-2009 |
Android (Google) Code Review <android-gerrit@google.com> |
am eaa89f74: Merge change 5172 into donut Merge commit 'eaa89f74c04c0f10d5f3f8190b457087537bff2e' * commit 'eaa89f74c04c0f10d5f3f8190b457087537bff2e': Remove deprecated callback function support.
|
e193f7cd9eded002b5a74b8823be704c020be536 |
24-Jun-2009 |
Android (Google) Code Review <android-gerrit@google.com> |
am 3d7b8d1a: Merge change 5158 into donut Merge commit '3d7b8d1aa6a362292f56defbe8fb2d5653f79282' * commit '3d7b8d1aa6a362292f56defbe8fb2d5653f79282': Use a ref-counted callback interface for Camera.
|
f5a8faa751cc55c8474ce17d407c9933ad0efdeb |
24-Jun-2009 |
Dave Sparks <davidsparks@android.com> |
Cleanup header file. Disallow copy of Camera object by making copy constructor and operator= private.
amera.h
|
dc76f7bfa10a037ea0cc0f253022d8de7eefc691 |
24-Jun-2009 |
Dave Sparks <davidsparks@android.com> |
Remove deprecated callback function support. This is the last of a 3-part change to modify the camera to use a more streamlined callback interface. This change removes the old code. Bug 1884362
amera.h
|
bbbc7cb77efba3dd46e9d13fc22e81cff17c35d2 |
24-Jun-2009 |
Dave Sparks <davidsparks@android.com> |
Use a ref-counted callback interface for Camera. This allows the camera service to hang onto the callback interface until all callbacks have been processed. This prevents problems where pending callbacks in binder worker threads are processed after the Java camera object and its associated native resources have been released. Bug 1884362
amera.h
|
3d57964a81cd631d80aa9575647e1ce35b5e82d5 |
05-Jun-2009 |
Mathias Agopian <mathias@google.com> |
fix a bunch of problems with destroying surfaces. now, all destruction path, go through the purgatory which is emptied when ~ISurface is called, but we also make sure to remove the surface from the current list from there (in case a client forgot to request the destruction explicitely).
SurfaceComposer.h
|
6457359fa5df7869d5881acee80b34dfc760a5bf |
01-Jun-2009 |
Mathias Agopian <mathias@google.com> |
Merge commit 'goog/master' into merge_master
|
e0c322049ab2be291c1fc40f79702543d4e77934 |
01-Jun-2009 |
Mathias Agopian <mathias@google.com> |
get rid of utils.h
ventHub.h
|
bed9dd128dfbdc7d9dbca005078536dadc0b9359 |
28-May-2009 |
Mathias Agopian <mathias@google.com> |
make sure the Region code disallows constructs like "(a+b)=c;", which is somewhat meaningless.
egion.h
|
4b8160fdfd3281d1d66c0cae9bb9c647b4333491 |
28-May-2009 |
Mathias Agopian <mathias@google.com> |
oops forgot these changes in the previous merge. fixes build
ect.h
|
723ec00af46d1f95d69fe5af53e0a5d09f01a7d6 |
27-May-2009 |
Mathias Agopian <mathias@google.com> |
Merge commit 'goog/master' into merge_master Conflicts: include/ui/Rect.h libs/ui/ISurfaceComposer.cpp
|
2787dddcd0a814aa4a90b9e8cc72c9c258c94854 |
27-May-2009 |
Android (Google) Code Review <android-gerrit@google.com> |
am 0c0ad39c: Merge change 2502 into donut Merge commit '0c0ad39cd8eaa6de6b7f99cec3971bcc953461e0' * commit '0c0ad39cd8eaa6de6b7f99cec3971bcc953461e0': minor clean-up to Rect and Point.
|
35801cea5f301c0e1d7a93b15a8f73f98e6b1033 |
27-May-2009 |
Mathias Agopian <mathias@google.com> |
minor clean-up to Rect and Point. - return "const" objects for overloaded operators to disallow constructs like: (a+b) = c; - don't return references to non-static members, it's not always safe. - Point.cpp was empty, so get rid of it
oint.h
ect.h
|
310f8da0c3122ed5419db8f12a6e98d3188325b2 |
22-May-2009 |
Mathias Agopian <mathias@google.com> |
merge master to master_gl
|
c5b2c0bf8007562536b822eb060fc54a01f8e08b |
20-May-2009 |
Mathias Agopian <mathias@google.com> |
move libbinder's header files under includes/binder
ameraHardwareInterface.h
Camera.h
CameraClient.h
CameraService.h
Overlay.h
Surface.h
SurfaceComposer.h
SurfaceFlingerClient.h
verlay.h
egion.h
|
20f68782a4ea71c6a977d7f87d8288d3daa265ec |
11-May-2009 |
Mathias Agopian <mathias@google.com> |
Region now has its own implementation instead of relying on SkRegion, which allows us to break libui's dependency on libcorecg.
ect.h
egion.h
|
d717598616910b5454b56429dec3bfad2757bd52 |
15-May-2009 |
Mathias Agopian <mathias@google.com> |
Merge commit 'goog/master' into merge_master Conflicts: opengl/libagl/Android.mk opengl/libs/Android.mk opengl/libs/egl_impl.h
|
93b94584edb1c59037319d9bbf84881ccff9f66a |
08-May-2009 |
Dave Sparks <davidsparks@android.com> |
Modify camera framework to use new streamlined binder interface. This is the second half of bug 1837832. Modifies the camera client and camera service to use the new binder interface. Removes the old binder interface. There will be one more part to this change to surface the undefined callbacks to the Java layer so that partners can implement new features without having to touch the stack.
amera.h
CameraClient.h
|
5958661507b39cd59e68e9bc2b54399af92847c4 |
08-May-2009 |
Mathias Agopian <mathias@google.com> |
Merge commit 'goog/master' into merge_master
|
1e16b13857809eaa9bd17fb60ac0a471dc92844b |
08-May-2009 |
Mathias Agopian <mathias@google.com> |
add support for update-on-demand in SurfaceFlinger
ramebufferNativeWindow.h
|
9b35233ea511eab24aa15de5dc2e94b6f8ed081d |
07-May-2009 |
Dave Sparks <davidsparks@android.com> |
Add new binder methods to camera client to support generic callbacks This is the first step in a multi-step change to move from the old specific callbacks to a generic callback. This will allow future flexibility in the interface without requiring binder rewrites. Bug 1837832
amera.h
CameraClient.h
|
aa8c0ff7a36b4840dcf3e72c9696b86d192c4314 |
06-May-2009 |
Mathias Agopian <mathias@google.com> |
get rid off unneeded flags
gl/android_natives.h
|
58a79f47457e9cae2f6880653b581fe3170b0b1f |
06-May-2009 |
Mathias Agopian <mathias@google.com> |
move android_native_buffer_t declaration into its own private/ui/android_native_priv.h header, since user code should never have access to it.
gl/android_natives.h
|
7189c0054e29a66d945f5657c48d5ecf538ea511 |
06-May-2009 |
Mathias Agopian <mathias@google.com> |
move opengl/include/EGL/android_natives.h to include/ui/egl/android_natives.h and don't include it from egl.h the android_native_ types are just forward declared in egl.h
ramebufferNativeWindow.h
Surface.h
urface.h
gl/android_natives.h
|
21c59d0070fe24a8e04e52ce04d511a924a9932f |
05-May-2009 |
Mathias Agopian <mathias@google.com> |
get rid of android_native_buffer_t::getHandle() and replace it with an handle field this abstraction was not necessary. things are easier now.
ramebufferNativeWindow.h
urface.h
|
e71212ba5397387100a578d23b15862518a7a859 |
05-May-2009 |
Mathias Agopian <mathias@google.com> |
removed the "bits" attribute from android_native_buffer_t. "bits" can never be trusted now that we need to call lock() on the handle to get the virtual address of the buffer.
urface.h
|
b2dd686d06a608ee40285b93bc0217cf26c2b035 |
05-May-2009 |
Mathias Agopian <mathias@google.com> |
minor clean-up in FramebufferNativeWindow
ramebufferNativeWindow.h
|
0926f50664c739eaee60341f8e8c694dc9a4f3eb |
04-May-2009 |
Mathias Agopian <mathias@google.com> |
update surfaceflinger, libui and libagl to the new gralloc api - Currently the lock/unlock path is naive and is done for each drawing operation (glDrawElements and glDrawArrays). this should be improved eventually. - factor all the lock/unlock code in SurfaceBuffer. - fixed "showupdate" so it works even when we don't have preserving eglSwapBuffers(). - improved the situation with the dirty-region and fixed a problem that caused GL apps to not update. - make use of LightRefBase() where needed, instead of duplicating its implementation - add LightRefBase::getStrongCount() - renamed EGLNativeWindowSurface.cpp to FramebufferNativeWindow.cpp - disabled copybits test, since it clashes with the new gralloc api - Camera/Video will be fixed later when we rework the overlay apis
ufferMapper.h
GLDisplaySurface.h
GLNativeWindowSurface.h
ramebufferNativeWindow.h
egion.h
urface.h
|
7be3e5d2d8101a8f5e12bbdf650431a734f88eba |
30-Apr-2009 |
Mathias Agopian <mathias@google.com> |
Merge commit 'goog/master' into merge_master Conflicts: libs/surfaceflinger/Layer.cpp libs/surfaceflinger/SurfaceFlinger.cpp opengl/libagl/egl.cpp opengl/libs/EGL/egl.cpp opengl/libs/GLES_CM/gl.cpp opengl/libs/GLES_CM/gl_api.in opengl/libs/gl_entries.in opengl/libs/tools/glapigen
|
d2dc9ac87bbdbbe465a0a07b63843282fb28eee7 |
27-Apr-2009 |
James Dong <jdong@google.com> |
Bug fix(1807910): media recorder crash due to the use of locked camera object (last part) - remove an unused Camera constructor - add a check on the argument in Camera::create() method
amera.h
|
f1a5314076248a352915ae1a987725ae76cc8a22 |
23-Apr-2009 |
James Dong <jdong@google.com> |
Fix a media server crash (bug 1807910): part one Add a factory method that creates a Camera object from a remote client Next: The changes in authordriver.cpp and android_camera_input.cpp will come. and the constructor for Camera object will be removed.
amera.h
|
18d8446fe1596cd50561777e1d1a8c7b39c689f6 |
17-Apr-2009 |
Mathias Agopian <mathias@google.com> |
cleanup, remove unused fields. Also make sure that we don't systematically allocate a Surface in Surface.java if only a SurfaceControl is needed (Common case).
urface.h
|
01b766839e06c32540cef100e3a7710d12cf1eef |
17-Apr-2009 |
Mathias Agopian <mathias@google.com> |
more splitting of Surface/SurfaceControl. Surface.java is now implemented in terms of Surface and SurfaceControl. The WindowManager side of Surface.java holds a SurfaceControl, while the client-side holds a Surface. When the client is in the system process, Surface.java holds both (which is a problem we'll try to fix later).
urface.h
urfaceComposerClient.h
|
62185b7335e85211dc4d0e2003354eb3ea2e66ef |
17-Apr-2009 |
Mathias Agopian <mathias@google.com> |
split Surface.cpp into Surface and SurfaceControl SurfaceControl is used for controling the geometry of the surface (for the WM), while Surface is used to access the buffers (for SF's clients). SurfaceFlingerClient now uses the SurfaceID instead of Surface*. Currently Surface still has the SurfaceControl API and is implemented by calling into SurfaceControl.
urface.h
urfaceComposerClient.h
|
40b7f6e0433b89c27b2fe5a1c0c47f67b42eceb2 |
15-Apr-2009 |
Mathias Agopian <mathias@google.com> |
fix some issues with Surface's lifetime management. To deal with Java's lack of destructors and delayed garbage collection, we used to duplicate Surface.cpp objects in some case; this caused some issues because Surface is supposed to be reference-counted and unique.
urface.h
|
4243e666213029a293935987c979831093fb0779 |
16-Apr-2009 |
Mathias Agopian <mathias@google.com> |
fix a rookie mistake causing Singleton<> to be a "multiton". Also improve the BufferMapper's debugging, but turn it off. Squashed commit of the following: commit 04e9cae7f806bd65f2cfe35c011b47a36773bbe5 Author: Mathias Agopian <mathias@google.com> Date: Wed Apr 15 18:30:30 2009 -0700 fix and improve BufferMapper's tracking of mapped buffers. commit 1a8deaed15811092b2349cc3c40cafb5f722046c Author: Mathias Agopian <mathias@google.com> Date: Wed Apr 15 00:52:02 2009 -0700 fix some bugs with the Singleton<> class. untested. commit ed01cc06ad70cf640ce1258f01189cb1a96fd3a8 Author: Mathias Agopian <mathias@google.com> Date: Tue Apr 14 19:29:25 2009 -0700 some work to debug the Singleton<> template.
ufferMapper.h
|
83d184a299dd80911169a89e352dc3b33b9650fc |
14-Apr-2009 |
Mathias Agopian <mathias@google.com> |
Merge commit 'goog/master' into merge_master
|
2f6d8816871519a88cb0ed3bf4861e153f5031e0 |
14-Apr-2009 |
Dianne Hackborn <> |
AI 145994: Integrate #145778 from Donut. Automated import of CL 145994
eycodeLabels.h
|
8b765b7f5ea7f56963ea0e3141d043d20944dbcc |
11-Apr-2009 |
Mathias Agopian <mathias@google.com> |
more debugging tools around BufferMapper
ufferMapper.h
|
bc0caf802e5eb08b6565bbe3a535cb2fca826d8b |
11-Apr-2009 |
Andy Stadler <> |
AI 145778: Manual merge changes 145382-145384 from cupcake. Automated import of CL 145778
eycodeLabels.h
|
076b1cc3a9b90aa5b381a1ed268ca0b548444c9b |
10-Apr-2009 |
Mathias Agopian <mathias@google.com> |
Integrate from //sandbox/mathias/donut/...@145728 SurfaceFlinger rework for new EGL driver model support.
ufferMapper.h
GLNativeWindowSurface.h
Surface.h
SurfaceComposer.h
SurfaceFlingerClient.h
ixelFormat.h
urface.h
urfaceComposerClient.h
|
c08731e756868653d09d3e49b723706df3687070 |
28-Mar-2009 |
Mathias Agopian <> |
AI 143320: am: CL 143171 am: CL 142873 fix [1732012] Only show screen rotation animation when triggered by sensor Original author: mathias Merged from: //branches/cupcake/... Original author: android-build Merged from: //branches/donutburger/... Automated import of CL 143320
SurfaceComposer.h
urfaceComposerClient.h
|
24fd77d44088011c88c55a5de459e75792bb2ecb |
28-Mar-2009 |
Mathias Agopian <> |
AI 143171: am: CL 142873 fix [1732012] Only show screen rotation animation when triggered by sensor Original author: mathias Merged from: //branches/cupcake/... Automated import of CL 143171
SurfaceComposer.h
urfaceComposerClient.h
|
9adf84a4b6735354893ff1e57c129f66d97d75ee |
05-Mar-2009 |
The Android Open Source Project <initial-contribution@android.com> |
auto import from //depot/cupcake/@136594
CameraService.h
|
edbf3b6af777b721cd2a1ef461947e51e88241e1 |
04-Mar-2009 |
The Android Open Source Project <initial-contribution@android.com> |
auto import from //depot/cupcake/@135843
amera.h
ameraHardwareInterface.h
ameraParameters.h
isplayInfo.h
GLDisplaySurface.h
GLNativeSurface.h
GLNativeWindowSurface.h
ventHub.h
Camera.h
CameraClient.h
CameraService.h
Overlay.h
Surface.h
SurfaceComposer.h
SurfaceFlingerClient.h
eyCharacterMap.h
eycodeLabels.h
verlay.h
ixelFormat.h
oint.h
ect.h
egion.h
urface.h
urfaceComposerClient.h
|
d5193d9394c5e58176d7bcdf50ef017f8a3b9e1e |
04-Mar-2009 |
The Android Open Source Project <initial-contribution@android.com> |
auto import from //depot/cupcake/@135843
amera.h
ameraHardwareInterface.h
ameraParameters.h
isplayInfo.h
GLDisplaySurface.h
GLNativeSurface.h
GLNativeWindowSurface.h
ventHub.h
Camera.h
CameraClient.h
CameraService.h
Overlay.h
Surface.h
SurfaceComposer.h
SurfaceFlingerClient.h
eyCharacterMap.h
eycodeLabels.h
verlay.h
ixelFormat.h
oint.h
ect.h
egion.h
urface.h
urfaceComposerClient.h
|
43aa2b1cbf7a03e248e10f4d0fec0463257cd52d |
03-Mar-2009 |
The Android Open Source Project <initial-contribution@android.com> |
auto import from //depot/cupcake/@132589
ameraHardwareInterface.h
|
0bb03408de8886e8d17013219967d42fb9c8cf8c |
03-Mar-2009 |
The Android Open Source Project <initial-contribution@android.com> |
auto import from //depot/cupcake/@137055
ameraHardwareInterface.h
|
7222586f99599fb2de31293277b79e8d4a3acdc2 |
20-Feb-2009 |
The Android Open Source Project <initial-contribution@android.com> |
auto import from //branches/cupcake/...@132569
eycodeLabels.h
|
ac65e0b172b33f7e068c14e3d95678fa20205577 |
13-Feb-2009 |
The Android Open Source Project <initial-contribution@android.com> |
auto import from //branches/cupcake/...@131421
Surface.h
|
a6938bab1f6fa76ae98ebbe44f4e534e05fa0993 |
11-Feb-2009 |
The Android Open Source Project <initial-contribution@android.com> |
auto import from //branches/cupcake/...@130745
amera.h
ameraHardwareInterface.h
ameraParameters.h
GLDisplaySurface.h
GLNativeSurface.h
GLNativeWindowSurface.h
ventHub.h
Camera.h
CameraClient.h
Surface.h
verlay.h
ixelFormat.h
|
5f78a48bb8f7714ee231fca67d60fad77bc1cad9 |
20-Jan-2009 |
The Android Open Source Project <initial-contribution@android.com> |
auto import from //branches/cupcake/...@127101
verlay.h
|
8a7a67538a9977c892389bfcde76a8372aa0b56c |
16-Jan-2009 |
The Android Open Source Project <initial-contribution@android.com> |
auto import from //branches/cupcake/...@126645
ventHub.h
verlay.h
urface.h
urfaceComposerClient.h
|
276293246ea9cbc0a578a7697cc48930376ec0e9 |
10-Jan-2009 |
The Android Open Source Project <initial-contribution@android.com> |
auto import from //branches/cupcake/...@125939
amera.h
ameraHardwareInterface.h
GLNativeSurface.h
Camera.h
Overlay.h
Surface.h
verlay.h
ixelFormat.h
egion.h
|
e09fd9e819c23dc90bca68375645e15544861330 |
18-Dec-2008 |
The Android Open Source Project <initial-contribution@android.com> |
Code drop from //branches/cupcake/...@124589
litHardware.h
amera.h
ameraHardwareInterface.h
GLDisplaySurface.h
Camera.h
Overlay.h
Surface.h
SurfaceFlingerClient.h
eycodeLabels.h
verlay.h
ixelFormat.h
egion.h
urface.h
|
7c1b96a165f970a09ed239bb4fb3f1b0d8f2a407 |
21-Oct-2008 |
The Android Open Source Project <initial-contribution@android.com> |
Initial Contribution
litHardware.h
amera.h
ameraHardwareInterface.h
ameraParameters.h
isplayInfo.h
GLDisplaySurface.h
GLNativeSurface.h
GLNativeWindowSurface.h
ventHub.h
Camera.h
CameraClient.h
CameraService.h
Surface.h
SurfaceComposer.h
SurfaceFlingerClient.h
eyCharacterMap.h
eycodeLabels.h
ixelFormat.h
oint.h
ect.h
egion.h
urface.h
urfaceComposerClient.h
|