Details
-
Bug
-
Resolution: Done
-
P2: Important
-
4.7.2
-
None
-
Windows
-
5184d55d4342967100
Description
Following is from David.Robinson@anite.com
I've tried both Creator versions and have discovered that as long as I comment out the #import Qt3d 1.0 & the Qt3d QML component from my Qt Quick UI, then everything works fine using the QML Observer mode. If I use the Qt3d project the qmlobserver.exe debug logging is stuck at the following line in the debug log:
sQmlJSDebugger: Connected to debug service 'QDeclarativeObserverMode'. dQDeclarativeDebug sending LIST_ENGINES sQmlJSDebugger: Connected to debug service 'JSDebugger'. QDeclarativeDebugServer: Connection established dQDeclarativeDebug receiving LIST_ENGINES_R dQDeclarativeDebug sending LIST_OBJECTS 0 dQDeclarativeDebug receiving LIST_OBJECTS_R dQDeclarativeDebug sending FETCH_OBJECT screen
This is pretty annoying as my QML/3D code is weirdly making QML/2D video elements display upside down. I know this because if I go to the video 1st it displays the right way up. So I need to inspect the QML properties & even try changes at runtime to try to force the display bug. I 've tried this without the Viewport element but nothing makes the display bug reproduce, so I'm pretty certain it's coming from the Viewport or Item3D component.
I even tried running the qmlobserver exe with the same command line args from VS and this starts fine, so it's somehow related to the comms between the QmlJSDebugger and Qt Creator. I'm guessing the Qt libs carry some special code relating to the -declarative-debug configure option but as Qt3d does not use configure the necessary defines are not added. I tried adding the following line to the opengl project file and rebuilt but this had no effect:
# Define QMLJSDEBUGGER to enable basic debugging (setting breakpoints etc) DEFINES += QMLJSDEBUGGER
What is required to make QML observer mode work in QML/3d UI projects?