Skip to content

Commit 0553012

Browse files
committed
Store, display, and edit reminders.
Signed-off-by: Katharine Berry <[email protected]>
1 parent 1b031d7 commit 0553012

File tree

20 files changed

+877
-85
lines changed

20 files changed

+877
-85
lines changed

app/CMakeLists.txt

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -54,6 +54,7 @@ add_executable(tiny_assistant_app
5454
src/c/menus/alarm_menu.c
5555
src/c/menus/alarm_menu.h
5656
src/c/menus/legal_window.c
57+
src/c/menus/reminders_menu.c
5758
src/c/consent/consent.c
5859
src/c/util/vector_layer.c
5960
src/c/util/style.c
@@ -64,4 +65,5 @@ add_executable(tiny_assistant_app
6465
src/c/converse/segments/widgets/weather_util.c
6566
src/c/converse/segments/widgets/weather_multi_day.c
6667
src/c/talking_horse_layer.c
67-
src/c/version/version.c)
68+
src/c/version/version.c
69+
src/c/util/time.c)

app/package.json

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -67,7 +67,14 @@
6767
"WEATHER_WIDGET_MULTI_DAY[3]",
6868
"WEATHER_WIDGET_MULTI_ICON[3]",
6969
"WEATHER_WIDGET_MULTI_HIGH[3]",
70-
"WEATHER_WIDGET_MULTI_LOW[3]"
70+
"WEATHER_WIDGET_MULTI_LOW[3]",
71+
"REMINDER_LIST_REQUEST",
72+
"REMINDER_COUNT",
73+
"REMINDER_TEXT",
74+
"REMINDER_ID",
75+
"REMINDER_TIME",
76+
"REMINDER_DELETE",
77+
"ACTION_REMINDER_DELETED"
7178
],
7279
"resources": {
7380
"media": [

app/src/c/converse/conversation.h

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,7 @@ typedef struct ConversationEntry ConversationEntry;
2525
typedef enum {
2626
ConversationActionTypeSetAlarm,
2727
ConversationActionTypeSetReminder,
28+
ConversationActionTypeDeleteReminder,
2829
ConversationActionTypeUpdateChecklist,
2930
ConversationActionTypeGenericSentence,
3031
} ConversationActionType;
@@ -45,6 +46,9 @@ typedef struct {
4546
time_t time;
4647
} ConversationActionSetReminder;
4748

49+
typedef struct {
50+
} ConversationActionDeleteReminder;
51+
4852
typedef struct {
4953
} ConversationActionPokeHomeAssistant;
5054

app/src/c/converse/conversation_manager.c

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -162,6 +162,12 @@ static void prv_handle_app_message_inbox_received(DictionaryIterator *iter, void
162162
},
163163
};
164164
conversation_manager_add_action(manager, &action);
165+
} else if (tuple->key == MESSAGE_KEY_ACTION_REMINDER_DELETED) {
166+
ConversationAction action = {
167+
.type = ConversationActionTypeDeleteReminder,
168+
.action = {},
169+
};
170+
conversation_manager_add_action(manager, &action);
165171
} else if (tuple->key == MESSAGE_KEY_WARNING) {
166172
conversation_complete_response(manager->conversation);
167173
prv_conversation_updated(manager, false);

app/src/c/converse/segments/info_layer.c

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -196,6 +196,9 @@ static char* prv_generate_action_text(ConversationAction* action) {
196196
snprintf(buffer, 50, "Reminder set for %s.", time_str);
197197
break;
198198
}
199+
case ConversationActionTypeDeleteReminder:
200+
strncpy(buffer, "Reminder deleted.", 50);
201+
break;
199202
case ConversationActionTypeUpdateChecklist:
200203
strncpy(buffer, "Checklist updated.", 50);
201204
break;
@@ -221,6 +224,7 @@ static uint32_t prv_get_icon_resource(ConversationEntry* entry) {
221224
}
222225
return RESOURCE_ID_CLOCK_ICON;
223226
case ConversationActionTypeSetReminder:
227+
case ConversationActionTypeDeleteReminder:
224228
return RESOURCE_ID_REMINDER_ICON;
225229
default:
226230
return RESOURCE_ID_COG_ICON;

0 commit comments

Comments
 (0)