refactor: split signature from pdf feature
This commit is contained in:
parent
c152531b20
commit
f74b724712
|
@ -7,8 +7,8 @@ import 'package:image/image.dart' as img;
|
||||||
|
|
||||||
import 'package:pdf_signature/data/services/export_service.dart';
|
import 'package:pdf_signature/data/services/export_service.dart';
|
||||||
import 'package:pdf_signature/data/services/export_providers.dart';
|
import 'package:pdf_signature/data/services/export_providers.dart';
|
||||||
import 'package:pdf_signature/ui/features/pdf/view_model/signature_library.dart';
|
import 'package:pdf_signature/ui/features/signature/view_model/signature_library.dart';
|
||||||
import 'package:pdf_signature/ui/features/pdf/view_model/signature_controller.dart';
|
import 'package:pdf_signature/ui/features/signature/view_model/signature_controller.dart';
|
||||||
import 'package:pdf_signature/ui/features/pdf/view_model/pdf_controller.dart';
|
import 'package:pdf_signature/ui/features/pdf/view_model/pdf_controller.dart';
|
||||||
import 'package:pdf_signature/ui/features/pdf/widgets/pdf_screen.dart';
|
import 'package:pdf_signature/ui/features/pdf/widgets/pdf_screen.dart';
|
||||||
import 'package:pdf_signature/l10n/app_localizations.dart';
|
import 'package:pdf_signature/l10n/app_localizations.dart';
|
||||||
|
|
|
@ -3,7 +3,7 @@ import 'package:flutter_riverpod/flutter_riverpod.dart';
|
||||||
import 'package:pdf_signature/l10n/app_localizations.dart';
|
import 'package:pdf_signature/l10n/app_localizations.dart';
|
||||||
|
|
||||||
import '../../../../data/model/model.dart';
|
import '../../../../data/model/model.dart';
|
||||||
import '../view_model/signature_controller.dart';
|
import '../../signature/view_model/signature_controller.dart';
|
||||||
|
|
||||||
class AdjustmentsPanel extends ConsumerWidget {
|
class AdjustmentsPanel extends ConsumerWidget {
|
||||||
const AdjustmentsPanel({super.key, required this.sig});
|
const AdjustmentsPanel({super.key, required this.sig});
|
||||||
|
|
|
@ -2,9 +2,9 @@ import 'package:flutter/material.dart';
|
||||||
import 'package:flutter_riverpod/flutter_riverpod.dart';
|
import 'package:flutter_riverpod/flutter_riverpod.dart';
|
||||||
import 'package:pdf_signature/l10n/app_localizations.dart';
|
import 'package:pdf_signature/l10n/app_localizations.dart';
|
||||||
|
|
||||||
import '../view_model/signature_controller.dart';
|
import '../../signature/view_model/signature_controller.dart';
|
||||||
import 'adjustments_panel.dart';
|
import 'adjustments_panel.dart';
|
||||||
import 'rotated_signature_image.dart';
|
import '../../signature/widgets/rotated_signature_image.dart';
|
||||||
|
|
||||||
class ImageEditorDialog extends ConsumerWidget {
|
class ImageEditorDialog extends ConsumerWidget {
|
||||||
const ImageEditorDialog({super.key});
|
const ImageEditorDialog({super.key});
|
||||||
|
|
|
@ -4,9 +4,9 @@ import 'package:pdf_signature/l10n/app_localizations.dart';
|
||||||
import 'package:pdfrx/pdfrx.dart';
|
import 'package:pdfrx/pdfrx.dart';
|
||||||
|
|
||||||
import '../../../../data/services/export_providers.dart';
|
import '../../../../data/services/export_providers.dart';
|
||||||
import '../view_model/signature_controller.dart';
|
import '../../signature/view_model/signature_controller.dart';
|
||||||
import '../view_model/pdf_controller.dart';
|
import '../view_model/pdf_controller.dart';
|
||||||
import 'signature_drag_data.dart';
|
import '../../signature/widgets/signature_drag_data.dart';
|
||||||
import 'pdf_mock_continuous_list.dart';
|
import 'pdf_mock_continuous_list.dart';
|
||||||
import 'pdf_page_overlays.dart';
|
import 'pdf_page_overlays.dart';
|
||||||
|
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:flutter_riverpod/flutter_riverpod.dart';
|
import 'package:flutter_riverpod/flutter_riverpod.dart';
|
||||||
|
|
||||||
import '../view_model/signature_controller.dart';
|
import '../../signature/view_model/signature_controller.dart';
|
||||||
import '../view_model/pdf_controller.dart';
|
import '../view_model/pdf_controller.dart';
|
||||||
import 'signature_overlay.dart';
|
import 'signature_overlay.dart';
|
||||||
|
|
||||||
|
|
|
@ -10,9 +10,9 @@ import 'package:multi_split_view/multi_split_view.dart';
|
||||||
|
|
||||||
import '../../../../data/services/export_providers.dart';
|
import '../../../../data/services/export_providers.dart';
|
||||||
import 'package:image/image.dart' as img;
|
import 'package:image/image.dart' as img;
|
||||||
import '../view_model/signature_controller.dart';
|
import '../../signature/view_model/signature_controller.dart';
|
||||||
import '../view_model/pdf_controller.dart';
|
import '../view_model/pdf_controller.dart';
|
||||||
import '../view_model/signature_library.dart';
|
import '../../signature/view_model/signature_library.dart';
|
||||||
import 'draw_canvas.dart';
|
import 'draw_canvas.dart';
|
||||||
import 'pdf_toolbar.dart';
|
import 'pdf_toolbar.dart';
|
||||||
import 'pdf_page_area.dart';
|
import 'pdf_page_area.dart';
|
||||||
|
|
|
@ -4,10 +4,10 @@ import 'package:flutter_riverpod/flutter_riverpod.dart';
|
||||||
import 'package:pdf_signature/l10n/app_localizations.dart';
|
import 'package:pdf_signature/l10n/app_localizations.dart';
|
||||||
|
|
||||||
import '../../../../data/services/export_providers.dart';
|
import '../../../../data/services/export_providers.dart';
|
||||||
import '../view_model/signature_controller.dart';
|
import '../../signature/view_model/signature_controller.dart';
|
||||||
import '../view_model/signature_library.dart';
|
import '../../signature/view_model/signature_library.dart';
|
||||||
import 'image_editor_dialog.dart';
|
import 'image_editor_dialog.dart';
|
||||||
import 'signature_card.dart';
|
import '../../signature/widgets/signature_card.dart';
|
||||||
|
|
||||||
/// Data for drag-and-drop is in signature_drag_data.dart
|
/// Data for drag-and-drop is in signature_drag_data.dart
|
||||||
|
|
||||||
|
|
|
@ -5,12 +5,12 @@ import 'package:flutter_riverpod/flutter_riverpod.dart';
|
||||||
import 'package:pdf_signature/l10n/app_localizations.dart';
|
import 'package:pdf_signature/l10n/app_localizations.dart';
|
||||||
|
|
||||||
import '../../../../data/model/model.dart';
|
import '../../../../data/model/model.dart';
|
||||||
import '../view_model/signature_controller.dart';
|
import '../../signature/view_model/signature_controller.dart';
|
||||||
import '../view_model/pdf_controller.dart';
|
import '../view_model/pdf_controller.dart';
|
||||||
import '../view_model/signature_library.dart';
|
import '../../signature/view_model/signature_library.dart';
|
||||||
import 'image_editor_dialog.dart';
|
import 'image_editor_dialog.dart';
|
||||||
import '../../../common/menu_labels.dart';
|
import '../../../common/menu_labels.dart';
|
||||||
import 'rotated_signature_image.dart';
|
import '../../signature/widgets/rotated_signature_image.dart';
|
||||||
|
|
||||||
/// Renders a single signature overlay (either interactive or placed) on a page.
|
/// Renders a single signature overlay (either interactive or placed) on a page.
|
||||||
class SignatureOverlay extends ConsumerWidget {
|
class SignatureOverlay extends ConsumerWidget {
|
||||||
|
|
|
@ -7,7 +7,7 @@ import 'package:image/image.dart' as img;
|
||||||
import 'package:pdf_signature/l10n/app_localizations.dart';
|
import 'package:pdf_signature/l10n/app_localizations.dart';
|
||||||
|
|
||||||
import '../../../../data/model/model.dart';
|
import '../../../../data/model/model.dart';
|
||||||
import 'pdf_controller.dart';
|
import '../../pdf/view_model/pdf_controller.dart';
|
||||||
import 'signature_library.dart';
|
import 'signature_library.dart';
|
||||||
|
|
||||||
class SignatureController extends StateNotifier<SignatureState> {
|
class SignatureController extends StateNotifier<SignatureState> {
|
|
@ -7,7 +7,7 @@ import 'package:flutter/material.dart';
|
||||||
import 'package:flutter_riverpod/flutter_riverpod.dart';
|
import 'package:flutter_riverpod/flutter_riverpod.dart';
|
||||||
import 'package:pdf_signature/l10n/app_localizations.dart';
|
import 'package:pdf_signature/l10n/app_localizations.dart';
|
||||||
|
|
||||||
import '../../pdf/view_model/signature_controller.dart';
|
import '../../signature/view_model/signature_controller.dart';
|
||||||
import '../../pdf/view_model/pdf_controller.dart';
|
import '../../pdf/view_model/pdf_controller.dart';
|
||||||
// Settings dialog is provided via global AppBar in MyApp
|
// Settings dialog is provided via global AppBar in MyApp
|
||||||
|
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
import 'package:flutter_test/flutter_test.dart';
|
import 'package:flutter_test/flutter_test.dart';
|
||||||
import 'package:flutter_riverpod/flutter_riverpod.dart';
|
import 'package:flutter_riverpod/flutter_riverpod.dart';
|
||||||
import 'package:pdf_signature/ui/features/pdf/view_model/signature_controller.dart';
|
import 'package:pdf_signature/ui/features/signature/view_model/signature_controller.dart';
|
||||||
import '_world.dart';
|
import '_world.dart';
|
||||||
|
|
||||||
/// Usage: a drawn signature exists in the canvas
|
/// Usage: a drawn signature exists in the canvas
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
import 'dart:typed_data';
|
import 'dart:typed_data';
|
||||||
import 'package:flutter_test/flutter_test.dart';
|
import 'package:flutter_test/flutter_test.dart';
|
||||||
import 'package:flutter_riverpod/flutter_riverpod.dart';
|
import 'package:flutter_riverpod/flutter_riverpod.dart';
|
||||||
import 'package:pdf_signature/ui/features/pdf/view_model/signature_controller.dart';
|
import 'package:pdf_signature/ui/features/signature/view_model/signature_controller.dart';
|
||||||
import 'package:pdf_signature/ui/features/pdf/view_model/pdf_controller.dart';
|
import 'package:pdf_signature/ui/features/pdf/view_model/pdf_controller.dart';
|
||||||
import '_world.dart';
|
import '_world.dart';
|
||||||
|
|
||||||
|
|
|
@ -2,7 +2,7 @@ import 'dart:typed_data';
|
||||||
import 'package:flutter_test/flutter_test.dart';
|
import 'package:flutter_test/flutter_test.dart';
|
||||||
import 'package:flutter_riverpod/flutter_riverpod.dart';
|
import 'package:flutter_riverpod/flutter_riverpod.dart';
|
||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:pdf_signature/ui/features/pdf/view_model/signature_controller.dart';
|
import 'package:pdf_signature/ui/features/signature/view_model/signature_controller.dart';
|
||||||
import 'package:pdf_signature/ui/features/pdf/view_model/pdf_controller.dart';
|
import 'package:pdf_signature/ui/features/pdf/view_model/pdf_controller.dart';
|
||||||
import '_world.dart';
|
import '_world.dart';
|
||||||
|
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
import 'package:flutter_test/flutter_test.dart';
|
import 'package:flutter_test/flutter_test.dart';
|
||||||
import 'package:flutter_riverpod/flutter_riverpod.dart';
|
import 'package:flutter_riverpod/flutter_riverpod.dart';
|
||||||
import 'package:pdf_signature/ui/features/pdf/view_model/signature_controller.dart';
|
import 'package:pdf_signature/ui/features/signature/view_model/signature_controller.dart';
|
||||||
import 'package:pdf_signature/ui/features/pdf/view_model/pdf_controller.dart';
|
import 'package:pdf_signature/ui/features/pdf/view_model/pdf_controller.dart';
|
||||||
import '_world.dart';
|
import '_world.dart';
|
||||||
|
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
import 'package:flutter_test/flutter_test.dart';
|
import 'package:flutter_test/flutter_test.dart';
|
||||||
import 'package:flutter_riverpod/flutter_riverpod.dart';
|
import 'package:flutter_riverpod/flutter_riverpod.dart';
|
||||||
import 'package:pdf_signature/ui/features/pdf/view_model/signature_controller.dart';
|
import 'package:pdf_signature/ui/features/signature/view_model/signature_controller.dart';
|
||||||
import '_world.dart';
|
import '_world.dart';
|
||||||
|
|
||||||
/// Usage: a signature image is created
|
/// Usage: a signature image is created
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
import 'dart:typed_data';
|
import 'dart:typed_data';
|
||||||
import 'package:flutter_test/flutter_test.dart';
|
import 'package:flutter_test/flutter_test.dart';
|
||||||
import 'package:flutter_riverpod/flutter_riverpod.dart';
|
import 'package:flutter_riverpod/flutter_riverpod.dart';
|
||||||
import 'package:pdf_signature/ui/features/pdf/view_model/signature_controller.dart';
|
import 'package:pdf_signature/ui/features/signature/view_model/signature_controller.dart';
|
||||||
import '_world.dart';
|
import '_world.dart';
|
||||||
|
|
||||||
/// Usage: a signature image is loaded or drawn
|
/// Usage: a signature image is loaded or drawn
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
import 'dart:typed_data';
|
import 'dart:typed_data';
|
||||||
import 'package:flutter_test/flutter_test.dart';
|
import 'package:flutter_test/flutter_test.dart';
|
||||||
import 'package:flutter_riverpod/flutter_riverpod.dart';
|
import 'package:flutter_riverpod/flutter_riverpod.dart';
|
||||||
import 'package:pdf_signature/ui/features/pdf/view_model/signature_controller.dart';
|
import 'package:pdf_signature/ui/features/signature/view_model/signature_controller.dart';
|
||||||
import 'package:pdf_signature/ui/features/pdf/view_model/pdf_controller.dart';
|
import 'package:pdf_signature/ui/features/pdf/view_model/pdf_controller.dart';
|
||||||
import '_world.dart';
|
import '_world.dart';
|
||||||
|
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
import 'dart:typed_data';
|
import 'dart:typed_data';
|
||||||
import 'package:flutter_test/flutter_test.dart';
|
import 'package:flutter_test/flutter_test.dart';
|
||||||
import 'package:flutter_riverpod/flutter_riverpod.dart';
|
import 'package:flutter_riverpod/flutter_riverpod.dart';
|
||||||
import 'package:pdf_signature/ui/features/pdf/view_model/signature_controller.dart';
|
import 'package:pdf_signature/ui/features/signature/view_model/signature_controller.dart';
|
||||||
import 'package:pdf_signature/ui/features/pdf/view_model/pdf_controller.dart';
|
import 'package:pdf_signature/ui/features/pdf/view_model/pdf_controller.dart';
|
||||||
import '_world.dart';
|
import '_world.dart';
|
||||||
|
|
||||||
|
|
|
@ -2,7 +2,7 @@ import 'dart:typed_data';
|
||||||
import 'package:flutter_test/flutter_test.dart';
|
import 'package:flutter_test/flutter_test.dart';
|
||||||
import 'package:flutter_riverpod/flutter_riverpod.dart';
|
import 'package:flutter_riverpod/flutter_riverpod.dart';
|
||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:pdf_signature/ui/features/pdf/view_model/signature_controller.dart';
|
import 'package:pdf_signature/ui/features/signature/view_model/signature_controller.dart';
|
||||||
import 'package:pdf_signature/ui/features/pdf/view_model/pdf_controller.dart';
|
import 'package:pdf_signature/ui/features/pdf/view_model/pdf_controller.dart';
|
||||||
import '_world.dart';
|
import '_world.dart';
|
||||||
|
|
||||||
|
|
|
@ -2,7 +2,7 @@ import 'dart:typed_data';
|
||||||
import 'dart:ui';
|
import 'dart:ui';
|
||||||
import 'package:flutter_test/flutter_test.dart';
|
import 'package:flutter_test/flutter_test.dart';
|
||||||
import 'package:flutter_riverpod/flutter_riverpod.dart';
|
import 'package:flutter_riverpod/flutter_riverpod.dart';
|
||||||
import 'package:pdf_signature/ui/features/pdf/view_model/signature_controller.dart';
|
import 'package:pdf_signature/ui/features/signature/view_model/signature_controller.dart';
|
||||||
import 'package:pdf_signature/ui/features/pdf/view_model/pdf_controller.dart';
|
import 'package:pdf_signature/ui/features/pdf/view_model/pdf_controller.dart';
|
||||||
import '_world.dart';
|
import '_world.dart';
|
||||||
|
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
import 'package:flutter_test/flutter_test.dart';
|
import 'package:flutter_test/flutter_test.dart';
|
||||||
import 'package:flutter_riverpod/flutter_riverpod.dart';
|
import 'package:flutter_riverpod/flutter_riverpod.dart';
|
||||||
import 'package:pdf_signature/ui/features/pdf/view_model/signature_controller.dart';
|
import 'package:pdf_signature/ui/features/signature/view_model/signature_controller.dart';
|
||||||
import '_world.dart';
|
import '_world.dart';
|
||||||
|
|
||||||
/// Usage: an empty signature canvas
|
/// Usage: an empty signature canvas
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
import 'package:flutter_test/flutter_test.dart';
|
import 'package:flutter_test/flutter_test.dart';
|
||||||
import 'package:flutter_riverpod/flutter_riverpod.dart';
|
import 'package:flutter_riverpod/flutter_riverpod.dart';
|
||||||
import 'package:pdf_signature/ui/features/pdf/view_model/signature_controller.dart';
|
import 'package:pdf_signature/ui/features/signature/view_model/signature_controller.dart';
|
||||||
import '_world.dart';
|
import '_world.dart';
|
||||||
|
|
||||||
/// Usage: it is placed on the selected page
|
/// Usage: it is placed on the selected page
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
import 'package:flutter_test/flutter_test.dart';
|
import 'package:flutter_test/flutter_test.dart';
|
||||||
import 'package:flutter_riverpod/flutter_riverpod.dart';
|
import 'package:flutter_riverpod/flutter_riverpod.dart';
|
||||||
import 'package:pdf_signature/ui/features/pdf/view_model/signature_controller.dart';
|
import 'package:pdf_signature/ui/features/signature/view_model/signature_controller.dart';
|
||||||
import '_world.dart';
|
import '_world.dart';
|
||||||
|
|
||||||
/// Usage: multiple strokes were drawn
|
/// Usage: multiple strokes were drawn
|
||||||
|
|
|
@ -2,7 +2,7 @@ import 'dart:typed_data';
|
||||||
import 'package:flutter_test/flutter_test.dart';
|
import 'package:flutter_test/flutter_test.dart';
|
||||||
import 'package:flutter_riverpod/flutter_riverpod.dart';
|
import 'package:flutter_riverpod/flutter_riverpod.dart';
|
||||||
import 'package:image/image.dart' as img;
|
import 'package:image/image.dart' as img;
|
||||||
import 'package:pdf_signature/ui/features/pdf/view_model/signature_controller.dart';
|
import 'package:pdf_signature/ui/features/signature/view_model/signature_controller.dart';
|
||||||
import '_world.dart';
|
import '_world.dart';
|
||||||
|
|
||||||
/// Usage: near-white background becomes transparent in the preview
|
/// Usage: near-white background becomes transparent in the preview
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
import 'package:flutter_test/flutter_test.dart';
|
import 'package:flutter_test/flutter_test.dart';
|
||||||
import 'package:flutter_riverpod/flutter_riverpod.dart';
|
import 'package:flutter_riverpod/flutter_riverpod.dart';
|
||||||
import 'package:pdf_signature/ui/features/pdf/view_model/signature_controller.dart';
|
import 'package:pdf_signature/ui/features/signature/view_model/signature_controller.dart';
|
||||||
import '_world.dart';
|
import '_world.dart';
|
||||||
|
|
||||||
/// Usage: the canvas becomes blank
|
/// Usage: the canvas becomes blank
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
import 'package:flutter_test/flutter_test.dart';
|
import 'package:flutter_test/flutter_test.dart';
|
||||||
import 'package:flutter_riverpod/flutter_riverpod.dart';
|
import 'package:flutter_riverpod/flutter_riverpod.dart';
|
||||||
import 'package:pdf_signature/ui/features/pdf/view_model/signature_controller.dart';
|
import 'package:pdf_signature/ui/features/signature/view_model/signature_controller.dart';
|
||||||
import '_world.dart';
|
import '_world.dart';
|
||||||
|
|
||||||
/// Usage: the image is loaded and shown as a signature asset
|
/// Usage: the image is loaded and shown as a signature asset
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
import 'package:flutter_test/flutter_test.dart';
|
import 'package:flutter_test/flutter_test.dart';
|
||||||
import 'package:flutter_riverpod/flutter_riverpod.dart';
|
import 'package:flutter_riverpod/flutter_riverpod.dart';
|
||||||
import 'package:pdf_signature/ui/features/pdf/view_model/signature_controller.dart';
|
import 'package:pdf_signature/ui/features/signature/view_model/signature_controller.dart';
|
||||||
import '_world.dart';
|
import '_world.dart';
|
||||||
|
|
||||||
/// Usage: the image is not added to the document
|
/// Usage: the image is not added to the document
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
import 'package:flutter_test/flutter_test.dart';
|
import 'package:flutter_test/flutter_test.dart';
|
||||||
import 'package:flutter_riverpod/flutter_riverpod.dart';
|
import 'package:flutter_riverpod/flutter_riverpod.dart';
|
||||||
import 'package:pdf_signature/ui/features/pdf/view_model/signature_controller.dart';
|
import 'package:pdf_signature/ui/features/signature/view_model/signature_controller.dart';
|
||||||
import '_world.dart';
|
import '_world.dart';
|
||||||
|
|
||||||
/// Usage: the image scales proportionally
|
/// Usage: the image scales proportionally
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
import 'package:flutter_test/flutter_test.dart';
|
import 'package:flutter_test/flutter_test.dart';
|
||||||
import 'package:flutter_riverpod/flutter_riverpod.dart';
|
import 'package:flutter_riverpod/flutter_riverpod.dart';
|
||||||
import 'package:pdf_signature/ui/features/pdf/view_model/signature_controller.dart';
|
import 'package:pdf_signature/ui/features/signature/view_model/signature_controller.dart';
|
||||||
import '_world.dart';
|
import '_world.dart';
|
||||||
|
|
||||||
/// Usage: the last stroke is removed
|
/// Usage: the last stroke is removed
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
import 'package:flutter_test/flutter_test.dart';
|
import 'package:flutter_test/flutter_test.dart';
|
||||||
import 'package:flutter_riverpod/flutter_riverpod.dart';
|
import 'package:flutter_riverpod/flutter_riverpod.dart';
|
||||||
import 'package:pdf_signature/ui/features/pdf/view_model/signature_controller.dart';
|
import 'package:pdf_signature/ui/features/signature/view_model/signature_controller.dart';
|
||||||
import '_world.dart';
|
import '_world.dart';
|
||||||
|
|
||||||
/// Usage: the preview updates immediately
|
/// Usage: the preview updates immediately
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
import 'package:flutter_test/flutter_test.dart';
|
import 'package:flutter_test/flutter_test.dart';
|
||||||
import 'package:flutter_riverpod/flutter_riverpod.dart';
|
import 'package:flutter_riverpod/flutter_riverpod.dart';
|
||||||
import 'package:pdf_signature/ui/features/pdf/view_model/signature_controller.dart';
|
import 'package:pdf_signature/ui/features/signature/view_model/signature_controller.dart';
|
||||||
import '_world.dart';
|
import '_world.dart';
|
||||||
|
|
||||||
/// Usage: the signature is stamped at the exact PDF page coordinates and size
|
/// Usage: the signature is stamped at the exact PDF page coordinates and size
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
import 'package:flutter_test/flutter_test.dart';
|
import 'package:flutter_test/flutter_test.dart';
|
||||||
import 'package:flutter_riverpod/flutter_riverpod.dart';
|
import 'package:flutter_riverpod/flutter_riverpod.dart';
|
||||||
import 'package:pdf_signature/ui/features/pdf/view_model/signature_controller.dart';
|
import 'package:pdf_signature/ui/features/signature/view_model/signature_controller.dart';
|
||||||
import '_world.dart';
|
import '_world.dart';
|
||||||
|
|
||||||
/// Usage: the signature remains within the page area
|
/// Usage: the signature remains within the page area
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
import 'package:flutter_test/flutter_test.dart';
|
import 'package:flutter_test/flutter_test.dart';
|
||||||
import 'package:flutter_riverpod/flutter_riverpod.dart';
|
import 'package:flutter_riverpod/flutter_riverpod.dart';
|
||||||
import 'package:pdf_signature/ui/features/pdf/view_model/signature_controller.dart';
|
import 'package:pdf_signature/ui/features/signature/view_model/signature_controller.dart';
|
||||||
import 'package:pdf_signature/ui/features/pdf/view_model/pdf_controller.dart';
|
import 'package:pdf_signature/ui/features/pdf/view_model/pdf_controller.dart';
|
||||||
import '_world.dart';
|
import '_world.dart';
|
||||||
|
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
import 'package:flutter_test/flutter_test.dart';
|
import 'package:flutter_test/flutter_test.dart';
|
||||||
import 'package:flutter_riverpod/flutter_riverpod.dart';
|
import 'package:flutter_riverpod/flutter_riverpod.dart';
|
||||||
import 'package:pdf_signature/ui/features/pdf/view_model/signature_controller.dart';
|
import 'package:pdf_signature/ui/features/signature/view_model/signature_controller.dart';
|
||||||
import '_world.dart';
|
import '_world.dart';
|
||||||
|
|
||||||
/// Usage: the size and position update in real time
|
/// Usage: the size and position update in real time
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
import 'package:flutter_test/flutter_test.dart';
|
import 'package:flutter_test/flutter_test.dart';
|
||||||
import 'package:flutter_riverpod/flutter_riverpod.dart';
|
import 'package:flutter_riverpod/flutter_riverpod.dart';
|
||||||
import 'package:pdf_signature/ui/features/pdf/view_model/signature_controller.dart';
|
import 'package:pdf_signature/ui/features/signature/view_model/signature_controller.dart';
|
||||||
import 'package:pdf_signature/ui/features/pdf/view_model/pdf_controller.dart';
|
import 'package:pdf_signature/ui/features/pdf/view_model/pdf_controller.dart';
|
||||||
import '_world.dart';
|
import '_world.dart';
|
||||||
|
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
import 'package:flutter_test/flutter_test.dart';
|
import 'package:flutter_test/flutter_test.dart';
|
||||||
import 'package:flutter_riverpod/flutter_riverpod.dart';
|
import 'package:flutter_riverpod/flutter_riverpod.dart';
|
||||||
import 'package:pdf_signature/ui/features/pdf/view_model/signature_controller.dart';
|
import 'package:pdf_signature/ui/features/signature/view_model/signature_controller.dart';
|
||||||
import '_world.dart';
|
import '_world.dart';
|
||||||
|
|
||||||
/// Usage: the user can apply or reset adjustments
|
/// Usage: the user can apply or reset adjustments
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
import 'package:flutter_test/flutter_test.dart';
|
import 'package:flutter_test/flutter_test.dart';
|
||||||
import 'package:flutter_riverpod/flutter_riverpod.dart';
|
import 'package:flutter_riverpod/flutter_riverpod.dart';
|
||||||
import 'package:pdf_signature/ui/features/pdf/view_model/signature_controller.dart';
|
import 'package:pdf_signature/ui/features/signature/view_model/signature_controller.dart';
|
||||||
import '_world.dart';
|
import '_world.dart';
|
||||||
|
|
||||||
/// Usage: the user changes contrast and brightness controls
|
/// Usage: the user changes contrast and brightness controls
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
import 'dart:typed_data';
|
import 'dart:typed_data';
|
||||||
import 'package:flutter_test/flutter_test.dart';
|
import 'package:flutter_test/flutter_test.dart';
|
||||||
import 'package:flutter_riverpod/flutter_riverpod.dart';
|
import 'package:flutter_riverpod/flutter_riverpod.dart';
|
||||||
import 'package:pdf_signature/ui/features/pdf/view_model/signature_controller.dart';
|
import 'package:pdf_signature/ui/features/signature/view_model/signature_controller.dart';
|
||||||
import '_world.dart';
|
import '_world.dart';
|
||||||
|
|
||||||
/// Usage: the user chooses a signature image file
|
/// Usage: the user chooses a signature image file
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
import 'package:flutter_test/flutter_test.dart';
|
import 'package:flutter_test/flutter_test.dart';
|
||||||
import 'package:flutter_riverpod/flutter_riverpod.dart';
|
import 'package:flutter_riverpod/flutter_riverpod.dart';
|
||||||
import 'package:pdf_signature/ui/features/pdf/view_model/signature_controller.dart';
|
import 'package:pdf_signature/ui/features/signature/view_model/signature_controller.dart';
|
||||||
import '_world.dart';
|
import '_world.dart';
|
||||||
|
|
||||||
/// Usage: the user chooses undo
|
/// Usage: the user chooses undo
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
import 'package:flutter_test/flutter_test.dart';
|
import 'package:flutter_test/flutter_test.dart';
|
||||||
import 'package:flutter_riverpod/flutter_riverpod.dart';
|
import 'package:flutter_riverpod/flutter_riverpod.dart';
|
||||||
import 'package:pdf_signature/ui/features/pdf/view_model/signature_controller.dart';
|
import 'package:pdf_signature/ui/features/signature/view_model/signature_controller.dart';
|
||||||
import '_world.dart';
|
import '_world.dart';
|
||||||
|
|
||||||
/// Usage: the user clears the canvas
|
/// Usage: the user clears the canvas
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
import 'package:flutter_test/flutter_test.dart';
|
import 'package:flutter_test/flutter_test.dart';
|
||||||
import 'package:flutter_riverpod/flutter_riverpod.dart';
|
import 'package:flutter_riverpod/flutter_riverpod.dart';
|
||||||
import 'package:pdf_signature/ui/features/pdf/view_model/signature_controller.dart';
|
import 'package:pdf_signature/ui/features/signature/view_model/signature_controller.dart';
|
||||||
import '_world.dart';
|
import '_world.dart';
|
||||||
|
|
||||||
/// Usage: the user drags handles to resize and drags to reposition
|
/// Usage: the user drags handles to resize and drags to reposition
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
import 'dart:typed_data';
|
import 'dart:typed_data';
|
||||||
import 'package:flutter_test/flutter_test.dart';
|
import 'package:flutter_test/flutter_test.dart';
|
||||||
import 'package:flutter_riverpod/flutter_riverpod.dart';
|
import 'package:flutter_riverpod/flutter_riverpod.dart';
|
||||||
import 'package:pdf_signature/ui/features/pdf/view_model/signature_controller.dart';
|
import 'package:pdf_signature/ui/features/signature/view_model/signature_controller.dart';
|
||||||
import '_world.dart';
|
import '_world.dart';
|
||||||
|
|
||||||
/// Usage: the user draws strokes and confirms
|
/// Usage: the user draws strokes and confirms
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
import 'package:flutter_test/flutter_test.dart';
|
import 'package:flutter_test/flutter_test.dart';
|
||||||
import 'package:flutter_riverpod/flutter_riverpod.dart';
|
import 'package:flutter_riverpod/flutter_riverpod.dart';
|
||||||
import 'package:pdf_signature/ui/features/pdf/view_model/signature_controller.dart';
|
import 'package:pdf_signature/ui/features/signature/view_model/signature_controller.dart';
|
||||||
import '_world.dart';
|
import '_world.dart';
|
||||||
|
|
||||||
/// Usage: the user enables aspect ratio lock and resizes
|
/// Usage: the user enables aspect ratio lock and resizes
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
import 'package:flutter_test/flutter_test.dart';
|
import 'package:flutter_test/flutter_test.dart';
|
||||||
import 'package:flutter_riverpod/flutter_riverpod.dart';
|
import 'package:flutter_riverpod/flutter_riverpod.dart';
|
||||||
import 'package:pdf_signature/ui/features/pdf/view_model/signature_controller.dart';
|
import 'package:pdf_signature/ui/features/signature/view_model/signature_controller.dart';
|
||||||
import '_world.dart';
|
import '_world.dart';
|
||||||
|
|
||||||
/// Usage: the user enables background removal
|
/// Usage: the user enables background removal
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
import 'package:flutter_test/flutter_test.dart';
|
import 'package:flutter_test/flutter_test.dart';
|
||||||
import 'package:flutter_riverpod/flutter_riverpod.dart';
|
import 'package:flutter_riverpod/flutter_riverpod.dart';
|
||||||
import 'package:pdf_signature/ui/features/pdf/view_model/signature_controller.dart';
|
import 'package:pdf_signature/ui/features/signature/view_model/signature_controller.dart';
|
||||||
import '_world.dart';
|
import '_world.dart';
|
||||||
|
|
||||||
/// Usage: the user is notified of the issue
|
/// Usage: the user is notified of the issue
|
||||||
|
|
|
@ -2,7 +2,7 @@ import 'dart:typed_data';
|
||||||
import 'package:flutter_test/flutter_test.dart';
|
import 'package:flutter_test/flutter_test.dart';
|
||||||
import 'package:flutter_riverpod/flutter_riverpod.dart';
|
import 'package:flutter_riverpod/flutter_riverpod.dart';
|
||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:pdf_signature/ui/features/pdf/view_model/signature_controller.dart';
|
import 'package:pdf_signature/ui/features/signature/view_model/signature_controller.dart';
|
||||||
import 'package:pdf_signature/ui/features/pdf/view_model/pdf_controller.dart';
|
import 'package:pdf_signature/ui/features/pdf/view_model/pdf_controller.dart';
|
||||||
import '_world.dart';
|
import '_world.dart';
|
||||||
|
|
||||||
|
|
|
@ -2,7 +2,7 @@ import 'dart:typed_data';
|
||||||
import 'package:flutter_test/flutter_test.dart';
|
import 'package:flutter_test/flutter_test.dart';
|
||||||
import 'package:flutter_riverpod/flutter_riverpod.dart';
|
import 'package:flutter_riverpod/flutter_riverpod.dart';
|
||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:pdf_signature/ui/features/pdf/view_model/signature_controller.dart';
|
import 'package:pdf_signature/ui/features/signature/view_model/signature_controller.dart';
|
||||||
import 'package:pdf_signature/ui/features/pdf/view_model/pdf_controller.dart';
|
import 'package:pdf_signature/ui/features/pdf/view_model/pdf_controller.dart';
|
||||||
import '_world.dart';
|
import '_world.dart';
|
||||||
|
|
||||||
|
|
|
@ -2,7 +2,7 @@ import 'dart:typed_data';
|
||||||
import 'package:flutter_test/flutter_test.dart';
|
import 'package:flutter_test/flutter_test.dart';
|
||||||
import 'package:flutter_riverpod/flutter_riverpod.dart';
|
import 'package:flutter_riverpod/flutter_riverpod.dart';
|
||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:pdf_signature/ui/features/pdf/view_model/signature_controller.dart';
|
import 'package:pdf_signature/ui/features/signature/view_model/signature_controller.dart';
|
||||||
import 'package:pdf_signature/ui/features/pdf/view_model/pdf_controller.dart';
|
import 'package:pdf_signature/ui/features/pdf/view_model/pdf_controller.dart';
|
||||||
import '_world.dart';
|
import '_world.dart';
|
||||||
|
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
import 'dart:typed_data';
|
import 'dart:typed_data';
|
||||||
import 'package:flutter_test/flutter_test.dart';
|
import 'package:flutter_test/flutter_test.dart';
|
||||||
import 'package:flutter_riverpod/flutter_riverpod.dart';
|
import 'package:flutter_riverpod/flutter_riverpod.dart';
|
||||||
import 'package:pdf_signature/ui/features/pdf/view_model/signature_controller.dart';
|
import 'package:pdf_signature/ui/features/signature/view_model/signature_controller.dart';
|
||||||
import 'package:pdf_signature/ui/features/pdf/view_model/pdf_controller.dart';
|
import 'package:pdf_signature/ui/features/pdf/view_model/pdf_controller.dart';
|
||||||
import '_world.dart';
|
import '_world.dart';
|
||||||
|
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
import 'dart:typed_data';
|
import 'dart:typed_data';
|
||||||
import 'package:flutter_test/flutter_test.dart';
|
import 'package:flutter_test/flutter_test.dart';
|
||||||
import 'package:flutter_riverpod/flutter_riverpod.dart';
|
import 'package:flutter_riverpod/flutter_riverpod.dart';
|
||||||
import 'package:pdf_signature/ui/features/pdf/view_model/signature_controller.dart';
|
import 'package:pdf_signature/ui/features/signature/view_model/signature_controller.dart';
|
||||||
import 'package:pdf_signature/ui/features/pdf/view_model/pdf_controller.dart';
|
import 'package:pdf_signature/ui/features/pdf/view_model/pdf_controller.dart';
|
||||||
import '_world.dart';
|
import '_world.dart';
|
||||||
|
|
||||||
|
|
|
@ -4,7 +4,7 @@ import 'package:flutter_riverpod/flutter_riverpod.dart';
|
||||||
|
|
||||||
import 'package:pdf_signature/data/services/export_service.dart';
|
import 'package:pdf_signature/data/services/export_service.dart';
|
||||||
import 'package:pdf_signature/data/services/export_providers.dart';
|
import 'package:pdf_signature/data/services/export_providers.dart';
|
||||||
import 'package:pdf_signature/ui/features/pdf/view_model/signature_controller.dart';
|
import 'package:pdf_signature/ui/features/signature/view_model/signature_controller.dart';
|
||||||
import 'package:pdf_signature/ui/features/pdf/view_model/pdf_controller.dart';
|
import 'package:pdf_signature/ui/features/pdf/view_model/pdf_controller.dart';
|
||||||
import 'package:pdf_signature/ui/features/pdf/widgets/pdf_screen.dart';
|
import 'package:pdf_signature/ui/features/pdf/widgets/pdf_screen.dart';
|
||||||
import 'package:pdf_signature/l10n/app_localizations.dart';
|
import 'package:pdf_signature/l10n/app_localizations.dart';
|
||||||
|
|
|
@ -5,7 +5,7 @@ import 'package:image/image.dart' as img;
|
||||||
import 'dart:typed_data';
|
import 'dart:typed_data';
|
||||||
|
|
||||||
import 'package:pdf_signature/ui/features/pdf/widgets/pdf_screen.dart';
|
import 'package:pdf_signature/ui/features/pdf/widgets/pdf_screen.dart';
|
||||||
import 'package:pdf_signature/ui/features/pdf/view_model/signature_controller.dart';
|
import 'package:pdf_signature/ui/features/signature/view_model/signature_controller.dart';
|
||||||
import 'package:pdf_signature/ui/features/pdf/view_model/pdf_controller.dart';
|
import 'package:pdf_signature/ui/features/pdf/view_model/pdf_controller.dart';
|
||||||
import 'package:pdf_signature/data/services/export_providers.dart';
|
import 'package:pdf_signature/data/services/export_providers.dart';
|
||||||
import 'package:pdf_signature/l10n/app_localizations.dart';
|
import 'package:pdf_signature/l10n/app_localizations.dart';
|
||||||
|
|
|
@ -1,8 +1,8 @@
|
||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:flutter_test/flutter_test.dart';
|
import 'package:flutter_test/flutter_test.dart';
|
||||||
import 'package:flutter_riverpod/flutter_riverpod.dart';
|
import 'package:flutter_riverpod/flutter_riverpod.dart';
|
||||||
import 'package:pdf_signature/ui/features/pdf/view_model/signature_library.dart';
|
import 'package:pdf_signature/ui/features/signature/view_model/signature_library.dart';
|
||||||
import 'package:pdf_signature/ui/features/pdf/view_model/signature_controller.dart';
|
import 'package:pdf_signature/ui/features/signature/view_model/signature_controller.dart';
|
||||||
import 'package:pdf_signature/ui/features/pdf/view_model/pdf_controller.dart';
|
import 'package:pdf_signature/ui/features/pdf/view_model/pdf_controller.dart';
|
||||||
import 'package:pdf_signature/ui/features/pdf/widgets/pdf_screen.dart';
|
import 'package:pdf_signature/ui/features/pdf/widgets/pdf_screen.dart';
|
||||||
|
|
||||||
|
|
|
@ -6,7 +6,7 @@ import 'package:flutter_riverpod/flutter_riverpod.dart';
|
||||||
|
|
||||||
import 'package:pdf_signature/l10n/app_localizations.dart';
|
import 'package:pdf_signature/l10n/app_localizations.dart';
|
||||||
import 'package:pdf_signature/ui/features/welcome/widgets/welcome_screen.dart';
|
import 'package:pdf_signature/ui/features/welcome/widgets/welcome_screen.dart';
|
||||||
import 'package:pdf_signature/ui/features/pdf/view_model/signature_controller.dart';
|
import 'package:pdf_signature/ui/features/signature/view_model/signature_controller.dart';
|
||||||
import 'package:pdf_signature/ui/features/pdf/view_model/pdf_controller.dart';
|
import 'package:pdf_signature/ui/features/pdf/view_model/pdf_controller.dart';
|
||||||
|
|
||||||
class _FakeDropReadable implements DropReadable {
|
class _FakeDropReadable implements DropReadable {
|
||||||
|
|
|
@ -3,7 +3,7 @@ import 'package:flutter/material.dart';
|
||||||
import 'package:flutter_test/flutter_test.dart';
|
import 'package:flutter_test/flutter_test.dart';
|
||||||
import 'package:image/image.dart' as img;
|
import 'package:image/image.dart' as img;
|
||||||
|
|
||||||
import 'package:pdf_signature/ui/features/pdf/widgets/rotated_signature_image.dart';
|
import 'package:pdf_signature/ui/features/signature/widgets/rotated_signature_image.dart';
|
||||||
|
|
||||||
/// Generates a simple solid-color PNG with given width/height.
|
/// Generates a simple solid-color PNG with given width/height.
|
||||||
Uint8List makePng({required int w, required int h}) {
|
Uint8List makePng({required int w, required int h}) {
|
||||||
|
|
Loading…
Reference in New Issue