aboutsummaryrefslogtreecommitdiff
path: root/src/dialogs
diff options
context:
space:
mode:
authorMike Skec <skec@protonmail.ch>2021-01-01 19:26:15 +1100
committerFelix Queißner <felix@ib-queissner.de>2021-01-01 15:02:42 +0100
commit19c8bf98885074617f9cc0a0b2f60ebf47ddf714 (patch)
tree570b591a687e574bddd0c79009e2829d9f496f78 /src/dialogs
parent808288ce691a3c1520db513c7cff79fd22d3c53f (diff)
downloadkristall-19c8bf98885074617f9cc0a0b2f60ebf47ddf714.tar.gz
Added UI density option.
'Compact' is the default - saves screen space a bit. The old layout is available in the 'Classic' option
Diffstat (limited to 'src/dialogs')
-rw-r--r--src/dialogs/settingsdialog.cpp19
-rw-r--r--src/dialogs/settingsdialog.hpp2
-rw-r--r--src/dialogs/settingsdialog.ui59
3 files changed, 57 insertions, 23 deletions
diff --git a/src/dialogs/settingsdialog.cpp b/src/dialogs/settingsdialog.cpp
index 95fc0e9..f18065f 100644
--- a/src/dialogs/settingsdialog.cpp
+++ b/src/dialogs/settingsdialog.cpp
@@ -34,6 +34,10 @@ SettingsDialog::SettingsDialog(QWidget *parent) :
this->ui->ui_theme->addItem(tr("Light"), QVariant::fromValue<int>(int(Theme::light)));
this->ui->ui_theme->addItem(tr("Dark"), QVariant::fromValue<int>(int(Theme::dark)));
+ this->ui->ui_density->clear();
+ this->ui->ui_density->addItem(tr("Compact"), QVariant::fromValue<int>(int(UIDensity::compact)));
+ this->ui->ui_density->addItem(tr("Classic"), QVariant::fromValue<int>(int(UIDensity::classic)));
+
setGeminiStyle(DocumentStyle { });
this->predefined_styles.clear();
@@ -186,6 +190,14 @@ void SettingsDialog::setOptions(const GenericSettings &options)
}
}
+ this->ui->ui_density->setCurrentIndex(0);
+ for(int i = 0; i < this->ui->ui_density->count(); ++i) {
+ if (this->ui->ui_density->itemData(i).toInt() == int(options.ui_density)) {
+ this->ui->ui_density->setCurrentIndex(i);
+ break;
+ }
+ }
+
this->ui->start_page->setText(this->current_options.start_page);
if(this->current_options.gophermap_display == GenericSettings::PlainText) {
@@ -576,6 +588,13 @@ void SettingsDialog::on_ui_theme_currentIndexChanged(int index)
kristall::setTheme(this->current_options.theme);
}
+void SettingsDialog::on_ui_density_currentIndexChanged(int index)
+{
+ this->current_options.ui_density = UIDensity(this->ui->ui_density->itemData(index).toInt());
+
+ kristall::setUiDensity(this->current_options.ui_density, true);
+}
+
void SettingsDialog::on_fancypants_on_clicked()
{
this->current_options.text_display = GenericSettings::FormattedText;
diff --git a/src/dialogs/settingsdialog.hpp b/src/dialogs/settingsdialog.hpp
index 004cfd0..fd1d7cb 100644
--- a/src/dialogs/settingsdialog.hpp
+++ b/src/dialogs/settingsdialog.hpp
@@ -98,6 +98,8 @@ private slots:
void on_ui_theme_currentIndexChanged(int index);
+ void on_ui_density_currentIndexChanged(int index);
+
void on_fancypants_on_clicked();
void on_fancypants_off_clicked();
diff --git a/src/dialogs/settingsdialog.ui b/src/dialogs/settingsdialog.ui
index b733960..c61b62a 100644
--- a/src/dialogs/settingsdialog.ui
+++ b/src/dialogs/settingsdialog.ui
@@ -43,27 +43,37 @@
<widget class="QComboBox" name="ui_theme"/>
</item>
<item row="1" column="0">
+ <widget class="QLabel" name="label_1">
+ <property name="text">
+ <string>UI Density</string>
+ </property>
+ </widget>
+ </item>
+ <item row="1" column="1">
+ <widget class="QComboBox" name="ui_density"/>
+ </item>
+ <item row="2" column="0">
<widget class="QLabel" name="label_14">
<property name="text">
<string>Start Page:</string>
</property>
</widget>
</item>
- <item row="1" column="1">
+ <item row="2" column="1">
<widget class="QLineEdit" name="start_page">
<property name="placeholderText">
<string>about://blank</string>
</property>
</widget>
</item>
- <item row="2" column="0">
+ <item row="3" column="0">
<widget class="QLabel" name="label_16">
<property name="text">
<string>Enabled Protocols</string>
</property>
</widget>
</item>
- <item row="2" column="1">
+ <item row="3" column="1">
<layout class="QHBoxLayout" name="horizontalLayout">
<item>
<widget class="QCheckBox" name="enable_gemini">
@@ -108,14 +118,14 @@
</item>
</layout>
</item>
- <item row="3" column="0">
+ <item row="4" column="0">
<widget class="QLabel" name="label_19">
<property name="text">
<string>Text Rendering</string>
</property>
</widget>
</item>
- <item row="3" column="1">
+ <item row="4" column="1">
<layout class="QHBoxLayout" name="horizontalLayout_5">
<item>
<widget class="QRadioButton" name="fancypants_on">
@@ -142,14 +152,14 @@
</item>
</layout>
</item>
- <item row="4" column="0">
+ <item row="5" column="0">
<widget class="QLabel" name="label_18">
<property name="text">
<string>Enable text highlights</string>
</property>
</widget>
</item>
- <item row="4" column="1">
+ <item row="5" column="1">
<layout class="QHBoxLayout" name="horizontalLayout_3">
<item>
<widget class="QRadioButton" name="texthl_on">
@@ -176,14 +186,14 @@
</item>
</layout>
</item>
- <item row="5" column="0">
+ <item row="6" column="0">
<widget class="QLabel" name="label_20">
<property name="text">
<string>Gopher Map</string>
</property>
</widget>
</item>
- <item row="5" column="1">
+ <item row="6" column="1">
<layout class="QHBoxLayout" name="horizontalLayout_4">
<item>
<widget class="QRadioButton" name="gophermap_icon">
@@ -210,14 +220,14 @@
</item>
</layout>
</item>
- <item row="6" column="0">
+ <item row="7" column="0">
<widget class="QLabel" name="label_22">
<property name="text">
<string>Unknown Scheme</string>
</property>
</widget>
</item>
- <item row="6" column="1">
+ <item row="7" column="1">
<layout class="QHBoxLayout" name="horizontalLayout_7">
<item>
<widget class="QRadioButton" name="scheme_os_default">
@@ -241,14 +251,14 @@
</item>
</layout>
</item>
- <item row="7" column="0">
+ <item row="8" column="0">
<widget class="QLabel" name="label_23">
<property name="text">
<string>Hidden files in file:// directories</string>
</property>
</widget>
</item>
- <item row="7" column="1">
+ <item row="8" column="1">
<layout class="QHBoxLayout" name="horizontalLayout_8">
<item>
<widget class="QRadioButton" name="show_hidden_files">
@@ -272,14 +282,14 @@
</item>
</layout>
</item>
- <item row="8" column="0">
+ <item row="9" column="0">
<widget class="QLabel" name="label_24">
<property name="text">
<string>URL bar highlights</string>
</property>
</widget>
</item>
- <item row="8" column="1">
+ <item row="9" column="1">
<layout class="QHBoxLayout" name="horizontalLayout_9">
<item>
<widget class="QRadioButton" name="urlbarhl_fancy">
@@ -303,38 +313,38 @@
</item>
</layout>
</item>
- <item row="9" column="0">
+ <item row="10" column="0">
<widget class="QLabel" name="label_26">
<property name="text">
<string>Max. Number of Redirections</string>
</property>
</widget>
</item>
- <item row="9" column="1">
+ <item row="10" column="1">
<widget class="QSpinBox" name="max_redirects">
<property name="value">
<number>5</number>
</property>
</widget>
</item>
- <item row="10" column="0">
+ <item row="11" column="0">
<widget class="QLabel" name="label_27">
<property name="text">
<string>Redirection Handling</string>
</property>
</widget>
</item>
- <item row="10" column="1">
+ <item row="11" column="1">
<widget class="QComboBox" name="redirection_mode"/>
</item>
- <item row="11" column="0">
+ <item row="12" column="0">
<widget class="QLabel" name="label_28">
<property name="text">
<string>Network Timeout</string>
</property>
</widget>
</item>
- <item row="11" column="1">
+ <item row="12" column="1">
<widget class="QSpinBox" name="network_timeout">
<property name="suffix">
<string> ms</string>
@@ -347,14 +357,14 @@
</property>
</widget>
</item>
- <item row="12" column="0">
+ <item row="13" column="0">
<widget class="QLabel" name="label_29">
<property name="text">
<string>Additional toolbar buttons</string>
</property>
</widget>
</item>
- <item row="12" column="1">
+ <item row="13" column="1">
<widget class="QCheckBox" name="enable_home_btn">
<property name="text">
<string>Home</string>
@@ -969,6 +979,7 @@
<tabstops>
<tabstop>tabWidget</tabstop>
<tabstop>ui_theme</tabstop>
+ <tabstop>ui_density</tabstop>
<tabstop>start_page</tabstop>
<tabstop>enable_gemini</tabstop>
<tabstop>enable_gopher</tabstop>
@@ -1059,5 +1070,7 @@
<buttongroup name="textHighlightsBtnGroup"/>
<buttongroup name="textRenderingBtnGroup"/>
<buttongroup name="buttonGroup"/>
+ <buttongroup name="hiddenFilesBtnGroup"/>
+ <buttongroup name="urlbarBtnGroup"/>
</buttongroups>
</ui>