Implement notification actions and categories for timer events#151
Open
mookwoo wants to merge 4 commits into
Open
Implement notification actions and categories for timer events#151mookwoo wants to merge 4 commits into
mookwoo wants to merge 4 commits into
Conversation
There was a problem hiding this comment.
Pull request overview
Note
Copilot was unable to run its full agentic suite in this review.
Adds actionable “timer complete” notifications and routes notification actions back to the correct MVTimerController instance.
Changes:
- Introduces notification category/action identifiers and a userInfo key for controller routing.
- Attaches notification category + controller identifier to timer-complete notifications.
- Implements UNNotificationCenter action handling to restart/add time/stop/open the corresponding timer window.
Reviewed changes
Copilot reviewed 3 out of 3 changed files in this pull request and generated 5 comments.
| File | Description |
|---|---|
| Timer/MVUserDefaultsKeys.swift | Adds shared notification identifier constants used across controller + AppDelegate. |
| Timer/MVTimerController.swift | Adds per-controller UUID and new timer action helpers; enriches notification payload with category + routing info. |
| Timer/AppDelegate.swift | Registers notification categories and handles notification actions by delegating to the correct controller. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
…controller retrieval logic
Author
|
Addressed the remaining Copilot review comments:
Verified with |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This pull request adds actionable notifications to the timer application, allowing users to interact directly with timer notifications (e.g., restart, add time, stop) and improves how notifications are handled and routed to the correct timer window. The main changes include registering notification categories, handling notification actions, associating notifications with specific timer controllers, and adding new timer control methods.
Notification actions and handling:
registerNotificationCategoriesinAppDelegate.swift). [1] [2]userNotificationCenter(_:didReceive:withCompletionHandler:)andhandleNotificationActioninAppDelegate.swift). [1] [2]Timer controller enhancements:
identifierproperty to eachMVTimerControllerinstance to associate notifications with specific timer windows.Timer control methods:
MVTimerControllerfor restarting the last timer, adding five minutes, and resetting the timer, supporting the new notification actions.Identifiers centralization:
MVNotificationIdentifiersenum to centralize all notification-related string constants.