diff --git a/lib/model/image_entry.dart b/lib/model/image_entry.dart index bbafcaa13..7417c85ed 100644 --- a/lib/model/image_entry.dart +++ b/lib/model/image_entry.dart @@ -217,6 +217,8 @@ class ImageEntry { return true; } + bool get canPrint => !isVideo; + bool get canRotate => mimeType == MimeTypes.MIME_JPEG || mimeType == MimeTypes.MIME_PNG; Future rotate({@required bool clockwise}) async { diff --git a/lib/utils/change_notifier.dart b/lib/utils/change_notifier.dart index 47fd036f7..d79d9c267 100644 --- a/lib/utils/change_notifier.dart +++ b/lib/utils/change_notifier.dart @@ -12,7 +12,6 @@ class AChangeNotifier implements Listenable { void dispose() => _listeners = null; - @protected void notifyListeners() { if (_listeners == null) return; final localListeners = List.from(_listeners); diff --git a/lib/widgets/fullscreen/overlay_top.dart b/lib/widgets/fullscreen/overlay_top.dart index 922820869..c5855eff0 100644 --- a/lib/widgets/fullscreen/overlay_top.dart +++ b/lib/widgets/fullscreen/overlay_top.dart @@ -76,10 +76,11 @@ class FullscreenTopOverlay extends StatelessWidget { value: FullscreenAction.rotateCW, child: MenuRow(text: 'Rotate right', icon: Icons.rotate_right), ), - PopupMenuItem( - value: FullscreenAction.print, - child: MenuRow(text: 'Print', icon: Icons.print), - ), + if (entry.canPrint) + PopupMenuItem( + value: FullscreenAction.print, + child: MenuRow(text: 'Print', icon: Icons.print), + ), PopupMenuDivider(), PopupMenuItem( value: FullscreenAction.edit,