This release adds support for version 2024.2 of the APL specification.
- Add "onLayout" handler for components.
- Add 'allowForward' and 'allowBackwards' properties to the event context of ScrollView, Sequence and GridSequence.
- Add 'screenLock' property to the video component
- Add text metrics to text component’s "onTextLayout" handler.
- Add -experimentalIsReactive and Reactive Conditional Inflation.
- Add 'pointerEvents' to control pointer events consumption rules.
- Add PackageManager API to handle imports.
- Bug fixes
- Performance improvements
This release adds support for version 2024.1 of the APL specification.
- Added an “onChange” handler bound variables and moved all “bind” documentation to the Bounds Variables section
- Added Visibility Change section discussing visibility change handlers. Added handleVisibilityChange component handler
- Add the Map.keys() function to Map functions
- Add pseudoLocalization to the document to enable localization-related testing of textual components
- Add maxHeight, maxWidth, minHeight, minWidth to the onConfigChange handler
- Add -experimentalHardwareAccelerationForAndroid as an experimental flag for enabling hardware acceleration for AVG rendering in Android devices as a document setting
- Add accessibilityAdjustableRange and accessibilityAdjustableValue as new properties. Add the “increment” and “decrement” standard actions
- Add 'AudioItemId' property to audioplayer extension
- Bug fixes
- Performance improvements
This release adds support for version 2023.3 of the APL specification.
- Add Log command
- Support conditional imports
- Support gradient as Frame background
- Add duration control for scrolling animations
- Add onChildrenChanged handler to Multichild component
- Add data field expansion for Sequential and Parallel commands
- Alpha feature: Support autosizing of Host component
- Bug fixes
- Performance improvements
This release adds support for version 2023.2 of the APL specification.
- Deferred evaluation
- SeekTo command for video
- Alpha feature: Host component
- Alpha feature: Support for viewport autosize
- Alpha feature: InsertItem and RemoveItem command
- Bug fixes
- Performance improvements.
- Three Porter-Duff operations to the Blend filter
- Selector syntax for choosing the target of a command
- TextTrack property for closed captions
- Bug fixes.
- Bug fixes.
- Performance improvements.
- Build improvements.
This release adds support for version 2022.2 of the APL specification.
- Support selective preservation of sequencers and associated state upon re-inflation.
- Allow easy synchronization of visual and audio with onSpeechMark handler.
- Alpha feature: Scene graph rendering to provide simplified drawing instructions to the view host.
- Bug fixes.
- Videos can be muted/unmuted by setting the corresponding property.
- Bug fixes
This release adds support for version 2022.1 of the APL specification.
- Alpha feature: New APL Extensions lifecycle.
- Alpha feature: Added new encryption and webflow interfaces into the extension library.
- Added log id to help to track logs between multiple experiences.
- Video now can be muted and unmuted dynamically.
- Bug fixes.
- Build improvements.
- Fixed typos and cleanup formatting.
- Improved localization handling within core.
- Performance improvements.
- Update Yoga dependency to 1.19.
- Performance improvements.
- Bug fixes.
This release adds support for version 1.9 of the APL specification.
- Added new flag to disallow video player.
- Added new gesture, Tap.
- Added support for animating bound values and vector graphic parameters.
- Added support for source http headers on images, vector graphics and video tracks.
- Allow config change objects to contain custom environment property values.
- Alpha feature: APL Extension logic is no longer interleaved with APL
- Bug fixes.
- Build improvements.
- Bug fixes
This release adds support for version 1.8 of the APL specification.
- Added events to notify about readiness and failure for video tracks
- Added events to notify success or failure loading images and vector graphics
- Added flags to SendEvent Command to allow runtimes to modify the UserEvent behavior
- New version of the media player for video tracks
- Runtimes can get the display state of a document to identify if it is hidden, in the background or foreground.
- Support for data-binding in the document environment property
- Alpha feature: Added extension component to allow extensions to render contents
- OnMount now run for components inflated after the initial pass and on normal mode
- Removed lang and layoutDirection from the document to environment
- Improved focus behavior
- Bug fixes
- Build improvements
- Bug fixes
- Bug fixes
This release adds support for version 1.7 of the APL specification.
- Added new position sticky for children containers
- Support specifying layout direction for components as well as the entire document
- Support for document level language
- Extended swipe away gesture to support forward and backward directions
- Added support for <span> text markup
- Added start*, end* and padding variants to override left* and right* variants depending on layoutDirection
- Data-binding definitions now support Array and Maps
- Alpha feature: Improved extension message builder API
- Alpha feature: Extension client now supports modification of non-defined LiveMap members
- Alpha feature: APL Audio Player Extension. The Audio Player Extension extends APL capabilities providing a custom audio player extension
- Data grammar now translates to byte code
- Performance improvements during the inflation process
- Component properties shadowColor, shadowHorizonalOffset, shadowRadius and shadowVerticalOffset are now also styled and dynamic
- Pager navigation and pageDirection properties are now also dynamic
- Updated reported APL version to 1.7
- Other bug fixes
- Build improvements
- Bug fixes
- Bug fixes
- Improved pager fling behavior to provide a more consistent navigation
- Fixed keyboard and focus handling when wrapping an EditText in a TouchWrapper
- Updated PEGTL to version 2.8.3
- Visibility property in visual context rounded to 2 decimal points
- Perfomance improvements
- Other bug fixes
This release adds support for version 1.6 of the APL specification.
- Reinflation support for viewport size and orientation changes
- Add handlePageMove property to Pager to allow custom transitions
- Add pageDirection to support vertical pagers
- Added support for <nobr> text markup
- New Math functions: Math.int and Math.float
- New API to expose visible children of a component
- Support bound values in layouts
- Alpha feature: Asynchronous management of media requests
- Alpha feature: Focus EditText on tap
- Alpha feature: Alexa Extensions library. The Alexa Extensions library facilitates extending APL capabilities by providing custom extensions
- Build improvements
- Extended key handling to offer consistent spatial (focus) navigation experience accross platforms
- Extended handling of all scrolling and fling gestures
- Enumgen tool improvements
- Handle pager animations consistently across all platforms
- Made string locatization configurable with platform-specific implementations
- Memory management improvements
- Previously styled properties that only affect component bounds are now also dynamic
- Other bug fixes
- Improved native SwipeAway behavior
- Fixed JSON serialization of singular transforms
- Build improvements
- Other bug fixes
This release adds support for version 1.5 of the APL specification.
- New Math functions: Math.isNaN, Math.isInf and Math.isFinite
- New Array functions: Array.indexOf, Array.range, Array.slice
- New String function: String.length
- Report visible children from Sequence and GridSequence components
- DropShadow filter for AVG
- Accessibility: add fontScale, screenMode, screenReader, and timing properties to environment.
- Accessibility: Added actions and role to base component.
- Extensions: extensions can provide custom image filters
- Support bind in AVG
- Report when the visual context is dirty
- Alpha feature: handle scrolling and paging in the APL Core library
- Alpha feature: scroll snapping
- Alpha feature: custom transitions for Pager
- Updated reported APL version to 1.5
- Accessibility: Update accessibilityLabel property to be dynamic
- Update AVG inflation to support the multi-child inflation rules
- Update gesture processing to consider applied transforms
- Bug fixes
- Build improvements
See README.md for more details on alpha features.
This is a bug fix release of apl-core-library.
- (Alpha) Report visible children from Sequence and GridSequence components. See README.md for more details on alpha features.
- Fixed visual context reporting for multi-child components
- Fixed visitor handling in pager component
- onPress is now correctly handled when a touchable component is transformed
- Improved reporting when attempting to update non-dynamic properties
- Fixed resource lookups during dependency propagation of data-binding context
- Fixed windows build
- Stop exposing context.h externally
This release adds support for version 1.4 of the APL specification.
- New components: EditText and GridSequence
- New AVG features (e.g. text support) and improvements
- Tick handlers
- onDown, onMove, and onUp event handlers to touchable components (e.g VectorGraphic and TouchWrapper)
- Gesture support
- Named sequencers for commands in order to control which commands can execute in parallel
- Transcendental math functions
- Misc updates to component properties
- Updated reported APL version to 1.4
- Bug fixes
- Build improvements
This release is a bug fix release of apl-core-library
- Added support for memory checks with valgrind during unit testing
- Fixed windows build
- Fixed a bug in Math.random implementation that caused random numbers not to use the full range of possible values
This release fixes a performance regression found in release 1.3.1.
- Optimized layout during scrolling
This release is a bug fix release of apl-core-library.
- dynamicIndexList: Allow data source bounds to be grown. Previously, they could only be shrunk.
- dynamicIndexList: Trigger a RuntimeError when a response to a LoadIndexListData request times out
- dynamicIndexList: Trigger a RuntimeError when a directive is buffered longer than a specified duration
- dynamicIndexList: improved handling of delayed responses
- Expose settings to the runtime before a document is fully inflated
- Better handling of spacing when components change dynamically
- Better handling of empty item inflation
- Fixed memory leak
- Minor bug fixes
Welcome to the March 2020 release of apl-core-library. This release supports version 1.3 of the APL specification.
- Added support for Windows and the Microsoft Visual C++ compiler.
- Added support for Finish Command.
- Added background property to documents.
- Added Time functions for displaying and formatting time values. Included three top-level bound variables for the current time: elapsedTime, localTime, and utcTime.
- Added export to documents.
- Added support for the Select command.
- Added document extensions, extension event handlers and extension commands. The data-binding environment includes a new extensions property that informs the APL document which extensions have been loaded.
- Added definition for new Backstack Extension to enable back navigation.
- Added handleKeyUp and handleKeydown properties to the top-level APL document and components.
- Added dynamic data containers: LiveArray and LiveMaps.
- Updated reported version numbers from 1.2 to 1.3.
- Bug fixes.