Change database root group Uuid

This commit is contained in:
varjolintu 2020-02-11 09:20:06 +02:00 committed by Jonathan White
parent 83ed9a8d4e
commit 0a61aa0d46
3 changed files with 73 additions and 50 deletions

View File

@ -54,6 +54,7 @@ DatabaseSettingsWidgetBrowser::DatabaseSettingsWidgetBrowser(QWidget* parent)
connect(m_ui->removeSharedEncryptionKeys, SIGNAL(clicked()), this, SLOT(removeSharedEncryptionKeys()));
connect(m_ui->removeSharedEncryptionKeys, SIGNAL(clicked()), this, SLOT(updateSharedKeyList()));
connect(m_ui->removeStoredPermissions, SIGNAL(clicked()), this, SLOT(removeStoredPermissions()));
connect(m_ui->refreshDatabaseID, SIGNAL(clicked()), this, SLOT(refreshDatabaseID()));
}
DatabaseSettingsWidgetBrowser::~DatabaseSettingsWidgetBrowser()
@ -256,6 +257,22 @@ void DatabaseSettingsWidgetBrowser::convertAttributesToCustomData()
m_browserService.convertAttributesToCustomData(m_db);
}
void DatabaseSettingsWidgetBrowser::refreshDatabaseID()
{
if (MessageBox::Yes
!= MessageBox::question(this,
tr("Refresh database ID"),
tr("Do you really want refresh the database ID?\n"
"This is only necessary if your database is a copy of another and the "
"browser extension cannot connect."),
MessageBox::Yes | MessageBox::Cancel,
MessageBox::Cancel)) {
return;
}
m_db->rootGroup()->setUuid(QUuid::createUuid());
}
// Updates the shared key list after the list is cleared
void DatabaseSettingsWidgetBrowser::updateSharedKeyList()
{

View File

@ -63,6 +63,7 @@ private slots:
void removeSharedEncryptionKeys();
void removeStoredPermissions();
void convertAttributesToCustomData();
void refreshDatabaseID();
private:
void updateModel();

View File

@ -6,8 +6,8 @@
<rect>
<x>0</x>
<y>0</y>
<width>453</width>
<height>374</height>
<width>669</width>
<height>395</height>
</rect>
</property>
<property name="sizePolicy">
@ -50,10 +50,34 @@
<property name="title">
<string>KeePassXC-Browser settings</string>
</property>
<layout class="QVBoxLayout" name="verticalLayout_2">
<item>
<layout class="QHBoxLayout" name="horizontalLayout">
<item>
<layout class="QGridLayout" name="gridLayout">
<item row="2" column="0">
<widget class="QPushButton" name="convertToCustomData">
<property name="sizePolicy">
<sizepolicy hsizetype="Preferred" vsizetype="Fixed">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="text">
<string>Move KeePassHTTP attributes to KeePassXC-Browser custom data</string>
</property>
</widget>
</item>
<item row="2" column="1">
<widget class="QPushButton" name="refreshDatabaseID">
<property name="sizePolicy">
<sizepolicy hsizetype="Preferred" vsizetype="Fixed">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="text">
<string>Refresh database root group ID</string>
</property>
</widget>
</item>
<item row="0" column="0">
<widget class="QPushButton" name="removeSharedEncryptionKeys">
<property name="sizePolicy">
<sizepolicy hsizetype="Preferred" vsizetype="Fixed">
@ -66,7 +90,7 @@
</property>
</widget>
</item>
<item>
<item row="0" column="1">
<widget class="QPushButton" name="removeStoredPermissions">
<property name="sizePolicy">
<sizepolicy hsizetype="Preferred" vsizetype="Fixed">
@ -80,25 +104,6 @@
</widget>
</item>
</layout>
</item>
<item>
<layout class="QHBoxLayout" name="horizontalLayout_2">
<item>
<widget class="QPushButton" name="convertToCustomData">
<property name="sizePolicy">
<sizepolicy hsizetype="Preferred" vsizetype="Fixed">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="text">
<string>Move KeePassHTTP attributes to KeePassXC-Browser custom data</string>
</property>
</widget>
</item>
</layout>
</item>
</layout>
</widget>
</item>
<item>
@ -106,10 +111,10 @@
<property name="title">
<string>Stored keys</string>
</property>
<layout class="QHBoxLayout" name="horizontalLayout_3">
<layout class="QHBoxLayout" name="horizontalLayout_4">
<item>
<widget class="QGroupBox" name="groupBox_3">
<layout class="QHBoxLayout" name="horizontalLayout_4">
<layout class="QHBoxLayout" name="horizontalLayout_5">
<item>
<widget class="QTableView" name="customDataTable">
<property name="accessibleName">