a896306c38c4d11c43b967a21db6d74c251b2520 |
|
14-Jun-2017 |
John Reck <jreck@google.com> |
Add a workaround for simulate secondary display To workaround a deadlock caused by bufferqueue locks we force RenderThread over to use async mode which we enable via eglSwapInterval(0) Bug: 38372997 Test: steps in the bug Change-Id: Ia305f73abbdd64ab0c25d1f7d32792cc6295a0ce
/frameworks/base/core/java/android/view/ThreadedRenderer.java
|
3e04f091365294a7eea927d6b1c138f126f77c5d |
|
03-Jun-2017 |
John Reck <jreck@google.com> |
Workaround glitches from SOFT_INPUT_ADJUST_PAN Change-Id: I1ee0c7d434eb03667bd5e838ea891db73651a994 Fixes: 62073166 Test: Repro app in bug
/frameworks/base/core/java/android/view/ThreadedRenderer.java
|
1fedd9168715d7a8e645acdd5c8d06ffa982fd51 |
|
23-May-2017 |
John Reck <jreck@google.com> |
Creating HW bitmaps from RenderNode Allows creating a HW Bitmap from the drawing commands of a RenderNode. Bug: 38507414 Bug: 37698012 Test: Sample in HwAccelerationTest Change-Id: I57c60b2c8bf5194f4412ad4b7f1c1f35e2e4c757
/frameworks/base/core/java/android/view/ThreadedRenderer.java
|
f9bd2944694539f1dce74d420156cc50bbb4af14 |
|
21-Feb-2017 |
TreeHugger Robot <treehugger-gerrit@google.com> |
Merge "Overhaul GraphicsStatsService"
|
df1742ed47da1e9b61afeae16fa448d5302a8aa0 |
|
20-Jan-2017 |
John Reck <jreck@google.com> |
Overhaul GraphicsStatsService * LRU cache of recently-used is dead, replaced disk storage * ASHMEM size is read from native by the system service, no longer requires keeping a sizeof() in sync with a constant in Java * Supports dumping in proto format by passing --proto * Rotates logs on a daily basis * Keeps a history of the most recent 3 days Bug: 33705836 Test: Manual. Verified log rotating works by setting it up to rotate every minute instead of day. Confirmed /data/system/graphicsstats only has the most recent 3 entries after several minutes Change-Id: Ib84bafb26c58701cc86f123236de4fff01aaa4aa
/frameworks/base/core/java/android/view/ThreadedRenderer.java
|
4badfe6d3beda8e1e358334e32a95e00be39f031 |
|
14-Feb-2017 |
Derek Sollenberger <djsollen@google.com> |
Add developer setting to set the default GPU renderer. Test: manual on-device testing Bug: 35345959 Change-Id: I1d846f922a048dd215caf053b10aaa909bdbc74d
/frameworks/base/core/java/android/view/ThreadedRenderer.java
|
2de950d5a8b47c7b4648ada1b1260ce4b7342798 |
|
25-Jan-2017 |
John Reck <jreck@google.com> |
Overhaul RenderNode's DisplayList management * Move mValid to native * Have destroyHardwareResources destroy everything * Remove flaky mParentCount checks in setStaging * All tree updates have an internal observer to ensure onRemovedFromTree() is a reliable signal * onRemovedFromTree() immediately releases resources to avoid displaylist "leaks" Test: Unit tests for validity added & pass, manually verified that b/34072929 doesn't repro Bug: 34072929 Change-Id: I856534b4ed1b7f009fc4b7cd13209b97fa42a71c
/frameworks/base/core/java/android/view/ThreadedRenderer.java
|
be34e8ee90a34bfe9140643276cbdfe92bfde0b7 |
|
24-Jan-2017 |
John Reck <jreck@google.com> |
Revert "Destroy DisplayLists on time" This reverts commit 2874daa4d38bddd3a5f0edb3774d5e5884dd9554. It broke a bunch of stuff and occasionally blank webviews are preferable to native crashes Bug: 34638191 Change-Id: I6c5849d4ef0db3ac7c9ed1b1a128f2272a5344c2
/frameworks/base/core/java/android/view/ThreadedRenderer.java
|
2874daa4d38bddd3a5f0edb3774d5e5884dd9554 |
|
20-Jan-2017 |
John Reck <jreck@google.com> |
Destroy DisplayLists on time Change-Id: I32a97d1234545075e9423c352c772e09ca954741 Fixes: 34072929 Test: Manual, see b/34072929#comment36
/frameworks/base/core/java/android/view/ThreadedRenderer.java
|
f7fee94d75991f219ef28c1dda1bbe3f86017dfe |
|
11-Nov-2016 |
Tao Wu <lepton@google.com> |
Remove unused variable. Code search show nobody referenced it and aosp image still compiles after remove it. Test: make -j18 systemimage userdataimage ramdisk Change-Id: I3e37ea590610091b938296c999dceb3caf919906 Signed-off-by: Tao Wu <lepton@google.com>
/frameworks/base/core/java/android/view/ThreadedRenderer.java
|
dc589ac82b5fe2063f4cfd94c8ae26d43d5420a0 |
|
11-Nov-2016 |
Sudheer Shanka <sudheersai@google.com> |
Update usage of ActivityManagerNative. - Remove references to ActivityManagerProxy. - Add isSystemReady to ActivityManager. Bug: 30977067 Test: cts/hostsidetests/services/activityandwindowmanager/util/run-test android.server.cts adb shell am instrument -e class com.android.server.am.ActivityManagerTest,com.android.server.am.TaskStackChangedListenerTest \ -w com.android.frameworks.servicestests/android.support.test.runner.AndroidJUnitRunner Change-Id: I07390b6124fb1515821f5c0b37baf6ae74adc8fa
/frameworks/base/core/java/android/view/ThreadedRenderer.java
|
3bc72e55497a5a4e28c816b89c6dfffec0d2764d |
|
12-Oct-2016 |
TreeHugger Robot <treehugger-gerrit@google.com> |
Merge "Fix import statement in view|transition|animation packages."
|
67e2ae86396c6d0f989285275cbf908dee5e71f7 |
|
12-Oct-2016 |
Aurimas Liutikas <aurimas@google.com> |
Fix import statement in view|transition|animation packages. This change also remove trailing whitespace. Test: code still compiles Change-Id: I7eff4546320d67d2bae58d31bad0625ea0791b8f
/frameworks/base/core/java/android/view/ThreadedRenderer.java
|
253f2c213f6ecda63b6872aee77bd30d5ec07c82 |
|
29-Sep-2016 |
Romain Guy <romainguy@google.com> |
Linear blending, step 1 NOTE: Linear blending is currently disabled in this CL as the feature is still a work in progress Android currently performs all blending (any kind of linear math on colors really) on gamma-encoded colors. Since Android assumes that the default color space is sRGB, all bitmaps and colors are encoded with the sRGB Opto-Electronic Conversion Function (OECF, which can be approximated with a power function). Since the power curve is not linear, our linear math is incorrect. The result is that we generate colors that tend to be too dark; this affects blending but also anti-aliasing, gradients, blurs, etc. The solution is to convert gamma-encoded colors back to linear space before doing any math on them, using the sRGB Electo-Optical Conversion Function (EOCF). This is achieved in different ways in different parts of the pipeline: - Using hardware conversions when sampling from OpenGL textures or writing into OpenGL frame buffers - Using software conversion functions, to translate app-supplied colors to and from sRGB - Using Skia's color spaces Any type of processing on colors must roughly ollow these steps: [sRGB input]->EOCF->[linear data]->[processing]->OECF->[sRGB output] For the sRGB color space, the conversion functions are defined as follows: OECF(linear) := linear <= 0.0031308 ? linear * 12.92 : (pow(linear, 1/2.4) * 1.055) - 0.055 EOCF(srgb) := srgb <= 0.04045 ? srgb / 12.92 : pow((srgb + 0.055) / 1.055, 2.4) The EOCF is simply the reciprocal of the OECF. While it is highly recommended to use the exact sRGB conversion functions everywhere possible, it is sometimes useful or beneficial to rely on approximations: - pow(x,2.2) and pow(x,1/2.2) - x^2 and sqrt(x) The latter is particularly useful in fragment shaders (for instance to apply dithering in sRGB space), especially if the sqrt() can be replaced with an inversesqrt(). Here is a fairly exhaustive list of modifications implemented in this CL: - Set TARGET_ENABLE_LINEAR_BLENDING := false in BoardConfig.mk to disable linear blending. This is only for GLES 2.0 GPUs with no hardware sRGB support. This flag is currently assumed to be false (see note above) - sRGB writes are disabled when entering a functor (WebView). This will need to be fixed at some point - Skia bitmaps are created with the sRGB color space - Bitmaps using a 565 config are expanded to 888 - Linear blending is disabled when entering a functor - External textures are not properly sampled (see below) - Gradients are interpolated in linear space - Texture-based dithering was replaced with analytical dithering - Dithering is done in the quantization color space, which is why we must do EOCF(OECF(color)+dither) - Text is now gamma corrected differently depending on the luminance of the source pixel. The asumption is that a bright pixel will be blended on a dark background and the other way around. The source alpha is gamma corrected to thicken dark on bright and thin bright on dark to match the intended design of fonts. This also matches the behavior of popular design/drawing applications - Removed the asset atlas. It did not contain anything useful and could not be sampled in sRGB without a yet-to-be-defined GL extension - The last column of color matrices is converted to linear space because its value are added to linear colors Missing features: - Resource qualifier? - Regeneration of goldeng images for automated tests - Handle alpha8/grey8 properly - Disable sRGB write for layers with external textures Test: Manual testing while work in progress Bug: 29940137 Change-Id: I6a07b15ab49b554377cd33a36b6d9971a15e9a0b
/frameworks/base/core/java/android/view/ThreadedRenderer.java
|
9580146f5076aaa7c498f86bd3d724c00599f6f4 |
|
01-Sep-2016 |
John Reck <jreck@google.com> |
Add API to copy a window Change-Id: I9bb5209010db6665be4b6f8db81a6fc1b7debc45
/frameworks/base/core/java/android/view/ThreadedRenderer.java
|
712765ff3448e84f415866f040e0e84a3f553361 |
|
10-Aug-2016 |
John Reck <jreck@google.com> |
resolve merge conflicts of 1d7ee6b to master Change-Id: I2ed0f2c3233151e890bd8bde825d306ec8f0d8fd
|
cd68212f0821e75081375a5af5ef5fce6e45e167 |
|
09-Aug-2016 |
John Reck <jreck@google.com> |
Make updateSurface non-blocking Bug: 30442298 We already do this for initialize(), fix it so that update() is parallel with the UI thread as well. Shaves ~7ms off of the 99th percentile on NotificationShade open & close Change-Id: I1791df495453fb9e1e12362c68e3d20e837e62be
/frameworks/base/core/java/android/view/ThreadedRenderer.java
|
aa1735370b24428647508d2ff0f29a617cb955e9 |
|
07-Jul-2016 |
Tim Murray <timmurray@google.com> |
Merge changes from topic \\'fifo\\' into nyc-mr1-dev am: a96d445aef am: 03b34e402c Change-Id: If3104889f659aef9a6d7035e18ab839544c9ecb3
|
33eb07f5759b85a5617f8057d8a335019c7d24dd |
|
10-Jun-2016 |
Tim Murray <timmurray@google.com> |
Add new mode for SCHED_FIFO on UI and RenderThreads. Add a new mode, controlled by sys.use_fifo_ui property, that enables the top app's UI and RenderThread to be SCHED_FIFO. This eliminates almost all jank due to scheduling competition with non-UI critical threads. This mode may not be suitable for all devices. bug 24503801 Change-Id: I7b8a31830ad80f7efa00236928d5476998ed4e00
/frameworks/base/core/java/android/view/ThreadedRenderer.java
|
f64c34e73f00bf61b5f98fa0f37f60b5798cc709 |
|
28-Jun-2016 |
Derek Sollenberger <djsollen@google.com> |
Remove isAvailable() from DisplayListCanvas. The method has been moved to ThreadedRenderer and the native implementation has been renamed to better reflect its intent. Change-Id: I7ee6d578ad0c2ee20111edd424c7560a449f0b39
/frameworks/base/core/java/android/view/ThreadedRenderer.java
|
45faba516e200760e977e8ceb76f079ee8aa7415 |
|
28-Jun-2016 |
Stan Iliev <stani@google.com> |
Fix wording regarding ThreadedRenderer ThreadedRenderer is not synonymous with hardware rendering, so remove references to hardware rendering when referring to ThreadedRenderer. Change-Id: Ic66a482ccf05f556ebe6ec194ce4f858f75bbb8b
/frameworks/base/core/java/android/view/ThreadedRenderer.java
|
ab1080c4d075b008cebdd9a2031ebbd51f9c2729 |
|
22-Jun-2016 |
John Reck <jreck@google.com> |
Delete unused args Bug: 21170575 Change-Id: Icc832f70f206342557f44667ad3498405d04db78
/frameworks/base/core/java/android/view/ThreadedRenderer.java
|
718cd3eb70703c43f29ca37907bbf0e153d8cca0 |
|
18-May-2016 |
Doris Liu <tianliu@google.com> |
Handle hidden RT VectorDrawable animators This CL changes the target of VD specific animators to VectorDrawable, instead of RenderNode. The benefit of doing so is that animators can now detect whether the animation is meaningful by checking whether their VD target is in the display list. If not, that means the VD is not drawing for the current frame, in which case we can be smarter and more power efficient by removing the animator from the list and posting a delayed onFinished listener callback. By setting VD as the animation target, when an ImageView decides to update its drawable from one AVD to something else, we'll be able to detect that the previous AVD is no longer in the display list, and stop providing animation pulse to the stale AVD, which is something we couldn't do previously. This change also handles the case where one AVD instance could be drawn in two different views. Bug: 27441375 Change-Id: Iaad1ed09cfd526276b95db0dd695275c28e074e8
/frameworks/base/core/java/android/view/ThreadedRenderer.java
|
67ce99b66ebc816ae8bbc222db8f3695fb15495b |
|
18-May-2016 |
Doris Liu <tianliu@google.com> |
Handle hidden RT VectorDrawable animators This CL changes the target of VD specific animators to VectorDrawable, instead of RenderNode. The benefit of doing so is that animators can now detect whether the animation is meaningful by checking whether their VD target is in the display list. If not, that means the VD is not drawing for the current frame, in which case we can be smarter and more power efficient by removing the animator from the list and posting a delayed onFinished listener callback. By setting VD as the animation target, when an ImageView decides to update its drawable from one AVD to something else, we'll be able to detect that the previous AVD is no longer in the display list, and stop providing animation pulse to the stale AVD, which is something we couldn't do previously. This change also handles the case where one AVD instance could be drawn in two different views. Bug: 27441375 Change-Id: Id4b3b37f28274c917cb9beb9dcd3d1e6991b5c5d
/frameworks/base/core/java/android/view/ThreadedRenderer.java
|
0997908c95151ce24609c10731990e648156b95d |
|
19-Apr-2016 |
Dimitry Ivanov <dimitry@google.com> |
Move Vulkan layer path setup to ApplicationLoaders ThreadedRenderer was never the right place for this anyway, and ApplicationLoaders can provide both the full library search path (not just the extracted native library dir) as well as the application loader namespace. Bug: 28213888 Change-Id: Ibcc0a9178da4dba6f3f3105932fdac1a1d0261af
/frameworks/base/core/java/android/view/ThreadedRenderer.java
|
e85ce990fe7bfa33d6b7d8bfd23b7336096466b9 |
|
10-May-2016 |
Jorim Jaggi <jjaggi@google.com> |
Don't stage content drawn bounds It's certainly not needed for two up, so remove the staging aspect. Freeform resizing is currently broken because of another bug so this can't be tested, but because we are not "shipping" it in any case fixing the 2-up bug is more important, but it shouldn't break freeform anyways. Bug: 28618501 Change-Id: I6f285a714281fde50fd7328a3f8999cfa8dfb2c5
/frameworks/base/core/java/android/view/ThreadedRenderer.java
|
e94cbc76d560a157c0a0d47181b4ed2a0aadbeb1 |
|
25-Apr-2016 |
John Reck <jreck@google.com> |
API tweaks to PixelCopy and make it public Bug: 27708453 Change-Id: I81667ce42f9ca1c1a13e1e61299927900845fc84
/frameworks/base/core/java/android/view/ThreadedRenderer.java
|
9a17da8125c36c82ba73e7f4b3ed80b9c633767f |
|
18-Apr-2016 |
John Reck <jreck@google.com> |
Don't reuse LOST_SURFACE for stopped Fixes: 28218991 If a draw() happens while we are stopped, don't report that the surface is lost because this will prompt a tear-down of the surface which isn't desired. It can result in ViewRootImpl ending up in an internally-bad state in this case. Change-Id: If3eb8c6bc8702299e5330bc0917952624dce3b7e
/frameworks/base/core/java/android/view/ThreadedRenderer.java
|
8afcc76920499d0a384dba1470c5a377f80ed768 |
|
13-Apr-2016 |
John Reck <jreck@google.com> |
Revert "Revert "Make stopped state a first-class thing"" This reverts commit eab3f2658aa41d37c3b05d49a2ce4e3f4ed85399. Fixes first-frame issue, mReportNextDraw needs to override mStopped Fixes: 28118961 Fixes: 27286867 Change-Id: I5c811759637d08ba9f3b342016d1b3006986d5a2
/frameworks/base/core/java/android/view/ThreadedRenderer.java
|
d2eec0efb2e47b23b2a12ab2967e422f0be49094 |
|
12-Apr-2016 |
John Reck <jreck@google.com> |
Merge "Framework-side of SurfaceView#getBitmap" into nyc-dev
|
10dd0585c11dcedb5a271d54e645594f1d215d5c |
|
01-Apr-2016 |
John Reck <jreck@google.com> |
Framework-side of SurfaceView#getBitmap Bug: 27708453 Change-Id: Ie6fd7eca522d3e6549d8af587c975fd7e6053649
/frameworks/base/core/java/android/view/ThreadedRenderer.java
|
825fa4d5ae7b2907ee1769d09e6333306de2a92e |
|
11-Apr-2016 |
John Reck <jreck@google.com> |
Merge "Revert "Make stopped state a first-class thing"" into nyc-dev
|
eab3f2658aa41d37c3b05d49a2ce4e3f4ed85399 |
|
11-Apr-2016 |
John Reck <jreck@google.com> |
Revert "Make stopped state a first-class thing" This reverts commit 945961f78a78eced823d5ba78505c781b079703d. Change-Id: Iebc1d49fac33380233f8785fc39bec6c30a5e714
/frameworks/base/core/java/android/view/ThreadedRenderer.java
|
c724dcf23c5e2ebd22c042a8a6f2424b7e9d5029 |
|
08-Apr-2016 |
John Reck <jreck@google.com> |
Merge "Make stopped state a first-class thing" into nyc-dev
|
945961f78a78eced823d5ba78505c781b079703d |
|
08-Apr-2016 |
John Reck <jreck@google.com> |
Make stopped state a first-class thing Bug: 27286867 WindowManager has committed to stopped state controlling the lifecycle of the Surface, so make that a first-class thing in HWUI as well. This makes it more resistent to things like a rogue updateSurface() happening while mStopped=true, leading to bad things down the line. Instead let the surface be changed/updated as often as desired, and just block any attempt to draw on that surface. Also removes some unnecessary makeCurrent()s, as EglManager ensures that we *always* have a valid GL context now (using a pbuffer surface if there is no window surface set) Change-Id: Iead78ddebc7997e8fdb0c9534836352f5e54b9bd
/frameworks/base/core/java/android/view/ThreadedRenderer.java
|
51f2d606dcbfba3cc5b03dfea37c1304b91c232f |
|
06-Apr-2016 |
John Reck <jreck@google.com> |
Fix some edge cases Bug: 27709981 This desperately needs a refactor, but to keep the current (really needed & nice) behavior of dispatching after sync finishes would be difficult to handle cleanly without lots of ripping so... #yolo Change-Id: I831a06c6ae7412a062720d68ecbe3085190f0258
/frameworks/base/core/java/android/view/ThreadedRenderer.java
|
44b49f070aafe8ad44efae87341121cce49ff11c |
|
25-Mar-2016 |
John Reck <jreck@google.com> |
Add a callback for rendernode parentcount=0 Bug: 27709981 Fixes: 22565656 Change-Id: I1cb4461baf9069dc4e7ca6de10d5862578c107f4
/frameworks/base/core/java/android/view/ThreadedRenderer.java
|
350e65206cfbd86484fcfda77bb988e270606dda |
|
19-Feb-2016 |
Doris Liu <tianliu@google.com> |
End staging animators when destroy RootRenderNode When animation happens in a dialog, it is possible for the dialog to be dismissed and RootRenderNode to be destroyed before we create animation handle for the staged animators. In that case, we need to remove the staged animators so they will not run without a animation handle. Bug: 26975079 Change-Id: I0c2c6c1b530beaec3984c0b1c410df4fd8f25c95
/frameworks/base/core/java/android/view/ThreadedRenderer.java
|
910beb8f5d9042163e2ad0dbb744d9f147db9604 |
|
03-Feb-2016 |
Andres Morales <anmorales@google.com> |
updates to FrameStatsObserver API - Rename to FrameMetrics to avoid collision with existing android.view.FrameStats class - Make FrameMetricsObserver implementation detail, exposing FrameMetricsListener interface as public API and wrapping in FrameStatsObserver to maintain state - Remove dropped frame count call, in favor of passing as parameter to callback method. - Move away from raw timestamp access in favor of Metric IDs which represent higher-level, more stable stages in a frame lifecycle and match the categories exposed in the onscreen bars. - Support many-to-many Window<->FrameMetricsListener relationship Change-Id: I00e741d664d4c868b1b6d0131a23f8316bd8c5c2
/frameworks/base/core/java/android/view/ThreadedRenderer.java
|
03d8f76836c5950374bc9030a78706d25ac233e9 |
|
31-Jan-2016 |
Michael Lentine <mlentine@google.com> |
Adding plumbing for passing the lib directory. Added call in handleBindApplication which will pass the library path into HardwareRender which then passes it to libvulkan through ThreadedRenderer's jni interface. Change-Id: I7dc1fec9c7a1566716a4501a0d5697ea94e57b53
/frameworks/base/core/java/android/view/ThreadedRenderer.java
|
06f5bc70a667a02b14e31d3f53f91d3661e30666 |
|
16-Dec-2015 |
Andres Morales <anmorales@google.com> |
expose hwui frame stats through FrameStatsObserver Change-Id: I88884bafc8e2f6d7f67a36d3609490e83cf8afd5
/frameworks/base/core/java/android/view/ThreadedRenderer.java
|
bf4b31f7b23b0bc7a2ed4fc779aac37c9c486eb2 |
|
16-Dec-2015 |
John Reck <jreck@google.com> |
resolve merge conflicts of 04ce46db64 to master. Change-Id: I935bb47718f0e7d5fb48945dd8de6e28dac136e5
|
0bcd0cb6b1193168fa2840855195347488daab9e |
|
04-Dec-2015 |
Thomas Buhot <thomas.buhot@intel.com> |
libhwui: make setSurface asynchronous On the critical path of the cold launch of applications the main thread of the started application tells the RenderThread to create a surface. This process is synchronous and blocks the main thread of the application until the creation of the EGLContext is complete. As a consequence the launch time of the application is delayed by time spent allocating the EGL Context in the RenderThread. With this optimization the launch time of any application is improved (for example settings by 20 to 40 ms). Change-Id: Ibf47aaa0abb8dedf7aa00693073db3785d9d6b08 Signed-off-by: Thomas Buhot <thomas.buhot@intel.com> Signed-off-by: Zhiquan Liu <zhiquan.liu@intel.com>
/frameworks/base/core/java/android/view/ThreadedRenderer.java
|
51aaf906f9f5fb2f117f5ccfae8be6974f7cb903 |
|
03-Dec-2015 |
John Reck <jreck@google.com> |
Nuke HardwareRenderer abstract base Bug: 17303292 Change-Id: I4a272ea4f695f4f9993e8be640fdd8530b691be0
/frameworks/base/core/java/android/view/ThreadedRenderer.java
|
b816087962aba0019b022303330f03b897b580ed |
|
22-Sep-2015 |
Skuhne <skuhne@google.com> |
Rendering the window frame with a second thread Using a multi threaded render node to render the window frame asynchronously from the application relayout. Bug: 22527834 Bug: 24400680 Bug: 24459827 Bug: 24409773 Bug: 24537510 Change-Id: I1010fc6a8b6e38424178140afa3ca124433ab7e4
/frameworks/base/core/java/android/view/ThreadedRenderer.java
|
ea7a7fb75acb7305eb774ca7bc7e96103bd49323 |
|
28-Aug-2015 |
Skuhne <skuhne@google.com> |
MultiThreaded rendering of different renderNodes This is adding the renderer side infrastructure to allow rendering multiple render nodes with different threads. This is a pre-step for decoupling a non client decor resize reder from a content resize render. Multiple render nodes can be added to be drawn, and to prevent overdrawing, a content bounds area can be set Bug: 22527834 Change-Id: Ie7271e20895bf38957e5a84aeefc883e282039ad
/frameworks/base/core/java/android/view/ThreadedRenderer.java
|
e248bd1b2c3fcf8088429507e73b31f45ee2544b |
|
05-Aug-2015 |
John Reck <jreck@google.com> |
Serializing display lists This is a WIP prototype Change-Id: Id4bfcf2b7bf905221c3734b7b6887c9b2efd37e6
/frameworks/base/core/java/android/view/ThreadedRenderer.java
|
828698b012e3c317073c0dbbe323d06fe9954af4 |
|
30-Jun-2015 |
John Reck <jreck@google.com> |
Make querying the graphics stats service more defensive Bug: 21750734 Doesn't fix the underlying issue that we were unable to get a buffer but as this is non-critical be more defensive about failures. Change-Id: I7f2faaa35b064e3d0da0a13dba9aae3c226b9acc
/frameworks/base/core/java/android/view/ThreadedRenderer.java
|
63005e6e5b1ee6d32a217ce8b4d8f0d13987fc39 |
|
20-May-2015 |
John Reck <jreck@google.com> |
Reduce wasted buffer allocations Bug: 20170924 Don't pre-allocate buffers if there is a SurfaceView or other View that has requested transparent regions. This doesn't fully address the problem of allocating buffers when there's a full screen SurfaceView but it at least gets back to KitKat levels of only having 1 wasted buffer instead of 3 (the 1 being a result of the fact that it will still draw one frame of emptiness forcing a buffer dequeue). Change-Id: Ied9553186bc7b111d180b63f87b92bd317cb4b97
/frameworks/base/core/java/android/view/ThreadedRenderer.java
|
50210d912925aef14e4ce69be82e4949122a3cd9 |
|
15-May-2015 |
Alan Viverette <alanv@google.com> |
Adjust light source for window position Bug: 16523629 Change-Id: I2f3fed1edcac0a3cfd5034aded45e08ececfebaf
/frameworks/base/core/java/android/view/ThreadedRenderer.java
|
2507c34d91bb0d722b6012e85cb47387b2aa6873 |
|
04-May-2015 |
Chris Craik <ccraik@google.com> |
Cleanup properties bug:19967854 Separate properties from Caches, into static, RenderThread-only class. Also rewrites the means for java to set properties to correctly handle threading, and adds an override for profile bars so that SysUi doesn't clutter the screen with them. Change-Id: I6e21a96065f52b9ecc49d1a126244804ba106fa9
/frameworks/base/core/java/android/view/ThreadedRenderer.java
|
1641c0cb0b6baf313c82846fe4f64007078c604f |
|
04-May-2015 |
John Reck <jreck@google.com> |
Merge "Move AssetAtlas off of SkBitmap*" into mnc-dev
|
c6e2e8ff474ae44bab5b9eb665851118abd27b68 |
|
15-Apr-2015 |
John Reck <jreck@google.com> |
Move AssetAtlas off of SkBitmap* Switched to SkPixelRef* Change-Id: I4a1d9dc6c55c1ebcce6b0b8c585e69559e523898
/frameworks/base/core/java/android/view/ThreadedRenderer.java
|
31a2d063df5111e730abe7d07be064690deedc34 |
|
01-May-2015 |
Chris Craik <ccraik@google.com> |
Revert "Revert "Merge getDisplayList and updateDisplayListIfDirty"" Fixes breakage from HwAccelerationTest This reverts commit b2847afde24aac22c8fb804cdce0c24b8a7c40c4. Change-Id: I762b3c9020fc1d06bac61ffa8b956049147515b1
/frameworks/base/core/java/android/view/ThreadedRenderer.java
|
5c705c595d6adbb4b6e8ad5dee29205246cd5cc4 |
|
01-May-2015 |
Chris Craik <ccraik@google.com> |
Merge "Fix build." into mnc-dev
|
b2847afde24aac22c8fb804cdce0c24b8a7c40c4 |
|
01-May-2015 |
Chris Craik <ccraik@google.com> |
Fix build. Revert "Merge getDisplayList and updateDisplayListIfDirty" This reverts commit f85d064b536d9b2028a83e21d98eac9b40b74e95. Change-Id: I8b1566aba67c385d72759ea2aea16edcd8477813
/frameworks/base/core/java/android/view/ThreadedRenderer.java
|
f4ff8f701f8127ad9e187a30e9407375695a4b62 |
|
01-May-2015 |
Chris Craik <ccraik@google.com> |
Merge "Merge getDisplayList and updateDisplayListIfDirty" into mnc-dev
|
f85d064b536d9b2028a83e21d98eac9b40b74e95 |
|
01-May-2015 |
Chris Craik <ccraik@google.com> |
Merge getDisplayList and updateDisplayListIfDirty bug:17767704 Change-Id: I5dffc0fa343d5d67d5fe59c78eca77bb8645ce0e
/frameworks/base/core/java/android/view/ThreadedRenderer.java
|
3731dc220ed457e0f1e99d7ec2589e0a43872b59 |
|
14-Apr-2015 |
John Reck <jreck@google.com> |
A bunch more cleanups Switch a few places to using android::canvas instead of SkCanvas as well which eliminated some JNI Change-Id: I8f98b56442a06362b82b984cd1bd3a92398d8dbc
/frameworks/base/core/java/android/view/ThreadedRenderer.java
|
9d4efdf2802f06ccf7031610891f75af70ea5538 |
|
17-Apr-2015 |
John Reck <jreck@google.com> |
Revert "A bunch more cleanups" This reverts commit c294d128d03bc9a9982b273a82516c04583438cc. Change-Id: Id1ebb236950f7c36c6d86e1dd95566d3a200748d
/frameworks/base/core/java/android/view/ThreadedRenderer.java
|
7809f835cae637c12eebdc92103ad88890228d97 |
|
17-Apr-2015 |
John Reck <jreck@google.com> |
Revert "Move AssetAtlas off of SkBitmap*" This reverts commit 87ffb63d90fb6dd2689fe72dcb24fda9a6156220. Change-Id: I92adfcee454a0a19020cdd9e96a134be0ee529aa
/frameworks/base/core/java/android/view/ThreadedRenderer.java
|
87ffb63d90fb6dd2689fe72dcb24fda9a6156220 |
|
15-Apr-2015 |
John Reck <jreck@google.com> |
Move AssetAtlas off of SkBitmap* Switched to SkPixelRef* Change-Id: I4a1d9dc6c55c1ebcce6b0b8c585e69559e523898
/frameworks/base/core/java/android/view/ThreadedRenderer.java
|
c294d128d03bc9a9982b273a82516c04583438cc |
|
14-Apr-2015 |
John Reck <jreck@google.com> |
A bunch more cleanups Switch a few places to using android::canvas instead of SkCanvas as well which eliminated some JNI Change-Id: I8f98b56442a06362b82b984cd1bd3a92398d8dbc
/frameworks/base/core/java/android/view/ThreadedRenderer.java
|
edc524c90506d80e0fc5fb67e8de7b8f3ef53439 |
|
18-Mar-2015 |
John Reck <jreck@google.com> |
Add GraphicsStatsService More S's for More Speed Split JankTracker's backing data from the class to allow for data relocation to/from ashmem regions Pack the jank tracking data to fit in 256 bytes Change-Id: Ife86a64b71a328fbd0c8075fe6a0404e081f725b
/frameworks/base/core/java/android/view/ThreadedRenderer.java
|
43c410eaacf7d287c6c3f5621e6e0b96501004dc |
|
18-Mar-2015 |
Chris Craik <ccraik@google.com> |
Merge "Remove HardwareCanvas"
|
b36016c65f1d1b5846dba0349aab491dbd3a746a |
|
11-Mar-2015 |
John Reck <jreck@google.com> |
Cleanups & simplifications Change-Id: I5ad5e3b8fe55b1528f2e20c63e5abe51d9e40ff1
/frameworks/base/core/java/android/view/ThreadedRenderer.java
|
f6829a0a618b4523619ec53c996b04d67e3186b9 |
|
10-Mar-2015 |
Chris Craik <ccraik@google.com> |
Remove HardwareCanvas Change-Id: I239646a7f00f09d3f76fe6b6162eed86bc0d6e77
/frameworks/base/core/java/android/view/ThreadedRenderer.java
|
f4faeac3525fe1ce3707ab785a1651aec367589d |
|
05-Mar-2015 |
John Reck <jreck@google.com> |
Cleanup Bitmap JNI attempt #2 Original version missed a spot This reverts commit c02977e3bbfaaedcb1b1d67e1692becc7dddd59b. Change-Id: I56244ce10d709fcdef42a001fe4c6ba7b6bbb04d
/frameworks/base/core/java/android/view/ThreadedRenderer.java
|
c02977e3bbfaaedcb1b1d67e1692becc7dddd59b |
|
05-Mar-2015 |
Chad Jones <chadj@google.com> |
Revert "Cleanup Bitmap JNI" This reverts commit b2915245b74b3b5541b123e38403f8e26426b4b7. Change-Id: Idd7d7f33eec4ea5024c83de6b10d3d1a6ab2b17a
/frameworks/base/core/java/android/view/ThreadedRenderer.java
|
b2915245b74b3b5541b123e38403f8e26426b4b7 |
|
04-Mar-2015 |
John Reck <jreck@google.com> |
Cleanup Bitmap JNI Fix a bunch of places where mNativeBitmap was being poked at directly, switch them either to the NDK API or to GraphicsJNI where it made sense Change-Id: I6b3df3712d6497cba828c2d3012e725cb4ebb64d
/frameworks/base/core/java/android/view/ThreadedRenderer.java
|
ba6adf66d3c44c0aa2fd8a224862ff1901d64300 |
|
19-Feb-2015 |
John Reck <jreck@google.com> |
Initial attempt at jank-tracking stat collection Is a bit naive, perhaps overly aggressive, but sorta works Change-Id: I01a774e00dbe681439c02557d9728ae43c45ce50
/frameworks/base/core/java/android/view/ThreadedRenderer.java
|
dad7d84c04c5954b63ea8bb58c52b2291f44b4df |
|
09-Dec-2014 |
John Reck <jreck@google.com> |
Teach AssetAtlas about more drawables Bug: 18317479 Change-Id: I16868ee204d24af72af9a2efc987f7e9eb1d266b
/frameworks/base/core/java/android/view/ThreadedRenderer.java
|
01a5ea35fbba4c5bb1d7790ae1677a2fa752e042 |
|
03-Dec-2014 |
John Reck <jreck@google.com> |
Resume RT-animations after a pauseSurface Bug: 18203577 The issue occurs as a result of performTraversals() both doing a window relayout call *and* early-returning because it's not dirty. To fix this pauseSurface() returns whether or not the RT-side is "dirty" to force ViewRootImpl to do a draw even if mDirty is otherwise empty. Change-Id: I534f367e75d18d273ebf14df3927f5c464ef6bef
/frameworks/base/core/java/android/view/ThreadedRenderer.java
|
83fb64e8ec4c6bc0930f50b24bd1c36a81f6a1c2 |
|
21-Nov-2014 |
John Reck <jreck@google.com> |
Merge "If the surface is lost, release it" into lmp-mr1-dev
|
b13de07f0b26953115f4315bc7417ca87c70594b |
|
20-Nov-2014 |
John Reck <jreck@google.com> |
If the surface is lost, release it Bug: 18403246 Surface#isValid() is used throughout ViewRootImpl to determine Surface validity. However, this will return true until Surface#release() is called, even if the underlying BufferQueue is abandoned. We have a very strong signal from EGL that the Surface is now dead, so use that signal to call Surface#release() so ViewRootImpl's isValid() usage will be valid. Change-Id: Ib355560ef4ca7625c3c784174863d2d55267d93d
/frameworks/base/core/java/android/view/ThreadedRenderer.java
|
70850ea258cbf91477efa57a1f1a23cc0044cc93 |
|
18-Nov-2014 |
Chris Craik <ccraik@google.com> |
Improve logging around performance critical events bug:17702227 Add details useful to developers (such as layer size/View name), and switch away from logging implementation names/details, since they are generally not relevant to developers. Change-Id: Iee605d182f241450f7e75a6d0c283d51fa1312f5
/frameworks/base/core/java/android/view/ThreadedRenderer.java
|
aa95a88327d9a3ac8a4a00b065b78ac0f28b3a19 |
|
07-Nov-2014 |
John Reck <jreck@google.com> |
Have an actual fallback if the surface is lost Bug: 17516789 This will force a relayout/reinitialize pass if the Surface is lost mid-render instead of crashing on the next frame Change-Id: If08bfa16f740728fa7c05904fa11e26f07b81e2e
/frameworks/base/core/java/android/view/ThreadedRenderer.java
|
3aa1ffbc75e39b8e53b64256775ea917ca0c6bee |
|
30-Oct-2014 |
Alan Viverette <alanv@google.com> |
Fix inset check in ThreadedRenderer BUG: 17729606 Change-Id: I9303a788968b424fd8ca27fe4bb99bab51ec34a7
/frameworks/base/core/java/android/view/ThreadedRenderer.java
|
23d307c8d88f4a3849163b9e5b7cd11d0d4f372c |
|
27-Oct-2014 |
John Reck <jreck@google.com> |
Cleanup debug options Bug: 18138852 Bug: 18065434 Change-Id: Ibb07b73b147c2a8b287fe8aee3f6624582f21b00
/frameworks/base/core/java/android/view/ThreadedRenderer.java
|
749906b468912dab7bf69a86e852deac3e80b0cc |
|
04-Oct-2014 |
John Reck <jreck@google.com> |
Cleanup DeferredLayerUpdater Bug: 17765082 DeferredLayerUpdater had fallen behind RT updates. Re-snap to latest expectations, ensuring to call requireGlContext() prior to detachSurfaceTexture to avoid leaking SurfaceTextures Change-Id: Ic65fb9831e5284f658866da8da9ad5af1d227699
/frameworks/base/core/java/android/view/ThreadedRenderer.java
|
61375a8bb5e112d4e79ee4240699ffe7e3f4c8e5 |
|
18-Sep-2014 |
John Reck <jreck@google.com> |
Revert "Make starting window hw-accelerated" Bug: 17516789 This change corresponds to a sudden influx of bad surface crashes. Reverting to see if stability returns as this was an optimization CL This reverts commit 29ff1bc57ac2c995c56f15ed6e56e5fb247b2a44. Change-Id: I7835e89017161d94ad05fe46d81bd437c3dae3a7
/frameworks/base/core/java/android/view/ThreadedRenderer.java
|
4f52b3420684e85252a7341d906e47145855b6ec |
|
11-Sep-2014 |
Chet Haase <chet@google.com> |
Make starting window hw-accelerated An earlier fix in L disabled hw acceleration for the starting window after the system process became hw accelerated. This was done to preserve the old behavior of the starting window having some default behavior (in particular, being filled with a default color). However, this ends up being a memory and performance problem on some platforms (memory because some platforms have backing store for software surfaces, performance because it takes far longer to create a screen-size software surface than a hardware surface). The fix is to allow the starting window to inherit the hw acceleration behavior of its process, and to detect when we are drawing the contents of that starting window and to fill it with a default color (black). Issue #17443449 use hardware rendering for app preview window Change-Id: I8be8111d9e38c51fbbc07185acca065815ce26dc
/frameworks/base/core/java/android/view/ThreadedRenderer.java
|
17035b0211a3c9d45ea46a99217a6acbe76e8fbe |
|
03-Sep-2014 |
John Reck <jreck@google.com> |
Have destroy call freePrefetchedLayers Bug: 17208461 There's a potential race condition between HardwareRenderer.destroy() being called (which calls destroyCanvasAndSurface()) and the renderer being finalized (which is what calls freePrefetchedLayers), during which time it's possible we get a TRIM_MEMORY_COMPLETE and destroy the EGL context. Fix this race condition by moving stopDrawing() and freePrefetchedLayers() into destroyCanvasAndSurface() where they should have been in the first place. Also, if we hit the assertion failure, dump the current state of Caches to try and provide more context for the failure. Change-Id: Ife0ba3562041e8b08e87e3e13640472b3004eed6
/frameworks/base/core/java/android/view/ThreadedRenderer.java
|
abedca398334236f9f03b5af04c58d4bb00a1247 |
|
29-Aug-2014 |
Chris Craik <ccraik@google.com> |
Support Z reorder/shadows in root render node bug:17310188 Change-Id: If2281218c458cf767d79b4d81944e2c8a23ca32c
/frameworks/base/core/java/android/view/ThreadedRenderer.java
|
4c5a27b5f667ebc7cb2b188655820ad3fddedb52 |
|
28-Aug-2014 |
John Reck <jreck@google.com> |
Merge "Animator stuff" into lmp-dev
|
119907cd2575c56b1ebf66348b52e67aaf6a88d8 |
|
14-Aug-2014 |
John Reck <jreck@google.com> |
Animator stuff Bug: 17228458 Change-Id: Id884a429a512f9cd2be0ed16dbd0f10e92b4440d
/frameworks/base/core/java/android/view/ThreadedRenderer.java
|
ed6f14a20c69da3d221cc1acbaa31e74e837917c |
|
26-Aug-2014 |
Alan Viverette <alanv@google.com> |
Make shadow alpha properties public, add lighting values for TV BUG: 17189722 BUG: 17221975 Change-Id: I4ed477b658fec96ce69fa278f67345dab6bacaa3
/frameworks/base/core/java/android/view/ThreadedRenderer.java
|
3e8249568cc428296ac76c7ddce3f0382d40fe5b |
|
20-Aug-2014 |
John Reck <jreck@google.com> |
Implement full View.buildLayer Bug: 17152292 Change-Id: Ia3cc2aadf72fe14517f50762fc634794df51ad5a
/frameworks/base/core/java/android/view/ThreadedRenderer.java
|
dbed893ba88b76f88ea51d8666653458955cdc67 |
|
07-Aug-2014 |
Alan Viverette <alanv@google.com> |
Preserve surface insets when view layout is updated Also makes canvas save & restore in threaded renderer a little safer. BUG: 16654228 Change-Id: Ie0d49450ed408cffd0b859c08e524b6f904c77ca
/frameworks/base/core/java/android/view/ThreadedRenderer.java
|
058fc640017c90120c599d378a4cbc55668b05b7 |
|
24-Jul-2014 |
Chris Craik <ccraik@google.com> |
Connect shadow style attributes to renderer bug:15859361 Moves lighting info out of StatefulBaseRenderer, since it's not useful at record time, and only used by OGLR. Change-Id: I7ab065d02d9304afad1dc4c48597a7a621366f8e
/frameworks/base/core/java/android/view/ThreadedRenderer.java
|
514a8b88f7a57fd348dde193ee9ced0403deebd4 |
|
17-Jul-2014 |
John Reck <jreck@google.com> |
Merge "Fix root RenderNode damage calculation" into lmp-dev
|
0a97330b98dd633b58dcfff405d94476c89e867d |
|
16-Jul-2014 |
John Reck <jreck@google.com> |
Fix root RenderNode damage calculation Bug: 15888445 Change-Id: I281ec9271c9889673dcdfcb6d31e341a7b47b7de
/frameworks/base/core/java/android/view/ThreadedRenderer.java
|
57774a82f02c225941f81cf89c7a03bf899df2c1 |
|
16-Jul-2014 |
Alan Viverette <alanv@google.com> |
Ensure surfaces with insets aren't rendered as opaque BUG: 16312821 Change-Id: Ie3012c34712b7bf91a2086a6b8c922d0ebfff2e6
/frameworks/base/core/java/android/view/ThreadedRenderer.java
|
58c42c3596a2b79184c9a6b7beffc6e94cce112c |
|
13-Jul-2014 |
Alan Viverette <alanv@google.com> |
Specify light and shadow properties in theme BUG: 15859361 Change-Id: I65c9aa8c7ad7a709504c879d96158efba040d3ce
/frameworks/base/core/java/android/view/ThreadedRenderer.java
|
ccb11e183763db5cbaca96abe461adf480ed8e44 |
|
09-Jul-2014 |
Alan Viverette <alanv@google.com> |
Add API for specifying popup window shadows and shadow insets BUG: 14569120 BUG: 13211941 Change-Id: Ia21596b25a0471344d42d59377074f67fce00042
/frameworks/base/core/java/android/view/ThreadedRenderer.java
|
83601538918620e63f5a765d3eaab3a63494b454 |
|
08-Jul-2014 |
John Reck <jreck@google.com> |
Revert "Fix destroyHardwareResources" This reverts commit bac48c4d0c6f71f67074a430cd365ea2e15924b8. Change-Id: Iba8b729d5e91ca31976fc2bdf9c1dd5fdb19de9a
/frameworks/base/core/java/android/view/ThreadedRenderer.java
|
ec0c92548071801c81e02ca72b9864739e1c080c |
|
08-Jul-2014 |
John Reck <jreck@google.com> |
Fix destroyHardwareResources The UI thread needs to know whether or not the display list is valid, so bring back View.destroyHardwareResources and instead have the native side assert that View did the right thing Change-Id: I4f8dee6e9c13ec7ab520becdc5cfe20e92a76f8f
/frameworks/base/core/java/android/view/ThreadedRenderer.java
|
d907e5b1efeae51c302fd502f42a06bd16d6cae3 |
|
01-Jul-2014 |
John Reck <jreck@google.com> |
Merge "Fix onTrimMemory for HardwareRenderer"
|
f47a594f5250b1914c36423ee6b371f0b8db09d0 |
|
01-Jul-2014 |
John Reck <jreck@google.com> |
Fix onTrimMemory for HardwareRenderer Also fixes detachFunctor possibly drawing after return Bug: 15189843 Bug: 15990672 Change-Id: I64c48cb674c461a8eeaba407b697e09f72c98ce3
/frameworks/base/core/java/android/view/ThreadedRenderer.java
|
918ad523b2780e0c893f3d2a32d4ec13f2a7e921 |
|
27-Jun-2014 |
John Reck <jreck@google.com> |
More cleanups Change-Id: Id5967944b949a2aec57e4fe9fdcdc04c11b8c35a
/frameworks/base/core/java/android/view/ThreadedRenderer.java
|
f74930be6037b858f956093ce1b45bd7b6c1e48a |
|
30-Jun-2014 |
Dan Stoza <stoza@google.com> |
Merge "Surface: Add allocateBuffers to avoid render delay"
|
cd028f336e36b22dbe8cf623eb5bd2361314495c |
|
24-Jun-2014 |
John Reck <jreck@google.com> |
Fix contants; RT-enable WebView pt2 Bug: 15838537 * Fix kSync_UIRedrawRequired constant value (woops) * Tell CanvasContext that WebView is now rt-safe Change-Id: Idf15cf21115c2ca24b8ccd00025e8502864cd87c
/frameworks/base/core/java/android/view/ThreadedRenderer.java
|
5795d6408d8bf44ffe2f49a25f9f333069b59a49 |
|
20-Jun-2014 |
Dan Stoza <stoza@google.com> |
Surface: Add allocateBuffers to avoid render delay This plumbs up a new call on the native Surface object that allows the client to request that BufferQueue pre-allocate all of the buffers that it might need for rendering. This hopefully prevents allocation delays during dequeuing and reduces jank. Bug: 11792166 Change-Id: Ibeaa7475492d4ac2bcacb107ef60c6240081d8b7
/frameworks/base/core/java/android/view/ThreadedRenderer.java
|
3b20251a355c88193c439f928a84ae69483fb488 |
|
23-Jun-2014 |
John Reck <jreck@google.com> |
No-fail invokeFunctor Bug: 15513308 Bug: 15449247 Change-Id: I13a29f9c8d4975cdda6dcb33b6332c2555ff0f7c
/frameworks/base/core/java/android/view/ThreadedRenderer.java
|
a7090e0cfd7c719a6d4c03aae34f5db98754cbdd |
|
21-Jun-2014 |
Chris Craik <ccraik@google.com> |
Update 'DisplayList' vs 'RenderNode' naming in several places Change-Id: I635c6627d098b661fb9b0ba1bd42fa6d7277d287
/frameworks/base/core/java/android/view/ThreadedRenderer.java
|
b8802b1293c05a14399005aeaeb93b82ec2e2f27 |
|
17-Jun-2014 |
John Reck <jreck@google.com> |
Add atlas map pointer validation Bug: 15425820 This just prevents the crash, it's still unclear how bad pointers are getting into the map in the first place Change-Id: I3acffaae09548ec48973035b7fcf5f35606bad60
/frameworks/base/core/java/android/view/ThreadedRenderer.java
|
25fbb3fa1138675379102a44405852555cefccbd |
|
12-Jun-2014 |
John Reck <jreck@google.com> |
Move LayerType to RenderNode Change-Id: Icb79a5015cb0362b1f3a66d09007450730135a97
/frameworks/base/core/java/android/view/ThreadedRenderer.java
|
e4267ea4f20740c37c01bfb6aefcf61fddc4566a |
|
04-Jun-2014 |
John Reck <jreck@google.com> |
Even FASTER damage calculations! * Now with more native! * Less matrix math thanks to bulk-property-update support! * Zero JNI on the View.damageInParent() path! * Fully aware of RT-driven animators! * Likely full of new and exciting bugs! * But it also fixes at least 1 existing invalidate bug! Change-Id: Ie0773f85a60850ff2668370c58defef2e8aa079f
/frameworks/base/core/java/android/view/ThreadedRenderer.java
|
84a4c887a07c1c2939443f4e0587d7f1ac109e4b |
|
30-May-2014 |
John Reck <jreck@google.com> |
Remove GLRenderer Change-Id: I180286417c1a354fc7eb1eadb1884ac6add0795c
/frameworks/base/core/java/android/view/ThreadedRenderer.java
|
d72e0a339b54af0c4e731513bbad120dff694723 |
|
30-May-2014 |
John Reck <jreck@google.com> |
Re-jigger layers Bug: 15185239 Bug: 15238382 Make DeferredLayerUpdater ref counted so that HardwareLayer:finalizer() works non-crashily on leaked layers Give DeferredLayerUpdater the ability to have a layer destroyer set so that leaked layers can still be recycled on the RenderThread Order layer updates based off of pushLayerUpdate() calls to fix issue with nested layers Change-Id: I4449cee607f7e5126e02fed7464cf48038e3dfdf
/frameworks/base/core/java/android/view/ThreadedRenderer.java
|
fe5e7b7346a54537b980796ceeca66bfdbd05561 |
|
24-May-2014 |
John Reck <jreck@google.com> |
Enable debug stuffs Bug: 14596762 * dumpsys gfxinfo implemented * profile GPU visual_bars implemented Change-Id: Icb948a9d5af5989b5615504d0d76ade64b93ef5b
/frameworks/base/core/java/android/view/ThreadedRenderer.java
|
e1628b7c6fc3822fa83cf02028ce8ad67abb0afe |
|
24-May-2014 |
John Reck <jreck@google.com> |
Implement FlushCaches TODO Change-Id: Id05429e98ffe0858275b32c41fb215c1d8d930b2
/frameworks/base/core/java/android/view/ThreadedRenderer.java
|
a5dda645da738da7b4ae15e28fa7d93d3b04b94f |
|
23-May-2014 |
John Reck <jreck@google.com> |
Bag of scheduling tweaks Bug: 15118640 * Prevent over-stuffing the queue by dropping frames * Prevent double-drawing in one pulse by RT by deferring vsync registration until post-draw so that it catches the next vsync pulse instead of the current one * Bias vsync race condition towards the UI thread * Fix queueDelay to actually work Change-Id: Ibf584258bd93ebcbba058bd976dc8b307f1c6155
/frameworks/base/core/java/android/view/ThreadedRenderer.java
|
797b95b26bbb7557678af78b9a2a61830158920f |
|
21-May-2014 |
Chris Craik <ccraik@google.com> |
Define light position (using new lighting spec) in Java Also updates the relative shadow strengths. Change-Id: I6cac7275d38df98aea9f0dda463cd7207102986a
/frameworks/base/core/java/android/view/ThreadedRenderer.java
|
86faf9ec3edc24a9d04548e151bca3a2510396a4 |
|
19-May-2014 |
John Reck <jreck@google.com> |
Workaround double-translate bug Bug: 15065005 Change-Id: Ie0f77c6ea13eebf3508df7513b79efaa65d31de0
/frameworks/base/core/java/android/view/ThreadedRenderer.java
|
d5b2ec4ff15f828298290534c9d322c82f8d130c |
|
18-May-2014 |
Alan Viverette <alanv@google.com> |
Fix onHardwarePreDraw call in ThreadedRenderer Change-Id: Ia3852cbd7afc21e9f57824e9f207ba02acae12a7
/frameworks/base/core/java/android/view/ThreadedRenderer.java
|
66f0be65a1046f54ddce0498b242c1fa0776b1ea |
|
13-May-2014 |
John Reck <jreck@google.com> |
Wire up texture atlas Bug: 14590563 Change-Id: I2dffbc089dc801f5fb2d1c8fd38e1c71d160e110
/frameworks/base/core/java/android/view/ThreadedRenderer.java
|
315c329544d7c593d1072b071cbb92d9afe74021 |
|
10-May-2014 |
John Reck <jreck@google.com> |
Add TimeInterpolator support to RNA Bug: 14678626 Change-Id: I6554e7fcd42c49fac3618ca792083bb68e358f55
/frameworks/base/core/java/android/view/ThreadedRenderer.java
|
ef27453cf71e331e4076df5e5c665b06d5c3e050 |
|
07-May-2014 |
John Reck <jreck@google.com> |
Merge "Cleanup attachFunctor"
|
832b151465ed81c43e59891d5eebe62128b21fbb |
|
07-May-2014 |
John Reck <jreck@google.com> |
Cleanup attachFunctor Bug: 13961296 Change-Id: Id48d11bfcc234afd1fd7e4fdd409a50e7208c81d
/frameworks/base/core/java/android/view/ThreadedRenderer.java
|
63a06673253914510bbeebd500655008682dade1 |
|
07-May-2014 |
John Reck <jreck@google.com> |
Implement TODO(romainguy) Bug: 14277445 Change-Id: Id52d6f7fcc023000adcc440bd4da67d9a673536b
/frameworks/base/core/java/android/view/ThreadedRenderer.java
|
e4280baaa709c74d86cf6a389a4674ca665f5af6 |
|
06-May-2014 |
John Reck <jreck@google.com> |
Implement loadSystemProperties Bug: 14087580 Change-Id: I7153f38c70b554a78c56a0e794da929fc401ee7a
/frameworks/base/core/java/android/view/ThreadedRenderer.java
|
f9be77940e365036fecd8cc0e491e8545c34e79b |
|
03-May-2014 |
John Reck <jreck@google.com> |
Make RenderNodeAnimator and WebView play nice Change-Id: Ifaefcf510b2d377663fc86f60608d6ec9be8329a
/frameworks/base/core/java/android/view/ThreadedRenderer.java
|
18f16e6fba74eda173e1e7c869e6e2e2acc073ff |
|
03-May-2014 |
John Reck <jreck@google.com> |
TIME LORD! Bug: 14444180 Change-Id: I68bec3807c4d1c88d5af1aec2fe6907d60b5f2f3
/frameworks/base/core/java/android/view/ThreadedRenderer.java
|
e45b1fd03b524d2b57cc6c222d89076a31a08bea |
|
15-Apr-2014 |
John Reck <jreck@google.com> |
RenderThread animator support Change-Id: Icf29098edfdaf7ed550bbe9d49e9eaefb4167084
/frameworks/base/core/java/android/view/ThreadedRenderer.java
|
ae738a7a45d710115f8aedacf218d4bfa0b25698 |
|
28-Apr-2014 |
Bo Liu <boliu@google.com> |
Add invokeFunctor call to ViewRootImpl BUG: 13961296 Change-Id: Ief8eea0b4c79a64ea76d75daaec176f1b8438581
/frameworks/base/core/java/android/view/ThreadedRenderer.java
|
05e858400adee0f579b1e27e321b48bd55843fbd |
|
23-Apr-2014 |
John Reck <jreck@google.com> |
Add missing try/finallys Change-Id: I32be65f5a46768449f26b69f72f502acd1e72769
/frameworks/base/core/java/android/view/ThreadedRenderer.java
|
6313b9259d37b59f3402058e197637aa3014516c |
|
17-Apr-2014 |
John Reck <jreck@google.com> |
Clear mIgnoreDirtyState after draw Change-Id: I6dfb39e0ebc9a5732678d735d9bc5e8813926096
/frameworks/base/core/java/android/view/ThreadedRenderer.java
|
fae904d63947fe1687d1d44be29234cc3d538f24 |
|
14-Apr-2014 |
John Reck <jreck@google.com> |
Fence on destruction Bug: 14052927 destroyCanvasAndSurface() needs a fence as when it returns the underlying BufferQueue is going to be released from under the render thread. Change-Id: I0147a1d5ec5adf0239c761ef22f65cd8c8a137df
/frameworks/base/core/java/android/view/ThreadedRenderer.java
|
bc0cc0220b830df54c8ed41d0b53daffd7f6c991 |
|
12-Apr-2014 |
John Reck <jreck@google.com> |
Support onHardwarePostDraw in ThreadedRenderer Bug: 13958485 Change-Id: Ie9c7af7cee582850a7f0a3d891aa3685c230cfc7
/frameworks/base/core/java/android/view/ThreadedRenderer.java
|
d3d8dafc2f61fb118c060720b52684c59303f3db |
|
11-Apr-2014 |
John Reck <jreck@google.com> |
Make attachFunctor blocking Bug: 13930200 Change-Id: I9b0cf92fd16bb30baa09b6f8d7ae22a8b2a7fd80
/frameworks/base/core/java/android/view/ThreadedRenderer.java
|
8e1f918738abf70a4dc86dbb12b386a9deea37f8 |
|
10-Apr-2014 |
John Reck <jreck@google.com> |
Merge "Switch DisplayListData to a staging model"
|
8de65a8e05285df52a1e6f0c1d5616dd233298a7 |
|
10-Apr-2014 |
John Reck <jreck@google.com> |
Switch DisplayListData to a staging model Bug: 13912977 Change-Id: I5b2f664e797be22a58300964f57ceb4fab60528c
/frameworks/base/core/java/android/view/ThreadedRenderer.java
|
f7d9c1dc84671d4e99657ef071d275700d85bb11 |
|
09-Apr-2014 |
John Reck <jreck@google.com> |
Fix ThreadedRenderer.setEnabled() Bug: 13914116 Fixes lifecycle issues around setEnabled where ThreadedRenderer was reporting as being enabled before it had a Surface. This is incorrect. Also fix some EGL lifecycle issues Change-Id: I12ebb279707f9b533a570b61d68735d858b560bf
/frameworks/base/core/java/android/view/ThreadedRenderer.java
|
0ed751dd22a98f0c1f637570c5775b4f5e97d895 |
|
08-Apr-2014 |
John Reck <jreck@google.com> |
Don't make HardwareRenderer calls in the finalizer Bug: 13902530 Don't try to set the RenderNode's displayListData to 0 in the finalizer. The HardwareRenderer may have already been finalized and it's not valid to make calls into HardwareRenderer from another thread anyway. The fix is that now that RenderNode is a refcounted object, this step can be skipped entirely. The RenderNode destructor handles deleting its DisplayListData if it needs to. Change-Id: Ieab75575b98c24678a531dd5aa41a2d0afde0eef
/frameworks/base/core/java/android/view/ThreadedRenderer.java
|
28ad7b52e038ef0cdd89f753d9839444a434b299 |
|
08-Apr-2014 |
John Reck <jreck@google.com> |
Fence on draws that are reported Change-Id: Ib2ec16cbda40f40df1710bdc868869ea8301f17e
/frameworks/base/core/java/android/view/ThreadedRenderer.java
|
0d1f634f4b5e1bb37aa51777efb6a68619488d01 |
|
29-Mar-2014 |
John Reck <jreck@google.com> |
Add invokeFunctor Change-Id: I09e675d3e02e3e528642175ada00b2b17fab7652
/frameworks/base/core/java/android/view/ThreadedRenderer.java
|
f666ad7046c0b1b255835f75aeb7d1391067df93 |
|
15-Mar-2014 |
John Reck <jreck@google.com> |
Rename DisplayList->RenderNode Change-Id: Idcca6f26ba6282594789962f5edb3ed53a290fef
/frameworks/base/core/java/android/view/ThreadedRenderer.java
|
be34f2f3b340196426bdf558b28951359a4d84fa |
|
10-Mar-2014 |
John Reck <jreck@google.com> |
DisplayList lifecycle changes Bug: 13360343 Change DisplayList to be more forgiving with weaker lifecycle requirements. Is more self-managed with a strong reference to the renderer it needs Also fix naming mismatch Change-Id: I5c89453a72a52954f6f959f0846199705dbb6476
/frameworks/base/core/java/android/view/ThreadedRenderer.java
|
44fd8d24f761f82d21e9b00932648a1b6bf91449 |
|
26-Feb-2014 |
John Reck <jreck@google.com> |
DisplayList overhaul Change-Id: I53418d580c98f706e971545cff81b9921c12cc5f
/frameworks/base/core/java/android/view/ThreadedRenderer.java
|
19b6bcfd83eb7fb92ebd06d2fec89e308311f1d0 |
|
15-Feb-2014 |
John Reck <jreck@google.com> |
Support HardwareLayers in RenderThread Also has a few HardwareLayer lifecycle fixes Change-Id: I6308cb05f8f199eed72189ace768013a46815941
/frameworks/base/core/java/android/view/ThreadedRenderer.java
|
fc53ef27793a39e9effd829e9cae02a9ca14147e |
|
11-Feb-2014 |
John Reck <jreck@google.com> |
Implement missing safelyRun() on ThreadedRenderer Change-Id: I14b75f37a13fabaa759a51369190dbdc84087c4b
/frameworks/base/core/java/android/view/ThreadedRenderer.java
|
04fc583c3dd3144bc6b718fcac4b3e1afdfdb067 |
|
06-Feb-2014 |
John Reck <jreck@google.com> |
Refactor HardwareLayer Defer all the things! Groundwork to allow hardware layers to work in a renderthread world Change-Id: Ib3aa47525f393083621254a743dbaa6352f933bd
/frameworks/base/core/java/android/view/ThreadedRenderer.java
|
36bef0bf30d6bae48cf3837df351075ca4fce654 |
|
20-Jan-2014 |
Ashok Bhat <ashok.bhat@arm.com> |
AArch64: Make graphics classes 64-bit compatible This a merger of two commits submitted to AOSP by the following authors: ashok.bhat@arm.com, david.butcher@arm.coma craig.barber@arm.com, kevin.petit@arm.com and marcus.oakland@arm.com Due to the very large number of internal conflicts, I have chosen to cherry-pick this change instead of letting it merge through AOSP because the merge conflict resolution would be very hard to review. Commit messages below: ================================================ AArch64: Make graphics classes 64-bit compatible Changes in this patch include [x] Long is used to store native pointers as they can be 64-bit. [x] Some minor changes have been done to conform with standard JNI practice (e.g. use of jint instead of int in JNI function prototypes) [x] AssetAtlasManager is not completely 64-bit compatible yet. Specifically mAtlasMap member has to be converted to hold native pointer using long. Added a TODO to AssetAtlasManager.java to indicate the change required. Signed-off-by: Ashok Bhat <ashok.bhat@arm.com> Signed-off-by: Craig Barber <craig.barber@arm.com> Signed-off-by: Kévin PETIT <kevin.petit@arm.com> Signed-off-by: Marcus Oakland <marcus.oakland@arm.com> ================================================================== AArch64: Use long for pointers in graphics/Camera For storing pointers, long is used in android/graphics/Camera class, as native pointers can be 64-bit. In addition, some minor changes have been done to conform with standard JNI practice (e.g. use of jint instead of int in JNI function prototypes) Signed-off-by: Ashok Bhat <ashok.bhat@arm.com> Signed-off-by: Marcus Oakland <marcus.oakland@arm.com> =================================================================== Change-Id: Id5793fa0ebc17ee8b1eecf4b3f327977fdccff71
/frameworks/base/core/java/android/view/ThreadedRenderer.java
|
4f02bf4eef6af47f35c70c4dda5b7b9523d89ca0 |
|
04-Jan-2014 |
John Reck <jreck@google.com> |
Native-side proxy Remove RemoteGLRenderer Remove reflection-based control Change-Id: If17c2bbb61c7141986d88c4763def77ed1074985
/frameworks/base/core/java/android/view/ThreadedRenderer.java
|
3dfe19f72cbd95b201e89376ae1810c5c9229b00 |
|
13-Dec-2013 |
John Reck <jreck@google.com> |
Add drawGlFunctor support to RenderThread Add gl functor to the prototype support to allow webview team to begin playing with RT Also create RemoteGLRenderer to avoid needing to make breaking changes to GLRenderer. Currently the differences are mainly around mFunctorsRunnable and how it queues itself up Change-Id: I1ca39056189b68cd7b8dded4dd5889d331f6660a
/frameworks/base/core/java/android/view/ThreadedRenderer.java
|
cec24ae16e9a0a7c3075f1a8d9149bb7fb3813fc |
|
05-Nov-2013 |
John Reck <jreck@google.com> |
RenderThread work Hacky prototype needs a private API to enable Change-Id: I21e0ddf3cdbd38a4036354b5d6012449e1a34849
/frameworks/base/core/java/android/view/ThreadedRenderer.java
|