Commit a1b7df7
feat(flutter): bind custom viewModelInstance to BindableArtboard (#11893) 1008488b6d
* feat(flutter): bind custom viewModelInstance to BindableArtboard
* chore: formatting
* test: add golden tests
* chore: clang
* test: null check first
* fix: store runtime VMI object on BindableArtboard to avoid early GC
* docs: add comment about lifetime for VMI on setting bindable artboards
fix(runtime): store relinked view model instance on nested artboard (#11931) 76c7232fa1
feature: add support for sending keyboard inputs to focused elements (#11924) 19486d13d0
Add support for setting ViewModel value using Listeners and comparing ViewModels in Transition Conditions (#11917) 46a089fc12
ViewModels can now be used in the following ways:
Setting ViewModel properties of type ViewModel to either: 1) another ViewModel property of type ViewModel or 2) the ViewModelInstance of the state machine's current data context
Comparing 2 ViewModel values in a transition condition using either 1) 2 different ViewModel properties of type ViewModel or 2) a ViewModel property of type ViewModel with the ViewModelInstance of the state machine's current data context.
chore: skip focus nodes that are collapsed or fully transparent (#11916) 57139fa664
* chore: skip focus nodes that are collapsed or fully transparent
Nnnnn library export fixes (#11884) 68176685ac
* ensure default instance is always exported and add all properties if no instance is
* reset isAdvanceActive when a script is initialized
feat(vkcwa): Implement advanced blend (#11858) 37c39e85d4
To implement advanced blend, we use an input attachment for the color
buffer and require barriers before paths with advanced blend, but are
able work out overlapping fragments within a single path with atomics
instead.
feature: enable data binding view model properties (#11867) 9325025e52
Adds support for data binding view model properties.
This feature is only available for view model instances so far, to support binding view models properties to stateful components.
It should be extended in a separate PR to state machine listeners and conditions.
Pass Layout Animation interpolator values into NestedArtboards and ArtboardComponentLists (#11877) c3cd2254cc
Adds support for properly passing layout animation interpolators down into nested artboard layouts and artboard component lists. For the Dart to C++ bridge, we only pass the interpolator values (rather than having to do extra work to generate C++ interpolators that need to get referenced from Dart) and let the interpolator be instanced in the binding. Then using those values, the C++ side can hold onto its own interpolator and cascade it down.
Bind ViewModelInstanceList with Stateful Components (#11878) e4abf64f44
fix: correct emoji image buffer size and dual-presentation fallback (#11876) 7640c5a47a
feature: add support for removing all elements from a view model list (#11872) 354acb8533
feature: add support for removing al elements from a view model list
feature: add support for multiple inputs on listeners (#11862) 501b7f488c
* feature: add support for multiple inputs on listeners
feature: emojis! (#11857) 89305a5fed
* feature: emojis!
* fix: pr feedback
* fix: missed font asset
* fix: more missed fonts
* feature: harfbuzz 13.1.1
* fix: removed too much
* fix: cleanup
* fix: goldens changed by text
* harfbuzz: even more removed
* fix: re-add harfbuzz feature
* chore: rebaseline goldens
* chore: strip HB_NO_VAR_COMPOSITES
* more font tests
* chore: rebaseline d3d atomic
* chore: pixel6 goldens rebaseline
* fix: test path
fix(runtime): Don't early out when processing KeyedObjects with missing objects (#11856) 3eb4211852
Previously when a LinearAnimation ran onAddedDirty on all of its keyed objects, it would return early if any keyed objects returned a status other than OK (this could happen in cases where the keyed object itself doesn't validate, for example, when a constraint doesn't have a target, and that constraint has a keyed property on the timeline). This PR updates the flow to instead store those keyed objects and after all keyed objects are processed, it removes them from the list, so they will not be processed in future calls to apply().
Component Input/Output Properties (#11854) 3034940065
Follow up to the Stateful Component Properties PR, this adds 2 things:
Adds a bitfield onto ViewModelProperty that allows properties to be set as input/output/both/none. I'm not sure we're going to use "both" but i put it in there in case. Currently its disabled, and the VM property has to be either an input or output. When a stateful Component's artboard is selected, we display an inspector where you can add ViewModel properties as inputs or outputs.
Makes ViewModel artboard and image properties bindable and animatable. ViewModel lists have a different mechanism, and will require additional work not in this PR.
fix(apple): support language hints, create font from tables (#11807) 30fcb84a44
feat(renderer): Enable reordering on clockwise mode (#11843) b5b724b93a
Batching improvements:
marty.riv (x99): 1755 -> 978 batches
Rope.riv: 217 -> 214 batches
(Not to mention the fact that going wide and combining non-overlapping
elements will result in, ideally, less contention for the per-pixel
raster order interlock.)
Stateful Component Properties (#11800) b09cb6b29e
The second step in implementing Stateful Components. When an artboard is marked isComponent=true and isStateful=true, and is placed in another artboard, we will generate a "stateful" ViewModelInstance based on the ViewModel bound to the Component artboard and add it as a child of the NestedArtboard (this is the ViewModelInstance that will be passed down into the source artboard instance). This ViewModelInstance can contain properties that will be exposed on the Component itself through a component properties inspector. Those properties (ViewModelInstance properties) can be modified directly, via keyframes or through databinding to other ViewModel properties. This stateful ViewModelInstance can also exist outside of the Artboard's ViewModel tree.
fix: dispose state machine when destroyed (#11820) ac3a79c78b
feature: add support for replacing view model property values (#11826) c8242bfa23
* feature: add support for replacing view model property values
chore: bump to luau 0.711 (#11837) e74f1cb12e
* chore: bump to luau 0.711
* fix: clang-format
* fix: clang format
feature: RenderCanvas, a GPU texture usable as both render target and render image (#11836) 2b8d8a0b03
feature: add RenderCanvas, a GPU texture usable as both render target and render image
Focus nodes (#11814) 017a4f41e3
* feature: focus editor
* fix: missed files
* focus work
* fix: missed files
* fix: missed files
* feature: focus management in native too
* update defs
* chore: merge with latest master
* fix: targets getting lost
* feature: working on focus node propagating from native
* more focus work
* fix: crashes and add bring into focus
* feature: focusable
* fix include
* re-base focus management
* fix: dupes
* fix: mixed keys after rebase
* fix: clang format typed_children.hpp
* fix: track elements in order for focus data
* fix: crash and show focus state
* fix: add feature flag
* fix: missing override
* fix: formatting
* fix: include Font
* fix: host component and print
* fix: cast
* undo USE_ASAN
* fix: with_rive_tools
* fix: missing methods on web
* fix: tests and traversal
* fix: WASM focus scroll-into-view and callback cleanup parity with FFI
- Fix artboardUniqueId on WASM to return inner Artboard pointer instead of WrappedArtboard pointer
- Add proper callback unregistration for all WASM artboard and state machine callbacks
- Fix onRootTransform parameter naming in FFI (skip -> xAxis)
- Use Set for state changed listeners on WASM to match FFI
* fix: scroll to clip group test
* fix: scroll out of view widgets
* fix: web tests
* fix: pr feedback
fix(gl): Enable linear filtering on the atlas texture (#11818) 3312a8f159
fix: restore indexing order of view model symbols (#11817) f7c0374b8f
Simplify Renderer Sort Key Generation (#11782) dd441653df
Add a helper class to make it easier to specify the sort key elements in the render context, with the goal of making them easier to adjust as things change.
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Gordon <pggordonhayes@gmail.com>1 parent 53d173c commit a1b7df7
2 files changed
+5
-1
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | | - | |
| 1 | + | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
1 | 5 | | |
2 | 6 | | |
3 | 7 | | |
| |||
0 commit comments