Skip to content

feature: Create Android Compose Control #1475

@Danielku15

Description

@Danielku15

With Jetpack Compose there is a new paradigm of describing Android UIs. The current Android control is not properly compatible with this approach.

AlphaTab should have a direct Jetpack Compose control to not require any workarounds when using it.

Aspects to consider:

  • Instead of properties we need to use persistent states.
  • We need a slim factory function to create the alphaTab composable.
  • Unless we can reuse the current ScrollView implementations we might need to implement the whole UI Facade for compose differently.
  • We need to check how we can access the context to initialize the alphaTab internals (font, skia etc).

Good references for the key part with creating the layout component to display items.

https://www.ackee.agency/blog/custom-lazylayout-with-jetpack-compose
https://github.com/oleksandrbalan/minabox/tree/main/minabox/src/commonMain/kotlin/eu/wewox/minabox

Metadata

Metadata

Assignees

Labels

area-coreRelated to some core parts of alphaTabplatform-androidRelated to the Android specific integrationsstate-acceptedThis is a valid topic to work on.

Projects

Status

No status

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions