Fixed repeation of shortcut keys because of returning event even after executing shortcut
This commit is contained in:
22
app/cli.go
22
app/cli.go
@@ -89,6 +89,16 @@ func setKeyboardShortcuts() *tview.Application {
|
|||||||
return event
|
return event
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Global shortcuts
|
||||||
|
switch event.Rune() {
|
||||||
|
case 'p':
|
||||||
|
app.SetFocus(projectPane)
|
||||||
|
return nil
|
||||||
|
case 't':
|
||||||
|
app.SetFocus(taskPane)
|
||||||
|
return nil
|
||||||
|
}
|
||||||
|
|
||||||
// Handle based on current focus. Handlers may modify event
|
// Handle based on current focus. Handlers may modify event
|
||||||
switch {
|
switch {
|
||||||
case projectPane.HasFocus():
|
case projectPane.HasFocus():
|
||||||
@@ -99,18 +109,6 @@ func setKeyboardShortcuts() *tview.Application {
|
|||||||
event = taskDetailPane.handleShortcuts(event)
|
event = taskDetailPane.handleShortcuts(event)
|
||||||
}
|
}
|
||||||
|
|
||||||
// Global shortcuts
|
|
||||||
switch event.Rune() {
|
|
||||||
case 'p':
|
|
||||||
app.SetFocus(projectPane)
|
|
||||||
case 't':
|
|
||||||
app.SetFocus(taskPane)
|
|
||||||
case 'f':
|
|
||||||
// @TODO : Remove
|
|
||||||
// statusBar.showForSeconds(reflect.TypeOf(app.GetFocus()).String(), 5)
|
|
||||||
statusBar.showForSeconds(fmt.Sprintf("Due: %#v", taskPane.activeTask), 5)
|
|
||||||
}
|
|
||||||
|
|
||||||
return event
|
return event
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -113,10 +113,13 @@ func (pane *ProjectPane) handleShortcuts(event *tcell.EventKey) *tcell.EventKey
|
|||||||
switch event.Rune() {
|
switch event.Rune() {
|
||||||
case 'j':
|
case 'j':
|
||||||
pane.list.SetCurrentItem(pane.list.GetCurrentItem() + 1)
|
pane.list.SetCurrentItem(pane.list.GetCurrentItem() + 1)
|
||||||
|
return nil
|
||||||
case 'k':
|
case 'k':
|
||||||
pane.list.SetCurrentItem(pane.list.GetCurrentItem() - 1)
|
pane.list.SetCurrentItem(pane.list.GetCurrentItem() - 1)
|
||||||
|
return nil
|
||||||
case 'n':
|
case 'n':
|
||||||
app.SetFocus(pane.newProject)
|
app.SetFocus(pane.newProject)
|
||||||
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
return event
|
return event
|
||||||
|
|||||||
@@ -286,22 +286,30 @@ func (td *TaskDetailPane) handleShortcuts(event *tcell.EventKey) *tcell.EventKey
|
|||||||
switch event.Key() {
|
switch event.Key() {
|
||||||
case tcell.KeyEsc:
|
case tcell.KeyEsc:
|
||||||
app.SetFocus(taskPane)
|
app.SetFocus(taskPane)
|
||||||
|
return nil
|
||||||
case tcell.KeyDown:
|
case tcell.KeyDown:
|
||||||
td.taskDetailView.ScrollDown(1)
|
td.taskDetailView.ScrollDown(1)
|
||||||
|
return nil
|
||||||
case tcell.KeyUp:
|
case tcell.KeyUp:
|
||||||
td.taskDetailView.ScrollUp(1)
|
td.taskDetailView.ScrollUp(1)
|
||||||
|
return nil
|
||||||
case tcell.KeyRune:
|
case tcell.KeyRune:
|
||||||
switch event.Rune() {
|
switch event.Rune() {
|
||||||
case 'e':
|
case 'e':
|
||||||
td.activateEditor()
|
td.activateEditor()
|
||||||
|
return nil
|
||||||
case 'v':
|
case 'v':
|
||||||
td.editInExternalEditor()
|
td.editInExternalEditor()
|
||||||
|
return nil
|
||||||
case 'd':
|
case 'd':
|
||||||
app.SetFocus(td.taskDate)
|
app.SetFocus(td.taskDate)
|
||||||
|
return nil
|
||||||
case 'r':
|
case 'r':
|
||||||
td.header.ShowRename()
|
td.header.ShowRename()
|
||||||
|
return nil
|
||||||
case ' ':
|
case ' ':
|
||||||
td.toggleTaskStatus()
|
td.toggleTaskStatus()
|
||||||
|
return nil
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -103,12 +103,16 @@ func (pane *TaskPane) handleShortcuts(event *tcell.EventKey) *tcell.EventKey {
|
|||||||
switch event.Rune() {
|
switch event.Rune() {
|
||||||
case 'j':
|
case 'j':
|
||||||
pane.list.SetCurrentItem(pane.list.GetCurrentItem() + 1)
|
pane.list.SetCurrentItem(pane.list.GetCurrentItem() + 1)
|
||||||
|
return nil
|
||||||
case 'k':
|
case 'k':
|
||||||
pane.list.SetCurrentItem(pane.list.GetCurrentItem() - 1)
|
pane.list.SetCurrentItem(pane.list.GetCurrentItem() - 1)
|
||||||
|
return nil
|
||||||
case 'h':
|
case 'h':
|
||||||
app.SetFocus(projectPane)
|
app.SetFocus(projectPane)
|
||||||
|
return nil
|
||||||
case 'n':
|
case 'n':
|
||||||
app.SetFocus(pane.newTask)
|
app.SetFocus(pane.newTask)
|
||||||
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
return event
|
return event
|
||||||
|
|||||||
Reference in New Issue
Block a user