Hi,

I was updating a desktop tool of mine to use Qt 5.8. In this tool I use software backend to render its contents.

Since I need to have a system tray icon to open it again when it is closed, I instantiate it as a QQuickView. This is what I do:

// on Qt 5.7
qputenv("QMLSCENE_DEVICE","softwarecontext");
QApplication::setAttribute(Qt::AA_UseSoftwareOpenGL);

// on Qt 5.8
QQuickWindow::setSceneGraphBackend(QSGRendererInterface::Software);

QQuickView view;

view.setSource(QUrl("qrc:/qml/main.qml"));
view.setResizeMode(QQuickView::SizeRootObjectToView);

QObject::connect(view.engine(), SIGNAL(quit()), qApp, SLOT(quit()));

view.show();

QAction *quitAction = new QAction(app.tr("&Quit"), &view);
QAction *openAction = new QAction(app.tr("&Open"), &view);

app.connect(quitAction, SIGNAL(triggered()), &app, SLOT(quit()));
app.connect(openAction, SIGNAL(triggered()), &view, SLOT(show()));

With Qt 5.7 when I close and open the window, it appears correctly. With Qt 5.8, after closing and opening the window again, everything goes white. The controls are there and get updated if I interact with them but it seems lacking a fullscreen refresh.

If I disable the SoftwareBackend everything works as expected. I suspect this is a bug from Qt 5.8 software backend implementation.

Should I report a bug?

Regards,

Nuno

_______________________________________________
Interest mailing list
Interest@qt-project.org
http://lists.qt-project.org/mailman/listinfo/interest

Reply via email to