Commit a0891a47 authored by dogmaphobic's avatar dogmaphobic

Fix redraw issues with OpenGL canvases when link states change.

parent fa54c814
......@@ -205,6 +205,10 @@ MainWindow::MainWindow(QSplashScreen* splashScreen)
connect(this, SIGNAL(x11EventOccured(XEvent*)), mouse, SLOT(handleX11Event(XEvent*)));
#endif //QGC_MOUSE_ENABLED_LINUX
// These also cause the screen to redraw so we need to update any OpenGL canvases in QML controls
connect(LinkManager::instance(), &LinkManager::linkConnected, this, &MainWindow::_linkStateChange);
connect(LinkManager::instance(), &LinkManager::linkDisconnected, this, &MainWindow::_linkStateChange);
// Connect link
if (_autoReconnect)
{
......@@ -1348,6 +1352,11 @@ void MainWindow::restoreLastUsedConnection()
}
}
void MainWindow::_linkStateChange(LinkInterface*)
{
emit repaintCanvas();
}
#ifdef QGC_MOUSE_ENABLED_LINUX
bool MainWindow::x11Event(XEvent *event)
{
......
......@@ -294,6 +294,7 @@ private slots:
void _showDockWidgetAction(bool show);
void _loadCustomWidgetFromFile(void);
void _createNewCustomWidget(void);
void _linkStateChange(LinkInterface*);
#ifdef UNITTEST_BUILD
void _showQmlTestWidget(void);
#endif
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment