Last Comment Bug 744112 - Qt QGL context conflict with WebGL context current states
: Qt QGL context conflict with WebGL context current states
Status: RESOLVED FIXED
:
Product: Core Graveyard
Classification: Graveyard
Component: Widget: Qt (show other bugs)
: unspecified
: ARM Linux
: -- normal (vote)
: mozilla15
Assigned To: Oleg Romashin (:romaxa)
:
:
Mentors:
Depends on:
Blocks:
  Show dependency treegraph
 
Reported: 2012-04-10 12:16 PDT by Oleg Romashin (:romaxa)
Modified: 2016-07-11 21:54 PDT (History)
2 users (show)
See Also:
QA Whiteboard:
Iteration: ---
Points: ---


Attachments
Force switch context to Qt, before rendering QGV scene (3.58 KB, patch)
2012-04-10 12:25 PDT, Oleg Romashin (:romaxa)
doug.turner: review+
Details | Diff | Splinter Review

Description Oleg Romashin (:romaxa) 2012-04-10 12:16:35 PDT
Qt historically does not call makeCurrent before rendering into GL context, that is across all Qt GL backend code, and it bring some problems when we trying to render WeBGL context in same process.
Problem is happen when WebGL context switch context to current, and after that Qt starts next paint iteration without switching to Qt context, so Qt accidentally render into WebGL context.
Comment 1 Oleg Romashin (:romaxa) 2012-04-10 12:25:16 PDT
Created attachment 613712 [details] [diff] [review]
Force switch context to Qt, before rendering QGV scene

Also allow to set QGL widget for Qt fennec on builds with GL_PROVIDER specified.
Comment 2 Doug Turner (:dougt) 2012-04-16 12:03:25 PDT
Comment on attachment 613712 [details] [diff] [review]
Force switch context to Qt, before rendering QGV scene

Review of attachment 613712 [details] [diff] [review]:
-----------------------------------------------------------------

::: widget/qt/moziqwidget.h
@@ +149,5 @@
>      MozQGraphicsView(QWidget * aParent = nsnull)
>       : QGraphicsView (new QGraphicsScene(), aParent)
>       , mEventHandler(this)
>       , mTopLevelWidget(NULL)
> +     , mGLWidget(0)

(0) -> (NULL)

Note You need to log in before you can comment on or make changes to this bug.