Browse Source

Improve scan dialog modal behaviour

Signed-off-by: falkTX <falktx@falktx.com>
fix-audiofile-buffering
falkTX 1 year ago
parent
commit
b14ea6e0fc
Signed by: falkTX <falktx@falktx.com> GPG Key ID: CDBAA37ABC74FBA0
1 changed files with 11 additions and 3 deletions
  1. +11
    -3
      source/frontend/pluginlist/pluginlistdialog.cpp

+ 11
- 3
source/frontend/pluginlist/pluginlistdialog.cpp View File

@@ -20,6 +20,7 @@
#include <QtCore/QDir> #include <QtCore/QDir>
#include <QtCore/QFileInfo> #include <QtCore/QFileInfo>
#include <QtCore/QList> #include <QtCore/QList>
#include <QtCore/QTimer>


#ifdef __clang__ #ifdef __clang__
# pragma clang diagnostic pop # pragma clang diagnostic pop
@@ -1020,7 +1021,9 @@ void PluginListDialog::done(const int r)
{ {
QTableWidgetItem* const widget = ui.tableWidget->item(ui.tableWidget->currentRow(), TW_NAME); QTableWidgetItem* const widget = ui.tableWidget->item(ui.tableWidget->currentRow(), TW_NAME);
p->retPlugin = asPluginInfo(widget->data(Qt::UserRole + UR_PLUGIN_INFO)); p->retPlugin = asPluginInfo(widget->data(Qt::UserRole + UR_PLUGIN_INFO));
} else {
}
else
{
p->retPlugin = {}; p->retPlugin = {};
} }


@@ -1044,7 +1047,6 @@ void PluginListDialog::showEvent(QShowEvent* const event)
p->discovery.dialog->ch_invalid->setChecked(false); p->discovery.dialog->ch_invalid->setChecked(false);
p->discovery.dialog->group->setEnabled(false); p->discovery.dialog->group->setEnabled(false);
p->discovery.dialog->progressBar->setFormat("Starting initial discovery..."); p->discovery.dialog->progressBar->setFormat("Starting initial discovery...");
p->discovery.dialog->show();


QObject::connect(p->discovery.dialog->b_skip, &QPushButton::clicked, QObject::connect(p->discovery.dialog->b_skip, &QPushButton::clicked,
this, &PluginListDialog::refreshPluginsSkip); this, &PluginListDialog::refreshPluginsSkip);
@@ -1052,6 +1054,8 @@ void PluginListDialog::showEvent(QShowEvent* const event)
this, &PluginListDialog::refreshPluginsStop); this, &PluginListDialog::refreshPluginsStop);


p->timerId = startTimer(0); p->timerId = startTimer(0);

QTimer::singleShot(0, p->discovery.dialog, &QDialog::exec);
} }
} }


@@ -1147,6 +1151,9 @@ void PluginListDialog::timerEvent(QTimerEvent* const event)
if (p->timerId == 0) if (p->timerId == 0)
break; break;


if (p->discovery.dialog)
p->discovery.dialog->progressBar->setFormat(ui.label->text());

p->discovery.handle = carla_plugin_discovery_start(p->discovery.tool.toUtf8().constData(), p->discovery.handle = carla_plugin_discovery_start(p->discovery.tool.toUtf8().constData(),
p->discovery.ptype, p->discovery.ptype,
path.toUtf8().constData(), path.toUtf8().constData(),
@@ -1752,7 +1759,6 @@ void PluginListDialog::refreshPlugins()
refreshPluginsStop(); refreshPluginsStop();


p->discovery.dialog = new PluginRefreshDialog(this); p->discovery.dialog = new PluginRefreshDialog(this);
p->discovery.dialog->show();


QObject::connect(p->discovery.dialog->b_start, &QPushButton::clicked, QObject::connect(p->discovery.dialog->b_start, &QPushButton::clicked,
this, &PluginListDialog::refreshPluginsStart); this, &PluginListDialog::refreshPluginsStart);
@@ -1760,6 +1766,8 @@ void PluginListDialog::refreshPlugins()
this, &PluginListDialog::refreshPluginsSkip); this, &PluginListDialog::refreshPluginsSkip);
QObject::connect(p->discovery.dialog, &QDialog::finished, QObject::connect(p->discovery.dialog, &QDialog::finished,
this, &PluginListDialog::refreshPluginsStop); this, &PluginListDialog::refreshPluginsStop);

p->discovery.dialog->exec();
} }


void PluginListDialog::refreshPluginsStart() void PluginListDialog::refreshPluginsStart()


Loading…
Cancel
Save