Skip to content

Releases: backslash-f/gcoverseer

v2.0.0

05 Dec 22:21
dbaee21
Compare
Choose a tag to compare

Version 2.0.0 modernizes the entire thing:

  • Migrate to Swift 6 + Structured Concurrency
  • Migrate from Combine to AsyncSequence
  • Bump iOS, tvOS, and macOS versions to their latest versions
  • Create the GCOverseerProtocol for mocking/testing
  • Include DualSense support
    • GCOverseerProtocol.dualSenseControllers()
      • Returns all DualSense controllers that are connected to the device.

v1.0.0

28 Aug 08:25
b384739
Compare
Choose a tag to compare

v0.2.2

20 Feb 14:28
Compare
Choose a tag to compare

Fixes an issue where the initial isConnected value would be false even when controllers were connected.

v0.2.1

28 Oct 21:19
Compare
Choose a tag to compare

Minor refactor around the log category.

v0.2.0

23 Oct 17:07
Compare
Choose a tag to compare
v0.2.0 Pre-release
Pre-release

A bunch of new APIs are available:

API Description
controllers() Returns all controllers that are connected to the device. E.g. Dualshock, Xbox, Siri Remote controllers, etc.
extendedGamepadControllers() Returns all controllers supporting the extendedGamepad profile that are connected to the device. E.g. Dualshock, Xbox controllers, etc.
dualshockControllers() Returns all DualShock controllers that are connected to the device.
xboxControllers() Returns all Xbox controllers that are connected to the device.
microGamepadControllers() Returns all controllers supporting the microGamepad profile that are connected to the device. E.g. Apple's Siri Remote.
motionControllers() Returns all controllers supporting the motion profile that are connected to the device.
controllerFor(playerIndex:) Returns the controller for the player 1, player 2, etc.

v0.1.0

13 Oct 20:59
3e058a2
Compare
Choose a tag to compare
v0.1.0 Pre-release
Pre-release

In the very first pre-release, listen to game controller connect / disconnect events as follows:

let gcOverseer = GCOverseer()

gcOverseer.$isGameControllerConnected
  .sink { isConnected in
    // Do something
  }
  .store(in: &cancellables)
}