I think I'm convinced that it should be a separate program.
However it should be a very simple fallback - that is no resize support and no handling of screen rotation; I believe what is proposed here satisfies that.
If those features are needed, then it should fallback to the path we currently have (with GLRenderer).
So: hwc->prepare(..)
If all layers accepted - great - nothing else to do.
If some layers got rejected and need screen rotation/resizing - fallback to GLRenderer path - composite all layers with GLRenderer - essentially the path we use currently.
Otherwise fallback so simple hwc fallback GL compositor.
Needs fixing:
OverlayGLProgram - my suggestion is HWCFallbackGLRenderer to make it real clear what is responsiblity is.
OverlayCompositor - like Cemil says once rejected they are not "overlays" per se. So my suggestions is HWCFallbackCompositor
I think I'm convinced that it should be a separate program.
However it should be a very simple fallback - that is no resize support and no handling of screen rotation; I believe what is proposed here satisfies that.
If those features are needed, then it should fallback to the path we currently have (with GLRenderer).
So: hwc->prepare(..)
If all layers accepted - great - nothing else to do.
If some layers got rejected and need screen rotation/resizing - fallback to GLRenderer path - composite all layers with GLRenderer - essentially the path we use currently.
Otherwise fallback so simple hwc fallback GL compositor.
Needs fixing: nderer to make it real clear what is responsiblity is. ositor
OverlayGLProgram - my suggestion is HWCFallbackGLRe
OverlayCompositor - like Cemil says once rejected they are not "overlays" per se. So my suggestions is HWCFallbackComp