Events: inline event delegate

Also key handling. Again allow space to pause/resume video while
editing an event.
This commit is contained in:
Timotej Lazar 2021-09-12 19:34:10 +02:00
parent 4ef0c49825
commit 09a1c7d57f
No known key found for this signature in database
GPG key ID: B6F38793D143456F
4 changed files with 159 additions and 176 deletions

View file

@ -47,7 +47,7 @@ Page {
}
}
Keys.forwardTo: [tags, video]
Keys.forwardTo: [video, tags]
// Save / load buttons.
header: ToolBar {
@ -151,6 +151,7 @@ Page {
if (currentItem)
video.seek(currentItem.time)
}
Keys.forwardTo: control
Rectangle {
anchors { left: parent.left; right: parent.right; top: parent.top }
@ -163,41 +164,6 @@ Page {
implicitHeight: 1
color: palette.mid
}
Keys.onPressed: {
switch (event.key) {
case Qt.Key_Home:
currentIndex = 0
break
case Qt.Key_End:
currentIndex = count-1
break
case Qt.Key_Enter:
case Qt.Key_Return:
if (editing) {
currentItem.store()
editing = false
} else {
if (currentItem.fields.length > 0)
editing = true
}
break
case Qt.Key_Escape:
editing = false
break
case Qt.Key_Delete:
editing = false
eventFilter.remove(currentIndex)
break
case Qt.Key_Tab:
case Qt.Key_Backtab:
// swallow tabs so we dont lose focus when editing
break
default:
return
}
event.accepted = true
}
}
Flow {