Separate Brisk and Brisk.System modules
wokalski opened this issue · 0 comments
wokalski commented
I think Brisk renderers (for different platforms/backends) should provide two modules:
Brisk
components which share the API and have roughly1 the same look on different platforms. The components on different platforms might have a superset of custom props but in general it should be avoided. The custom props would be used behind CPPOBrisk.System
components which should share the API (if possible) and have a different look on different platforms. Things likeBrisk.System.Button
on the mac would look like the stock macOS button etc. and like a windows button on windows.
Ideally all renderers, including Revery, would conform to the Brisk
component API so that switching between the renderers is very seamless. Only the components from Brisk.System
in some cases might need to be used behind CPPO if you want to achieve a different look on different platforms.
1: It might make sense for some components like ScrollView
to maintain some platform characteristics even in the Brisk
module.