Merge branch 'develop'
BIN
extra/play/feature_graphics_1024_500.png
Normal file
After Width: | Height: | Size: 21 KiB |
BIN
extra/play/feature_graphics_1024_500.xcf
Normal file
BIN
extra/play/hi_res_512.png
Normal file
After Width: | Height: | Size: 4.4 KiB |
BIN
extra/play/screenshots v1.0.0/S10/1-S10-collection.jpg
Normal file
After Width: | Height: | Size: 1,011 KiB |
BIN
extra/play/screenshots v1.0.0/S10/2-S10-image.jpg
Normal file
After Width: | Height: | Size: 1.8 MiB |
BIN
extra/play/screenshots v1.0.0/S10/3-S10-info__basic_.jpg
Normal file
After Width: | Height: | Size: 794 KiB |
BIN
extra/play/screenshots v1.0.0/S10/4-S10-info__metadata_.jpg
Normal file
After Width: | Height: | Size: 404 KiB |
BIN
extra/play/screenshots v1.0.0/S10/5-S10-stats.jpg
Normal file
After Width: | Height: | Size: 453 KiB |
BIN
extra/play/screenshots v1.0.0/S10/6-S10-countries.jpg
Normal file
After Width: | Height: | Size: 1.6 MiB |
BIN
extra/play/screenshots v1.0.0/raw/1 Collection.png
Normal file
After Width: | Height: | Size: 1.5 MiB |
BIN
extra/play/screenshots v1.0.0/raw/2 Image.png
Normal file
After Width: | Height: | Size: 3.4 MiB |
BIN
extra/play/screenshots v1.0.0/raw/3 Info basic.png
Normal file
After Width: | Height: | Size: 533 KiB |
BIN
extra/play/screenshots v1.0.0/raw/4 Info metadata.png
Normal file
After Width: | Height: | Size: 161 KiB |
BIN
extra/play/screenshots v1.0.0/raw/5 Stats.png
Normal file
After Width: | Height: | Size: 159 KiB |
BIN
extra/play/screenshots v1.0.0/raw/6 Countries.png
Normal file
After Width: | Height: | Size: 2.8 MiB |
|
@ -61,8 +61,9 @@ class CollectionSource with SourceBase, AlbumMixin, LocationMixin, TagMixin {
|
|||
void removeEntries(Iterable<ImageEntry> entries) {
|
||||
entries.forEach((entry) => entry.removeFromFavourites());
|
||||
_rawEntries.removeWhere(entries.contains);
|
||||
// TODO TLAD invalidate locations/tags, like cleaning albums
|
||||
cleanEmptyAlbums(entries.map((entry) => entry.directory).toSet());
|
||||
updateLocations();
|
||||
updateTags();
|
||||
invalidateFilterEntryCounts();
|
||||
eventBus.fire(EntryRemovedEvent(entries));
|
||||
}
|
||||
|
|
|
@ -1,4 +1,3 @@
|
|||
import 'package:aves/widgets/common/icons.dart';
|
||||
import 'package:flutter/material.dart';
|
||||
|
||||
class EmptyContent extends StatelessWidget {
|
||||
|
@ -7,8 +6,8 @@ class EmptyContent extends StatelessWidget {
|
|||
final AlignmentGeometry alignment;
|
||||
|
||||
const EmptyContent({
|
||||
@required this.icon = AIcons.image,
|
||||
@required this.text = 'No images',
|
||||
@required this.icon,
|
||||
@required this.text,
|
||||
this.alignment = const FractionalOffset(.5, .35),
|
||||
});
|
||||
|
||||
|
|
|
@ -4,8 +4,12 @@ import 'package:flutter/material.dart';
|
|||
import 'package:flutter/scheduler.dart';
|
||||
|
||||
mixin FeedbackMixin {
|
||||
Flushbar _flushbar;
|
||||
|
||||
Future<void> dismissFeedback() => _flushbar?.dismiss();
|
||||
|
||||
void showFeedback(BuildContext context, String message) {
|
||||
Flushbar(
|
||||
_flushbar = Flushbar(
|
||||
message: message,
|
||||
margin: const EdgeInsets.all(8),
|
||||
borderRadius: 8,
|
||||
|
@ -14,6 +18,6 @@ mixin FeedbackMixin {
|
|||
duration: Durations.opToastDisplay * timeDilation,
|
||||
flushbarPosition: FlushbarPosition.TOP,
|
||||
animationDuration: Durations.opToastAnimation,
|
||||
).show(context);
|
||||
)..show(context);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -289,9 +289,10 @@ class FullscreenBodyState extends State<FullscreenBody> with SingleTickerProvide
|
|||
);
|
||||
}
|
||||
|
||||
void _onVerticalPageChanged(int page) {
|
||||
Future<void> _onVerticalPageChanged(int page) async {
|
||||
_currentVerticalPage.value = page;
|
||||
if (page == transitionPage) {
|
||||
await _actionDelegate.dismissFeedback();
|
||||
_onLeave();
|
||||
Navigator.pop(context);
|
||||
}
|
||||
|
|
48
pubspec.lock
|
@ -28,7 +28,7 @@ packages:
|
|||
name: barcode
|
||||
url: "https://pub.dartlang.org"
|
||||
source: hosted
|
||||
version: "1.11.0"
|
||||
version: "1.11.1"
|
||||
boolean_selector:
|
||||
dependency: transitive
|
||||
description:
|
||||
|
@ -81,9 +81,11 @@ packages:
|
|||
draggable_scrollbar:
|
||||
dependency: "direct main"
|
||||
description:
|
||||
path: "../flutter-draggable-scrollbar"
|
||||
relative: true
|
||||
source: path
|
||||
path: "."
|
||||
ref: HEAD
|
||||
resolved-ref: "3b823ae0a9def4edec62771f18e6348312bfce15"
|
||||
url: "git://github.com/deckerst/flutter-draggable-scrollbar.git"
|
||||
source: git
|
||||
version: "0.0.4"
|
||||
event_bus:
|
||||
dependency: "direct main"
|
||||
|
@ -95,9 +97,11 @@ packages:
|
|||
expansion_tile_card:
|
||||
dependency: "direct main"
|
||||
description:
|
||||
path: "../expansion_tile_card"
|
||||
relative: true
|
||||
source: path
|
||||
path: "."
|
||||
ref: HEAD
|
||||
resolved-ref: edb6b11bb448fc2f30e566a20605b37093503176
|
||||
url: "git://github.com/deckerst/expansion_tile_card.git"
|
||||
source: git
|
||||
version: "1.0.3"
|
||||
firebase_crashlytics:
|
||||
dependency: "direct main"
|
||||
|
@ -121,9 +125,11 @@ packages:
|
|||
flutter_ijkplayer:
|
||||
dependency: "direct main"
|
||||
description:
|
||||
path: "../flutter_ijkplayer"
|
||||
relative: true
|
||||
source: path
|
||||
path: "."
|
||||
ref: HEAD
|
||||
resolved-ref: "2dfc79b79b9544ecbc205c158c6246293fb2be8f"
|
||||
url: "git://github.com/deckerst/flutter_ijkplayer.git"
|
||||
source: git
|
||||
version: "0.3.6"
|
||||
flutter_markdown:
|
||||
dependency: "direct main"
|
||||
|
@ -211,7 +217,7 @@ packages:
|
|||
name: js
|
||||
url: "https://pub.dartlang.org"
|
||||
source: hosted
|
||||
version: "0.6.1+1"
|
||||
version: "0.6.2"
|
||||
logging:
|
||||
dependency: transitive
|
||||
description:
|
||||
|
@ -225,7 +231,7 @@ packages:
|
|||
name: markdown
|
||||
url: "https://pub.dartlang.org"
|
||||
source: hosted
|
||||
version: "2.1.4"
|
||||
version: "2.1.5"
|
||||
matcher:
|
||||
dependency: transitive
|
||||
description:
|
||||
|
@ -309,14 +315,14 @@ packages:
|
|||
name: permission_handler
|
||||
url: "https://pub.dartlang.org"
|
||||
source: hosted
|
||||
version: "5.0.0+hotfix.8"
|
||||
version: "5.0.1"
|
||||
permission_handler_platform_interface:
|
||||
dependency: transitive
|
||||
description:
|
||||
name: permission_handler_platform_interface
|
||||
url: "https://pub.dartlang.org"
|
||||
source: hosted
|
||||
version: "2.0.0"
|
||||
version: "2.0.1"
|
||||
petitparser:
|
||||
dependency: transitive
|
||||
description:
|
||||
|
@ -327,9 +333,11 @@ packages:
|
|||
photo_view:
|
||||
dependency: "direct main"
|
||||
description:
|
||||
path: "../photo_view"
|
||||
relative: true
|
||||
source: path
|
||||
path: "."
|
||||
ref: HEAD
|
||||
resolved-ref: "79a3c20ee7f01e6ffb71464000c2ca8f1e28ec44"
|
||||
url: "git://github.com/deckerst/photo_view.git"
|
||||
source: git
|
||||
version: "0.9.2"
|
||||
platform_detect:
|
||||
dependency: transitive
|
||||
|
@ -351,14 +359,14 @@ packages:
|
|||
name: printing
|
||||
url: "https://pub.dartlang.org"
|
||||
source: hosted
|
||||
version: "3.4.0"
|
||||
version: "3.5.0"
|
||||
provider:
|
||||
dependency: "direct main"
|
||||
description:
|
||||
name: provider
|
||||
url: "https://pub.dartlang.org"
|
||||
source: hosted
|
||||
version: "4.1.2"
|
||||
version: "4.1.3"
|
||||
pub_semver:
|
||||
dependency: transitive
|
||||
description:
|
||||
|
@ -433,7 +441,7 @@ packages:
|
|||
name: sqflite
|
||||
url: "https://pub.dartlang.org"
|
||||
source: hosted
|
||||
version: "1.3.0+2"
|
||||
version: "1.3.1"
|
||||
sqflite_common:
|
||||
dependency: transitive
|
||||
description:
|
||||
|
|
28
pubspec.yaml
|
@ -11,7 +11,7 @@ description: A new Flutter application.
|
|||
# In iOS, build-name is used as CFBundleShortVersionString while build-number used as CFBundleVersion.
|
||||
# Read more about iOS versioning at
|
||||
# https://developer.apple.com/library/archive/documentation/General/Reference/InfoPlistKeyReference/Articles/CoreFoundationKeys.html
|
||||
version: 1.0.0+1
|
||||
version: 1.0.1+2
|
||||
|
||||
# video_player (as of v0.10.8+2, backed by ExoPlayer):
|
||||
# - does not support content URIs (by default, but trivial by fork)
|
||||
|
@ -39,20 +39,20 @@ dependencies:
|
|||
charts_flutter:
|
||||
collection:
|
||||
draggable_scrollbar:
|
||||
path: ../flutter-draggable-scrollbar
|
||||
# git:
|
||||
# url: git://github.com/deckerst/flutter-draggable-scrollbar.git
|
||||
# path: ../flutter-draggable-scrollbar
|
||||
git:
|
||||
url: git://github.com/deckerst/flutter-draggable-scrollbar.git
|
||||
event_bus:
|
||||
expansion_tile_card:
|
||||
path: ../expansion_tile_card
|
||||
# git:
|
||||
# url: git://github.com/deckerst/expansion_tile_card.git
|
||||
# path: ../expansion_tile_card
|
||||
git:
|
||||
url: git://github.com/deckerst/expansion_tile_card.git
|
||||
firebase_crashlytics:
|
||||
flushbar:
|
||||
flutter_ijkplayer:
|
||||
path: ../flutter_ijkplayer
|
||||
# git:
|
||||
# url: git://github.com/deckerst/flutter_ijkplayer.git
|
||||
# path: ../flutter_ijkplayer
|
||||
git:
|
||||
url: git://github.com/deckerst/flutter_ijkplayer.git
|
||||
flutter_markdown:
|
||||
flutter_native_timezone:
|
||||
flutter_staggered_animations:
|
||||
|
@ -66,12 +66,10 @@ dependencies:
|
|||
pedantic:
|
||||
percent_indicator:
|
||||
permission_handler:
|
||||
# photo_view v0.9.2 has issue https://github.com/renancaraujo/photo_view/issues/216
|
||||
# https://github.com/renancaraujo/photo_view/pull/266 does not fix it
|
||||
photo_view:
|
||||
path: ../photo_view
|
||||
# git:
|
||||
# url: git://github.com/deckerst/photo_view.git
|
||||
# path: ../photo_view
|
||||
git:
|
||||
url: git://github.com/deckerst/photo_view.git
|
||||
printing:
|
||||
provider:
|
||||
screen:
|
||||
|
|