summaryrefslogtreecommitdiffstats
path: root/src/gui/syssettingsform.cpp
diff options
context:
space:
mode:
authorLuboš Doležel <lubos@dolezel.info>2020-02-23 09:50:24 +0100
committerGitHub <noreply@github.com>2020-02-23 09:50:24 +0100
commit188bd0606473fee9d7a09e17b9980f7a16d4dc31 (patch)
treee3147fbe8243a91893e2e31cf1b7246869604430 /src/gui/syssettingsform.cpp
parente9e1b86afd75cb55c90bc6ce58fc9c2d0c025a3f (diff)
parent3d9fb0ac7490620a49a400b77ab8f851cdd4fcf5 (diff)
downloadtwinkle-188bd0606473fee9d7a09e17b9980f7a16d4dc31.tar
twinkle-188bd0606473fee9d7a09e17b9980f7a16d4dc31.tar.gz
twinkle-188bd0606473fee9d7a09e17b9980f7a16d4dc31.tar.lz
twinkle-188bd0606473fee9d7a09e17b9980f7a16d4dc31.tar.xz
twinkle-188bd0606473fee9d7a09e17b9980f7a16d4dc31.zip
Merge pull request #154 from fbriere/feature/inhibit-idle-session
Add an option to prevent an idle session while a call is in progress
Diffstat (limited to 'src/gui/syssettingsform.cpp')
-rw-r--r--src/gui/syssettingsform.cpp17
1 files changed, 17 insertions, 0 deletions
diff --git a/src/gui/syssettingsform.cpp b/src/gui/syssettingsform.cpp
index aa9bb7d..09f85cd 100644
--- a/src/gui/syssettingsform.cpp
+++ b/src/gui/syssettingsform.cpp
@@ -15,6 +15,8 @@
along with this program. If not, see <https://www.gnu.org/licenses/>.
*/
+#include "twinkle_config.h"
+
#include <QPixmap>
#include <QComboBox>
#include "gui.h"
@@ -264,6 +266,14 @@ void SysSettingsForm::populate()
guiUseSystrayCheckBox->setChecked(sys_config->get_gui_use_systray());
guiHideCheckBox->setChecked(sys_config->get_gui_hide_on_close());
guiHideCheckBox->setEnabled(sys_config->get_gui_use_systray());
+
+ // Inhibit idle session
+ inhibitIdleSessionCheckBox->setChecked(sys_config->get_inhibit_idle_session());
+#ifdef HAVE_DBUS
+ inhibitIdleSessionCheckBox->setEnabled(true);
+#else
+ inhibitIdleSessionCheckBox->setEnabled(false);
+#endif
// Call history
histSizeSpinBox->setValue(sys_config->get_ch_max_size());
@@ -379,6 +389,13 @@ void SysSettingsForm::validate()
sys_config->set_gui_use_systray(guiUseSystrayCheckBox->isChecked());
sys_config->set_gui_hide_on_close(guiHideCheckBox->isChecked());
sys_config->set_gui_show_call_osd(osdCheckBox->isChecked());
+
+ // Inhibit idle session
+ if (sys_config->get_inhibit_idle_session() != inhibitIdleSessionCheckBox->isChecked()) {
+ sys_config->set_inhibit_idle_session(inhibitIdleSessionCheckBox->isChecked());
+ // Changing this setting while busy requires special handling
+ emit inhibitIdleSessionChanged();
+ }
// Show popup on incoming call
sys_config->set_gui_show_incoming_popup(incomingPopupCheckBox->isChecked());