Skip to content

Add App Intents shortcuts - #6344

Open
RCGV1 wants to merge 1 commit into
signalapp:mainfrom
RCGV1:app-intents-shortcuts
Open

RCGV1 wants to merge 1 commit into
signalapp:mainfrom
RCGV1:app-intents-shortcuts

Conversation

@RCGV1

@RCGV1 RCGV1 commented Sep 10, 2026 •

Copy link
Copy Markdown

Contributor checklist

Administrative:

Commits and testing:

  • My commits are rebased on the latest main branch.
  • My commits are well-structured for review.
  • My change has been thoroughly tested, and I am not aware of any regressions to existing features or behaviors. Focused unit and device validation are recorded below; the full Signal test suite was not run.
  • I have tested my contribution on these devices:
    • iPhone 15 Pro, iOS 26.6.1: installed development build; manually verified headless Quick Send.
    • iPhone 16 Pro simulator, iOS 18.6: focused App Intents test.

Description

Summary

  • Add App Shortcuts for Quick Send, Open Chat, New Message, Camera, and Settings.
  • Keep Quick Send headless after local device authentication, while foreground shortcuts open Signal.
  • Register shortcut parameters at launch so the system refreshes the available shortcuts.

Security and behavior

  • Require local-device authentication for every intent.
  • Do not expose conversation suggestions or search results while protected data is unavailable or Signal Screen Lock is locked.
  • Revalidate a saved recipient before sending, then enqueue the message through Signal's existing sender queue.
  • Start Signal's existing background message fetcher for Quick Send so the chat connection is available during headless execution.
  • Allow up to 25 seconds for a cold Signal launch before Quick Send reports that Signal is unavailable.

Validation

  • swiftformat --lint Signal/AppIntents/SignalAppIntents.swift Signal/test/AppIntentsTest.swift
  • git diff --check
  • xcodebuild test -workspace Signal.xcworkspace -scheme Signal -configuration Debug -destination 'platform=iOS Simulator,id=1C12F7AC-636D-4BE1-B075-0479A603EB02' -derivedDataPath /tmp/signal-appintents-pr-derived CODE_SIGNING_ALLOWED=NO -only-testing:SignalTests/AppIntentsTest/testOnlyQuickSendRunsWithoutForegroundingSignal -resultBundlePath /tmp/signal-appintents-checklist-2.xcresult -quiet — passed (1 test)
  • Built, installed, and launched the development build on an iPhone. Manually verified Quick Send completes without first opening Signal.
  • Shortcut gallery screenshot

@RCGV1

RCGV1 commented Sep 10, 2026

Copy link
Copy Markdown
Author

Shortcut gallery

Signal App Intents shortcuts gallery

Manual device verification: Quick Send completes without first opening Signal.

@RCGV1
RCGV1 force-pushed the app-intents-shortcuts branch from ad14d78 to 83d2792 Compare September 10, 2026 01:44
@gileswells gileswells mentioned this pull request Oct 2, 2026
5 of 7 tasks
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant