Skip to content

Releases: rive-app/rive-android

10.5.0

24 Oct 14:53

Choose a tag to compare

  • feat(Android): Process decoded images (#10755) 1441bcdf13 e8f2efb
  • feat(Android): Multitouch and pointer exit support (#10848) 9bcc4a6d11 0cab255
  • chore: add support for zero width spaces as word breakers (#10899) c804e738de eba1df5
  • fix: set dataContext to nullptr when unbinding (#10898) 684c603b1a 38f6dc4
  • fix(vulkan): Fix image/gradient rendering on some Android devices (#10894) d8e7fbdb7b 79c101c
  • chore(vk): Remove a redundant interlock mode from the draw pipeline key (#10887) 979c4feb82 fd23ee7
  • Add fire events to player (#10758) 15693e8ff1 0a94dc5
  • fix: when the artboard is checking for ancestors it should return its… (#10883) d5b8889321 6507f4d
  • Add gamma texture test (#10856) e9b6d8a64e 5a7b6f7
  • fix(gl): Fix a PLS regression on Oppo & Vivo (#10861) 33c9ac9f95 55f28e2
  • chore: add support for assigning dynamically loaded images from listeners (#10857) 8df6209168 e860064
  • feat: Merge fragment shaders for atlas blits & image meshes (#10852) 9794d81296 1a6a772
  • add drag event type support (#10807) 2f4ec0a570 d0bc546
  • fix(build): Correct tracking of intended target OS in premake (#10853) c7a0379ab3 6840333
  • fix(vk, android) Workaround for Vulkan driver pipeline linking issues (#10756) 39741ac0c8 4456db7
  • fix(runtime): Address issues requiring double advance (#10842) 5dd872763b 4117798
  • Fix path extraction (#10823) 76a19909c5 e05e941
  • feature: add support for pausing nested artboards (#10833) 0a3cb5ac3e 587b1ae
  • feat: Scripted Enum (#10829) 650a980d41 984ef32
  • refactor(renderer): Generalize fixedFunctionColorOutput (#10813) 396c65832e 3df3293
  • feature: add scroll threshold (#10824) 284c801953 43070ec
  • fix(renderer): Fix outputs in the shader Makefile (#10822) 53bc4a7cbb a0fe04c
  • feat: Scripted Boolean (#10804) cb93fbb138 a8cc2a5
  • feat: Add PLS backings to the RenderContext resource manager (#10793) 2fe0021c07 a8b9948
  • feature: add support for artboards as conditions (#10788) dd59b347fb e5b6ea8
  • fix: add dirt to data bind after being used on listener (#10789) 4149563244 b3dbf6c
  • Get the Linux unit tests building and running in the GitHub workflow (#10761) a0b890f273 c014f52
  • Scripting support in CPP (#10685) a34d1ffe15 3b28b82
  • chore: automatically bind view model trees to dependents when any of … (#10782) ae01b2a8c3 4d22eeb
  • fix(runtime): Font weight layout measure fix (#10766) 0ae985862d 50ce03d
  • fix: interpolator in cpp runtime (#10752) 01c1b43af9 1ca3461
  • feat(gl): Add scissor to GLState (#10748) a3f6433c00 acff899
  • fix(rive_native): front called on empty vector (#10706) 35953858c3 9e11038
  • feature: scripted converters (#10711) a40f07ee54 5d8552b
  • feat(Unreal) Mac RHI Atomics (#10753) 50e69c8fde 019b387
  • fix: handle duplicate data binds on export and on clone (#10751) cd11dd2e60 d40c25c
  • fix(unreal): Sometimes would draw black when should be transparent. (#10747) 64f8da473b 1d86e72

10.4.5

08 Oct 16:10

Choose a tag to compare

  • data bind artboards rcp file (#10214) c542b9b7ac 945ee7e
  • fix(runtime): Invalidate stroke effects on ForegroundLayoutDrawable (#10733) 2f7bed5eb1 07f374b
  • fix: keep unprocessed data binds until they are consumed (#10732) f4b36c2d03 87ba276
  • refactor: Start splitting shaders into separate files (#10698) b73733a052 49839cf
  • feat: Add a mechanism to select the integrated GPU on Windows (#10713) 986c92af9a cf45485
  • Add mip map lod bias and bilinear types (#10701) 608fb2781f 64428c5
  • Restructure Vulkan bootstrapping (#10721) 9c66afdd2a 968bcc5
  • cpp(fix): Update scroll friction at edges (#10719) 36a2a4b4db b34e41b
  • fix: cache and reset pointer events (#10707) fd286173b1 3eb652a
  • fix: Check for nullptr in Axis::offsetChanged (#10708) d79a44ba26 fc30d7a
  • Ue fixes (#10705) e6ba6e329a b04139c
  • fix(vulkan): Correctly support Vulkan 1.0 on Android (#10679) 8e0fadf978 df2b51a
  • chore: Rename draw_clockwise_* shaders to draw_clockwise_atomic_* (#10689) 7e676124de 45a3be6
  • Feature: add support for multitouch (#9581) 12764e9a3b 289cdf0
  • feature: add toggle to make scroll constraint not interactive (#10680) 0b069a9936 8012f60
  • chore: improve iteration of data bound list (#10625) 8385ec62ed 49a1049
  • chore(Android): AGP bump to 8.13 (#10678) b74430e2bd 0d621fe
  • test: Add an android_gms_vulkan run to browserstack (#10669) f7613dbf35 d6c4da6
  • fix(vk): Properly preserve render targets when using MSAA (#10630) 5df1a42463 7a183cf
  • fix(vk, d3d12): Properly apply draw batch barriers on pipeline failures (#10667) 5efb71a88a 964d942
  • chore: add pointer exit support (#10595) d999d6a22c 6aed21e
  • scripting: color and string view model property (#10663) 3acbdfcba7 576e0ac
  • feat: Integrate glfw into the premake build (#10656) 653c8c6040 1275d64
  • Fix MSVC toolchain path_fiddle builds (#10661) 0f0d7c5f81 8cfae17
  • Add loop option to GM (#10649) 0121fd0174 47f41cd
  • Fix dangling pointer in pathfiddle (#10654) 439848a8d9 d35444a
  • feat: Web/android testing tweaks and features (#10621) 8cd4d40440 af10c3c
  • fix(vulkan): get MSAA working on systems without ClipDistance support (#10624) d1c02a29aa 82793d5
  • fix: path_fiddle now shuts down without crashing on Vulkan (#10631) 4d3770866f 69e5b8d
  • Use markHostTransformDirty instead of markHostingLayoutDirty when appropriate (#10632) af3f673d77 7d26746
  • feature: make override properties bindable (#10627) 540fab92b6 1b0da77
  • fix(webgpu): Fix Y orientation on GL zero and nonzero FBOs (#10623) 454b0d2db1 7480362
  • Add --core command-line option to path_fiddle (#10619) ec8b00c206 543edbc
  • fix: link rml and then rive for rml cli (#10620) 48b39fe42e d90ade3
  • (fix): Artboard list item hit order (#10618) f95ef8fdc5 e40e8c4
  • Add asynchronous shader and pipeline creation to Vulkan renderer (#10591) 3b6e2b6bc4 f903a2c
  • chore: Add start/end/offset properties to List follow path (#10606) b2aed6839d 1244226
  • fix(UAT): listener with triggers work correctly (#10614) c42858eb74 e16cae5
  • feature(scripting): artboard:advance should return boolean (#10582) 665b84f01d 875294d
  • Add silvers for follow path (previously rive_flutter goldens) (#10611) 67f20bfc31 53ce126
  • Exclude items from scroll snap if hidden (#10602) 0704ed0f7e fa6e16f
  • chore: compare previous list to new list (#10604) 9072781123 dfb33c0
  • feature: prioritize viewmodel direction from flag (#10514) 4d8e0a9719 5fb5281
  • feat(webgpu): Wagyu 39 (#10603) 7ac418480c daee0b7
  • feat(wgpu): Add a wgpu backend to the test suite (#10586) 48bb6538bd ec500db
  • fix: Vulkan validation on desktop (#10600) 7220599bb1 7796f08
  • Add profiler Tag macro (#10593) 859d6283c9 9ad2642
  • Some vulkan testing fixes (#10597) 21af6591da 3f1ea49
  • fix: target to source converter (#10584) 9366e9acea 5500888
  • fix(webgpu): Revert the pls2 workaround for PowerVR 1.10 (#10585) fa6ac73d94 b48af58
  • fix(gl): Apply ANGLE workarounds in WebGL as well (#10581) 1931264636 53c6c94
  • feature: add support for color interpolation in converter (#10545) b0f6516eec 1618701

10.4.4

12 Sep 19:34

Choose a tag to compare

  • Fix D3D warning (#10580) a3e22e1322 1c645af
  • feature: scripting prevent infinite exec (#10570) 3afebf3d4f 0187637
  • fix(gl): Only do memory barrier workarounds on Mali (#10575) 8494dda792 f35518f
  • Fix endcap flickering bug (#10547) 1421e05aaa e27ab45
  • fix(gl): Re-enable pls on ARM (#10569) 8f9cdd5cec d38b4e0
  • fix(gl): Add missing barriers for feathering with image atomics (#10565) 7e8588484d 4c66324
  • fix(gl): Workaround an ARM MSAA synchronization issue (#10568) 848415ed2f 6ab4a36
  • fix(apple): better release and null checking on fallback fonts (#10562) e0baf4e1fa 83b3936
  • editor(fix): Fix children collapsed issue when showing/hiding layout (#10566) 15a6eedc71 d7810a7
  • fix(gl): Drop EXT_shader_pixel_local_storage (#10556) 8df4ac1a56 6e2aa9d
  • Add high level shader debugging for RenderDoc debugging (#10550) 46e6f66b94 afd5451
  • fix(Unreal): Updated UE plugin to no longer do deprecated things (#10555) c799a27dfd 9316fe7
  • Add keyboard toggle to PathFiddle to run updates at fixed 120fps or unlocked (#10548) 576b235996 3a1a36b
  • Expose localBounds in CPP (#10537) 0ed12de980 07fe0ee
  • More profiling markers to runtime (#10549) e58f44d5ec 4bb4a5f
  • feature: Scripting Revision Manager (#10474) 3cdbce02cb 2dd381d
  • fix: GL async shader compilation improvements/fixes (#10544) 2d7b1b788f 12d7437
  • fix(gl): Reinstate the pls2 workaround for PowerVR drivers < 1.13 (#10524) dd4dd9f326 c24ff91
  • feature: add support for different random modes (#10538) dab3b5994d 25c4e13
  • fix(ios):fix a metal API validation error on iOS simulator. (#10539) 5d0cf127b2 8edd15a
  • Rml initial work (#10542) 199af78f1e 141d8bf
  • fix(runtime): force keep going on 0 advanceAndApply (#10504) 0152183944 3fde267
  • WebGPU: Added way to pass WGPUCommandEncoder to RenderContextWebGPUImpl::flush() function (#10530) b5a50b8118 db4bc22
  • fix: Update image texture usages for wagyu mipmap generation (#10529) 65829bc47a ac293ff
  • wagyu 38 (#10528) f03e236489 c377717
  • fix(gl): Validate GL extension functions load before using them (#10526) 300809d5bf edec2b1
  • fix(gl): Limit the tess/grad instance counts on Mali/PowerVR (#10520) b0646c5c97 c55d951
  • restore skipping data bind values (#10516) 049120501f c14182c
  • fix(gl): Remove EXT_shader_pixel_local_storage2 workarounds (#10519) 84075d7989 91537a7
  • fix: Work around a PowerVR GLSL compiler bug (#10518) 6062012b6a 459b3c2
  • fix: Tag RIVE in NSLogs (#10510) ce87aac5e0 ec04aa0
  • fix: revert skipping collapsed data bound properties (#10507) fba405c288 51ec9b7
  • fix(ios): Don't call abort when the unexpected happens. (#10472) 1adc508ecd 5d820c4
  • Fix the goldens by adding a missing define to the android runtime (#10525) 9d70fea69b 9e80b8e

10.4.3

03 Sep 21:34

Choose a tag to compare

  • fix(Android): RiveArtboardRenderer and Artboard lifetime fixes (#10496) 7c7ce460f4 a222403
  • feature: add auto generated state machine on artboard initialization (#10420) 6c147cb33f 732237b
  • feature: console entry can be clicked to open script file (#10484) b555c57747 ca808c2
  • feat: Add fallback AtlasTypes that don't need float color buffers (#10475) 5e6f683b9e 475543a
  • skip collapsed objects from running data bound values (#10476) 7868b2bb71 22a0edf
  • Improve Layout display handling incorporating it with isCollapsed (#10473) 0389f47d3d e97092f
  • chore: add collapse and solo test (#10471) c903296458 40251de
  • Work around the Galaxy S22 rendering issue (#10468) 3dcdb47683 1b57eb1
  • fix: create a copy of the events list to avoid clearing immediately a… (#10461) 70108fd1a6 6b01911
  • refactor(UnrealPlugin): Unreal Rewrite Tech Preview (#10382) d4a7f91ee5 09f08b3
  • feat: Re-enable GL_KHR_parallel_shader_compile on ANGLE (#10465) 7bf33dc199 ba5a240
  • feature: adding scripted list property (#10457) 5c83e3cd4a 8076399
  • fix: Disable KHR_parallel_shader_compile on ANGLE (#10458) bac33a5808 2f8affc
  • feat: Update goldens and player to deploy in the browser (#10453) 827077b899 4834ed2
  • Update our renderer premake vulkan version to 1.4.321 (plus another build fix) (#10452) c26e82adc9 90e2407
  • Scripted artboard inputs (#10449) 4a7bec6316 a827b57
  • add support for property multiplier on vertices (#10436) 500cb42240 ab9ac63
  • Improve handling of Yoga exceptions in editor (#10438) b39218b476 faebc30
  • Nnnnn skip properties from recording to journal (#10437) 036b51345e b23d6e9
  • feat: add support to format numbers with commas (#10445) cf47b03e54 7a9bd02
  • Don't perform shape AABB hit tests when walking up parent tree (#10444) d8beb0c4ea cb804da
  • chore: unwrap rive::File for rive_native (#10442) 1fa625f5c9 ae2f1c7
  • feature: making rive::File rcp (#10439) 213f07ec13 53d5239

10.4.2

22 Aug 14:09

Choose a tag to compare

Fixes

  • Includes a fix for a rare Concurrent Modification Exception crash when both iterating and modifying view model instance properties
  • Upgrades the project Android Gradle Plugin version
  • Enables tentative Address Sanitizer support
  • Includes renderer fixes

  • Artboard List items follow path (#10417) 68a608cfad cdcfaae
  • Add background draw shader loading to GL, D3D11, and D3D12 (#10388) c681049169 f84ffb8
  • Add shaders to SLN for renderer (#10435) 5188bbb7b1 8b98cc7
  • feature: add support for list based paths (#10409) fb374dcad4 0016738
  • fix: skip pad conversion if text is empty (#10418) b00368b1c4 05c1f87
  • Runtime profiler base (#10391) 4171e09f80 702c43a
  • feature: hydrogen search improvements (#10412) f6d5d55b26 5e161a2
  • feat(gl): Start using the EXT_shader_pixel_local_storage2 API (#10410) b16a5e5d70 e76450f
  • Respect hug with all nested artboard and artboard list types (#10403) 7f3ed82d57 41a4954
  • Add support for non-layout constrained Artboard Lists (#10384) 520e01a0f2 db39ce4
  • fix: use word joiner instead of line separator for breaks (#10381) cd13ab364d 3450fa8
  • fix: trigger adds dirt to listeners only when it is not reset (#10377) 760472b069 0a8fb3a
  • Nnnnn add datatypes to viewmodel instances (#10357) 3b0e14f50f e3c8221
  • feat(RiveRenderer): Gamma Space Conversion (#10361) a61202f1c4 bc7bbc5

10.4.1

12 Aug 17:04

Choose a tag to compare

Fixes

This release refactors how the JNIRenderer object in the Legacy API is cleaned up, solving an existing issue with potential ANRs.

It also solves an issue specific to Mali T720 devices.


  • fix: dispose the renderer without blocking the UI thread (#10331) 2882eeb56a f5e10d3
  • feature: add support for custom enum properties (#10345) 21b8ce84f4 c121d7a
  • fix: Work around a bug in the Mali T720 compiler (#10340) 59aa55b5d0 727cc5f
  • fix: treat artboard as layout for hit testing inheritance (#10341) 583274d7b9 6d0e638
  • feature: add support for custom enum properties (#10345) 21b8ce84f4 c121d7a

10.4.0

07 Aug 14:30

Choose a tag to compare

Features

This release adds image, list, and artboard data binding support, matching the available options in the Rive editor.


  • feat(Android): Image, list, and artboard data binding (#10052) 4ab2878965 2fb4fc5

10.3.3

06 Aug 20:51

Choose a tag to compare

#Fixes

This release primarily fixes an issue with nested events firing when they shouldn't.


  • fix nested events conflicting with parent events (#10326) 51f1f66e31 b41d995
  • add support for view model trigger based listeners (#10323) e7ef71b568 7acee2b
  • add advanced phase to render loop (#10318) af18705be2 ebf5118
  • support setting bindable artboard from data bind (#10317) 559f237078 250aae8

10.3.2

04 Aug 12:18

Choose a tag to compare

Fixes

  • setRendererType was sometimes marked as a missing function in API <= 25. This has been improved so that it can be resolved.
  • Add the new Compose files to ProGuard keep rules.

  • fix: function visibility modifier for API <= 25 1aa92f81ca c87c060
  • add support to clear data bound artboard by setting the value to null (#10254) a5a679a966 649512d
  • fix: Include new packages in ProGuard (#10256) 001f9eb491 4beb877

10.3.1

28 Jul 11:59

Choose a tag to compare

Fixes

Solves a lifetime race condition with file asset loaders. This would sometimes manifest as a SEGV when tearing down the Rive view. As the C++ runtime exposes them as RefCnt, we now correctly associate their lifetimes with Kotlin and dereference rather than delete the object.

⚠️ Also correctly includes RiveUI and other Compose related classes initially scheduled for 10.3.0. Please use this version and above instead. The files were not included due to the release being cut before downstreaming had completed.


  • chore: refactor scripting api (#10218) 85aa06d5db b1fc7bd
  • fix: lifecycle memory management (#10237) 6a23aeed19 bf69c63 (contains the Compose work after a downstream correction)
  • feat: add support for artboard style overrides in lists (#10212) ca58369fb6 2d50ec9