Skip to content

iOS: an App Intent that opens the game (Siri, Shortcuts, the Action Button) - #572

Closed
oliverames wants to merge 1 commit into
seedds:mainfrom
oliverames:feat-app-intents
Closed

oliverames wants to merge 1 commit into
seedds:mainfrom
oliverames:feat-app-intents

Conversation

@oliverames

@oliverames oliverames commented Oct 28, 2026 •

Copy link
Copy Markdown
Contributor

What and why

Split out of #482 per review (one concern per PR).

dm/ios/Sources/PlayGameIntent.swift (new, 27 lines): PlayGameIntent opens the app, and the game's own launcher and settings then run as usual. Its App Shortcut phrases use the app's own name ("Play ", "Start "), so each game's app offers its own shortcut in Siri, Shortcuts and the Action Button with no per-game code.

  • Picked up by the project's existing Sources glob; no project, Info.plist, host or shader changes.

Checked

  • Tests: it typechecks clean against the iOS 26 SDK in both the project's Swift 5 mode and Swift 6 strict concurrency (static lets). No other tests are stated in the original description.
  • Games run, with title ID and version: not stated.
  • Devices and OS: shipped in the builds running on two iPhones (iOS 27) since Oct 27. The Siri phrase itself has not been separately exercised.
  • scripts/regress.py check --games: not stated.

Front ends

None: no front end has to act on this.

Docs

  • The finding is in its game note or its docs/reference/<subsystem>.md entry, and python3 dm/tools/docs_symptoms.py was run (the symptom index). Not ticked: the diff is one new Swift file and contains no docs entry.
  • A chain tool changed: dmsh_chain.py --header was run and dm/gfx/nvn/dmsh_chain.h is part of the change. Not applicable: no chain tool changed (the diff is only dm/ios/Sources/PlayGameIntent.swift).
  • No game files, keys or data extracted from a game in the change or the attachments (the diff is one Swift source file).

Rebased onto main fd8188c9 on 2026-11-10 with no conflicts (head 248269ec). On that head test_xcode_workflow.py passes (7 tests) and the unsigned iOS app builds with PlayGameIntent.swift. The commit carried the wrong author address by mistake; it's now under mine.

@oliverames oliverames mentioned this pull request Oct 28, 2026
1 of 3 tasks
@github-actions github-actions Bot added the ios The iPhone and iPad app (dm/ios) label Nov 3, 2026
…utton)

PlayGameIntent opens the app; the game's own launcher and settings then run as
usual. Its App Shortcut phrases use the app's name ("Play <game>", "Start
<game>"), so every game's app offers its own. Static lets, so it builds under
Swift 6 strict concurrency as well as the project's Swift 5 mode.
@oliverames

Copy link
Copy Markdown
Contributor Author

Closing this. Opening the game from Siri, Shortcuts or the Action Button is easy for a front end to add on its own, and I'd rather keep the open list to changes the host needs. Thanks for looking!

@oliverames oliverames closed this Nov 12, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

ios The iPhone and iPad app (dm/ios)

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant