From 1f787c37a3f6d96f30c06f936674943cc5de7893 Mon Sep 17 00:00:00 2001 From: Sergiusz Bazanski Date: Wed, 1 Aug 2018 03:55:28 +0100 Subject: gui: fix zoom outbound not happening with fast startup time --- gui/fpgaviewwidget.cc | 16 ++++++++++------ gui/fpgaviewwidget.h | 2 -- 2 files changed, 10 insertions(+), 8 deletions(-) (limited to 'gui') diff --git a/gui/fpgaviewwidget.cc b/gui/fpgaviewwidget.cc index ed25a187..66739b28 100644 --- a/gui/fpgaviewwidget.cc +++ b/gui/fpgaviewwidget.cc @@ -323,14 +323,18 @@ void FPGAViewWidget::paintGL() flags = rendererData_->flags; } - { - QMutexLocker locker(&rendererArgsLock_); - rendererArgs_->flags.clear(); - } - // Check flags passed through pipeline. if (flags.zoomOutbound) { - zoomOutbound(); + // If we're doing init zoomOutbound, make sure we're actually drawing + // something already. + if (rendererData_->gfxByStyle[GraphicElement::STYLE_FRAME].vertices.size() != 0) { + zoomOutbound(); + flags.zoomOutbound = false; + { + QMutexLocker lock(&rendererArgsLock_); + rendererArgs_->flags.zoomOutbound = false; + } + } } } diff --git a/gui/fpgaviewwidget.h b/gui/fpgaviewwidget.h index c35821d9..a40a0153 100644 --- a/gui/fpgaviewwidget.h +++ b/gui/fpgaviewwidget.h @@ -251,8 +251,6 @@ class FPGAViewWidget : public QOpenGLWidget, protected QOpenGLFunctions zoomOutbound = other.zoomOutbound; return *this; } - - void clear() { zoomOutbound = false; } }; struct RendererArgs -- cgit v1.2.3