cmake: avoid de-duplication of user's CXXFLAGS
[quassel.git] / src / client / backlogsettings.cpp
index 0b66cb4..f29bc97 100644 (file)
@@ -1,5 +1,5 @@
 /***************************************************************************
- *   Copyright (C) 2005-2020 by the Quassel Project                        *
+ *   Copyright (C) 2005-2022 by the Quassel Project                        *
  *   devel@quassel-irc.org                                                 *
  *                                                                         *
  *   This program is free software; you can redistribute it and/or modify  *
@@ -26,11 +26,17 @@ BacklogSettings::BacklogSettings()
 
 int BacklogSettings::requesterType() const
 {
-    return localValue("RequesterType", BacklogRequester::PerBufferUnread).toInt();
+    int _requesterType = localValue("RequesterType", BacklogRequester::AsNeeded).toInt();
+    if (_requesterType == BacklogRequester::GlobalUnread) {
+        // GlobalUnread is currently disabled; don't allow it to be used.  Reset to default instead.
+        _requesterType = BacklogRequester::AsNeeded;
+    }
+    return _requesterType;
 }
 
 void BacklogSettings::setRequesterType(int requesterType)
 {
+    // This settings key is also used within ChatMonitorSettingsPage::ChatMonitorSettingsPage()
     setLocalValue("RequesterType", requesterType);
 }
 
@@ -44,6 +50,17 @@ void BacklogSettings::setDynamicBacklogAmount(int amount)
     return setLocalValue("DynamicBacklogAmount", amount);
 }
 
+bool BacklogSettings::ensureBacklogOnBufferShow() const
+{
+    // This settings key is also used within BufferWidget::BufferWidget()
+    return localValue("EnsureBacklogOnBufferShow", true).toBool();
+}
+
+void BacklogSettings::setEnsureBacklogOnBufferShow(bool enabled)
+{
+    return setLocalValue("EnsureBacklogOnBufferShow", enabled);
+}
+
 int BacklogSettings::fixedBacklogAmount() const
 {
     return localValue("FixedBacklogAmount", 500).toInt();
@@ -93,3 +110,15 @@ void BacklogSettings::setPerBufferUnreadBacklogAdditional(int additional)
 {
     return setLocalValue("PerBufferUnreadBacklogAdditional", additional);
 }
+
+int BacklogSettings::asNeededLegacyBacklogAmount() const
+{
+    // Mimic FixedBacklogAmount defaults.  This is only used on cores lacking
+    // Feature::BufferActivitySync.
+    return localValue("AsNeededLegacyBacklogAmount", 500).toInt();
+}
+
+void BacklogSettings::setAsNeededLegacyBacklogAmount(int amount)
+{
+    return setLocalValue("AsNeededLegacyBacklogAmount", amount);
+}