- 
    Bug 
- 
    Resolution: Unresolved
- 
    P3: Somewhat important 
- 
    None
- 
    5.6.0, 5.6.1
- 
    None
In a Qt application embedding QtQuick components, the BusyIndicator will under some conditions go to the running state without being asked to.
The QtQuick component (a QtQuickWidget) needs to be a child of a QTabWidget. When switching tabs, the BusyIndicator will go in the spurious running state.
This minimalistic app demonstrates the problem:
busy.pro
TEMPLATE = app TARGET = busy QT = core gui widgets quickwidgets SOURCES += main.cpp
main.cpp
#include <QApplication>
#include <QQuickWidget>
#include <QTabWidget>
#include <QUrl>
QQuickWidget *createQuickWidget()
{
 QQuickWidget *qw = new QQuickWidget();
 qw->setResizeMode(QQuickWidget::SizeRootObjectToView);
 qw->setSource(QUrl::fromLocalFile("busy.qml"));
 return qw;
}
 
int main(int argc, char **argv)
{
 QApplication app (argc, argv);
 QTabWidget tab;
 tab.addTab(createQuickWidget(), "Tab1");
 tab.addTab(createQuickWidget(), "Tab2");
 tab.show();
 return app.exec();
}
busy.qml
import QtQuick 2.4 import QtQuick.Controls 1.4 Item { MouseArea { id: mousearea anchors.fill: parent } BusyIndicator { running: mousearea.pressed } }
Place all three files in a directory and run : qmake & make
Run the app with ./debug/busy[.exe]
To reproduce:
- click inside one of the tabs to run the BusyIndicator at least once
- switch tab
- come back to 1st clicked tab ==> BusyIndicator should run
- click tab again to stop BusyIndicator
- repeat  
This issue has been reproduced with the minimal example on Qt 5.6.1 (msys2).
This issue affects our real application on Qt 5.6.0 (msys2 and ubuntu)