mirror of
https://github.com/jonasbark/swiftcontrol.git
synced 2026-02-18 00:17:40 +01:00
Click V2 adjustments
This commit is contained in:
@@ -71,7 +71,7 @@ class Connection {
|
||||
if (kDebugMode) {
|
||||
print('Scan result: ${result.name} - ${result.deviceId}');
|
||||
}
|
||||
|
||||
|
||||
final scanResult = BluetoothDevice.fromScanResult(result);
|
||||
|
||||
if (scanResult != null) {
|
||||
@@ -99,7 +99,14 @@ class Connection {
|
||||
device.processCharacteristic(characteristicUuid, value);
|
||||
}
|
||||
};
|
||||
// ...
|
||||
|
||||
UniversalBle.onConnectionChange = (String deviceId, bool isConnected, String? error) {
|
||||
final device = bluetoothDevices.firstOrNullWhere((e) => e.device.deviceId == deviceId);
|
||||
if (device != null && !isConnected) {
|
||||
// allow reconnection
|
||||
_lastScanResult.removeWhere((d) => d.deviceId == deviceId);
|
||||
}
|
||||
};
|
||||
}
|
||||
|
||||
Future<void> performScanning() async {
|
||||
|
||||
@@ -124,8 +124,6 @@ class ZwiftButtons {
|
||||
static const ControllerButton shiftDownLeft = ControllerButton(
|
||||
'shiftDownLeft',
|
||||
action: InGameAction.shiftDown,
|
||||
icon: Icons.remove,
|
||||
color: Colors.black,
|
||||
);
|
||||
static const ControllerButton powerUpLeft = ControllerButton('powerUpLeft', action: InGameAction.shiftDown);
|
||||
|
||||
|
||||
@@ -7,7 +7,22 @@ import 'package:swift_control/pages/markdown.dart';
|
||||
import 'package:swift_control/widgets/warning.dart';
|
||||
|
||||
class ZwiftClickV2 extends ZwiftRide {
|
||||
ZwiftClickV2(super.scanResult) : super(isBeta: true);
|
||||
ZwiftClickV2(super.scanResult)
|
||||
: super(
|
||||
isBeta: true,
|
||||
availableButtons: [
|
||||
ZwiftButtons.navigationLeft,
|
||||
ZwiftButtons.navigationRight,
|
||||
ZwiftButtons.navigationUp,
|
||||
ZwiftButtons.navigationDown,
|
||||
ZwiftButtons.a,
|
||||
ZwiftButtons.b,
|
||||
ZwiftButtons.y,
|
||||
ZwiftButtons.z,
|
||||
ZwiftButtons.shiftUpLeft,
|
||||
ZwiftButtons.shiftUpRight,
|
||||
],
|
||||
);
|
||||
|
||||
@override
|
||||
List<int> get startCommand => ZwiftConstants.RIDE_ON + ZwiftConstants.RESPONSE_START_CLICK_V2;
|
||||
|
||||
@@ -18,28 +18,30 @@ class ZwiftRide extends ZwiftDevice {
|
||||
/// analog drift or light touches.
|
||||
static const int analogPaddleThreshold = 25;
|
||||
|
||||
ZwiftRide(super.scanResult, {super.isBeta})
|
||||
ZwiftRide(super.scanResult, {super.isBeta, List<ControllerButton>? availableButtons})
|
||||
: super(
|
||||
availableButtons: [
|
||||
ZwiftButtons.navigationLeft,
|
||||
ZwiftButtons.navigationRight,
|
||||
ZwiftButtons.navigationUp,
|
||||
ZwiftButtons.navigationDown,
|
||||
ZwiftButtons.a,
|
||||
ZwiftButtons.b,
|
||||
ZwiftButtons.y,
|
||||
ZwiftButtons.z,
|
||||
ZwiftButtons.shiftUpLeft,
|
||||
ZwiftButtons.shiftDownLeft,
|
||||
ZwiftButtons.shiftUpRight,
|
||||
ZwiftButtons.shiftDownRight,
|
||||
ZwiftButtons.powerUpLeft,
|
||||
ZwiftButtons.powerUpRight,
|
||||
ZwiftButtons.onOffLeft,
|
||||
ZwiftButtons.onOffRight,
|
||||
ZwiftButtons.paddleLeft,
|
||||
ZwiftButtons.paddleRight,
|
||||
],
|
||||
availableButtons:
|
||||
availableButtons ??
|
||||
[
|
||||
ZwiftButtons.navigationLeft,
|
||||
ZwiftButtons.navigationRight,
|
||||
ZwiftButtons.navigationUp,
|
||||
ZwiftButtons.navigationDown,
|
||||
ZwiftButtons.a,
|
||||
ZwiftButtons.b,
|
||||
ZwiftButtons.y,
|
||||
ZwiftButtons.z,
|
||||
ZwiftButtons.shiftUpLeft,
|
||||
ZwiftButtons.shiftDownLeft,
|
||||
ZwiftButtons.shiftUpRight,
|
||||
ZwiftButtons.shiftDownRight,
|
||||
ZwiftButtons.powerUpLeft,
|
||||
ZwiftButtons.powerUpRight,
|
||||
ZwiftButtons.onOffLeft,
|
||||
ZwiftButtons.onOffRight,
|
||||
ZwiftButtons.paddleLeft,
|
||||
ZwiftButtons.paddleRight,
|
||||
],
|
||||
);
|
||||
|
||||
@override
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
import 'package:dartx/dartx.dart';
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:swift_control/bluetooth/devices/elite/elite_square.dart';
|
||||
import 'package:swift_control/bluetooth/devices/elite/elite_sterzo.dart';
|
||||
@@ -65,5 +66,5 @@ class ControllerButton {
|
||||
...ZwiftButtons.values,
|
||||
...EliteSquareButtons.values,
|
||||
...WahooKickrShiftButtons.values,
|
||||
];
|
||||
].distinct().toList();
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user