mirror of
https://github.com/keepassxreboot/keepassxc.git
synced 2025-07-20 13:38:57 -04:00
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:
parent
43c82ccb09
commit
eb198271ac
24 changed files with 500 additions and 11 deletions
|
@ -55,6 +55,9 @@ void TestEntryModel::test()
|
|||
|
||||
EntryModel* model = new EntryModel(this);
|
||||
|
||||
QSignalSpy spyAboutToBeMoved(model, SIGNAL(rowsAboutToBeMoved(QModelIndex, int, int, QModelIndex, int)));
|
||||
QSignalSpy spyMoved(model, SIGNAL(rowsMoved(QModelIndex, int, int, QModelIndex, int)));
|
||||
|
||||
ModelTest* modelTest = new ModelTest(model, this);
|
||||
|
||||
model->setGroup(group1);
|
||||
|
@ -79,6 +82,29 @@ void TestEntryModel::test()
|
|||
Entry* entry3 = new Entry();
|
||||
entry3->setGroup(group1);
|
||||
|
||||
QCOMPARE(spyAboutToBeMoved.count(), 0);
|
||||
QCOMPARE(spyMoved.count(), 0);
|
||||
|
||||
entry1->moveDown();
|
||||
QCOMPARE(spyAboutToBeMoved.count(), 1);
|
||||
QCOMPARE(spyMoved.count(), 1);
|
||||
|
||||
entry1->moveDown();
|
||||
QCOMPARE(spyAboutToBeMoved.count(), 2);
|
||||
QCOMPARE(spyMoved.count(), 2);
|
||||
|
||||
entry1->moveDown();
|
||||
QCOMPARE(spyAboutToBeMoved.count(), 2);
|
||||
QCOMPARE(spyMoved.count(), 2);
|
||||
|
||||
entry3->moveUp();
|
||||
QCOMPARE(spyAboutToBeMoved.count(), 3);
|
||||
QCOMPARE(spyMoved.count(), 3);
|
||||
|
||||
entry3->moveUp();
|
||||
QCOMPARE(spyAboutToBeMoved.count(), 3);
|
||||
QCOMPARE(spyMoved.count(), 3);
|
||||
|
||||
QCOMPARE(spyAboutToAdd.count(), 1);
|
||||
QCOMPARE(spyAdded.count(), 1);
|
||||
QCOMPARE(spyAboutToRemove.count(), 0);
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue