aboutsummaryrefslogtreecommitdiff
path: root/lib/web/profilemanager.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'lib/web/profilemanager.cpp')
-rw-r--r--lib/web/profilemanager.cpp13
1 files changed, 13 insertions, 0 deletions
diff --git a/lib/web/profilemanager.cpp b/lib/web/profilemanager.cpp
index 74ddc75..17435e8 100644
--- a/lib/web/profilemanager.cpp
+++ b/lib/web/profilemanager.cpp
@@ -73,6 +73,19 @@ WebProfile *ProfileManager::loadProfile(const QString &path)
this->m_profiles.at(id)->settings.setValue("attributes/" + QString::number(attr), value);
});
+ // headers
+ ptr->settings.beginGroup("headers");
+ for(const QString &key : ptr->settings.childKeys()) {
+ ptr->profile->setHttpHeader(key.toLatin1(), ptr->settings.value(key).toString().toLatin1());
+ }
+ ptr->settings.endGroup();
+ connect(ptr->profile, &WebProfile::headerChanged, ptr->profile, [this, id](const QString &name, const QString &value) {
+ this->m_profiles.at(id)->settings.setValue("headers/" + name, value);
+ });
+ connect(ptr->profile, &WebProfile::headerRemoved, ptr->profile, [this, id](const QString &name) {
+ this->m_profiles.at(id)->settings.remove("headers/" + name);
+ });
+
m_profiles[id] = std::move(ptr);
return m_profiles.at(id)->profile;
}