feat: Customizable shortcuts/hotkeys (#439)

This implements the logic for allowing hotkeys with modifiers.
Implemented globalhotkeys and videocontrol hotkeys
Also implements saving the forward backwards seconds to the user.

Co-authored-by: PartyDonut <PartyDonut@users.noreply.github.com>
This commit is contained in:
PartyDonut 2025-08-08 16:36:50 +02:00 committed by GitHub
parent 23385d8e62
commit fa30e634b4
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
29 changed files with 1360 additions and 162 deletions

View file

@ -31,6 +31,9 @@ _$AccountModelImpl _$$AccountModelImplFromJson(Map<String, dynamic> json) =>
LibraryFiltersModel.fromJson(e as Map<String, dynamic>))
.toList() ??
const [],
userSettings: json['userSettings'] == null
? null
: UserSettings.fromJson(json['userSettings'] as Map<String, dynamic>),
);
Map<String, dynamic> _$$AccountModelImplToJson(_$AccountModelImpl instance) =>
@ -46,6 +49,7 @@ Map<String, dynamic> _$$AccountModelImplToJson(_$AccountModelImpl instance) =>
'searchQueryHistory': instance.searchQueryHistory,
'quickConnectState': instance.quickConnectState,
'savedFilters': instance.savedFilters,
'userSettings': instance.userSettings,
};
const _$AuthenticationEnumMap = {
@ -54,3 +58,20 @@ const _$AuthenticationEnumMap = {
Authentication.passcode: 'passcode',
Authentication.none: 'none',
};
_$UserSettingsImpl _$$UserSettingsImplFromJson(Map<String, dynamic> json) =>
_$UserSettingsImpl(
skipForwardDuration: json['skipForwardDuration'] == null
? const Duration(seconds: 30)
: Duration(
microseconds: (json['skipForwardDuration'] as num).toInt()),
skipBackDuration: json['skipBackDuration'] == null
? const Duration(seconds: 10)
: Duration(microseconds: (json['skipBackDuration'] as num).toInt()),
);
Map<String, dynamic> _$$UserSettingsImplToJson(_$UserSettingsImpl instance) =>
<String, dynamic>{
'skipForwardDuration': instance.skipForwardDuration.inMicroseconds,
'skipBackDuration': instance.skipBackDuration.inMicroseconds,
};