Skip to content

Consider redesign of UI Facade #690

Open
@Danielku15

Description

@Danielku15

As part of #689 and along the Android implementations there were some findings on how the UI facade is currently handled. The abstraction towards the UI is designed currently quite generic abstracting UI controls and their actions. This makes it hard to benefit from platform specific UI behaviors. Especially on android realizing a UI with this generic approach will be challenging.

With the new lazy rendering approach we have now a 2-phase pipeline which allows us to handle UI virtualization needs more efficiently without relying on platform limitations.

Most of the current IUiFacade is actually rather a IPlatformFacade a rename would be good.
Secondly the IContainer approach is very generic. It would be better to design an interface which represents the overall UI control with it's functionalities we need like: adding/filling placeholders, listening for scroll events, listening for visibility changes, showing cursor and selection elements.

It is not so different to what is exposed by the current interfaces, but a very concrete representation of the UI control alphaTab needs is better than a general purpose UI abstraction.

Metadata

Metadata

Assignees

Labels

area-renderingEverything related to the renderingplatform-allAffects all platforms

Projects

Status

No status

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions