sort albums by lower-case natural sort ordering
This commit is contained in:
parent
bb79a674ad
commit
2a63b21148
|
@ -3,6 +3,7 @@
|
||||||
import 'dart:async';
|
import 'dart:async';
|
||||||
import 'dart:io';
|
import 'dart:io';
|
||||||
|
|
||||||
|
import 'package:collection/collection.dart';
|
||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:logging/logging.dart';
|
import 'package:logging/logging.dart';
|
||||||
import 'package:photos/core/configuration.dart';
|
import 'package:photos/core/configuration.dart';
|
||||||
|
@ -114,10 +115,10 @@ class _CollectionsGalleryWidgetState extends State<CollectionsGalleryWidget>
|
||||||
collectionsWithThumbnail.sort(
|
collectionsWithThumbnail.sort(
|
||||||
(first, second) {
|
(first, second) {
|
||||||
if (sortKey == AlbumSortKey.albumName) {
|
if (sortKey == AlbumSortKey.albumName) {
|
||||||
// alphabetical ASC order
|
return compareAsciiLowerCaseNatural(
|
||||||
return first.collection.name
|
first.collection.name,
|
||||||
.toLowerCase()
|
second.collection.name,
|
||||||
.compareTo(second.collection.name.toLowerCase());
|
);
|
||||||
} else if (sortKey == AlbumSortKey.newestPhoto) {
|
} else if (sortKey == AlbumSortKey.newestPhoto) {
|
||||||
return second.thumbnail.creationTime
|
return second.thumbnail.creationTime
|
||||||
.compareTo(first.thumbnail.creationTime);
|
.compareTo(first.thumbnail.creationTime);
|
||||||
|
|
|
@ -1,5 +1,6 @@
|
||||||
// @dart=2.9
|
// @dart=2.9
|
||||||
|
|
||||||
|
import 'package:collection/collection.dart';
|
||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:logging/logging.dart';
|
import 'package:logging/logging.dart';
|
||||||
import 'package:photos/core/configuration.dart';
|
import 'package:photos/core/configuration.dart';
|
||||||
|
@ -197,8 +198,10 @@ class _CreateCollectionPageState extends State<CreateCollectionPage> {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
collectionsWithThumbnail.sort((first, second) {
|
collectionsWithThumbnail.sort((first, second) {
|
||||||
return (first.collection.name.toLowerCase() ?? "")
|
return compareAsciiLowerCaseNatural(
|
||||||
.compareTo((second.collection.name.toLowerCase() ?? ""));
|
first.collection.name ?? "",
|
||||||
|
second.collection.name ?? "",
|
||||||
|
);
|
||||||
});
|
});
|
||||||
return collectionsWithThumbnail;
|
return collectionsWithThumbnail;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue