Status: Resolved (View Workflow)
The tasks below are mostly scoped for the Lienzo Core, and their main goal is to move to native interfaces, as many possible, by relying on latest JsInterop DOM APIs (Elemental2, Vertispan, etc).
It will provide out-of-the-box improvements on performance, code quality and debugging. When performing code, usability and performance improvements in other areas of the lienzo core will be made as well.
- Migration to native APIs
- Move as much as possible from gwt to elemental2/j2cl, although the idea is still to run on top of both of them, as probably it's still hard to completely decouple from gwt
- GWT event bus & event dispatching - Refactoring to native browser events and move to single event instance reuse policy
- Refactor human abstract events to native
- Reduce the amount of new objects being created
- Rebase from the latest upstream
- Refactor Panel & Events stuff
- LienzoPanel/s (eg: growable)
- Refactor also the showcase infinite scroll stuff?
- Events stuff (eg: LienzoHandlerManager, LienzoPanelHandlerManager)
- Showcase app (refactor/extract from core)
- Unit testing (lienzo-tests)
- Include Performance examples/tests (comparison with old stuff)
- The whole lienzo-core repository is rebased with upstream.
- Lienzo Panel is migrated from GWT to elemental2/j2cl.
- GWT Events are replaced by native HTML events.
- The document with comparison of performance data of old and new code is produced.
- For Lienzo tests https://issues.jboss.org/browse/JBPM-8858 must be resolved.