Fladder/pigeons/player_settings_pigeon.dart
PartyDonut 29b1c2e633
feat: Implement next-up screen for native player (#533)
Co-authored-by: PartyDonut <PartyDonut@users.noreply.github.com>
2025-10-15 18:05:51 +02:00

56 lines
1.1 KiB
Dart

import 'package:pigeon/pigeon.dart';
@ConfigurePigeon(
PigeonOptions(
dartOut: 'lib/src/player_settings_helper.g.dart',
dartOptions: DartOptions(),
kotlinOut: 'android/app/src/main/kotlin/nl/jknaapen/fladder/api/PlayerSettingsHelper.g.kt',
kotlinOptions: KotlinOptions(
includeErrorClass: false,
),
dartPackageName: 'nl_jknaapen_fladder.settings',
),
)
class PlayerSettings {
final bool enableTunneling;
final Map<SegmentType, SegmentSkip> skipTypes;
//Color in ARGB32 format
final int? themeColor;
final int skipForward;
final int skipBackward;
final AutoNextType autoNextType;
const PlayerSettings({
required this.enableTunneling,
required this.skipTypes,
required this.themeColor,
required this.skipForward,
required this.skipBackward,
required this.autoNextType,
});
}
enum AutoNextType {
off,
static,
smart,
}
enum SegmentType {
commercial,
preview,
recap,
intro,
outro,
}
enum SegmentSkip {
ask,
skip,
none,
}
@HostApi()
abstract class PlayerSettingsPigeon {
void sendPlayerSettings(PlayerSettings playerSettings);
}