-
-
Notifications
You must be signed in to change notification settings - Fork 163
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Adding config file feature #281
base: feature/compositor-ng
Are you sure you want to change the base?
Adding config file feature #281
Conversation
- refactor surface, backing_store objects a lot - surface is no longer universally associated with a compositor - (so a surface can be attached with multiple compositors now theoretically) - there's no more sugar in the surface object for associating it with a platform view id - backing stores now fill a FlutterBackingStore* rather than FlutterOpenGlBackingStore* and so on - add vulkan pixel format equivalents to the pixel format enum - add a vulkan renderer and a vulkan backing store - use backing_store_queue_present instead of surface_swap_buffers for pushing framebuffers from flutter to backing_stores - add --vulkan cmdline argument - add vulkan compositor and vulkan window
- fix UNREACHABLE macro - document vk_renderer API - cast _SRGB to _UNORM vulkan formats to work around flutter bug - specify proper vulkan image usage flags - close gbm bo fd on error - remove vk backing store ref logging
cJSON path is currently relative
So this is just a brainstorm of everything that comes to my mind: (just some ideas, supporting all this would be a huge task)
So in json that would look something like this: (just for demonstration)
Anything I missed? I think we can go from this and cut stuff out that shouldn't be supported and simplify the structure till we reach something that's nice and simple like the qt EGLFS / ivi-homescreen config For example since right now, a view can only have a single flutter instance and the other way around, so they don't need to be separate in the config (Or maybe they should, for future-compatibility?). Or the renderers are that trivial to specify that we can just specify them the flutter instance specification as well (as some |
So basically the final json file I'm getting an idea for is, I don't really know a lot of in-depth stuff about display configurations so there will probably be some errors. Each value will be a string right, not many that are arrays.
|
Sorry for the delay. @Taha-Firoz I didn't really mean that exact layout, it was just a rough draft 😉 So lots of those fields you could leave away, or merge or rename if that fits better together with the toyota, sony or Qt EGLFS config. Or if you like the draft how I send it you can also implement it that way. |
7551fa1
to
37a191c
Compare
c81fa43
to
ad4cabd
Compare
4afa0a1
to
de0a9a7
Compare
1c5c42d
to
566c504
Compare
As discussed on issue #201 having more control over the display on which the application is rendered on is important. In order to provide this feature it's important to have a config file since the values needed for specifying displays would be too long to easily specify in a command line argument.
Currently there are three possible formats for the config file we can take inspiration from:
@adera's proposed format
ivi-homescreen's config file
QT's drm config file
A few things to figure out before this features implementation can even start: