"will become available again."
"\n\n"
"This action will abort any currently running synchronization."));
- msgBox->addButton(tr("Disable support"), QMessageBox::AcceptRole);
+ auto acceptButton = msgBox->addButton(tr("Disable support"), QMessageBox::AcceptRole);
msgBox->addButton(tr("Cancel"), QMessageBox::RejectRole);
- connect(msgBox, &QMessageBox::finished, msgBox, [this, msgBox, folder](int result) {
+ connect(msgBox, &QMessageBox::finished, msgBox, [this, msgBox, folder, acceptButton] {
msgBox->deleteLater();
- if (result != QMessageBox::AcceptRole || !folder)
+ if (msgBox->clickedButton() == acceptButton|| !folder)
return;
// It is unsafe to switch off vfs while a sync is running - wait if necessary.
"version."),
QMessageBox::NoButton,
this);
- msgBox->addButton(tr("Change update channel"), QMessageBox::AcceptRole);
+ auto acceptButton = msgBox->addButton(tr("Change update channel"), QMessageBox::AcceptRole);
msgBox->addButton(tr("Cancel"), QMessageBox::RejectRole);
- connect(msgBox, &QMessageBox::finished, msgBox, [this, channel, msgBox](int result) {
+ connect(msgBox, &QMessageBox::finished, msgBox, [this, channel, msgBox, acceptButton] {
msgBox->deleteLater();
- if (result == QMessageBox::AcceptRole) {
+ if (msgBox->clickedButton() == acceptButton) {
ConfigFile().setUpdateChannel(channel);
if (auto updater = qobject_cast<OCUpdater *>(Updater::instance())) {
updater->setUpdateUrl(Updater::updateUrl());
{
const auto bestVfsMode = bestAvailableVfsMode();
QMessageBox *msgBox = nullptr;
+ QPushButton *acceptButton = nullptr;
switch (bestVfsMode)
{
case Vfs::WindowsCfApi:
"The virtual files mode is mutually exclusive with selective sync. "
"Currently unselected folders will be translated to online-only folders "
"and your selective sync settings will be reset."), QMessageBox::NoButton, receiver);
- msgBox->addButton(tr("Enable virtual files"), QMessageBox::AcceptRole);
+ acceptButton = msgBox->addButton(tr("Enable virtual files"), QMessageBox::AcceptRole);
msgBox->addButton(tr("Continue to use selective sync"), QMessageBox::RejectRole);
break;
case Vfs::WithSuffix:
"This is a new, experimental mode. If you decide to use it, please report any "
"issues that come up.")
.arg(APPLICATION_DOTVIRTUALFILE_SUFFIX), QMessageBox::NoButton, receiver);
- msgBox->addButton(tr("Enable experimental placeholder mode"), QMessageBox::AcceptRole);
+ acceptButton = msgBox->addButton(tr("Enable experimental placeholder mode"), QMessageBox::AcceptRole);
msgBox->addButton(tr("Stay safe"), QMessageBox::RejectRole);
break;
case Vfs::Off:
Q_UNREACHABLE();
}
- connect(msgBox, &QMessageBox::accepted, receiver, [callback, msgBox] {
- callback(true);
- msgBox->deleteLater();
- });
- connect(msgBox, &QMessageBox::reject, receiver, [callback, msgBox]{
- callback(false);
+ connect(msgBox, &QMessageBox::accepted, receiver, [callback, msgBox, acceptButton] {
+ callback(msgBox->clickedButton() == acceptButton);
msgBox->deleteLater();
});
msgBox->open();