]> gitweb.stoutner.com Git - PrivacyBrowserPC.git/blobdiff - src/windows/BrowserWindow.cpp
Ghost DOM storage in Settings and Domain Settings unless both JavaScript and local...
[PrivacyBrowserPC.git] / src / windows / BrowserWindow.cpp
index 13e3c51ebbaa93ca054569b257bf7e0bba3deac7..7533432ec50d8a8cabc7268142e63240044f9394 100644 (file)
@@ -1574,6 +1574,9 @@ void BrowserWindow::showSettingsDialog()
     spellCheckSettingsUi.setupUi(spellCheckSettingsWidgetPointer);
 
     // Get handles for the widgets.
+    QCheckBox *javaScriptCheckBoxPointer = privacySettingsUi.kcfg_javaScriptEnabled;
+    QCheckBox *localStorageCheckBoxPointer = privacySettingsUi.kcfg_localStorageEnabled;
+    QCheckBox *domStorageCheckBoxPointer = privacySettingsUi.kcfg_domStorageEnabled;
     QComboBox *userAgentComboBoxPointer = privacySettingsUi.kcfg_userAgent;
     userAgentLabelPointer = privacySettingsUi.userAgentLabel;
     QComboBox *searchEngineComboBoxPointer = generalSettingsUi.kcfg_searchEngine;
@@ -1582,6 +1585,17 @@ void BrowserWindow::showSettingsDialog()
     QPushButton *browseButtonPointer = generalSettingsUi.browseButton;
     QListWidget *spellCheckListWidgetPointer = spellCheckSettingsUi.spellCheckListWidget;
 
+    // Create a save spell check languages lambda.
+    auto updateCheckBoxes = [javaScriptCheckBoxPointer, localStorageCheckBoxPointer, domStorageCheckBoxPointer] ()
+    {
+        // Only enable the DOM storage check box if both JavaScript and local storage are checked.
+        domStorageCheckBoxPointer->setEnabled(javaScriptCheckBoxPointer->isChecked() && localStorageCheckBoxPointer->isChecked());
+    };
+
+    // Update the status of the DOM storage check box when either JavaScript or local storage are changed.
+    connect(javaScriptCheckBoxPointer, &QCheckBox::stateChanged, this, updateCheckBoxes);
+    connect(localStorageCheckBoxPointer, &QCheckBox::stateChanged, this, updateCheckBoxes);
+
     // Populate the combo box labels.
     updateUserAgentLabel(userAgentComboBoxPointer->currentText());
     updateSearchEngineLabel(searchEngineComboBoxPointer->currentText());