Closed Bug 1232456 Opened 9 years ago Closed 9 years ago

Create EGL surfaces through nsIWidget

Categories

(Firefox for Android Graveyard :: Toolbar, defect)

All
Android
defect
Not set
normal

Tracking

(firefox46 fixed)

RESOLVED FIXED
Firefox 46
Tracking Status
firefox46 --- fixed

People

(Reporter: jchen, Assigned: jchen)

References

Details

Attachments

(2 files, 1 obsolete file)

Right now we create EGL surfaces through AndroidBridge, but we should create them through nsIWidget to support multiple windows.
This patch makes GLContextProviderEGL create EGL surfaces through nsWindow/nsIWidget on Android. nsWindow then calls GLController in Java to actually create the surface.
Attachment #8698203 - Flags: review?(snorp)
This patch adds a widget member to GLContextEGL, so that it can later use it to renew surfaces.
Attachment #8698204 - Flags: review?(snorp)
Comment on attachment 8698203 [details] [diff] [review] Create EGL surface through widget (v1) Review of attachment 8698203 [details] [diff] [review]: ----------------------------------------------------------------- We want to kill GLController entirely eventually, but this is a good step towards that.
Attachment #8698203 - Flags: review?(snorp) → review+
Comment on attachment 8698204 [details] [diff] [review] Save widget in GLContextEGL for renewing surface (v1) Review of attachment 8698204 [details] [diff] [review]: ----------------------------------------------------------------- As discussed, I don't think we want this. The compositor has the widget when it asks us to renew, so it should probably just pass it in.
Attachment #8698204 - Flags: review?(snorp) → review-
Add a widget parameter to RenewSurface so that the compositor can pass in its widget.
Attachment #8700124 - Flags: review?(snorp)
Attachment #8698204 - Attachment is obsolete: true
Comment on attachment 8700124 [details] [diff] [review] Renew EGL surface using existing compositor widget (v1) Review of attachment 8700124 [details] [diff] [review]: ----------------------------------------------------------------- I like it, but lets get another gfx person to review. ::: gfx/gl/GLContextEAGL.h @@ +59,5 @@ > virtual GLuint GetDefaultFramebuffer() override { > return mBackbufferFB; > } > > + virtual bool RenewSurface(nsIWidget* aWidget) override { This is wrong for UIKit, but maybe just add something like: // FIXME: should use the passed widget instead of the existing one
Attachment #8700124 - Flags: review?(snorp)
Attachment #8700124 - Flags: review?(jgilbert)
Attachment #8700124 - Flags: review+
Attachment #8700124 - Flags: review?(jgilbert) → review+
Status: ASSIGNED → RESOLVED
Closed: 9 years ago
Resolution: --- → FIXED
Target Milestone: --- → Firefox 46
Product: Firefox for Android → Firefox for Android Graveyard
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: