X-Git-Url: https://gitweb.stoutner.com/?p=PrivacyBrowserPC.git;a=blobdiff_plain;f=src%2Fwindows%2FBrowserWindow.cpp;fp=src%2Fwindows%2FBrowserWindow.cpp;h=13f470e039dfd5d617b66690783beca80b410a8e;hp=03ababcb877893de2941c9cd409d92bd4d8d45e3;hb=455108aa18c90514c0dad3c12dfea98180dfb471;hpb=9514cabb5648123b68264e595e9ffef6261bd215 diff --git a/src/windows/BrowserWindow.cpp b/src/windows/BrowserWindow.cpp index 03ababc..13f470e 100644 --- a/src/windows/BrowserWindow.cpp +++ b/src/windows/BrowserWindow.cpp @@ -72,6 +72,7 @@ BrowserWindow::BrowserWindow() : KXmlGuiWindow() searchEngineYahooActionPointer = actionCollectionPointer->addAction(QStringLiteral("search_engine_yahoo")); searchEngineCustomActionPointer = actionCollectionPointer->addAction(QStringLiteral("search_engine_custom")); javaScriptActionPointer = actionCollectionPointer->addAction(QStringLiteral("javascript")); + localStorageActionPointer = actionCollectionPointer->addAction(QStringLiteral("local_storage")); domainSettingsActionPointer = actionCollectionPointer->addAction(QStringLiteral("domain_settings")); // Create the action groups @@ -127,6 +128,7 @@ BrowserWindow::BrowserWindow() : KXmlGuiWindow() searchEngineBingActionPointer->setText(i18nc("Search engine", "Bing")); searchEngineYahooActionPointer->setText(i18nc("Search engine", "Yahoo")); javaScriptActionPointer->setText(i18nc("JavaScript button", "JavaScript")); + localStorageActionPointer->setText(i18nc("Local Storage Button", "Local Storage")); domainSettingsActionPointer->setText(i18nc("Domain Settings button", "Domain Settings")); // Set the action icons. @@ -162,12 +164,14 @@ BrowserWindow::BrowserWindow() : KXmlGuiWindow() // Connect the URL toolbar actions. connect(javaScriptActionPointer, SIGNAL(triggered()), this, SLOT(toggleJavaScript())); + connect(localStorageActionPointer, SIGNAL(triggered()), this, SLOT(toggleLocalStorage())); connect(domainSettingsActionPointer, SIGNAL(triggered()), this, SLOT(openDomainSettings())); // Update the URL toolbar actions. connect(browserViewPointer, SIGNAL(updateBackAction(bool)), backActionPointer, SLOT(setEnabled(bool))); connect(browserViewPointer, SIGNAL(updateForwardAction(bool)), forwardActionPointer, SLOT(setEnabled(bool))); connect(browserViewPointer, SIGNAL(updateJavaScriptAction(bool)), this, SLOT(updateJavaScriptAction(bool))); + connect(browserViewPointer, SIGNAL(updateLocalStorageAction(bool)), this, SLOT(updateLocalStorageAction(bool))); // Setup the GUI based on the browser_ui.rc file. setupGUI(StandardWindowOption::Default, ("browser_ui.rc")); @@ -179,9 +183,7 @@ BrowserWindow::BrowserWindow() : KXmlGuiWindow() urlLineEditPointer = new KLineEdit(); // Populate the URL toolbar. - urlToolBarPointer->addWidget(urlLineEditPointer); - urlToolBarPointer->addAction(javaScriptActionPointer); - urlToolBarPointer->addAction(domainSettingsActionPointer); + urlToolBarPointer->insertWidget(javaScriptActionPointer, urlLineEditPointer); // Load a new URL from the URL line edit. connect(urlLineEditPointer, SIGNAL(returnKeyPressed(const QString)), this, SLOT(loadUrlFromLineEdit(const QString))); @@ -324,15 +326,6 @@ void BrowserWindow::showProgressBar(const int &progress) const progressBarPointer->show(); } -void BrowserWindow::toggleJavaScript() const -{ - // Remove the focus from the URL line edit. - urlLineEditPointer->clearFocus(); - - // Toggle JavaScript. - browserViewPointer->toggleJavaScript(); -} - QSize BrowserWindow::sizeHint() const { // Return the default window size. @@ -414,6 +407,24 @@ void BrowserWindow::settingsConfigure() } } +void BrowserWindow::toggleJavaScript() const +{ + // Remove the focus from the URL line edit. + urlLineEditPointer->clearFocus(); + + // Toggle JavaScript. + browserViewPointer->toggleJavaScript(); +} + +void BrowserWindow::toggleLocalStorage() const +{ + // Remove the focus from the URL line edit. + urlLineEditPointer->clearFocus(); + + // Toggle JavaScript. + browserViewPointer->toggleLocalStorage(); +} + void BrowserWindow::updateDomainSettingsIndicator(const bool &status) const { // Set the domain palette according to the status. @@ -428,6 +439,13 @@ void BrowserWindow::updateJavaScriptAction(const bool &isEnabled) const else javaScriptActionPointer->setIcon(QIcon(":/icons/privacy-mode")); } +void BrowserWindow::updateLocalStorageAction(const bool &isEnabled) const +{ + // Set the icon according to the status. + if (isEnabled) localStorageActionPointer->setIcon(QIcon::fromTheme("disk-quota-low")); + else localStorageActionPointer->setIcon(QIcon::fromTheme("disk-quota")); +} + void BrowserWindow::updateSearchEngineActions(const QString &searchEngine) const { // Initialize the custom search engine flag.