Skip to content

feat: add Quick Connect widget for iOS#579

Merged
datlechin merged 4 commits intomainfrom
feat/ios-quick-connect-widget
Apr 5, 2026
Merged

feat: add Quick Connect widget for iOS#579
datlechin merged 4 commits intomainfrom
feat/ios-quick-connect-widget

Conversation

@datlechin
Copy link
Copy Markdown
Collaborator

Summary

  • Add WidgetKit Quick Connect widget (small + medium sizes) for iOS Home Screen
  • Tap a connection → opens app → auto-connects via deep link (tablepro://connect/{uuid})
  • Shared data layer via App Group container (widget-connections.json)
  • 10 new widget files, 4 modified app files

Setup required after merge

The widget extension target must be added in Xcode manually:

  1. Open TableProMobile.xcodeproj in Xcode
  2. File → New → Target → Widget Extension → name: TableProWidget
  3. Set bundle ID: com.TablePro.TableProMobile.Widget, deployment target iOS 17.0
  4. Delete the auto-generated files (they're already in TableProWidget/)
  5. Add existing files from TableProWidget/ to the new target
  6. Add Shared/WidgetConnectionItem.swift and Shared/SharedConnectionStore.swift to BOTH targets
  7. Enable App Group capability on both targets: group.com.TablePro.TableProMobile
  8. Add URL scheme tablepro to main app target (URL Types in Info tab)

Test plan

  • Add widget target in Xcode, build both targets
  • Verify widget appears in widget gallery
  • Add small widget → shows first connection
  • Add medium widget → shows up to 4 connections
  • Tap widget connection → app opens and navigates to connection
  • Test deep link: xcrun simctl openurl booted "tablepro://connect/{uuid}"
  • Delete all connections → widget shows empty state
  • Add/remove connection → widget updates

@datlechin datlechin merged commit f0878da into main Apr 5, 2026
2 checks passed
@datlechin datlechin deleted the feat/ios-quick-connect-widget branch April 5, 2026 12:01
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