31 oct 2022
- Fixed Lightning inspector (#427)
20 oct 2022
- Updated patching.md file (#422)
- Minor documentation updates (#405)
- Added support to track vram usage (#395)
- Added texture compression support (#391)
19 sep 2022
- Added support for smart read pixels after draw (#417)
- Fixed "handling input" section of docs index (#416)
- Added missing 'pauseRafLoopOnIdle' stage option type def and small doc updates (#415)
- Reverted original functionality of drawFrame() (#414)
- Fixed fatal exception when attempting to render 0x0 canvas texture without forceTxCanvasSource option (#413)
- Added typescript docs (#409)
15 aug 2022
- Added TypeScript Support (#407)
- Enabled RAF idle usage with stage option 'pauseRafLoopOnIdle'(#402)
- Fixed regression on Ziggo platforms (#364)
- Added glReadPixels support after rendering (#388)
- Updated Readme file with correct LightningJs Documentation URL.(#383)
- Improved support for vertical alignment on advanced text renderer. (#378)
- Removed regex named capture groups from text parser (#394)
- Added listener for visibility change to redraw when visible(#396)
- Added revised Documentation related to Lightning Core
- Added option to force canvas element as tx source(#393)
28 dec 2021
textRenderSharpFontSize
andtextRenderSharpPrecision
options were replaced byfontSharp
option and their default values adjusted (#354, #359)- Added CSS cursor support (https://developer.mozilla.org/en-US/docs/Web/CSS/cursor). Check out the example:
examples/mouse-pointer/cursor.html
(#319)
- Fixed issue where
canvas
would not fully initialize before the inspector, resulting in invalidwidth
andheight
of the root inspector element (#355)
04 nov 2021
- Mouse hover/unhover properly affects entire branch instead of single component. See
examples/mouse-pointer/hover-tree.html
. (#334) - Fixed text rendering problems present on some versions of Tizen platforms (#344)
- Fixed issue where inspector would not show falsy text values e.g.
0
in element's attributes (#341) - Fixed issue in
advancedTextRenderer
, wheremaxLines
would break for one word lines (#350)
13 sep 2021
- Added new text renderer that enables i.a. bold, italics and color using html-like tags. Check
examples/text/advanced-renderer.html
for more information (#318) - Introduced options
textRenderSharpFontSize
andtextRenderSharpPrecision
stage options for text texture scaling. Those options are useful for reducing blur effect on only selected text textures (#321, #320)
- Fixed ChildList's
setAt
boundary check (#314) - Fixed inaccurate collision check for mouse pointer when precision is different than 1 (#329)
07 jul 2021
- Added support for mouse (check out
examples/mouse-pointer
)(#68, #300, #302) childList
insert methods now accept patch objects (#294)- Added
focus
attribute to currently focused element when viewed using inspector (#266, #304)
- Fixed issue with inspector in bundled Lightning (#308)
- Fixed issue where ObjectList's
removeAt
method would not guard against errors (#306) - Reduced blur effect on text texture when its font size is small (#299, #305)
- Updated license field in package.json file to match SPDX (#307)
- Relicense Lightning to Metrological Apache (#285)
05 jul 2021
- Multiple property bindings are now accepted by
bindProp
method (#275) - Added Magnifier shader (check out
examples/shaders/magnifier
) (#274) - Added customisable
data-testId
property in inspector that can be used by automated tests (#288)
- Property bindings now work with shaders (#278)
- Property bindings now work with text objects (#283)
- Text texture's height will now match exactly line height if its
textBaseline
property is set tobottom
(#286)
- Added FadeOut, Spinner2 shaders, updated RoundRectangle, RadialGradient, Vignette (see
examples/shaders
) (#255) - Event emitter now supports
once
method (#271) - Component's
signals
method will now accept functions (seeexamples/signals
) (#264)
- Fixed issue where calling Event emitter's
off
method inside callback it was registered with would not work (#271) - Multiple
\n
text line breaks are now rendered correctly (#277)
- Fixed image path construction problem for URLS containing hash (#257)
- Fixed letter-spacing on text texture to be properly applied on different resolutions (#256)
-
Component instance is now accessible in template method (#253)
static _template(instance) { return { w: instance.size, h: instance.size }; } _construct() { this.size = 50; }
- Fixed possible ES5 compatibility issues with code not subject to transpilation (#242)
-
wpe-lightning
package migrates to@lightningjs/core
-
Logs from Lightning have now
[Lightning]
prefix (#245) -
Added property bindings for Lightning templates via
bindProp
method (seeexamples/property-bindings
) (#251) -
Added
textIndent
option for text texture (#250){text: {text: 'hello', textIndent: 200}}
- Fixed improperly handled GC case for
c2d
renderer (#246)
- [experimental] Added touch support (see
examples/touch
) (#239)
- Shaders will now use
precision highp float
if the platform supports it (#232) - Fixed RoundedRectangle shader unconverted uniforms that would cause errors on some of the platforms (#234)
- Fixed Hole shader to work with different resolutions (#233)
- Fixed CORS issues on images specific to PS4 platform (#226)
04 sep 2020
-
New shaders:
Vignette
,Perspective
,Spinner
andHole
(example) -
RoundedRectangle
shader can now be applied to each corner separately (example)shader: {type: lng.shaders.RoundedRectangle, radius: 50} // apply round corners to whole rectangle
shader: {type: lng.shaders.RoundedRectangle, radius: [50, 0, 25, 0]} // apply round corners separately
-
Binding multiple methods to same keycode is now possible
const keys = { ... 8: 'Back', 13: 'Enter', 219: ['Rewind', 'PreviousPage'], 221: ['FastForward', 'NextPage'], ... };
-
Added support for base64 encoded images. This may have worked or not depending on image format and Image Worker configuration, but after the change it should work in all configurations
Image: { x: 15, y: 15, src: 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACgAAAAoCAYAAACM/rhtAAA...' }
- Animation's
progress
event is called right beforefinish
(#196) - No text on PS4 (#16)
- Broken
Dithering
,Outline
andPixelate
shaders (#199, #203)
-
RoundedRectangle
shader now hasfillColor
,stroke
andstrokeColor
properties (example)shader: { type: lng.shaders.RoundedRectangle, fillColor: 0xffff0000, // fill color strokeColor: 0xff00ffff, // stroke color stroke: 30, // stroke thickness }
-
Added
verticalAlign
option forTextTexture
, which defines how text should be positioned if line height is greater than size of the font (example)text: { text: 'Hello', fontSize: 24, lineHeight: 40, verticalAlign: 'middle' }
- Reverted #192 (#164) to preserve compatibility with existing applications
- Vertical centering of text when line height is larger than font size (#164)
- Relative protocol urls for Image Worker (#143)
- Migration to rdkcentral
- SVG images from foreign origins throwing errors (#185)
-
Added
letterSpacing
option forTextTexture
, which lets increase or decrease space between letters (example)text: { text: 'Hello', letterSpacing: 5 }
getNonDefaults()
ofElement
class (9096717)
- Jest snapshot for Lightning template (1790cb3)
- Spark shader updates (#108)
- Integration with Spark platform (#108)
resizeMode
is not applied when texture uses source that is already loaded (#103)
- Rollup update (#102)
- Lightning now contains ES5 compatible bundles (#97)
- Fixed Image Worker to be ES5 compatible (aaed13282b98448eaf0c5a14106a0251a0ddd012)
08 jan 2020
- Fixed text highlight not rendering properly (#86)
19 nov 2019
- Since 1.2.1, Lightning is available on npm registry under
wpe-lightning
(check here) - Added
RoundRectangle
shader (#70). It allows to easily make round corners around the texture (example)
21 oct 2019
- Added
textOverflow
option (#26). This enables various text clipping options for single line words or sentences. More information here. - Added longPress feature (#48). This adds support for key releases and handlers for long key presses.
21 oct 2019
- Fixed text rendering artifacts sometimes appearing on RPI platform (#41)