Added shortcuts '+', '-' and 'o' for date selection shortcuts, underlining for those and 'e' (#26)
* added shortcuts '+', '-' and 'o' for date selection shortcut * underlining shortcut key for those and 'e' (Edit description) * Moved set due date logic in separate functions
This commit is contained in:
@@ -102,11 +102,14 @@ In case writing in a text input (e,g, new project/task, due date), you have to `
|
||||
| Task Detail | `Esc`/`h` | Go back to Tasks Pane |
|
||||
| Task Detail | `Space` | Toggle task as done/pending |
|
||||
| Task Detail | `d` | Set Due date |
|
||||
| Task Detail | `o` | Set Due date to today |
|
||||
| Task Detail | `+` | Due date plus 1 |
|
||||
| Task Detail | `-` | Due date minus 1 |
|
||||
| Task Detail | `↓`/`↑` | Scroll Up/Down the note editor |
|
||||
| Task Detail | `e` | Activate note editor for modification |
|
||||
| Task Detail | `v` | Edit task details in external editor (default `vim`) |
|
||||
| Task Detail | `r` | Rename Task Title |
|
||||
| Task Detail | `x` | Export Task to clipboard |
|
||||
| Task Detail | `x` | Export Task to clipboard |
|
||||
| Active Note Editor | `Esc` | Deactivate note editor and save content |
|
||||
|
||||
**Tips about using shortcuts efficiently:**
|
||||
|
||||
@@ -56,7 +56,7 @@ func NewTaskDetailPane(taskRepo repository.TaskRepository) *TaskDetailPane {
|
||||
// Prepare static (no external interaction) elements
|
||||
editorLabel := tview.NewFlex().
|
||||
AddItem(tview.NewTextView().SetText("Task Not[::u]e[::-]:").SetDynamicColors(true), 0, 1, false).
|
||||
AddItem(makeButton("edit", func() { pane.activateEditor() }), 6, 0, false)
|
||||
AddItem(makeButton("[::u]e[::-]dit", func() { pane.activateEditor() }), 6, 0, false)
|
||||
editorHelp := tview.NewFlex().
|
||||
AddItem(pane.editorHint, 0, 1, false).
|
||||
AddItem(tview.NewTextView().SetTextAlign(tview.AlignRight).
|
||||
@@ -111,27 +111,15 @@ func (td *TaskDetailPane) makeDateRow() *tview.Flex {
|
||||
app.SetFocus(td)
|
||||
})
|
||||
|
||||
todaySelector := func() {
|
||||
td.setTaskDate(parseDateInputOrCurrent("").Unix(), true)
|
||||
}
|
||||
|
||||
nextDaySelector := func() {
|
||||
td.setTaskDate(parseDateInputOrCurrent(td.taskDate.GetText()).AddDate(0, 0, 1).Unix(), true)
|
||||
}
|
||||
|
||||
prevDaySelector := func() {
|
||||
td.setTaskDate(parseDateInputOrCurrent(td.taskDate.GetText()).AddDate(0, 0, -1).Unix(), true)
|
||||
}
|
||||
|
||||
return tview.NewFlex().
|
||||
AddItem(td.taskDateDisplay, 0, 2, true).
|
||||
AddItem(td.taskDate, 14, 0, true).
|
||||
AddItem(blankCell, 1, 0, false).
|
||||
AddItem(makeButton("today", todaySelector), 8, 1, false).
|
||||
AddItem(makeButton("t[::u]o[::-]day", td.todaySelector), 8, 1, false).
|
||||
AddItem(blankCell, 1, 0, false).
|
||||
AddItem(makeButton("+1", nextDaySelector), 4, 1, false).
|
||||
AddItem(makeButton("[::u]+[::-]1", td.nextDaySelector), 4, 1, false).
|
||||
AddItem(blankCell, 1, 0, false).
|
||||
AddItem(makeButton("-1", prevDaySelector), 4, 1, false)
|
||||
AddItem(makeButton("[::u]-[::-]1", td.prevDaySelector), 4, 1, false)
|
||||
}
|
||||
|
||||
func (td *TaskDetailPane) updateToggleDisplay() {
|
||||
@@ -328,6 +316,15 @@ func (td *TaskDetailPane) handleShortcuts(event *tcell.EventKey) *tcell.EventKey
|
||||
case 'x':
|
||||
td.Export()
|
||||
return nil
|
||||
case 'o':
|
||||
td.todaySelector()
|
||||
return nil
|
||||
case '+':
|
||||
td.nextDaySelector()
|
||||
return nil
|
||||
case '-':
|
||||
td.prevDaySelector()
|
||||
return nil
|
||||
}
|
||||
}
|
||||
|
||||
@@ -346,3 +343,15 @@ func (td *TaskDetailPane) SetTask(task *model.Task) {
|
||||
td.updateToggleDisplay()
|
||||
td.deactivateEditor()
|
||||
}
|
||||
|
||||
func (td *TaskDetailPane) todaySelector() {
|
||||
td.setTaskDate(parseDateInputOrCurrent("").Unix(), true)
|
||||
}
|
||||
|
||||
func (td *TaskDetailPane) nextDaySelector() {
|
||||
td.setTaskDate(parseDateInputOrCurrent(td.taskDate.GetText()).AddDate(0, 0, 1).Unix(), true)
|
||||
}
|
||||
|
||||
func (td *TaskDetailPane) prevDaySelector() {
|
||||
td.setTaskDate(parseDateInputOrCurrent(td.taskDate.GetText()).AddDate(0, 0, -1).Unix(), true)
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user