Download favicon in the background after credential add

This commit is contained in:
varjolintu 2021-11-25 19:47:45 +02:00 committed by Jonathan White
parent d16fc2d62a
commit 12d16f67ae
7 changed files with 53 additions and 10 deletions

View file

@ -364,11 +364,13 @@ QJsonObject BrowserAction::handleSetLogin(const QJsonObject& json, const QString
const QString uuid = decrypted.value("uuid").toString();
const QString group = decrypted.value("group").toString();
const QString groupUuid = decrypted.value("groupUuid").toString();
const QString downloadFavicon = decrypted.value("downloadFavicon").toString();
const QString realm;
bool result = true;
if (uuid.isEmpty()) {
browserService()->addEntry(id, login, password, url, submitUrl, realm, group, groupUuid);
auto dlFavicon = !downloadFavicon.isEmpty() && downloadFavicon.compare(TRUE_STR) == 0;
browserService()->addEntry(id, login, password, url, submitUrl, realm, group, groupUuid, dlFavicon);
} else {
if (!Tools::isValidUuid(uuid)) {
return getErrorReply(action, ERROR_KEEPASS_NO_VALID_UUID_PROVIDED);

View file

@ -494,6 +494,7 @@ void BrowserService::addEntry(const QString& dbid,
const QString& realm,
const QString& group,
const QString& groupUuid,
const bool downloadFavicon,
const QSharedPointer<Database>& selectedDb)
{
// TODO: select database based on this key id
@ -537,6 +538,10 @@ void BrowserService::addEntry(const QString& dbid,
config.setRealm(realm);
}
config.save(entry);
if (downloadFavicon && m_currentDatabaseWidget) {
m_currentDatabaseWidget->downloadFaviconInBackground(entry);
}
}
bool BrowserService::updateEntry(const QString& dbid,

View file

@ -67,6 +67,7 @@ public:
const QString& realm,
const QString& group,
const QString& groupUuid,
const bool downloadFavicon,
const QSharedPointer<Database>& selectedDb = {});
bool updateEntry(const QString& dbid,
const QString& uuid,