Skip to content

[UNTIL-19514] Print engine epson ios support - #56

Merged
djordjeh merged 5 commits into
shekar/task/UNTIL-19417/print-engine-kmp-3.0.5from
shekar/task/UNTIL-19514/print-engine-epson-ios-support
Mar 25, 2026
Merged

[UNTIL-19514] Print engine epson ios support#56
djordjeh merged 5 commits into
shekar/task/UNTIL-19417/print-engine-kmp-3.0.5from
shekar/task/UNTIL-19514/print-engine-epson-ios-support

Conversation

@shekar-allam

Copy link
Copy Markdown
Contributor

No description provided.

shekar-allam and others added 4 commits March 20, 2026 07:54
Implement full Epson printer discovery on iOS using the ePOS2 SDK:

- EpsonPrinterDiscovery.ios.kt: callbackFlow-based discovery using
  Epos2Discovery with Epos2FilterOption (all ports, printer type).
  Dispatches start() to Main thread, references delegate in awaitClose
  to prevent GC, maps device info to ExternalPrinter model
- MainViewController: LaunchedEffect-based discovery flow collection
  with discoveryStatus state (Idle/Discovering/Error), flowOn(IO)
  for background work with Main-thread Compose state updates
- PrinterLayout: discoveryStatus parameter showing search progress
- Info.plist: NSBluetoothAlwaysUsageDescription, NSLocalNetworkUsageDescription,
  NSBonjourServices, UISupportedExternalAccessoryProtocols for
  Bluetooth/LAN/USB printer discovery permissions

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
- Add Gradle task to auto-download Epson ePOS SDK xcframework on first
  iOS build, eliminating manual setup steps
- Consolidate SDK config into EpsonSdk object with centralized version,
  repo URL, and architecture slice constants
- DRY up iOS target configuration with configureEpsonInterop() extension
- Move EpsonServiceProviderTest from instrumented to unit test with
  proper null-guard coverage
- Update nativeInterop README with auto-download instructions

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
…ekar/task/UNTIL-19514/print-engine-epson-ios-support
…ekar/task/UNTIL-19514/print-engine-epson-ios-support

# Conflicts:
#	print-plugins/epson/build.gradle.kts
#	print-plugins/epson/src/androidUnitTest/kotlin/de/tillhub/printengine/epson/EpsonServiceProviderTest.kt
@shekar-allam
shekar-allam requested a review from a team as a code owner March 20, 2026 09:03
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
@djordjeh
djordjeh merged commit af739ee into shekar/task/UNTIL-19417/print-engine-kmp-3.0.5 Mar 25, 2026
1 check passed
@djordjeh
djordjeh deleted the shekar/task/UNTIL-19514/print-engine-epson-ios-support branch March 25, 2026 14:46
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.

3 participants