From d21e9fb1082fcf4f5335ed5faee9dd8b0e5944d2 Mon Sep 17 00:00:00 2001 From: Hannah von Reth Date: Mon, 17 Aug 2020 15:31:21 +0200 Subject: [PATCH] Windows VFS: Enable Windows VFS by default --- src/gui/folderwizard.cpp | 13 ++++---- src/gui/wizard/owncloudadvancedsetuppage.cpp | 31 ++++++++++++++------ 2 files changed, 29 insertions(+), 15 deletions(-) diff --git a/src/gui/folderwizard.cpp b/src/gui/folderwizard.cpp index f8a9e180eec..1a830e0b091 100644 --- a/src/gui/folderwizard.cpp +++ b/src/gui/folderwizard.cpp @@ -485,8 +485,7 @@ FolderWizardSelectiveSync::FolderWizardSelectiveSync(const AccountPtr &account) layout->addWidget(_selectiveSync); if (Theme::instance()->showVirtualFilesOption() && bestAvailableVfsMode() != Vfs::Off) { - _virtualFilesCheckBox = new QCheckBox(tr("Use virtual files instead of downloading content immediately %1").arg( - bestAvailableVfsMode() == Vfs::WindowsCfApi ? tr("(tech preview)") : tr("(experimental)"))); + _virtualFilesCheckBox = new QCheckBox(tr("Use virtual files instead of downloading content immediately%1").arg(bestAvailableVfsMode() == Vfs::WindowsCfApi ? QString() : tr(" (experimental)"))); connect(_virtualFilesCheckBox, &QCheckBox::clicked, this, &FolderWizardSelectiveSync::virtualFilesCheckboxClicked); connect(_virtualFilesCheckBox, &QCheckBox::stateChanged, this, [this](int state) { _selectiveSync->setEnabled(state == Qt::Unchecked); @@ -540,10 +539,12 @@ void FolderWizardSelectiveSync::virtualFilesCheckboxClicked() // The click has already had an effect on the box, so if it's // checked it was newly activated. if (_virtualFilesCheckBox->isChecked()) { - OwncloudWizard::askExperimentalVirtualFilesFeature(this, [this](bool enable) { - if (!enable) - _virtualFilesCheckBox->setChecked(false); - }); + if (bestAvailableVfsMode() != Vfs::Mode::WindowsCfApi) { + OwncloudWizard::askExperimentalVirtualFilesFeature(this, [this](bool enable) { + if (!enable) + _virtualFilesCheckBox->setChecked(false); + }); + } } } diff --git a/src/gui/wizard/owncloudadvancedsetuppage.cpp b/src/gui/wizard/owncloudadvancedsetuppage.cpp index 4bfb73bb726..ec10e30f31c 100644 --- a/src/gui/wizard/owncloudadvancedsetuppage.cpp +++ b/src/gui/wizard/owncloudadvancedsetuppage.cpp @@ -61,6 +61,12 @@ OwncloudAdvancedSetupPage::OwncloudAdvancedSetupPage() connect(_ui.rSyncEverything, &QAbstractButton::clicked, this, &OwncloudAdvancedSetupPage::slotSyncEverythingClicked); connect(_ui.rVirtualFileSync, &QAbstractButton::clicked, this, &OwncloudAdvancedSetupPage::slotVirtualFileSyncClicked); + connect(_ui.rVirtualFileSync, &QRadioButton::toggled, this, [this](bool checked) { + if (checked) { + _ui.lSelectiveSyncSizeLabel->clear(); + _selectiveSyncBlacklist.clear(); + } + }); connect(_ui.bSelectiveSync, &QAbstractButton::clicked, this, &OwncloudAdvancedSetupPage::slotSelectiveSyncClicked); connect(_ui.rManualFolder, &QAbstractButton::clicked, this, [this] { setRadioChecked(_ui.rManualFolder); }); @@ -82,8 +88,14 @@ OwncloudAdvancedSetupPage::OwncloudAdvancedSetupPage() _ui.confTraillingSizeLabel->hide(); } - _ui.rVirtualFileSync->setText(tr("Use &virtual files instead of downloading content immediately %1").arg( - bestAvailableVfsMode() == Vfs::WindowsCfApi ? tr("(tech preview)") : tr("(experimental)"))); + _ui.rVirtualFileSync->setText(tr("Use &virtual files instead of downloading content immediately").arg(bestAvailableVfsMode() == Vfs::WindowsCfApi ? QString() : tr(" (experimental)"))); + +#ifdef Q_OS_WIN + if (bestAvailableVfsMode() == Vfs::WindowsCfApi) { + qobject_cast(_ui.wSyncStrategy->layout())->insertItem(0, _ui.lVirtualFileSync); + setRadioChecked(_ui.rVirtualFileSync); + } +#endif } void OwncloudAdvancedSetupPage::setupCustomization() @@ -362,14 +374,15 @@ void OwncloudAdvancedSetupPage::slotSelectiveSyncClicked() void OwncloudAdvancedSetupPage::slotVirtualFileSyncClicked() { if (!_ui.rVirtualFileSync->isChecked()) { - OwncloudWizard::askExperimentalVirtualFilesFeature(this, [this](bool enable) { - if (!enable) - return; - - _ui.lSelectiveSyncSizeLabel->setText(QString()); - _selectiveSyncBlacklist.clear(); + if (bestAvailableVfsMode() != Vfs::WindowsCfApi) { + OwncloudWizard::askExperimentalVirtualFilesFeature(this, [this](bool enable) { + if (!enable) + return; + setRadioChecked(_ui.rVirtualFileSync); + }); + } else { setRadioChecked(_ui.rVirtualFileSync); - }); + } } }