diff options
Diffstat (limited to 'internal/api/google_tasks.go')
| -rw-r--r-- | internal/api/google_tasks.go | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/internal/api/google_tasks.go b/internal/api/google_tasks.go index 1f9aefb..644f124 100644 --- a/internal/api/google_tasks.go +++ b/internal/api/google_tasks.go @@ -174,14 +174,19 @@ func (c *GoogleTasksClient) CompleteTask(ctx context.Context, listID, taskID str return nil } -// UpdateTaskNotes updates a task's notes (description) -func (c *GoogleTasksClient) UpdateTaskNotes(ctx context.Context, listID, taskID, notes string) error { +// UpdateTask updates a task's title and notes (description). An empty +// title is omitted from the PATCH body by the underlying client library +// (omitempty), not sent as a blank -- so callers that don't support editing +// title (e.g. the widget's description-only edit popup) can pass the +// task's existing title back unchanged, or "" to leave it untouched. +func (c *GoogleTasksClient) UpdateTask(ctx context.Context, listID, taskID, title, notes string) error { task := &tasks.Task{ + Title: title, Notes: notes, } _, err := c.srv.Tasks.Patch(listID, taskID, task).Context(ctx).Do() if err != nil { - return fmt.Errorf("failed to update task notes: %v", err) + return fmt.Errorf("failed to update task: %v", err) } return nil } |
