client: Add AsNeededBacklogRequester, faster login
[quassel.git] / src / client / backlogsettings.cpp
index d6a25f7..fda3076 100644 (file)
@@ -26,11 +26,17 @@ BacklogSettings::BacklogSettings()
 
 int BacklogSettings::requesterType() const
 {
-    return localValue("RequesterType", BacklogRequester::PerBufferUnread).toInt();
+    int _requesterType = localValue("RequesterType", BacklogRequester::PerBufferUnread).toInt();
+    if (_requesterType == BacklogRequester::GlobalUnread) {
+        // GlobalUnread is currently disabled; don't allow it to be used.  Reset to default instead.
+        _requesterType = BacklogRequester::PerBufferUnread;
+    }
+    return _requesterType;
 }
 
 void BacklogSettings::setRequesterType(int requesterType)
 {
+    // This settings key is also used within ChatMonitorSettingsPage::ChatMonitorSettingsPage()
     setLocalValue("RequesterType", requesterType);
 }
 
@@ -104,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);
+}