From 6fc8c1d17557c45c5ce9329f5973bb72d4710dde Mon Sep 17 00:00:00 2001
From: pollfly <75068813+pollfly@users.noreply.github.com>
Date: Sun, 25 Jul 2021 14:59:37 +0300
Subject: [PATCH] Add keyboard and mouse annotator shortcuts (#23)
---
.../webapp/webapp_datasets_frames.md | 88 ++++++++++++-------
1 file changed, 58 insertions(+), 30 deletions(-)
diff --git a/docs/hyperdatasets/webapp/webapp_datasets_frames.md b/docs/hyperdatasets/webapp/webapp_datasets_frames.md
index efd167f5..19e9d574 100644
--- a/docs/hyperdatasets/webapp/webapp_datasets_frames.md
+++ b/docs/hyperdatasets/webapp/webapp_datasets_frames.md
@@ -7,7 +7,7 @@ of frames and enables viewing SingleFrames and FramesGroups, and edit SingleFram
Before opening the frame viewer, you can filter the frames by applying [simple](#simple-frame-filtering) or [advanced](#advanced-frame-filtering)
filtering logic.
-
+
## Frame viewer
@@ -15,27 +15,53 @@ Frame viewer allows you to view and edit annotations which can be FrameGroup obj
labels applied to the entire frame not a region of the frame, the frame details (see [frames](../frames.md)),
frame metadata, the raw data source URI, as well as providing navigation and viewing tools.
-
+
### Frame viewer controls
Use frame viewer controls to navigate between frames in a Dataset Version, and control frame changes and viewing.
-|Control Icon|Actions|
-|-----|------|
-||Jump backwards (CTRL + Left). Jumps backwards by five frames.|
-|
|Go to the previous frame containing a non-filtered annotation. The filter is the minimum confidence level setting. If the confidence level filter is set to zero, any frame containing annotations matches the filter.|
-|
|Go to the previous frame (Left Arrow).|
-|
|Go to the next frame (Right Arrow).|
-|
|Go to the next frame containing a non-filtered annotation (same filter as
).|
-|
|Jump forwards (CTRL + Right). Jumps 5 frames forwards.|
-|
|Reload the frame.|
-|
|Undo changes.|
-|
|Redo changes.|
-|
|Autofit|
-|
|Zoom in|
-|
|Zoom out|
-|Percentage textbox|Zoom percentage|
+|Control Icon|Actions|Shortcut|
+|-----|------|----|
+|
| Jumps backwards ten frames | CTRL + Left arrow |
+|
|Go to the previous frame containing a non-filtered annotation. The filter is the minimum confidence level setting. If the confidence level filter is set to zero, any frame containing annotations matches the filter.|
|
+|
|Go to the previous frame | Left arrow |
+|
|Go to the next frame | Right arrow |
+|
|Go to the next frame containing a non-filtered annotation (same filter as
).|
|
+|
|Jump forwards ten frames | CTRL + Right arrow |
+|
|Reload the frame.|
|
+|
|Undo changes.|Ctrl + Z|
+|
|Redo changes.|Ctrl + Y|
+|
|Autofit|
|
+|
|Zoom in| **+** or Ctrl + Mouse wheel|
+|
|Zoom out| **-** or Ctrl + Mouse wheel |
+|Percentage textbox|Zoom percentage|
|
+
+#### Additional keyboard shortcuts
+
+**General controls**
+
+|Control|Action|
+|----|-----|
+|Hold Spacebar + Press and hold image + Drag| Move around image. NOTE: If using a touchpad, this only works if the *Disable touchpad while typing* setting is turned off |
+|Esc | Escape frame viewer and return to dataset page |
+
+**General annotation controls**
+
+|Control|Action|
+|----|-----|
+| Delete | Remove annotation |
+| Alt + ] / [ | Choose a default ROI label by navigating between previous / next labels |
+| Shift + M | Edit metadata |
+| Shift + Tab | Previous annotation (use after clicking an annotation) |
+
+**Mode-specific annotation controls**
+
+|Control |Mode |Action|
+|----|-----|----|
+| Hold Shift | Key points (
) | While holding Shift, add new points to the ROI by left clicking, and move a single point by dragging it with your mouse |
+| Enter | Key points (
) | Complete annotation |
+| Esc | Key points (
), Polygon (
) | Cancel annotation process |
### Viewing and editing frames
@@ -66,7 +92,7 @@ Viewing and editing frames in a FrameGroup is similar to viewing and editing Sin
Click the FrameGroup in the Dataset. In the frame viewer, select SingleFrame to view / modify from
a dropdown list in the **Current Source** section.
-
+
## Filtering frames
### Simple frame filtering
@@ -86,7 +112,7 @@ For example: