ui: Keyboard controls (#935)

* switch focus between views with Tab
* move focus within views with WASD/HJKL/Arrows
* move focus between graph edges by holding Shift
* move focus between code references by holding Shift
* removed graph panning with WASD and moved zooming to Alt + W/S
* removed graph navigation by pressing starting character in graph view lists
* changed local reference and custom trail shortcuts
* updated Keyboard Shortcuts window
* use common back and forward shortcuts and YZ & Shift + YZ
* fix macOS issue where widgets don't get proper focus after creating a new tab
* don't use shared_ptr in QtMainView

fixes #486, #327, #214, #210
This commit is contained in:
Eberhard Gräther
2020-03-02 14:48:03 +01:00
committed by GitHub
parent f4b37f9763
commit b0616778f3
98 changed files with 4204 additions and 863 deletions
+10
View File
@@ -10,6 +10,7 @@
#include "FilePath.h"
#include "CodeFocusHandler.h"
#include "CodeSnippetParams.h"
class QtCodeArea;
@@ -50,6 +51,9 @@ public:
void setIsComplete(bool isComplete);
void setIsIndexed(bool isIndexed);
bool isCollapsed() const;
void toggleCollapsed();
void setMinimized();
void setSnippets();
@@ -61,6 +65,12 @@ public:
void findScreenMatches(
const std::wstring& query, std::vector<std::pair<QtCodeArea*, Id>>* screenMatches);
bool hasFocus(const CodeFocusHandler::Focus& focus) const;
bool setFocus(Id locationId);
bool moveFocus(const CodeFocusHandler::Focus& focus, CodeFocusHandler::Direction direction);
void focusTop();
void focusBottom();
public slots:
void clickedMinimizeButton();
void clickedSnippetButton();