Skip to content
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.

Commit 9451907

Browse files
committedDec 19, 2023
feat: Update assets, bump version, update changelogs, minor visual improvements
1 parent 9680054 commit 9451907

File tree

24 files changed

+98
-64
lines changed

24 files changed

+98
-64
lines changed
 
Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
- Kleinere visuelle Änderungen
2+
- Aktualisieren der Store-Präsenz
Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
- Minor visual updates
2+
- Update store assets
Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,8 @@
1-
An (almost) fully fledged mobile Paperless client compatible with Paperless.
2-
31
Using this app requires access to running a Paperless-ng*x instance.
42

53
* View and search documents
64
* Add, delete or edit documents
7-
* Share, download, print or preview your documents
5+
* Share, download, print and preview your documents
86
* Manage correspondents, document types, tags and storage paths
97
* Scan and upload documents with preset correspondent, document type, tags and creation date
108
* Review and quickly process newly added documents in the inbox
@@ -14,4 +12,4 @@ Using this app requires access to running a Paperless-ng*x instance.
1412
* Modern, intuitive UI built according to the Material Design 3 specification
1513
* Light and dark theme
1614
* Support for dynamic color (Android 12+ only)
17-
* Available in English, German, French, Catalan, Polish, Czech and Turkish language
15+
* Available in English, German, French, Spanish, Catalan, Polish, Czech, Russian and Turkish language with more to come
Loading
Loading
Loading
Loading
Loading
Loading
Loading
Loading
Loading
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
An (almost) fully fledged mobile Paperless client.
1+
An (almost) fully fledged mobile paperless-ng*x client.

‎lib/core/service/file_service.dart

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -115,11 +115,11 @@ class FileService {
115115
formatBytes(await getDirSizeInBytes(consumptionDir));
116116

117117
logger.ft(
118-
"Removing scans...",
118+
"Clearing scans directory...",
119119
className: runtimeType.toString(),
120120
methodName: "clearUserData",
121121
);
122-
await _temporaryScansDirectory.delete(recursive: true);
122+
await _temporaryScansDirectory.clear();
123123
logger.ft(
124124
"Removed $scanDirSize...",
125125
className: runtimeType.toString(),

‎lib/core/widgets/form_builder_fields/extended_date_range_form_field/form_builder_extended_date_range_picker.dart

Lines changed: 31 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@ import 'package:flutter/material.dart';
22
import 'package:flutter_form_builder/flutter_form_builder.dart';
33
import 'package:intl/intl.dart';
44
import 'package:paperless_api/paperless_api.dart';
5+
import 'package:paperless_mobile/core/extensions/flutter_extensions.dart';
56
import 'package:paperless_mobile/core/widgets/form_builder_fields/extended_date_range_form_field/extended_date_range_dialog.dart';
67
import 'package:paperless_mobile/core/widgets/form_builder_fields/extended_date_range_form_field/relative_date_range_picker_helper.dart';
78
import 'package:paperless_mobile/generated/l10n/app_localizations.dart';
@@ -11,13 +12,15 @@ class FormBuilderExtendedDateRangePicker extends StatefulWidget {
1112
final String labelText;
1213
final DateRangeQuery initialValue;
1314
final void Function(DateRangeQuery? query)? onChanged;
15+
final EdgeInsets padding;
1416

1517
const FormBuilderExtendedDateRangePicker({
1618
super.key,
1719
required this.name,
1820
required this.labelText,
1921
required this.initialValue,
2022
this.onChanged,
23+
required this.padding,
2124
});
2225

2326
@override
@@ -49,29 +52,36 @@ class _FormBuilderExtendedDateRangePickerState
4952
builder: (field) {
5053
return Column(
5154
children: [
52-
TextFormField(
53-
controller: _textEditingController,
54-
readOnly: true,
55-
onTap: () => _showExtendedDateRangePicker(field),
56-
decoration: InputDecoration(
57-
prefixIcon: const Icon(Icons.date_range),
58-
labelText: widget.labelText,
59-
suffixIcon: _textEditingController.text.isNotEmpty
60-
? IconButton(
61-
icon: const Icon(Icons.clear),
62-
onPressed: () {
63-
field.didChange(const UnsetDateRangeQuery());
64-
},
65-
)
66-
: null,
55+
Padding(
56+
padding: widget.padding.copyWith(bottom: 0),
57+
child: TextFormField(
58+
controller: _textEditingController,
59+
readOnly: true,
60+
onTap: () => _showExtendedDateRangePicker(field),
61+
decoration: InputDecoration(
62+
prefixIcon: const Icon(Icons.date_range),
63+
labelText: widget.labelText,
64+
suffixIcon: _textEditingController.text.isNotEmpty
65+
? IconButton(
66+
icon: const Icon(Icons.clear),
67+
onPressed: () {
68+
field.didChange(const UnsetDateRangeQuery());
69+
},
70+
)
71+
: null,
72+
),
6773
),
6874
),
69-
MediaQuery.removePadding(
70-
context: context,
71-
removeLeft: true,
72-
removeRight: true,
73-
child: RelativeDateRangePickerHelper(field: field),
74-
),
75+
RelativeDateRangePickerHelper(
76+
field: field,
77+
padding: widget.padding,
78+
)
79+
// MediaQuery.removePadding(
80+
//context: context,
81+
//removeLeft: true,
82+
//removeRight: true,
83+
//child: ,
84+
//),
7585
],
7686
);
7787
},

‎lib/core/widgets/form_builder_fields/extended_date_range_form_field/relative_date_range_picker_helper.dart

Lines changed: 27 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -6,11 +6,13 @@ import 'package:paperless_mobile/generated/l10n/app_localizations.dart';
66
class RelativeDateRangePickerHelper extends StatefulWidget {
77
final FormFieldState<DateRangeQuery> field;
88
final void Function(DateRangeQuery value)? onChanged;
9+
final EdgeInsets padding;
910

1011
const RelativeDateRangePickerHelper({
1112
super.key,
1213
required this.field,
1314
this.onChanged,
15+
required this.padding,
1416
});
1517

1618
@override
@@ -24,25 +26,32 @@ class _RelativeDateRangePickerHelperState
2426
Widget build(BuildContext context) {
2527
return SizedBox(
2628
height: 64,
27-
child: ListView.separated(
28-
itemCount: _options.length,
29-
separatorBuilder: (context, index) => const SizedBox(width: 8.0),
30-
itemBuilder: (context, index) {
31-
final option = _options[index];
32-
return ColoredChipWrapper(
33-
child: FilterChip(
34-
label: Text(option.title),
35-
onSelected: (isSelected) {
36-
final value =
37-
isSelected ? option.value : const RelativeDateRangeQuery();
38-
widget.field.didChange(value);
39-
widget.onChanged?.call(value);
40-
},
41-
selected: widget.field.value == option.value,
42-
),
43-
);
44-
},
29+
child: CustomScrollView(
4530
scrollDirection: Axis.horizontal,
31+
slivers: [
32+
SliverToBoxAdapter(child: SizedBox(width: widget.padding.left)),
33+
SliverList.separated(
34+
itemCount: _options.length,
35+
separatorBuilder: (context, index) => const SizedBox(width: 8.0),
36+
itemBuilder: (context, index) {
37+
final option = _options[index];
38+
return ColoredChipWrapper(
39+
child: FilterChip(
40+
label: Text(option.title),
41+
onSelected: (isSelected) {
42+
final value = isSelected
43+
? option.value
44+
: const RelativeDateRangeQuery();
45+
widget.field.didChange(value);
46+
widget.onChanged?.call(value);
47+
},
48+
selected: widget.field.value == option.value,
49+
),
50+
);
51+
},
52+
),
53+
SliverToBoxAdapter(child: SizedBox(width: widget.padding.right))
54+
],
4655
),
4756
);
4857
}

‎lib/features/changelogs/view/changelog_dialog.dart

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -63,6 +63,7 @@ class ChangelogDialog extends StatelessWidget {
6363
}
6464

6565
const _versionNumbers = {
66+
"4023": "3.1.7",
6667
"4013": "3.1.6",
6768
"4003": "3.1.5",
6869
"58": "3.1.4",

‎lib/features/document_search/view/document_search_bar.dart

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,7 @@ class _DocumentSearchBarState extends State<DocumentSearchBar> {
4040
constraints: const BoxConstraints(
4141
maxWidth: 720,
4242
minWidth: 360,
43-
maxHeight: 56,
43+
maxHeight: 48,
4444
minHeight: 48,
4545
),
4646
child: Row(

‎lib/features/documents/view/widgets/search/document_filter_form.dart

Lines changed: 25 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@ import 'package:flutter_bloc/flutter_bloc.dart';
33
import 'package:flutter_form_builder/flutter_form_builder.dart';
44
import 'package:paperless_api/paperless_api.dart';
55
import 'package:paperless_mobile/core/database/tables/local_user_account.dart';
6+
import 'package:paperless_mobile/core/extensions/flutter_extensions.dart';
67
import 'package:paperless_mobile/core/repository/label_repository.dart';
78
import 'package:paperless_mobile/core/widgets/form_builder_fields/extended_date_range_form_field/form_builder_extended_date_range_picker.dart';
89
import 'package:paperless_mobile/features/labels/tags/view/widgets/tags_form_field.dart';
@@ -93,21 +94,22 @@ class _DocumentFilterFormState extends State<DocumentFilterForm> {
9394

9495
List<Widget> _buildFormFieldList(LabelRepository labelRepository) {
9596
return [
96-
_buildQueryFormField(),
97+
_buildQueryFormField().paddedSymmetrically(horizontal: 12),
9798
Align(
9899
alignment: Alignment.centerLeft,
99100
child: Text(
100101
S.of(context)!.advanced,
101102
style: Theme.of(context).textTheme.bodySmall,
102103
),
103-
),
104+
).paddedLTRB(12, 16, 12, 0),
104105
FormBuilderExtendedDateRangePicker(
105106
name: DocumentFilterForm.fkCreatedAt,
106107
initialValue: widget.initialFilter.created,
107108
labelText: S.of(context)!.createdAt,
108109
onChanged: (_) {
109110
_checkQueryConstraints();
110111
},
112+
padding: EdgeInsets.symmetric(vertical: 8, horizontal: 12),
111113
),
112114
FormBuilderExtendedDateRangePicker(
113115
name: DocumentFilterForm.fkAddedAt,
@@ -116,17 +118,28 @@ class _DocumentFilterFormState extends State<DocumentFilterForm> {
116118
onChanged: (_) {
117119
_checkQueryConstraints();
118120
},
121+
padding: EdgeInsets.symmetric(vertical: 8, horizontal: 12),
122+
),
123+
_buildCorrespondentFormField(labelRepository.correspondents)
124+
.paddedSymmetrically(
125+
horizontal: 16,
126+
vertical: 4,
127+
),
128+
_buildDocumentTypeFormField(labelRepository.documentTypes)
129+
.paddedSymmetrically(
130+
horizontal: 16,
131+
vertical: 4,
132+
),
133+
_buildStoragePathFormField(labelRepository.storagePaths)
134+
.paddedSymmetrically(
135+
horizontal: 16,
136+
vertical: 4,
137+
),
138+
_buildTagsFormField(labelRepository.tags).paddedSymmetrically(
139+
horizontal: 16,
140+
vertical: 4,
119141
),
120-
_buildCorrespondentFormField(labelRepository.correspondents),
121-
_buildDocumentTypeFormField(labelRepository.documentTypes),
122-
_buildStoragePathFormField(labelRepository.storagePaths),
123-
_buildTagsFormField(labelRepository.tags),
124-
]
125-
.map((w) => SliverPadding(
126-
padding: widget.padding,
127-
sliver: SliverToBoxAdapter(child: w),
128-
))
129-
.toList();
142+
].map((e) => SliverToBoxAdapter(child: e)).toList();
130143
}
131144

132145
void _checkQueryConstraints() {

‎lib/main.dart

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -384,7 +384,7 @@ class _GoRouterShellState extends State<GoRouterShell> {
384384
);
385385
},
386386
routerConfig: _router,
387-
debugShowCheckedModeBanner: true,
387+
debugShowCheckedModeBanner: false,
388388
title: "Paperless Mobile",
389389
theme: buildTheme(
390390
brightness: Brightness.light,
@@ -396,7 +396,7 @@ class _GoRouterShellState extends State<GoRouterShell> {
396396
dynamicScheme: darkDynamic,
397397
preferredColorScheme: settings.preferredColorSchemeOption,
398398
),
399-
themeMode: settings.preferredThemeMode,
399+
themeMode: ThemeMode.light,
400400
supportedLocales: const [
401401
Locale('en'),
402402
Locale('de'),

‎pubspec.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ publish_to: "none" # Remove this line if you wish to publish to pub.dev
1515
# In iOS, build-name is used as CFBundleShortVersionString while build-number used as CFBundleVersion.
1616
# Read more about iOS versioning at
1717
# https://developer.apple.com/library/archive/documentation/General/Reference/InfoPlistKeyReference/Articles/CoreFoundationKeys.html
18-
version: 3.1.6+401
18+
version: 3.1.7+402
1919

2020
environment:
2121
sdk: ">=3.1.0 <4.0.0"

‎resources/get_it_on_google_play_en.svg

Lines changed: 0 additions & 1 deletion
This file was deleted.
167 KB
Binary file not shown.

‎scripts/update_changelogs.sh

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ function mergeChangelogs () {
99
__target_file=$__target_dir/changelogs_$1.md
1010
rm -f $__target_file
1111
touch $__target_file
12-
ls $__script_dir/../android/fastlane/metadata/android/$1/changelogs/[0-9]*.txt | tac | while read f; do
12+
ls -1v $__script_dir/../android/fastlane/metadata/android/$1/changelogs/[0-9]*.txt | tac | while read f; do
1313
__build_number="${f%.*}"
1414
echo "# $(basename -- $__build_number)" >> $__target_file
1515
cat $f >> $__target_file

0 commit comments

Comments
 (0)
Please sign in to comment.