mirror of
https://github.com/zarzet/SpotiFLAC-Mobile.git
synced 2026-08-23 11:22:37 +02:00
feat: propagate download cancellation through entire pipeline, add MusicBrainz album artist fallback, and allow disabling home feed
- Add reference-counted cancel entries to prevent premature cleanup when multiple operations share the same itemID - Propagate cancellation to DownloadTrack, DownloadWithFallback, DownloadWithExtensionsJSON, extension providers, and ISRC search - Fetch album artist from MusicBrainz when missing during download and re-enrich - Make ALBUMARTIST tag nullable to avoid writing artistName as album artist - Add home feed 'Off' option in extension settings - Skip deezer in download provider priority sanitization
This commit is contained in:
@@ -5571,6 +5571,18 @@ abstract class AppLocalizations {
|
||||
/// **'Automatically select the best available'**
|
||||
String get extensionsHomeFeedAutoSubtitle;
|
||||
|
||||
/// Extensions page - home feed provider option: off
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Off'**
|
||||
String get extensionsHomeFeedOff;
|
||||
|
||||
/// Extensions page - subtitle for off home feed option
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Do not show the home feed on the main screen'**
|
||||
String get extensionsHomeFeedOffSubtitle;
|
||||
|
||||
/// Extensions page - subtitle for a specific extension home feed option
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
|
||||
@@ -3281,6 +3281,13 @@ class AppLocalizationsDe extends AppLocalizations {
|
||||
String get extensionsHomeFeedAutoSubtitle =>
|
||||
'Automatically select the best available';
|
||||
|
||||
@override
|
||||
String get extensionsHomeFeedOff => 'Off';
|
||||
|
||||
@override
|
||||
String get extensionsHomeFeedOffSubtitle =>
|
||||
'Do not show the home feed on the main screen';
|
||||
|
||||
@override
|
||||
String extensionsHomeFeedUse(String extensionName) {
|
||||
return 'Use $extensionName home feed';
|
||||
|
||||
@@ -3249,6 +3249,13 @@ class AppLocalizationsEn extends AppLocalizations {
|
||||
String get extensionsHomeFeedAutoSubtitle =>
|
||||
'Automatically select the best available';
|
||||
|
||||
@override
|
||||
String get extensionsHomeFeedOff => 'Off';
|
||||
|
||||
@override
|
||||
String get extensionsHomeFeedOffSubtitle =>
|
||||
'Do not show the home feed on the main screen';
|
||||
|
||||
@override
|
||||
String extensionsHomeFeedUse(String extensionName) {
|
||||
return 'Use $extensionName home feed';
|
||||
|
||||
@@ -3249,6 +3249,13 @@ class AppLocalizationsEs extends AppLocalizations {
|
||||
String get extensionsHomeFeedAutoSubtitle =>
|
||||
'Automatically select the best available';
|
||||
|
||||
@override
|
||||
String get extensionsHomeFeedOff => 'Off';
|
||||
|
||||
@override
|
||||
String get extensionsHomeFeedOffSubtitle =>
|
||||
'Do not show the home feed on the main screen';
|
||||
|
||||
@override
|
||||
String extensionsHomeFeedUse(String extensionName) {
|
||||
return 'Use $extensionName home feed';
|
||||
|
||||
@@ -3250,6 +3250,13 @@ class AppLocalizationsFr extends AppLocalizations {
|
||||
String get extensionsHomeFeedAutoSubtitle =>
|
||||
'Automatically select the best available';
|
||||
|
||||
@override
|
||||
String get extensionsHomeFeedOff => 'Off';
|
||||
|
||||
@override
|
||||
String get extensionsHomeFeedOffSubtitle =>
|
||||
'Do not show the home feed on the main screen';
|
||||
|
||||
@override
|
||||
String extensionsHomeFeedUse(String extensionName) {
|
||||
return 'Use $extensionName home feed';
|
||||
|
||||
@@ -3248,6 +3248,13 @@ class AppLocalizationsHi extends AppLocalizations {
|
||||
String get extensionsHomeFeedAutoSubtitle =>
|
||||
'Automatically select the best available';
|
||||
|
||||
@override
|
||||
String get extensionsHomeFeedOff => 'Off';
|
||||
|
||||
@override
|
||||
String get extensionsHomeFeedOffSubtitle =>
|
||||
'Do not show the home feed on the main screen';
|
||||
|
||||
@override
|
||||
String extensionsHomeFeedUse(String extensionName) {
|
||||
return 'Use $extensionName home feed';
|
||||
|
||||
@@ -3259,6 +3259,13 @@ class AppLocalizationsId extends AppLocalizations {
|
||||
String get extensionsHomeFeedAutoSubtitle =>
|
||||
'Automatically select the best available';
|
||||
|
||||
@override
|
||||
String get extensionsHomeFeedOff => 'Off';
|
||||
|
||||
@override
|
||||
String get extensionsHomeFeedOffSubtitle =>
|
||||
'Do not show the home feed on the main screen';
|
||||
|
||||
@override
|
||||
String extensionsHomeFeedUse(String extensionName) {
|
||||
return 'Use $extensionName home feed';
|
||||
|
||||
@@ -3235,6 +3235,13 @@ class AppLocalizationsJa extends AppLocalizations {
|
||||
String get extensionsHomeFeedAutoSubtitle =>
|
||||
'Automatically select the best available';
|
||||
|
||||
@override
|
||||
String get extensionsHomeFeedOff => 'Off';
|
||||
|
||||
@override
|
||||
String get extensionsHomeFeedOffSubtitle =>
|
||||
'Do not show the home feed on the main screen';
|
||||
|
||||
@override
|
||||
String extensionsHomeFeedUse(String extensionName) {
|
||||
return 'Use $extensionName home feed';
|
||||
|
||||
@@ -3228,6 +3228,13 @@ class AppLocalizationsKo extends AppLocalizations {
|
||||
String get extensionsHomeFeedAutoSubtitle =>
|
||||
'Automatically select the best available';
|
||||
|
||||
@override
|
||||
String get extensionsHomeFeedOff => 'Off';
|
||||
|
||||
@override
|
||||
String get extensionsHomeFeedOffSubtitle =>
|
||||
'Do not show the home feed on the main screen';
|
||||
|
||||
@override
|
||||
String extensionsHomeFeedUse(String extensionName) {
|
||||
return 'Use $extensionName home feed';
|
||||
|
||||
@@ -3248,6 +3248,13 @@ class AppLocalizationsNl extends AppLocalizations {
|
||||
String get extensionsHomeFeedAutoSubtitle =>
|
||||
'Automatically select the best available';
|
||||
|
||||
@override
|
||||
String get extensionsHomeFeedOff => 'Off';
|
||||
|
||||
@override
|
||||
String get extensionsHomeFeedOffSubtitle =>
|
||||
'Do not show the home feed on the main screen';
|
||||
|
||||
@override
|
||||
String extensionsHomeFeedUse(String extensionName) {
|
||||
return 'Use $extensionName home feed';
|
||||
|
||||
@@ -3249,6 +3249,13 @@ class AppLocalizationsPt extends AppLocalizations {
|
||||
String get extensionsHomeFeedAutoSubtitle =>
|
||||
'Automatically select the best available';
|
||||
|
||||
@override
|
||||
String get extensionsHomeFeedOff => 'Off';
|
||||
|
||||
@override
|
||||
String get extensionsHomeFeedOffSubtitle =>
|
||||
'Do not show the home feed on the main screen';
|
||||
|
||||
@override
|
||||
String extensionsHomeFeedUse(String extensionName) {
|
||||
return 'Use $extensionName home feed';
|
||||
|
||||
@@ -3308,6 +3308,13 @@ class AppLocalizationsRu extends AppLocalizations {
|
||||
String get extensionsHomeFeedAutoSubtitle =>
|
||||
'Automatically select the best available';
|
||||
|
||||
@override
|
||||
String get extensionsHomeFeedOff => 'Off';
|
||||
|
||||
@override
|
||||
String get extensionsHomeFeedOffSubtitle =>
|
||||
'Do not show the home feed on the main screen';
|
||||
|
||||
@override
|
||||
String extensionsHomeFeedUse(String extensionName) {
|
||||
return 'Use $extensionName home feed';
|
||||
|
||||
@@ -3306,6 +3306,13 @@ class AppLocalizationsTr extends AppLocalizations {
|
||||
String get extensionsHomeFeedAutoSubtitle =>
|
||||
'Automatically select the best available';
|
||||
|
||||
@override
|
||||
String get extensionsHomeFeedOff => 'Off';
|
||||
|
||||
@override
|
||||
String get extensionsHomeFeedOffSubtitle =>
|
||||
'Do not show the home feed on the main screen';
|
||||
|
||||
@override
|
||||
String extensionsHomeFeedUse(String extensionName) {
|
||||
return 'Use $extensionName home feed';
|
||||
|
||||
@@ -3249,6 +3249,13 @@ class AppLocalizationsZh extends AppLocalizations {
|
||||
String get extensionsHomeFeedAutoSubtitle =>
|
||||
'Automatically select the best available';
|
||||
|
||||
@override
|
||||
String get extensionsHomeFeedOff => 'Off';
|
||||
|
||||
@override
|
||||
String get extensionsHomeFeedOffSubtitle =>
|
||||
'Do not show the home feed on the main screen';
|
||||
|
||||
@override
|
||||
String extensionsHomeFeedUse(String extensionName) {
|
||||
return 'Use $extensionName home feed';
|
||||
|
||||
@@ -4255,6 +4255,14 @@
|
||||
"@extensionsHomeFeedAutoSubtitle": {
|
||||
"description": "Extensions page - subtitle for auto home feed option"
|
||||
},
|
||||
"extensionsHomeFeedOff": "Off",
|
||||
"@extensionsHomeFeedOff": {
|
||||
"description": "Extensions page - home feed provider option: off"
|
||||
},
|
||||
"extensionsHomeFeedOffSubtitle": "Do not show the home feed on the main screen",
|
||||
"@extensionsHomeFeedOffSubtitle": {
|
||||
"description": "Extensions page - subtitle for off home feed option"
|
||||
},
|
||||
"extensionsHomeFeedUse": "Use {extensionName} home feed",
|
||||
"@extensionsHomeFeedUse": {
|
||||
"description": "Extensions page - subtitle for a specific extension home feed option",
|
||||
|
||||
Reference in New Issue
Block a user