mirror of
https://github.com/keepassxreboot/keepassxc.git
synced 2025-08-08 14:32:39 -04:00
Fix changing focus around the main window using tab
* Override Qt's default [broken] behavior of handling Tab/Shift+Tab to navigate around the MainWindow. Completely fixes trapped focus. * Improve handling of search results when navigating the UI. * Fix selecting first entry after ending a search. * Add keyboard shortcuts to directly focus on search (F1), Group List (F2), and Entry List (F3) * Fixes #2878, #4636, and #4221
This commit is contained in:
parent
5142981018
commit
49487f9d4a
11 changed files with 129 additions and 66 deletions
|
@ -76,12 +76,15 @@ public:
|
|||
explicit DatabaseWidget(const QString& filePath, QWidget* parent = nullptr);
|
||||
~DatabaseWidget();
|
||||
|
||||
void setFocus(Qt::FocusReason reason);
|
||||
|
||||
QSharedPointer<Database> database() const;
|
||||
|
||||
DatabaseWidget::Mode currentMode() const;
|
||||
bool isLocked() const;
|
||||
bool isSaving() const;
|
||||
bool isSearchActive() const;
|
||||
bool isEntryViewActive() const;
|
||||
bool isEntryEditActive() const;
|
||||
bool isGroupEditActive() const;
|
||||
|
||||
|
@ -161,7 +164,8 @@ public slots:
|
|||
void cloneEntry();
|
||||
void deleteSelectedEntries();
|
||||
void deleteEntries(QList<Entry*> entries);
|
||||
void setFocus();
|
||||
void focusOnEntries();
|
||||
void focusOnGroups();
|
||||
void copyTitle();
|
||||
void copyUsername();
|
||||
void copyPassword();
|
||||
|
@ -217,6 +221,7 @@ public slots:
|
|||
protected:
|
||||
void closeEvent(QCloseEvent* event) override;
|
||||
void showEvent(QShowEvent* event) override;
|
||||
bool focusNextPrevChild(bool next) override;
|
||||
|
||||
private slots:
|
||||
void entryActivationSignalReceived(Entry* entry, EntryModel::ModelColumn column);
|
||||
|
@ -228,7 +233,7 @@ private slots:
|
|||
void emitGroupContextMenuRequested(const QPoint& pos);
|
||||
void emitEntryContextMenuRequested(const QPoint& pos);
|
||||
void onEntryChanged(Entry* entry);
|
||||
void onGroupChanged(Group* group);
|
||||
void onGroupChanged();
|
||||
void onDatabaseModified();
|
||||
void connectDatabaseSignals();
|
||||
void loadDatabase(bool accepted);
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue