null safety++

This commit is contained in:
Vishesh Handa
2021-05-25 10:10:14 +02:00
parent 3b5ff6c9df
commit d4a5467e23
8 changed files with 43 additions and 50 deletions

View File

@ -1,4 +1,3 @@
import 'dart:io';
import 'dart:isolate';
import 'package:flutter/material.dart';

View File

@ -1,5 +1,3 @@
// @dart=2.9
import 'dart:io';
import 'package:flutter/material.dart';
@ -33,17 +31,17 @@ class EditorBottomBar extends StatelessWidget {
final Func0<void> onRedoSelected;
EditorBottomBar({
@required this.editor,
@required this.editorState,
@required this.parentFolder,
@required this.allowEdits,
@required this.zenMode,
@required this.onZenModeChanged,
@required this.metaDataEditable,
@required this.onUndoSelected,
@required this.onRedoSelected,
@required this.undoAllowed,
@required this.redoAllowed,
required this.editor,
required this.editorState,
required this.parentFolder,
required this.allowEdits,
required this.zenMode,
required this.onZenModeChanged,
required this.metaDataEditable,
required this.onUndoSelected,
required this.onRedoSelected,
required this.undoAllowed,
required this.redoAllowed,
});
@override
@ -92,7 +90,7 @@ class EditorBottomBar extends StatelessWidget {
maintainInteractivity: false,
),
const Spacer(),
if (undoAllowed != null)
if (undoAllowed)
IconButton(
icon: const Icon(Icons.undo),
onPressed: undoAllowed ? onUndoSelected : null,
@ -105,7 +103,7 @@ class EditorBottomBar extends StatelessWidget {
editor.moveNoteToFolderSelected(note);
},
),
if (redoAllowed != null)
if (redoAllowed)
IconButton(
icon: const Icon(Icons.redo),
onPressed: redoAllowed ? onRedoSelected : null,

View File

@ -1,5 +1,3 @@
// @dart=2.9
import 'package:flutter/material.dart';
import 'package:easy_localization/easy_localization.dart';
@ -91,9 +89,9 @@ class FileSystemView extends StatelessWidget {
FileSystemView(
this.folder, {
@required this.onFolderSelected,
@required this.onNoteSelected,
@required this.onIgnoredFileSelected,
required this.onFolderSelected,
required this.onNoteSelected,
required this.onIgnoredFileSelected,
});
@override

View File

@ -1,5 +1,3 @@
// @dart=2.9
import 'package:flutter/material.dart';
import 'package:easy_localization/easy_localization.dart';
@ -12,12 +10,13 @@ import 'package:time/time.dart';
import 'package:gitjournal/app_settings.dart';
import 'package:gitjournal/repository.dart';
import 'package:gitjournal/settings.dart';
import 'package:gitjournal/utils/logger.dart';
class AppDrawerHeader extends StatelessWidget {
final Func0<void> repoListToggled;
AppDrawerHeader({
@required this.repoListToggled,
required this.repoListToggled,
});
@override
@ -78,8 +77,8 @@ class AppDrawerHeader extends StatelessWidget {
class _CurrentRepo extends StatefulWidget {
const _CurrentRepo({
Key key,
@required this.repoListToggled,
Key? key,
required this.repoListToggled,
}) : super(key: key);
final Func0<void> repoListToggled;
@ -90,8 +89,8 @@ class _CurrentRepo extends StatefulWidget {
class __CurrentRepoState extends State<_CurrentRepo>
with SingleTickerProviderStateMixin {
Animation _animation;
AnimationController controller;
late Animation _animation;
late AnimationController controller;
var _gitRemoteUrl = "";
var _repoFolderName = "";
@ -138,7 +137,7 @@ class __CurrentRepoState extends State<_CurrentRepo>
),
),
RotationTransition(
turns: _animation,
turns: _animation as Animation<double>,
child: IconButton(
icon: const FaIcon(FontAwesomeIcons.angleDown),
onPressed: _pressed,
@ -172,12 +171,16 @@ class __CurrentRepoState extends State<_CurrentRepo>
var repo = context.watch<GitJournalRepo>();
var repoPath = await repo.settings.buildRepoPath(repo.gitBaseDirectory);
if (repoPath == null) {
Log.e("Failed to build repo path");
return;
}
_repoFolderName = p.basename(repoPath);
var remoteConfigs = await repo.remoteConfigs();
if (!mounted) return;
if (remoteConfigs == null || remoteConfigs.isEmpty) {
if (remoteConfigs.isEmpty) {
setState(() {
_gitRemoteUrl = tr("drawer.remote");
});

View File

@ -1,5 +1,3 @@
// @dart=2.9
import 'package:flutter/material.dart';
/// A Scroll view which occupies the full height of the parent, and doesn't
@ -9,7 +7,7 @@ class EditorScrollView extends StatelessWidget {
final EdgeInsetsGeometry padding;
EditorScrollView({
@required this.child,
required this.child,
this.padding = const EdgeInsets.all(16.0),
});

View File

@ -1,5 +1,3 @@
// @dart=2.9
import 'package:flutter/material.dart';
import 'package:easy_localization/easy_localization.dart';
@ -38,9 +36,9 @@ class FolderTreeView extends StatelessWidget {
final FolderSelectedCallback onFolderEntered;
FolderTreeView({
Key key,
@required this.rootFolder,
@required this.onFolderEntered,
Key? key,
required this.rootFolder,
required this.onFolderEntered,
}) : super(key: key);
@override
@ -61,8 +59,8 @@ class FolderMiniTile extends StatefulWidget {
final FolderSelectedCallback onTap;
FolderMiniTile({
@required this.folder,
@required this.onTap,
required this.folder,
required this.onTap,
});
@override
@ -132,7 +130,7 @@ class FolderMiniTileState extends State<FolderMiniTile> {
var children = <FolderMiniTile>[];
widget.folder.subFolders.forEach((folder) {
children.add(FolderMiniTile(
folder: folder,
folder: folder as NotesFolderFS,
onTap: widget.onTap,
));
});

View File

@ -1,5 +1,3 @@
// @dart=2.9
import 'package:flutter/material.dart';
import 'package:intl/intl.dart';
@ -13,14 +11,15 @@ class JournalEditorHeader extends StatelessWidget {
@override
Widget build(BuildContext context) {
if (note.created == null) {
var created = note.created;
if (created == null) {
return Container();
}
var dateStr = DateFormat('MMMM, yyyy').format(note.created);
var timeStr = DateFormat('EEEE HH:mm').format(note.created);
var dateStr = DateFormat('MMMM, yyyy').format(created);
var timeStr = DateFormat('EEEE HH:mm').format(created);
var bigNum = Text(
note.created.day.toString(),
created.day.toString(),
style: const TextStyle(fontSize: 40.0),
);

View File

@ -1,5 +1,3 @@
// @dart=2.9
import 'package:flutter/material.dart';
import 'package:font_awesome_flutter/font_awesome_flutter.dart';
@ -7,10 +5,12 @@ import 'package:function_types/function_types.dart';
import 'package:gitjournal/screens/note_editor.dart';
// FIXME: Remove note_editor import!!
class NewNoteNavBar extends StatelessWidget {
final Func1<EditorType, void> onPressed;
NewNoteNavBar({@required this.onPressed});
NewNoteNavBar({required this.onPressed});
@override
Widget build(BuildContext context) {