Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
16 changes: 16 additions & 0 deletions lib/data/viewmodels/library_browse_view_model.dart
Original file line number Diff line number Diff line change
Expand Up @@ -84,6 +84,9 @@ class LibraryBrowseViewModel extends ChangeNotifier {
late PosterSize _posterSize;
PosterSize get posterSize => _posterSize;

late LibraryScrollDirection _scrollDirection;
LibraryScrollDirection get scrollDirection => _scrollDirection;

String? _errorMessage;
String? get errorMessage => _errorMessage;

Expand Down Expand Up @@ -167,6 +170,9 @@ class LibraryBrowseViewModel extends ChangeNotifier {
_letterFilter = '';
_imageType = _prefs.get(UserPreferences.libraryImageType(_imagePrefKey));
_posterSize = _readScopedPosterSize();
_scrollDirection = _prefs.get(
UserPreferences.libraryScrollDirection(_imagePrefKey),
);
}

String get _prefKey => genreId ?? libraryId;
Expand Down Expand Up @@ -643,6 +649,16 @@ class LibraryBrowseViewModel extends ChangeNotifier {
notifyListeners();
}

Future<void> setScrollDirection(LibraryScrollDirection value) async {
if (_scrollDirection == value) return;
_scrollDirection = value;
await _prefs.set(
UserPreferences.libraryScrollDirection(_imagePrefKey),
value,
);
notifyListeners();
}

bool get isSeriesLibrary =>
_collectionType == 'tvshows' ||
(includeItemTypes != null && includeItemTypes!.contains('Series'));
Expand Down
12 changes: 12 additions & 0 deletions lib/l10n/app_en.arb
Original file line number Diff line number Diff line change
Expand Up @@ -472,6 +472,18 @@
"@extraLarge": {
"description": "Poster size option"
},
"scrollDirection": "Scroll Direction",
"@scrollDirection": {
"description": "Section header for scroll direction selection in library display settings"
},
"scrollDirectionVertical": "Vertical",
"@scrollDirectionVertical": {
"description": "Library scroll direction option: vertical grid (default)"
},
"scrollDirectionHorizontal": "Horizontal",
"@scrollDirectionHorizontal": {
"description": "Library scroll direction option: horizontal grid for ultrawide displays"
},
"libraryGenresTitle": "{name} \u2014 Genres",
"@libraryGenresTitle": {
"description": "Header title showing library name with genres suffix",
Expand Down
18 changes: 18 additions & 0 deletions lib/l10n/app_localizations.dart
Original file line number Diff line number Diff line change
Expand Up @@ -857,6 +857,24 @@ abstract class AppLocalizations {
/// **'Extra Large'**
String get extraLarge;

/// Section header for scroll direction selection in library display settings
///
/// In en, this message translates to:
/// **'Scroll Direction'**
String get scrollDirection;

/// Library scroll direction option: vertical grid (default)
///
/// In en, this message translates to:
/// **'Vertical'**
String get scrollDirectionVertical;

/// Library scroll direction option: horizontal grid for ultrawide displays
///
/// In en, this message translates to:
/// **'Horizontal'**
String get scrollDirectionHorizontal;

/// Header title showing library name with genres suffix
///
/// In en, this message translates to:
Expand Down
9 changes: 9 additions & 0 deletions lib/l10n/app_localizations_af.dart
Original file line number Diff line number Diff line change
Expand Up @@ -359,6 +359,15 @@ class AppLocalizationsAf extends AppLocalizations {
@override
String get extraLarge => 'Ekstra groot';

@override
String get scrollDirection => 'Scroll Direction';

@override
String get scrollDirectionVertical => 'Vertical';

@override
String get scrollDirectionHorizontal => 'Horizontal';

@override
String libraryGenresTitle(String name) {
return '$name — Genres';
Expand Down
9 changes: 9 additions & 0 deletions lib/l10n/app_localizations_ar.dart
Original file line number Diff line number Diff line change
Expand Up @@ -355,6 +355,15 @@ class AppLocalizationsAr extends AppLocalizations {
@override
String get extraLarge => 'كبير جدا';

@override
String get scrollDirection => 'Scroll Direction';

@override
String get scrollDirectionVertical => 'Vertical';

@override
String get scrollDirectionHorizontal => 'Horizontal';

@override
String libraryGenresTitle(String name) {
return '$name — الأنواع';
Expand Down
9 changes: 9 additions & 0 deletions lib/l10n/app_localizations_be.dart
Original file line number Diff line number Diff line change
Expand Up @@ -359,6 +359,15 @@ class AppLocalizationsBe extends AppLocalizations {
@override
String get extraLarge => 'Вельмі вялікі';

@override
String get scrollDirection => 'Scroll Direction';

@override
String get scrollDirectionVertical => 'Vertical';

@override
String get scrollDirectionHorizontal => 'Horizontal';

@override
String libraryGenresTitle(String name) {
return '$name — Жанры';
Expand Down
9 changes: 9 additions & 0 deletions lib/l10n/app_localizations_bg.dart
Original file line number Diff line number Diff line change
Expand Up @@ -358,6 +358,15 @@ class AppLocalizationsBg extends AppLocalizations {
@override
String get extraLarge => 'Изключително голям';

@override
String get scrollDirection => 'Scroll Direction';

@override
String get scrollDirectionVertical => 'Vertical';

@override
String get scrollDirectionHorizontal => 'Horizontal';

@override
String libraryGenresTitle(String name) {
return '$name — Жанрове';
Expand Down
9 changes: 9 additions & 0 deletions lib/l10n/app_localizations_bn.dart
Original file line number Diff line number Diff line change
Expand Up @@ -358,6 +358,15 @@ class AppLocalizationsBn extends AppLocalizations {
@override
String get extraLarge => 'অতিরিক্ত বড়';

@override
String get scrollDirection => 'Scroll Direction';

@override
String get scrollDirectionVertical => 'Vertical';

@override
String get scrollDirectionHorizontal => 'Horizontal';

@override
String libraryGenresTitle(String name) {
return '$name — ধরন';
Expand Down
9 changes: 9 additions & 0 deletions lib/l10n/app_localizations_ca.dart
Original file line number Diff line number Diff line change
Expand Up @@ -364,6 +364,15 @@ class AppLocalizationsCa extends AppLocalizations {
@override
String get extraLarge => 'Extragran';

@override
String get scrollDirection => 'Scroll Direction';

@override
String get scrollDirectionVertical => 'Vertical';

@override
String get scrollDirectionHorizontal => 'Horizontal';

@override
String libraryGenresTitle(String name) {
return '$name — Gèneres';
Expand Down
9 changes: 9 additions & 0 deletions lib/l10n/app_localizations_cs.dart
Original file line number Diff line number Diff line change
Expand Up @@ -360,6 +360,15 @@ class AppLocalizationsCs extends AppLocalizations {
@override
String get extraLarge => 'Extra velké';

@override
String get scrollDirection => 'Scroll Direction';

@override
String get scrollDirectionVertical => 'Vertical';

@override
String get scrollDirectionHorizontal => 'Horizontal';

@override
String libraryGenresTitle(String name) {
return '$name — Žánry';
Expand Down
9 changes: 9 additions & 0 deletions lib/l10n/app_localizations_cy.dart
Original file line number Diff line number Diff line change
Expand Up @@ -360,6 +360,15 @@ class AppLocalizationsCy extends AppLocalizations {
@override
String get extraLarge => 'Mawr Ychwanegol';

@override
String get scrollDirection => 'Scroll Direction';

@override
String get scrollDirectionVertical => 'Vertical';

@override
String get scrollDirectionHorizontal => 'Horizontal';

@override
String libraryGenresTitle(String name) {
return '$name — Genres';
Expand Down
9 changes: 9 additions & 0 deletions lib/l10n/app_localizations_da.dart
Original file line number Diff line number Diff line change
Expand Up @@ -359,6 +359,15 @@ class AppLocalizationsDa extends AppLocalizations {
@override
String get extraLarge => 'Ekstra stor';

@override
String get scrollDirection => 'Scroll Direction';

@override
String get scrollDirectionVertical => 'Vertical';

@override
String get scrollDirectionHorizontal => 'Horizontal';

@override
String libraryGenresTitle(String name) {
return '$name — Genrer';
Expand Down
9 changes: 9 additions & 0 deletions lib/l10n/app_localizations_de.dart
Original file line number Diff line number Diff line change
Expand Up @@ -362,6 +362,15 @@ class AppLocalizationsDe extends AppLocalizations {
@override
String get extraLarge => 'Sehr groß';

@override
String get scrollDirection => 'Scroll Direction';

@override
String get scrollDirectionVertical => 'Vertical';

@override
String get scrollDirectionHorizontal => 'Horizontal';

@override
String libraryGenresTitle(String name) {
return '$name – Genres';
Expand Down
9 changes: 9 additions & 0 deletions lib/l10n/app_localizations_el.dart
Original file line number Diff line number Diff line change
Expand Up @@ -363,6 +363,15 @@ class AppLocalizationsEl extends AppLocalizations {
@override
String get extraLarge => 'Πολύ μεγάλο';

@override
String get scrollDirection => 'Scroll Direction';

@override
String get scrollDirectionVertical => 'Vertical';

@override
String get scrollDirectionHorizontal => 'Horizontal';

@override
String libraryGenresTitle(String name) {
return '$name — Είδη';
Expand Down
9 changes: 9 additions & 0 deletions lib/l10n/app_localizations_en.dart
Original file line number Diff line number Diff line change
Expand Up @@ -359,6 +359,15 @@ class AppLocalizationsEn extends AppLocalizations {
@override
String get extraLarge => 'Extra Large';

@override
String get scrollDirection => 'Scroll Direction';

@override
String get scrollDirectionVertical => 'Vertical';

@override
String get scrollDirectionHorizontal => 'Horizontal';

@override
String libraryGenresTitle(String name) {
return '$name — Genres';
Expand Down
9 changes: 9 additions & 0 deletions lib/l10n/app_localizations_eo.dart
Original file line number Diff line number Diff line change
Expand Up @@ -358,6 +358,15 @@ class AppLocalizationsEo extends AppLocalizations {
@override
String get extraLarge => 'Ekstra Granda';

@override
String get scrollDirection => 'Scroll Direction';

@override
String get scrollDirectionVertical => 'Vertical';

@override
String get scrollDirectionHorizontal => 'Horizontal';

@override
String libraryGenresTitle(String name) {
return '$name — Ĝenroj';
Expand Down
9 changes: 9 additions & 0 deletions lib/l10n/app_localizations_es.dart
Original file line number Diff line number Diff line change
Expand Up @@ -361,6 +361,15 @@ class AppLocalizationsEs extends AppLocalizations {
@override
String get extraLarge => 'Muy grande';

@override
String get scrollDirection => 'Scroll Direction';

@override
String get scrollDirectionVertical => 'Vertical';

@override
String get scrollDirectionHorizontal => 'Horizontal';

@override
String libraryGenresTitle(String name) {
return '$name — Géneros';
Expand Down
9 changes: 9 additions & 0 deletions lib/l10n/app_localizations_et.dart
Original file line number Diff line number Diff line change
Expand Up @@ -360,6 +360,15 @@ class AppLocalizationsEt extends AppLocalizations {
@override
String get extraLarge => 'Eriti suur';

@override
String get scrollDirection => 'Scroll Direction';

@override
String get scrollDirectionVertical => 'Vertical';

@override
String get scrollDirectionHorizontal => 'Horizontal';

@override
String libraryGenresTitle(String name) {
return '$name — Žanrid';
Expand Down
9 changes: 9 additions & 0 deletions lib/l10n/app_localizations_fa.dart
Original file line number Diff line number Diff line change
Expand Up @@ -357,6 +357,15 @@ class AppLocalizationsFa extends AppLocalizations {
@override
String get extraLarge => 'فوق العاده بزرگ';

@override
String get scrollDirection => 'Scroll Direction';

@override
String get scrollDirectionVertical => 'Vertical';

@override
String get scrollDirectionHorizontal => 'Horizontal';

@override
String libraryGenresTitle(String name) {
return '$name - ​​ژانرها';
Expand Down
9 changes: 9 additions & 0 deletions lib/l10n/app_localizations_fi.dart
Original file line number Diff line number Diff line change
Expand Up @@ -361,6 +361,15 @@ class AppLocalizationsFi extends AppLocalizations {
@override
String get extraLarge => 'Erittäin suuri';

@override
String get scrollDirection => 'Scroll Direction';

@override
String get scrollDirectionVertical => 'Vertical';

@override
String get scrollDirectionHorizontal => 'Horizontal';

@override
String libraryGenresTitle(String name) {
return '$name — Genret';
Expand Down
9 changes: 9 additions & 0 deletions lib/l10n/app_localizations_fr.dart
Original file line number Diff line number Diff line change
Expand Up @@ -360,6 +360,15 @@ class AppLocalizationsFr extends AppLocalizations {
@override
String get extraLarge => 'Très grand';

@override
String get scrollDirection => 'Scroll Direction';

@override
String get scrollDirectionVertical => 'Vertical';

@override
String get scrollDirectionHorizontal => 'Horizontal';

@override
String libraryGenresTitle(String name) {
return '$name — Genres';
Expand Down
9 changes: 9 additions & 0 deletions lib/l10n/app_localizations_gl.dart
Original file line number Diff line number Diff line change
Expand Up @@ -363,6 +363,15 @@ class AppLocalizationsGl extends AppLocalizations {
@override
String get extraLarge => 'Extra grande';

@override
String get scrollDirection => 'Scroll Direction';

@override
String get scrollDirectionVertical => 'Vertical';

@override
String get scrollDirectionHorizontal => 'Horizontal';

@override
String libraryGenresTitle(String name) {
return '$name — Xéneros';
Expand Down
Loading
Loading