diff options
Diffstat (limited to 'src/settings')
-rw-r--r-- | src/settings/advancedwidget.cpp | 64 | ||||
-rw-r--r-- | src/settings/advancedwidget.h | 59 | ||||
-rw-r--r-- | src/settings/generalwidget.cpp | 8 | ||||
-rw-r--r-- | src/settings/privacywidget.cpp | 114 | ||||
-rw-r--r-- | src/settings/privacywidget.h | 63 | ||||
-rw-r--r-- | src/settings/settings_advanced.ui | 153 | ||||
-rw-r--r-- | src/settings/settings_appearance.ui | 582 | ||||
-rw-r--r-- | src/settings/settings_general.ui | 41 | ||||
-rw-r--r-- | src/settings/settings_privacy.ui | 260 | ||||
-rw-r--r-- | src/settings/settings_webkit.ui | 93 | ||||
-rw-r--r-- | src/settings/settingsdialog.cpp | 36 | ||||
-rw-r--r-- | src/settings/webkitwidget.cpp | 15 | ||||
-rw-r--r-- | src/settings/webkitwidget.h | 1 |
13 files changed, 1013 insertions, 476 deletions
diff --git a/src/settings/advancedwidget.cpp b/src/settings/advancedwidget.cpp new file mode 100644 index 00000000..a9ecebfe --- /dev/null +++ b/src/settings/advancedwidget.cpp @@ -0,0 +1,64 @@ +/* ============================================================ +* +* This file is a part of the rekonq project +* +* Copyright (C) 2012 by Andrea Diamantini <adjam7 at gmail dot com> +* +* +* This program is free software; you can redistribute it and/or +* modify it under the terms of the GNU General Public License as +* published by the Free Software Foundation; either version 2 of +* the License or (at your option) version 3 or any later version +* accepted by the membership of KDE e.V. (or its successor approved +* by the membership of KDE e.V.), which shall act as a proxy +* defined in Section 14 of version 3 of the license. +* +* This program is distributed in the hope that it will be useful, +* but WITHOUT ANY WARRANTY; without even the implied warranty of +* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +* GNU General Public License for more details. +* +* You should have received a copy of the GNU General Public License +* along with this program. If not, see <http://www.gnu.org/licenses/>. +* +* ============================================================ */ + + +// Local Includes +#include "advancedwidget.h" +#include "advancedwidget.moc" + +// KDE Includes +#include <KDebug> + + +AdvancedWidget::AdvancedWidget(QWidget *parent) + : QWidget(parent) + , _changed(false) +{ + setupUi(this); + + connect(proxyButton, SIGNAL(clicked()), this, SLOT(launchProxySettings())); +} + + +void AdvancedWidget::save() +{ +} + + +bool AdvancedWidget::changed() +{ + return _changed; +} + + +void AdvancedWidget::hasChanged() +{ +} + + +void AdvancedWidget::launchProxySettings() +{ + kDebug() << "PROXY"; +} diff --git a/src/settings/advancedwidget.h b/src/settings/advancedwidget.h new file mode 100644 index 00000000..88fcf2af --- /dev/null +++ b/src/settings/advancedwidget.h @@ -0,0 +1,59 @@ +/* ============================================================ +* +* This file is a part of the rekonq project +* +* Copyright (C) 2012 by Andrea Diamantini <adjam7 at gmail dot com> +* +* +* This program is free software; you can redistribute it and/or +* modify it under the terms of the GNU General Public License as +* published by the Free Software Foundation; either version 2 of +* the License or (at your option) version 3 or any later version +* accepted by the membership of KDE e.V. (or its successor approved +* by the membership of KDE e.V.), which shall act as a proxy +* defined in Section 14 of version 3 of the license. +* +* This program is distributed in the hope that it will be useful, +* but WITHOUT ANY WARRANTY; without even the implied warranty of +* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +* GNU General Public License for more details. +* +* You should have received a copy of the GNU General Public License +* along with this program. If not, see <http://www.gnu.org/licenses/>. +* +* ============================================================ */ + + +#ifndef ADVANCED_WIDGET_H +#define ADVANCED_WIDGET_H + + +// Ui Includes +#include "ui_settings_advanced.h" + +// Qt Includes +#include <QWidget> + + +class AdvancedWidget : public QWidget, private Ui::advanced +{ + Q_OBJECT + +public: + AdvancedWidget(QWidget *parent = 0); + + void save(); + bool changed(); + +Q_SIGNALS: + void changed(bool); + +private Q_SLOTS: + void hasChanged(); + void launchProxySettings(); + +private: + bool _changed; +}; + +#endif // ADVANCED_WIDGET_H diff --git a/src/settings/generalwidget.cpp b/src/settings/generalwidget.cpp index 226c11c9..9e19f801 100644 --- a/src/settings/generalwidget.cpp +++ b/src/settings/generalwidget.cpp @@ -55,10 +55,6 @@ GeneralWidget::GeneralWidget(QWidget *parent) checkKGetPresence(); - KConfigGroup cg = KConfigGroup(KSharedConfig::openConfig("kioslaverc", KConfig::NoGlobals), QString()); - doNotTrackCheckBox->setChecked(cg.readEntry("DoNotTrack", false)); - - connect(doNotTrackCheckBox, SIGNAL(clicked()), this, SLOT(hasChanged())); connect(kcfg_homePage, SIGNAL(editingFinished()), this, SLOT(fixHomePageURL())); kcfg_downloadPath->setMode(KFile::Directory); @@ -76,10 +72,6 @@ void GeneralWidget::save() { ReKonfig::setAskDownloadPath(askDownloadYes->isChecked()); - KConfigGroup cg = KConfigGroup(KSharedConfig::openConfig("kioslaverc", KConfig::NoGlobals), QString()); - cg.writeEntry("DoNotTrack", doNotTrackCheckBox->isChecked()); - cg.sync(); - _changed = false; } diff --git a/src/settings/privacywidget.cpp b/src/settings/privacywidget.cpp new file mode 100644 index 00000000..789c29b1 --- /dev/null +++ b/src/settings/privacywidget.cpp @@ -0,0 +1,114 @@ +/* ============================================================ +* +* This file is a part of the rekonq project +* +* Copyright (C) 2012 by Andrea Diamantini <adjam7 at gmail dot com> +* +* +* This program is free software; you can redistribute it and/or +* modify it under the terms of the GNU General Public License as +* published by the Free Software Foundation; either version 2 of +* the License or (at your option) version 3 or any later version +* accepted by the membership of KDE e.V. (or its successor approved +* by the membership of KDE e.V.), which shall act as a proxy +* defined in Section 14 of version 3 of the license. +* +* This program is distributed in the hope that it will be useful, +* but WITHOUT ANY WARRANTY; without even the implied warranty of +* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +* GNU General Public License for more details. +* +* You should have received a copy of the GNU General Public License +* along with this program. If not, see <http://www.gnu.org/licenses/>. +* +* ============================================================ */ + + +// Local Includes +#include "privacywidget.h" +#include "privacywidget.moc" + +// Auto Includes +#include "rekonq.h" + +// KDE Includes +#include <KDebug> + + +PrivacyWidget::PrivacyWidget(QWidget *parent) + : QWidget(parent) + , _changed(false) +{ + setupUi(this); + + // JAVASCRIPT + updateJavascriptSettings(ReKonfig::javascriptEnabled()); + + // DO NOT TRACK + KConfigGroup cg = KConfigGroup(KSharedConfig::openConfig("kioslaverc", KConfig::NoGlobals), QString()); + doNotTrackCheckBox->setChecked(cg.readEntry("DoNotTrack", false)); + connect(doNotTrackCheckBox, SIGNAL(clicked()), this, SLOT(hasChanged())); + + // CACHE & COOKIES + connect(cacheButton, SIGNAL(clicked()), this, SLOT(launchCacheSettings())); + connect(cookiesButton, SIGNAL(clicked()), this, SLOT(launchCookieSettings())); + + // PASSWORDS + connect(managePassExceptionsButton, SIGNAL(clicked()), this, SLOT(showPassExceptions())); +} + + +void PrivacyWidget::save() +{ + KConfigGroup cg = KConfigGroup(KSharedConfig::openConfig("kioslaverc", KConfig::NoGlobals), QString()); + cg.writeEntry("DoNotTrack", doNotTrackCheckBox->isChecked()); + cg.sync(); +} + + +bool PrivacyWidget::changed() +{ + return _changed; +} + + +void PrivacyWidget::hasChanged() +{ +} + + +void PrivacyWidget::updateJavascriptSettings(bool b) +{ + kcfg_javascriptCanAccessClipboard->setEnabled(b); + kcfg_javascriptCanOpenWindows->setEnabled(b); + + if (b) + { + kcfg_javascriptCanOpenWindows->setToolTip(i18n("If enabled, JavaScript programs are allowed to open new windows.")); + kcfg_javascriptCanAccessClipboard->setToolTip(i18n("If enabled, JavaScript programs are allowed to read from and to write to the clipboard.")); + } + else + { + QString str = i18n("Javascript is NOT enabled, cannot change this settings"); + kcfg_javascriptCanOpenWindows->setToolTip(str); + kcfg_javascriptCanAccessClipboard->setToolTip(str); + } +} + + +void PrivacyWidget::launchCacheSettings() +{ + kDebug() << "CACHE"; +} + + +void PrivacyWidget::launchCookieSettings() +{ + kDebug() << "COOKIES"; +} + + +void PrivacyWidget::showPassExceptions() +{ + kDebug() << "PASS EXCEPTIONS"; +} diff --git a/src/settings/privacywidget.h b/src/settings/privacywidget.h new file mode 100644 index 00000000..6d14e57f --- /dev/null +++ b/src/settings/privacywidget.h @@ -0,0 +1,63 @@ +/* ============================================================ +* +* This file is a part of the rekonq project +* +* Copyright (C) 2012 by Andrea Diamantini <adjam7 at gmail dot com> +* +* +* This program is free software; you can redistribute it and/or +* modify it under the terms of the GNU General Public License as +* published by the Free Software Foundation; either version 2 of +* the License or (at your option) version 3 or any later version +* accepted by the membership of KDE e.V. (or its successor approved +* by the membership of KDE e.V.), which shall act as a proxy +* defined in Section 14 of version 3 of the license. +* +* This program is distributed in the hope that it will be useful, +* but WITHOUT ANY WARRANTY; without even the implied warranty of +* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +* GNU General Public License for more details. +* +* You should have received a copy of the GNU General Public License +* along with this program. If not, see <http://www.gnu.org/licenses/>. +* +* ============================================================ */ + + +#ifndef PRIVACY_WIDGET_H +#define PRIVACY_WIDGET_H + + +// Ui Includes +#include "ui_settings_privacy.h" + +// Qt Includes +#include <QWidget> + + +class PrivacyWidget : public QWidget, private Ui::privacy +{ + Q_OBJECT + +public: + PrivacyWidget(QWidget *parent = 0); + + void save(); + bool changed(); + +Q_SIGNALS: + void changed(bool); + +private Q_SLOTS: + void hasChanged(); + void updateJavascriptSettings(bool); + + void launchCacheSettings(); + void launchCookieSettings(); + void showPassExceptions(); + +private: + bool _changed; +}; + +#endif // PRIVACY_WIDGET_H diff --git a/src/settings/settings_advanced.ui b/src/settings/settings_advanced.ui new file mode 100644 index 00000000..8680afb3 --- /dev/null +++ b/src/settings/settings_advanced.ui @@ -0,0 +1,153 @@ +<?xml version="1.0" encoding="UTF-8"?> +<ui version="4.0"> + <class>advanced</class> + <widget class="QWidget" name="advanced"> + <property name="geometry"> + <rect> + <x>0</x> + <y>0</y> + <width>480</width> + <height>440</height> + </rect> + </property> + <layout class="QVBoxLayout" name="verticalLayout_3"> + <item> + <widget class="QGroupBox" name="groupBox_2"> + <property name="title"> + <string>Proxy</string> + </property> + <layout class="QHBoxLayout" name="horizontalLayout"> + <item> + <widget class="QLabel" name="label"> + <property name="text"> + <string>Rekonq is using your system's proxy settings</string> + </property> + </widget> + </item> + <item> + <spacer name="horizontalSpacer"> + <property name="orientation"> + <enum>Qt::Horizontal</enum> + </property> + <property name="sizeHint" stdset="0"> + <size> + <width>60</width> + <height>20</height> + </size> + </property> + </spacer> + </item> + <item> + <widget class="QPushButton" name="proxyButton"> + <property name="text"> + <string>Change them!</string> + </property> + <property name="icon"> + <iconset theme="preferences-system-network"/> + </property> + </widget> + </item> + </layout> + </widget> + </item> + <item> + <widget class="QGroupBox" name="groupBox"> + <property name="title"> + <string>misc</string> + </property> + <layout class="QVBoxLayout" name="verticalLayout"> + <item> + <widget class="QCheckBox" name="kcfg_hScrollWheelHistory"> + <property name="text"> + <string>Use horizontal scroll wheel to go through web history</string> + </property> + </widget> + </item> + <item> + <widget class="QCheckBox" name="kcfg_useFavicon"> + <property name="text"> + <string>Use favicon of the current website as window icon</string> + </property> + </widget> + </item> + <item> + <widget class="QCheckBox" name="kcfg_smoothScrolling"> + <property name="toolTip"> + <string>Scroll pages with an eye candy effect</string> + </property> + <property name="text"> + <string>Enable smooth scrolling</string> + </property> + <property name="checked"> + <bool>true</bool> + </property> + </widget> + </item> + <item> + <widget class="QCheckBox" name="kcfg_enableViShortcuts"> + <property name="text"> + <string>Enable Vi-like navigation shortcuts</string> + </property> + </widget> + </item> + <item> + <widget class="QCheckBox" name="kcfg_accessKeysEnabled"> + <property name="text"> + <string>Enable keyboard navigation using the Ctrl key</string> + </property> + </widget> + </item> + <item> + <layout class="QHBoxLayout" name="horizontalLayout_3"> + <item> + <widget class="QLabel" name="label_11"> + <property name="text"> + <string>Middle click should:</string> + </property> + <property name="alignment"> + <set>Qt::AlignLeading|Qt::AlignLeft|Qt::AlignVCenter</set> + </property> + </widget> + </item> + <item> + <widget class="QComboBox" name="kcfg_middleClickAction"> + <item> + <property name="text"> + <string>Auto-scroll</string> + </property> + </item> + <item> + <property name="text"> + <string>Load Clipboard URL</string> + </property> + </item> + <item> + <property name="text"> + <string>Do Nothing</string> + </property> + </item> + </widget> + </item> + </layout> + </item> + </layout> + </widget> + </item> + <item> + <spacer name="verticalSpacer"> + <property name="orientation"> + <enum>Qt::Vertical</enum> + </property> + <property name="sizeHint" stdset="0"> + <size> + <width>20</width> + <height>155</height> + </size> + </property> + </spacer> + </item> + </layout> + </widget> + <resources/> + <connections/> +</ui> diff --git a/src/settings/settings_appearance.ui b/src/settings/settings_appearance.ui index 651807b7..b0232089 100644 --- a/src/settings/settings_appearance.ui +++ b/src/settings/settings_appearance.ui @@ -6,359 +6,255 @@ <rect> <x>0</x> <y>0</y> - <width>494</width> - <height>472</height> + <width>570</width> + <height>562</height> </rect> </property> <property name="windowTitle"> <string>Appearance</string> </property> - <layout class="QHBoxLayout" name="horizontalLayout"> + <layout class="QVBoxLayout" name="verticalLayout"> <item> - <widget class="QTabWidget" name="tabWidget"> - <property name="currentIndex"> - <number>0</number> + <widget class="QGroupBox" name="groupBox"> + <property name="title"> + <string>Fonts</string> </property> - <widget class="QWidget" name="tabFont"> - <attribute name="title"> - <string>Fonts</string> - </attribute> - <layout class="QVBoxLayout" name="verticalLayout_4"> - <item> - <widget class="QGroupBox" name="groupBox"> - <property name="title"> - <string>Fonts</string> - </property> - <layout class="QVBoxLayout" name="verticalLayout_2"> - <item> - <layout class="QGridLayout" name="gridLayout"> - <item row="0" column="0"> - <widget class="QLabel" name="label"> - <property name="sizePolicy"> - <sizepolicy hsizetype="Maximum" vsizetype="Preferred"> - <horstretch>0</horstretch> - <verstretch>0</verstretch> - </sizepolicy> - </property> - <property name="minimumSize"> - <size> - <width>150</width> - <height>0</height> - </size> - </property> - <property name="text"> - <string>Standard font:</string> - </property> - <property name="alignment"> - <set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set> - </property> - </widget> - </item> - <item row="1" column="0"> - <widget class="QLabel" name="label_2"> - <property name="sizePolicy"> - <sizepolicy hsizetype="Maximum" vsizetype="Preferred"> - <horstretch>0</horstretch> - <verstretch>0</verstretch> - </sizepolicy> - </property> - <property name="minimumSize"> - <size> - <width>150</width> - <height>0</height> - </size> - </property> - <property name="text"> - <string>Fixed font:</string> - </property> - <property name="alignment"> - <set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set> - </property> - </widget> - </item> - <item row="2" column="0"> - <widget class="QLabel" name="label_3"> - <property name="text"> - <string>Serif font:</string> - </property> - <property name="alignment"> - <set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set> - </property> - </widget> - </item> - <item row="0" column="1"> - <widget class="KFontComboBox" name="standardFontChooser"/> - </item> - <item row="3" column="0"> - <widget class="QLabel" name="label_6"> - <property name="text"> - <string>Sans Serif font:</string> - </property> - <property name="alignment"> - <set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set> - </property> - </widget> - </item> - <item row="1" column="1"> - <widget class="KFontComboBox" name="fixedFontChooser"/> - </item> - <item row="2" column="1"> - <widget class="KFontComboBox" name="serifFontChooser"/> - </item> - <item row="3" column="1"> - <widget class="KFontComboBox" name="sansSerifFontChooser"/> - </item> - <item row="4" column="0"> - <widget class="QLabel" name="label_7"> - <property name="text"> - <string>Cursive font:</string> - </property> - <property name="alignment"> - <set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set> - </property> - </widget> - </item> - <item row="4" column="1"> - <widget class="KFontComboBox" name="cursiveFontChooser"/> - </item> - <item row="5" column="0"> - <widget class="QLabel" name="label_8"> - <property name="text"> - <string>Fantasy font:</string> - </property> - <property name="alignment"> - <set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set> - </property> - </widget> - </item> - <item row="5" column="1"> - <widget class="KFontComboBox" name="fantasyFontChooser"/> - </item> - </layout> - </item> - </layout> - </widget> - </item> - <item> - <widget class="QGroupBox" name="groupBox_2"> - <property name="title"> - <string>Size</string> - </property> - <layout class="QGridLayout" name="gridLayout_2"> - <item row="0" column="0"> - <widget class="QLabel" name="label_9"> - <property name="sizePolicy"> - <sizepolicy hsizetype="Preferred" vsizetype="Preferred"> - <horstretch>0</horstretch> - <verstretch>0</verstretch> - </sizepolicy> - </property> - <property name="minimumSize"> - <size> - <width>150</width> - <height>0</height> - </size> - </property> - <property name="text"> - <string>Default font size:</string> - </property> - <property name="alignment"> - <set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set> - </property> - </widget> - </item> - <item row="0" column="1"> - <widget class="KIntNumInput" name="kcfg_defaultFontSize"/> - </item> - <item row="1" column="0"> - <widget class="QLabel" name="label_4"> - <property name="sizePolicy"> - <sizepolicy hsizetype="Preferred" vsizetype="Preferred"> - <horstretch>0</horstretch> - <verstretch>0</verstretch> - </sizepolicy> - </property> - <property name="minimumSize"> - <size> - <width>150</width> - <height>0</height> - </size> - </property> - <property name="text"> - <string>Minimal font size:</string> - </property> - <property name="alignment"> - <set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set> - </property> - </widget> - </item> - <item row="1" column="1"> - <widget class="KIntNumInput" name="kcfg_minFontSize"/> - </item> - </layout> - </widget> - </item> - <item> - <widget class="QGroupBox" name="groupBox_4"> - <property name="title"> - <string>Character Encoding</string> - </property> - <layout class="QHBoxLayout" name="horizontalLayout_2"> - <item> - <widget class="QLabel" name="label_10"> - <property name="text"> - <string>Default character encoding:</string> - </property> - </widget> - </item> - <item> - <widget class="KComboBox" name="encodingCombo"/> - </item> - </layout> - </widget> - </item> - <item> - <spacer name="verticalSpacer_3"> - <property name="orientation"> - <enum>Qt::Vertical</enum> - </property> - <property name="sizeHint" stdset="0"> - <size> - <width>20</width> - <height>84</height> - </size> - </property> - </spacer> - </item> - </layout> - </widget> - <widget class="QWidget" name="tabStyleSheet"> - <attribute name="title"> - <string>Stylesheets</string> - </attribute> - <layout class="QVBoxLayout" name="verticalLayout_3"> - <item> - <widget class="QGroupBox" name="groupBox_3"> - <property name="title"> - <string>Custom Style Sheet</string> - </property> - <layout class="QFormLayout" name="formLayout_3"> - <property name="fieldGrowthPolicy"> - <enum>QFormLayout::ExpandingFieldsGrow</enum> + <layout class="QVBoxLayout" name="verticalLayout_2"> + <item> + <layout class="QGridLayout" name="gridLayout"> + <item row="0" column="0"> + <widget class="QLabel" name="label"> + <property name="sizePolicy"> + <sizepolicy hsizetype="Maximum" vsizetype="Preferred"> + <horstretch>0</horstretch> + <verstretch>0</verstretch> + </sizepolicy> </property> - <item row="0" column="0"> - <widget class="QLabel" name="label_5"> - <property name="minimumSize"> - <size> - <width>150</width> - <height>0</height> - </size> - </property> - <property name="text"> - <string>Path to custom CSS file:</string> - </property> - <property name="alignment"> - <set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set> - </property> - </widget> - </item> - <item row="0" column="1"> - <widget class="KUrlRequester" name="kcfg_userCSS"> - <property name="filter"> - <string>*.css</string> - </property> - </widget> - </item> - </layout> - </widget> - </item> - <item> - <spacer name="verticalSpacer_2"> - <property name="orientation"> - <enum>Qt::Vertical</enum> - </property> - <property name="sizeHint" stdset="0"> - <size> - <width>20</width> - <height>527</height> - </size> - </property> - </spacer> - </item> - </layout> - </widget> - <widget class="QWidget" name="tabMisc"> - <attribute name="title"> - <string>Misc</string> - </attribute> - <layout class="QVBoxLayout" name="verticalLayout"> - <item> - <widget class="QCheckBox" name="kcfg_smoothScrolling"> - <property name="toolTip"> - <string>Scroll pages with an eye candy effect</string> - </property> - <property name="text"> - <string>Enable smooth scrolling</string> - </property> - <property name="checked"> - <bool>true</bool> - </property> - </widget> - </item> - <item> - <widget class="QCheckBox" name="kcfg_useFavicon"> - <property name="text"> - <string>Use favicon of the current website as window icon</string> - </property> - </widget> - </item> - <item> - <layout class="QHBoxLayout" name="horizontalLayout_3"> - <item> - <widget class="QLabel" name="label_11"> - <property name="text"> - <string>Middle click should:</string> - </property> - </widget> - </item> - <item> - <widget class="QComboBox" name="kcfg_middleClickAction"> - <item> - <property name="text"> - <string>Auto-scroll</string> - </property> - </item> - <item> - <property name="text"> - <string>Load Clipboard URL</string> - </property> - </item> - <item> - <property name="text"> - <string>Do Nothing</string> - </property> - </item> - </widget> - </item> - </layout> - </item> - <item> - <spacer name="verticalSpacer"> - <property name="orientation"> - <enum>Qt::Vertical</enum> - </property> - <property name="sizeHint" stdset="0"> - <size> - <width>20</width> - <height>513</height> - </size> - </property> - </spacer> - </item> - </layout> - </widget> + <property name="minimumSize"> + <size> + <width>150</width> + <height>0</height> + </size> + </property> + <property name="text"> + <string>Standard font:</string> + </property> + <property name="alignment"> + <set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set> + </property> + </widget> + </item> + <item row="1" column="0"> + <widget class="QLabel" name="label_2"> + <property name="sizePolicy"> + <sizepolicy hsizetype="Maximum" vsizetype="Preferred"> + <horstretch>0</horstretch> + <verstretch>0</verstretch> + </sizepolicy> + </property> + <property name="minimumSize"> + <size> + <width>150</width> + <height>0</height> + </size> + </property> + <property name="text"> + <string>Fixed font:</string> + </property> + <property name="alignment"> + <set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set> + </property> + </widget> + </item> + <item row="2" column="0"> + <widget class="QLabel" name="label_3"> + <property name="text"> + <string>Serif font:</string> + </property> + <property name="alignment"> + <set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set> + </property> + </widget> + </item> + <item row="0" column="1"> + <widget class="KFontComboBox" name="standardFontChooser"/> + </item> + <item row="3" column="0"> + <widget class="QLabel" name="label_6"> + <property name="text"> + <string>Sans Serif font:</string> + </property> + <property name="alignment"> + <set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set> + </property> + </widget> + </item> + <item row="1" column="1"> + <widget class="KFontComboBox" name="fixedFontChooser"/> + </item> + <item row="2" column="1"> + <widget class="KFontComboBox" name="serifFontChooser"/> + </item> + <item row="3" column="1"> + <widget class="KFontComboBox" name="sansSerifFontChooser"/> + </item> + <item row="4" column="0"> + <widget class="QLabel" name="label_7"> + <property name="text"> + <string>Cursive font:</string> + </property> + <property name="alignment"> + <set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set> + </property> + </widget> + </item> + <item row="4" column="1"> + <widget class="KFontComboBox" name="cursiveFontChooser"/> + </item> + <item row="5" column="0"> + <widget class="QLabel" name="label_8"> + <property name="text"> + <string>Fantasy font:</string> + </property> + <property name="alignment"> + <set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set> + </property> + </widget> + </item> + <item row="5" column="1"> + <widget class="KFontComboBox" name="fantasyFontChooser"/> + </item> + </layout> + </item> + </layout> </widget> </item> + <item> + <widget class="QGroupBox" name="groupBox_2"> + <property name="title"> + <string>Font size</string> + </property> + <layout class="QGridLayout" name="gridLayout_2"> + <item row="0" column="0"> + <widget class="QLabel" name="label_9"> + <property name="sizePolicy"> + <sizepolicy hsizetype="Preferred" vsizetype="Preferred"> + <horstretch>0</horstretch> + <verstretch>0</verstretch> + </sizepolicy> + </property> + <property name="minimumSize"> + <size> + <width>150</width> + <height>0</height> + </size> + </property> + <property name="text"> + <string>Default font size:</string> + </property> + <property name="alignment"> + <set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set> + </property> + </widget> + </item> + <item row="0" column="1"> + <widget class="KIntNumInput" name="kcfg_defaultFontSize"/> + </item> + <item row="1" column="0"> + <widget class="QLabel" name="label_4"> + <property name="sizePolicy"> + <sizepolicy hsizetype="Preferred" vsizetype="Preferred"> + <horstretch>0</horstretch> + <verstretch>0</verstretch> + </sizepolicy> + </property> + <property name="minimumSize"> + <size> + <width>150</width> + <height>0</height> + </size> + </property> + <property name="text"> + <string>Minimal font size:</string> + </property> + <property name="alignment"> + <set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set> + </property> + </widget> + </item> + <item row="1" column="1"> + <widget class="KIntNumInput" name="kcfg_minFontSize"/> + </item> + </layout> + </widget> + </item> + <item> + <widget class="QGroupBox" name="groupBox_4"> + <property name="title"> + <string>Character Encoding</string> + </property> + <layout class="QHBoxLayout" name="horizontalLayout_2"> + <item> + <widget class="QLabel" name="label_10"> + <property name="text"> + <string>Default character encoding:</string> + </property> + </widget> + </item> + <item> + <widget class="KComboBox" name="encodingCombo"/> + </item> + </layout> + </widget> + </item> + <item> + <widget class="QGroupBox" name="groupBox_3"> + <property name="title"> + <string>Custom Style Sheet</string> + </property> + <layout class="QFormLayout" name="formLayout_3"> + <property name="fieldGrowthPolicy"> + <enum>QFormLayout::ExpandingFieldsGrow</enum> + </property> + <item row="0" column="0"> + <widget class="QLabel" name="label_5"> + <property name="minimumSize"> + <size> + <width>150</width> + <height>0</height> + </size> + </property> + <property name="text"> + <string>Path to custom CSS file:</string> + </property> + <property name="alignment"> + <set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set> + </property> + </widget> + </item> + <item row="0" column="1"> + <widget class="KUrlRequester" name="kcfg_userCSS"> + <property name="filter"> + <string>*.css</string> + </property> + </widget> + </item> + </layout> + </widget> + </item> + <item> + <spacer name="verticalSpacer_3"> + <property name="orientation"> + <enum>Qt::Vertical</enum> + </property> + <property name="sizeHint" stdset="0"> + <size> + <width>20</width> + <height>149</height> + </size> + </property> + </spacer> + </item> </layout> </widget> <customwidgets> diff --git a/src/settings/settings_general.ui b/src/settings/settings_general.ui index 908f1c27..7d4419b8 100644 --- a/src/settings/settings_general.ui +++ b/src/settings/settings_general.ui @@ -6,8 +6,8 @@ <rect> <x>0</x> <y>0</y> - <width>480</width> - <height>571</height> + <width>573</width> + <height>410</height> </rect> </property> <property name="windowTitle"> @@ -231,43 +231,6 @@ </widget> </item> <item> - <widget class="QGroupBox" name="groupBox_5"> - <property name="title"> - <string>Misc</string> - </property> - <layout class="QVBoxLayout" name="verticalLayout_3"> - <item> - <widget class="QCheckBox" name="kcfg_hScrollWheelHistory"> - <property name="text"> - <string>Use horizontal scroll wheel to go through web history</string> - </property> - </widget> - </item> - <item> - <widget class="QCheckBox" name="doNotTrackCheckBox"> - <property name="text"> - <string>Send DNT headers to tell websites you don't want to be tracked</string> - </property> - </widget> - </item> - <item> - <widget class="QCheckBox" name="kcfg_enableViShortcuts"> - <property name="text"> - <string>Enable Vi-like navigation shortcuts</string> - </property> - </widget> - </item> - <item> - <widget class="QCheckBox" name="kcfg_accessKeysEnabled"> - <property name="text"> - <string>Enable keyboard navigation using the Ctrl key</string> - </property> - </widget> - </item> - </layout> - </widget> - </item> - <item> <spacer name="verticalSpacer"> <property name="orientation"> <enum>Qt::Vertical</enum> diff --git a/src/settings/settings_privacy.ui b/src/settings/settings_privacy.ui new file mode 100644 index 00000000..40fe5c9a --- /dev/null +++ b/src/settings/settings_privacy.ui @@ -0,0 +1,260 @@ +<?xml version="1.0" encoding="UTF-8"?> +<ui version="4.0"> + <class>privacy</class> + <widget class="QWidget" name="privacy"> + <property name="geometry"> + <rect> + <x>0</x> + <y>0</y> + <width>535</width> + <height>520</height> + </rect> + </property> + <layout class="QVBoxLayout" name="verticalLayout_7"> + <item> + <widget class="QGroupBox" name="groupBox_4"> + <property name="title"> + <string>Javascript</string> + </property> + <layout class="QVBoxLayout" name="verticalLayout_5"> + <item> + <widget class="QCheckBox" name="kcfg_javascriptCanOpenWindows"> + <property name="text"> + <string>Let Javascript open new windows</string> + </property> + </widget> + </item> + <item> + <widget class="QCheckBox" name="kcfg_javascriptCanAccessClipboard"> + <property name="text"> + <string>Let Javascript access clipboard</string> + </property> + </widget> + </item> + </layout> + </widget> + </item> + <item> + <widget class="QGroupBox" name="groupBox"> + <property name="title"> + <string>Tracking</string> + </property> + <layout class="QVBoxLayout" name="verticalLayout_3"> + <item> + <widget class="QCheckBox" name="doNotTrackCheckBox"> + <property name="text"> + <string>Send DNT headers to tell websites you don't want to be tracked</string> + </property> + </widget> + </item> + </layout> + </widget> + </item> + <item> + <widget class="QGroupBox" name="groupBox_2"> + <property name="title"> + <string>History</string> + </property> + <layout class="QVBoxLayout" name="verticalLayout"> + <item> + <layout class="QHBoxLayout" name="horizontalLayout"> + <item> + <widget class="QLabel" name="label"> + <property name="text"> + <string>Remove history items:</string> + </property> + </widget> + </item> + <item> + <widget class="QComboBox" name="kcfg_historyMaintainingPeriod"> + <item> + <property name="text"> + <string>don't even store them</string> + </property> + </item> + <item> + <property name="text"> + <string>at application exit</string> + </property> + </item> + <item> + <property name="text"> + <string>every day</string> + </property> + </item> + <item> + <property name="text"> + <string>every month</string> + </property> + </item> + <item> + <property name="text"> + <string>every 3 months</string> + </property> + </item> + <item> + <property name="text"> + <string>never</string> + </property> + </item> + </widget> + </item> + </layout> + </item> + </layout> + </widget> + </item> + <item> + <widget class="QGroupBox" name="groupBox_5"> + <property name="title"> + <string>Passwords</string> + </property> + <layout class="QVBoxLayout" name="verticalLayout_4"> + <item> + <layout class="QHBoxLayout" name="horizontalLayout_2"> + <item> + <widget class="QCheckBox" name="kcfg_passwordSavingEnabled"> + <property name="text"> + <string>Remember passwords for sites</string> + </property> + </widget> + </item> + <item> + <spacer name="horizontalSpacer_3"> + <property name="orientation"> + <enum>Qt::Horizontal</enum> + </property> + <property name="sizeHint" stdset="0"> + <size> + <width>40</width> + <height>20</height> + </size> + </property> + </spacer> + </item> + <item> + <widget class="QPushButton" name="managePassExceptionsButton"> + <property name="text"> + <string>Manage Exceptions</string> + </property> + </widget> + </item> + </layout> + </item> + </layout> + </widget> + </item> + <item> + <widget class="QGroupBox" name="groupBox_3"> + <property name="title"> + <string>Cookies</string> + </property> + <layout class="QVBoxLayout" name="verticalLayout_2"> + <item> + <widget class="QLabel" name="label_2"> + <property name="text"> + <string>Rekonq is sharing cookies settings with all other KDE applications</string> + </property> + <property name="wordWrap"> + <bool>false</bool> + </property> + </widget> + </item> + <item> + <layout class="QHBoxLayout" name="horizontalLayout_3"> + <item> + <widget class="QPushButton" name="cookiesButton"> + <property name="text"> + <string>Manage Cookies</string> + </property> + <property name="icon"> + <iconset theme="preferences-web-browser-cookies"> + <normaloff/> + </iconset> + </property> + </widget> + </item> + <item> + <spacer name="horizontalSpacer"> + <property name="orientation"> + <enum>Qt::Horizontal</enum> + </property> + <property name="sizeHint" stdset="0"> + <size> + <width>40</width> + <height>20</height> + </size> + </property> + </spacer> + </item> + </layout> + </item> + </layout> + </widget> + </item> + <item> + <widget class="QGroupBox" name="groupBox_6"> + <property name="title"> + <string>Cache</string> + </property> + <layout class="QVBoxLayout" name="verticalLayout_6"> + <item> + <widget class="QLabel" name="label_4"> + <property name="text"> + <string>Rekonq is sharing cache settings with all other KDE applications</string> + </property> + <property name="wordWrap"> + <bool>false</bool> + </property> + </widget> + </item> + <item> + <layout class="QHBoxLayout" name="horizontalLayout_5"> + <item> + <widget class="QPushButton" name="cacheButton"> + <property name="text"> + <string>Manage Cache</string> + </property> + <property name="icon"> + <iconset theme="preferences-web-browser-cache"> + <normaloff/> + </iconset> + </property> + </widget> + </item> + <item> + <spacer name="horizontalSpacer_4"> + <property name="orientation"> + <enum>Qt::Horizontal</enum> + </property> + <property name="sizeHint" stdset="0"> + <size> + <width>40</width> + <height>20</height> + </size> + </property> + </spacer> + </item> + </layout> + </item> + </layout> + </widget> + </item> + <item> + <spacer name="verticalSpacer"> + <property name="orientation"> + <enum>Qt::Vertical</enum> + </property> + <property name="sizeHint" stdset="0"> + <size> + <width>20</width> + <height>135</height> + </size> + </property> + </spacer> + </item> + </layout> + </widget> + <resources/> + <connections/> +</ui> diff --git a/src/settings/settings_webkit.ui b/src/settings/settings_webkit.ui index 5235eab2..a6644ee0 100644 --- a/src/settings/settings_webkit.ui +++ b/src/settings/settings_webkit.ui @@ -12,11 +12,11 @@ </property> <layout class="QVBoxLayout" name="verticalLayout_4"> <item> - <widget class="QGroupBox" name="groupBox_2"> + <widget class="QGroupBox" name="groupBox"> <property name="title"> - <string>Javascript</string> + <string>General</string> </property> - <layout class="QVBoxLayout" name="verticalLayout"> + <layout class="QVBoxLayout" name="verticalLayout_2"> <item> <widget class="QCheckBox" name="kcfg_javascriptEnabled"> <property name="sizePolicy"> @@ -31,16 +31,44 @@ </widget> </item> <item> - <widget class="QCheckBox" name="kcfg_javascriptCanOpenWindows"> + <widget class="QCheckBox" name="kcfg_javaEnabled"> + <property name="text"> + <string>load java applets</string> + </property> + </widget> + </item> + <item> + <widget class="QCheckBox" name="kcfg_webGL"> + <property name="text"> + <string>WebGL</string> + </property> + </widget> + </item> + <item> + <widget class="QCheckBox" name="kcfg_spatialNavigation"> + <property name="text"> + <string>Spatial Navigation</string> + </property> + </widget> + </item> + <item> + <widget class="QCheckBox" name="kcfg_frameFlattening"> <property name="text"> - <string>Let Javascript open new windows</string> + <string>Frame Flattening</string> </property> </widget> </item> <item> - <widget class="QCheckBox" name="kcfg_javascriptCanAccessClipboard"> + <widget class="QCheckBox" name="kcfg_dnsPrefetch"> <property name="text"> - <string>Let Javascript access clipboard</string> + <string>Prefetch DNS entries</string> + </property> + </widget> + </item> + <item> + <widget class="QCheckBox" name="kcfg_printElementBackgrounds"> + <property name="text"> + <string>Print element backgrounds</string> </property> </widget> </item> @@ -146,57 +174,6 @@ </widget> </item> <item> - <widget class="QGroupBox" name="groupBox"> - <property name="title"> - <string>Misc</string> - </property> - <layout class="QVBoxLayout" name="verticalLayout_2"> - <item> - <widget class="QCheckBox" name="kcfg_javaEnabled"> - <property name="text"> - <string>load java applets</string> - </property> - </widget> - </item> - <item> - <widget class="QCheckBox" name="kcfg_webGL"> - <property name="text"> - <string>WebGL</string> - </property> - </widget> - </item> - <item> - <widget class="QCheckBox" name="kcfg_spatialNavigation"> - <property name="text"> - <string>Spatial Navigation</string> - </property> - </widget> - </item> - <item> - <widget class="QCheckBox" name="kcfg_frameFlattening"> - <property name="text"> - <string>Frame Flattening</string> - </property> - </widget> - </item> - <item> - <widget class="QCheckBox" name="kcfg_dnsPrefetch"> - <property name="text"> - <string>Prefetch DNS entries</string> - </property> - </widget> - </item> - <item> - <widget class="QCheckBox" name="kcfg_printElementBackgrounds"> - <property name="text"> - <string>Print element backgrounds</string> - </property> - </widget> - </item> - </layout> - </widget> - </item> - <item> <spacer name="verticalSpacer_2"> <property name="orientation"> <enum>Qt::Vertical</enum> diff --git a/src/settings/settingsdialog.cpp b/src/settings/settingsdialog.cpp index ef01a32f..3e3a5bd4 100644 --- a/src/settings/settingsdialog.cpp +++ b/src/settings/settingsdialog.cpp @@ -40,11 +40,12 @@ #include "opensearchmanager.h" // Widget Includes -#include "networkwidget.h" -#include "generalwidget.h" +#include "advancedwidget.h" #include "appearancewidget.h" -#include "webkitwidget.h" +#include "generalwidget.h" +#include "privacywidget.h" #include "tabswidget.h" +#include "webkitwidget.h" // KDE Includes #include <KConfig> @@ -68,8 +69,9 @@ private: TabsWidget *tabsWidg; AppearanceWidget *appearanceWidg; WebKitWidget *webkitWidg; - NetworkWidget *networkWidg; - + PrivacyWidget *privacyWidg; + AdvancedWidget *advancedWidg; + KCModuleProxy *ebrowsingModule; KShortcutsEditor *shortcutsEditor; @@ -109,10 +111,16 @@ Private::Private(SettingsDialog *parent) pageItem->setIcon(webkitIcon); // -- 5 - networkWidg = new NetworkWidget(parent); - networkWidg->layout()->setMargin(0); - pageItem = parent->addPage(networkWidg , i18n("Network")); - pageItem->setIcon(KIcon("preferences-system-network")); + privacyWidg = new PrivacyWidget(parent); + privacyWidg->layout()->setMargin(0); + pageItem = parent->addPage(privacyWidg, i18n("Privacy")); + pageItem->setIcon(KIcon("view-media-artist")); + + // -- 6 + advancedWidg = new AdvancedWidget(parent); + advancedWidg->layout()->setMargin(0); + pageItem = parent->addPage(advancedWidg, i18n("Advanced")); + pageItem->setIcon(KIcon("applications-system")); // -- 7 shortcutsEditor = new KShortcutsEditor(rApp->mainWindow()->actionCollection(), parent); @@ -155,8 +163,10 @@ SettingsDialog::SettingsDialog(QWidget *parent) connect(d->tabsWidg, SIGNAL(changed(bool)), this, SLOT(updateButtons())); connect(d->appearanceWidg, SIGNAL(changed(bool)), this, SLOT(updateButtons())); connect(d->webkitWidg, SIGNAL(changed(bool)), this, SLOT(updateButtons())); - connect(d->networkWidg, SIGNAL(changed(bool)), this, SLOT(updateButtons())); connect(d->ebrowsingModule, SIGNAL(changed(bool)), this, SLOT(updateButtons())); + connect(d->advancedWidg, SIGNAL(changed(bool)), this, SLOT(updateButtons())); + connect(d->privacyWidg, SIGNAL(changed(bool)), this, SLOT(updateButtons())); + connect(d->shortcutsEditor, SIGNAL(keyChange()), this, SLOT(updateButtons())); // save settings @@ -189,7 +199,8 @@ void SettingsDialog::saveSettings() d->tabsWidg->save(); d->appearanceWidg->save(); d->webkitWidg->save(); - d->networkWidg->save(); + d->advancedWidg->save(); + d->privacyWidg->save(); d->shortcutsEditor->save(); d->ebrowsingModule->save(); @@ -208,7 +219,8 @@ bool SettingsDialog::hasChanged() || d->tabsWidg->changed() || d->appearanceWidg->changed() || d->webkitWidg->changed() - || d->networkWidg->changed() + || d->advancedWidg->changed() + || d->privacyWidg->changed() || d->ebrowsingModule->changed() || d->shortcutsEditor->isModified(); ; diff --git a/src/settings/webkitwidget.cpp b/src/settings/webkitwidget.cpp index 0f7a4b3d..31224f05 100644 --- a/src/settings/webkitwidget.cpp +++ b/src/settings/webkitwidget.cpp @@ -28,9 +28,6 @@ #include "webkitwidget.h" #include "webkitwidget.moc" -// Auto Includes -#include "rekonq.h" - WebKitWidget::WebKitWidget(QWidget *parent) : QWidget(parent) @@ -38,9 +35,6 @@ WebKitWidget::WebKitWidget(QWidget *parent) { setupUi(this); setWebSettingsToolTips(); - - updateJavascriptSettings(ReKonfig::javascriptEnabled()); - connect(kcfg_javascriptEnabled, SIGNAL(clicked(bool)), this, SLOT(updateJavascriptSettings(bool))); } @@ -70,17 +64,8 @@ void WebKitWidget::setWebSettingsToolTips() kcfg_dnsPrefetch->setToolTip(i18n("Specifies whether WebKit will try to prefetch DNS entries to speed up browsing.")); kcfg_printElementBackgrounds->setToolTip(i18n("If enabled, background colors and images are also drawn when the page is printed.")); kcfg_javascriptEnabled->setToolTip(i18n("Enables the execution of JavaScript programs.")); - kcfg_javascriptCanOpenWindows->setToolTip(i18n("If enabled, JavaScript programs are allowed to open new windows.")); - kcfg_javascriptCanAccessClipboard->setToolTip(i18n("If enabled, JavaScript programs are allowed to read from and to write to the clipboard.")); kcfg_javaEnabled->setToolTip(i18n("Enables support for Java applets.")); kcfg_offlineStorageDatabaseEnabled->setToolTip(i18n("Enables support for the HTML 5 offline storage feature.")); kcfg_offlineWebApplicationCacheEnabled->setToolTip(i18n("Enables support for the HTML 5 web application cache feature.")); kcfg_localStorageEnabled->setToolTip(i18n("Enables support for the HTML 5 local storage feature.")); } - - -void WebKitWidget::updateJavascriptSettings(bool b) -{ - kcfg_javascriptCanAccessClipboard->setEnabled(b); - kcfg_javascriptCanOpenWindows->setEnabled(b); -} diff --git a/src/settings/webkitwidget.h b/src/settings/webkitwidget.h index 8561d60a..1a41a6a1 100644 --- a/src/settings/webkitwidget.h +++ b/src/settings/webkitwidget.h @@ -50,7 +50,6 @@ Q_SIGNALS: private Q_SLOTS: void hasChanged(); - void updateJavascriptSettings(bool); private: void setWebSettingsToolTips(); |