Add natural sort of entry list

Introduce a third unsorted status that shows entries in the order they occur in the KDBX file.

* Add keyboard shortcut Ctrl+Alt+Up/Down to move entries up and down in sort order
* Add entry context menu icons to achieve movement up/down
* Only show menu icons when in natural sort order
* Add Material Design icons for moving up/down

* Add feature to track non-data changes and force a save on exit to ensure they are not lost when locking a database. This allows users to make entry movements and group expand/collapse operations and not lose that state.

Remove saveas
This commit is contained in:
Holger Böhnke
2020-05-21 21:43:00 -04:00
committed by Jonathan White
parent 43c82ccb09
commit eb198271ac
24 changed files with 500 additions and 11 deletions

View File

@@ -81,7 +81,7 @@ public:
void releaseData();
bool isInitialized() const;
bool isModified() const;
bool isModified(bool includeNonDataChanges = false) const;
void setEmitModified(bool value);
bool isReadOnly() const;
void setReadOnly(bool readOnly);
@@ -138,6 +138,7 @@ public slots:
void markAsModified();
void markAsClean();
void updateCommonUsernames(int topN = 10);
void markNonDataChange();
signals:
void filePathChanged(const QString& oldPath, const QString& newPath);
@@ -210,6 +211,7 @@ private:
QPointer<FileWatcher> m_fileWatcher;
bool m_modified = false;
bool m_emitModified;
bool m_hasNonDataChange = false;
QString m_keyError;
QList<QString> m_commonUsernames;