Rename StateContainer to Respository

This commit is contained in:
Vishesh Handa
2020-10-23 01:36:06 +02:00
parent 3b581f9162
commit 770394a8f9
15 changed files with 48 additions and 54 deletions

View File

@ -22,8 +22,8 @@ import 'package:gitjournal/app_router.dart';
import 'package:gitjournal/app_settings.dart';
import 'package:gitjournal/appstate.dart';
import 'package:gitjournal/iap.dart';
import 'package:gitjournal/repository.dart';
import 'package:gitjournal/settings.dart';
import 'package:gitjournal/state_container.dart';
import 'package:gitjournal/themes.dart';
import 'package:gitjournal/utils/logger.dart';
@ -73,7 +73,7 @@ class JournalApp extends StatefulWidget {
value: settings,
child: ChangeNotifierProvider(
create: (_) {
return StateContainer(appState: appState, settings: settings);
return Repository(appState: appState, settings: settings);
},
child: ChangeNotifierProvider(
child: JournalApp(appState),
@ -303,7 +303,7 @@ class _JournalAppState extends State<JournalApp> {
}
MaterialApp buildApp(BuildContext context, ThemeData themeData) {
var stateContainer = Provider.of<StateContainer>(context);
var stateContainer = Provider.of<Repository>(context);
var settings = Provider.of<Settings>(context);
var appSettings = Provider.of<AppSettings>(context);
var router = AppRouter(settings: settings, appSettings: appSettings);

View File

@ -4,6 +4,7 @@ import 'package:meta/meta.dart';
import 'package:gitjournal/app_settings.dart';
import 'package:gitjournal/core/md_yaml_doc_codec.dart';
import 'package:gitjournal/repository.dart';
import 'package:gitjournal/screens/filesystem_screen.dart';
import 'package:gitjournal/screens/folder_listing.dart';
import 'package:gitjournal/screens/graph_view.dart';
@ -16,7 +17,6 @@ import 'package:gitjournal/screens/settings_screen.dart';
import 'package:gitjournal/screens/tag_listing.dart';
import 'package:gitjournal/settings.dart';
import 'package:gitjournal/setup/screens.dart';
import 'package:gitjournal/state_container.dart';
import 'package:gitjournal/utils.dart';
import 'package:gitjournal/utils/logger.dart';
@ -39,7 +39,7 @@ class AppRouter {
Route<dynamic> generateRoute(
RouteSettings routeSettings,
StateContainer stateContainer,
Repository stateContainer,
String sharedText,
List<String> sharedImages,
) {
@ -74,7 +74,7 @@ class AppRouter {
Widget _screenForRoute(
String route,
StateContainer stateContainer,
Repository stateContainer,
Settings settings,
String sharedText,
List<String> sharedImages,

View File

@ -9,9 +9,9 @@ import 'package:gitjournal/core/notes_folder_fs.dart';
import 'package:gitjournal/folder_views/card_view.dart';
import 'package:gitjournal/folder_views/grid_view.dart';
import 'package:gitjournal/folder_views/journal_view.dart';
import 'package:gitjournal/repository.dart';
import 'package:gitjournal/screens/note_editor.dart';
import 'package:gitjournal/settings.dart';
import 'package:gitjournal/state_container.dart';
import 'package:gitjournal/utils.dart';
import 'package:gitjournal/utils/logger.dart';
import 'standard_view.dart';
@ -94,7 +94,7 @@ void openNoteEditor(
if (showUndoSnackBar != null) {
Log.d("Showing an undo snackbar");
var stateContainer = Provider.of<StateContainer>(context, listen: false);
var stateContainer = Provider.of<Repository>(context, listen: false);
var snackBar = buildUndoDeleteSnackbar(stateContainer, note);
Scaffold.of(context)
..removeCurrentSnackBar()

View File

@ -5,8 +5,8 @@ import 'package:provider/provider.dart';
import 'package:gitjournal/core/note.dart';
import 'package:gitjournal/core/notes_folder.dart';
import 'package:gitjournal/repository.dart';
import 'package:gitjournal/settings.dart';
import 'package:gitjournal/state_container.dart';
import 'package:gitjournal/utils.dart';
import 'package:gitjournal/widgets/icon_dismissable.dart';
@ -154,8 +154,7 @@ class _FolderListViewState extends State<FolderListView> {
onDismissed: (direction) {
deletedViaDismissed.add(note.filePath);
var stateContainer =
Provider.of<StateContainer>(context, listen: false);
var stateContainer = Provider.of<Repository>(context, listen: false);
stateContainer.removeNote(note);
var snackBar = buildUndoDeleteSnackbar(stateContainer, note);

View File

@ -20,7 +20,7 @@ import 'package:gitjournal/features.dart';
import 'package:gitjournal/settings.dart';
import 'package:gitjournal/utils/logger.dart';
class StateContainer with ChangeNotifier {
class Repository with ChangeNotifier {
final AppState appState;
final Settings settings;
@ -35,7 +35,7 @@ class StateContainer with ChangeNotifier {
String repoPath;
StateContainer({@required this.appState, @required this.settings}) {
Repository({@required this.appState, @required this.settings}) {
repoPath = settings.buildRepoPath(appState.gitBaseDirectory);
_gitRepo = GitNoteRepository(gitDirPath: repoPath, settings: settings);

View File

@ -6,7 +6,7 @@ import 'package:provider/provider.dart';
import 'package:gitjournal/core/note.dart';
import 'package:gitjournal/core/notes_folder_fs.dart';
import 'package:gitjournal/state_container.dart';
import 'package:gitjournal/repository.dart';
import 'package:gitjournal/widgets/app_drawer.dart';
import 'package:gitjournal/widgets/rename_dialog.dart';
@ -74,7 +74,7 @@ class _FileSystemScreenState extends State<FileSystemScreen> {
),
);
if (newFileName is String) {
var container = Provider.of<StateContainer>(context, listen: false);
var container = Provider.of<Repository>(context, listen: false);
container.renameFile(oldPath, newFileName);
}
}

View File

@ -4,7 +4,7 @@ import 'package:easy_localization/easy_localization.dart';
import 'package:provider/provider.dart';
import 'package:gitjournal/core/notes_folder_fs.dart';
import 'package:gitjournal/state_container.dart';
import 'package:gitjournal/repository.dart';
import 'package:gitjournal/widgets/app_bar_menu_button.dart';
import 'package:gitjournal/widgets/app_drawer.dart';
import 'package:gitjournal/widgets/folder_tree_view.dart';
@ -86,8 +86,7 @@ class _FolderListingScreenState extends State<FolderListingScreen> {
),
);
if (folderName is String) {
var container =
Provider.of<StateContainer>(context, listen: false);
var container = Provider.of<Repository>(context, listen: false);
container.renameFolder(selectedFolder, folderName);
}
} else if (value == "Create") {
@ -96,8 +95,7 @@ class _FolderListingScreenState extends State<FolderListingScreen> {
builder: (_) => CreateFolderAlertDialog(),
);
if (folderName is String) {
var container =
Provider.of<StateContainer>(context, listen: false);
var container = Provider.of<Repository>(context, listen: false);
container.createFolder(selectedFolder, folderName);
}
} else if (value == "Delete") {
@ -107,8 +105,7 @@ class _FolderListingScreenState extends State<FolderListingScreen> {
builder: (_) => DeleteFolderErrorDialog(),
);
} else {
var container =
Provider.of<StateContainer>(context, listen: false);
var container = Provider.of<Repository>(context, listen: false);
container.removeFolder(selectedFolder);
}
}
@ -156,7 +153,7 @@ class CreateFolderButton extends StatelessWidget {
builder: (_) => CreateFolderAlertDialog(),
);
if (folderName is String) {
var container = Provider.of<StateContainer>(context, listen: false);
var container = Provider.of<Repository>(context, listen: false);
final notesFolder =
Provider.of<NotesFolderFS>(context, listen: false);

View File

@ -13,10 +13,10 @@ import 'package:gitjournal/core/sorted_notes_folder.dart';
import 'package:gitjournal/core/sorting_mode.dart';
import 'package:gitjournal/folder_views/common.dart';
import 'package:gitjournal/folder_views/standard_view.dart';
import 'package:gitjournal/repository.dart';
import 'package:gitjournal/screens/note_editor.dart';
import 'package:gitjournal/screens/settings_screen.dart';
import 'package:gitjournal/settings.dart';
import 'package:gitjournal/state_container.dart';
import 'package:gitjournal/utils.dart';
import 'package:gitjournal/widgets/app_bar_menu_button.dart';
import 'package:gitjournal/widgets/app_drawer.dart';
@ -154,7 +154,7 @@ class _FolderViewState extends State<FolderView> {
void _syncRepo(BuildContext context) async {
try {
var container = Provider.of<StateContainer>(context, listen: false);
var container = Provider.of<Repository>(context, listen: false);
await container.syncNotes();
} on GitException catch (e) {
showSnackbar(
@ -228,7 +228,7 @@ class _FolderViewState extends State<FolderView> {
var settings = Provider.of<Settings>(context, listen: false);
config.saveToSettings(settings);
var container = Provider.of<StateContainer>(context, listen: false);
var container = Provider.of<Repository>(context, listen: false);
container.saveFolderConfig(sortedNotesFolder.config);
setState(() {
@ -253,7 +253,7 @@ class _FolderViewState extends State<FolderView> {
var settings = Provider.of<Settings>(context, listen: false);
config.saveToSettings(settings);
var container = Provider.of<StateContainer>(context, listen: false);
var container = Provider.of<Repository>(context, listen: false);
container.saveFolderConfig(sortedNotesFolder.config);
};
@ -269,7 +269,7 @@ class _FolderViewState extends State<FolderView> {
var settings = Provider.of<Settings>(context, listen: false);
config.saveToSettings(settings);
var container = Provider.of<StateContainer>(context, listen: false);
var container = Provider.of<Repository>(context, listen: false);
container.saveFolderConfig(sortedNotesFolder.config);
};
@ -401,13 +401,13 @@ class _FolderViewState extends State<FolderView> {
var settings = Provider.of<Settings>(context, listen: false);
config.saveToSettings(settings);
var container = Provider.of<StateContainer>(context, listen: false);
var container = Provider.of<Repository>(context, listen: false);
container.saveFolderConfig(widget.notesFolder.config);
}
}
List<Widget> _buildNoteActions() {
final appState = Provider.of<StateContainer>(context).appState;
final appState = Provider.of<Repository>(context).appState;
var extraActions = PopupMenuButton<DropDownChoices>(
key: const ValueKey("PopupMenu"),
@ -484,7 +484,7 @@ class _FolderViewState extends State<FolderView> {
builder: (context) => NoteDeleteDialog(),
);
if (shouldDelete == true) {
var stateContainer = Provider.of<StateContainer>(context, listen: false);
var stateContainer = Provider.of<Repository>(context, listen: false);
stateContainer.removeNote(note);
}

View File

@ -16,7 +16,7 @@ import 'package:gitjournal/editors/journal_editor.dart';
import 'package:gitjournal/editors/markdown_editor.dart';
import 'package:gitjournal/editors/raw_editor.dart';
import 'package:gitjournal/error_reporting.dart';
import 'package:gitjournal/state_container.dart';
import 'package:gitjournal/repository.dart';
import 'package:gitjournal/utils.dart';
import 'package:gitjournal/utils/logger.dart';
import 'package:gitjournal/widgets/folder_selection_dialog.dart';
@ -282,7 +282,7 @@ class NoteEditorState extends State<NoteEditor> with WidgetsBindingObserver {
});
return;
}
var container = Provider.of<StateContainer>(context, listen: false);
var container = Provider.of<Repository>(context, listen: false);
container.renameNote(note, fileName);
}
}
@ -313,7 +313,7 @@ class NoteEditorState extends State<NoteEditor> with WidgetsBindingObserver {
return;
}
var stateContainer = Provider.of<StateContainer>(context, listen: false);
var stateContainer = Provider.of<Repository>(context, listen: false);
stateContainer.removeNote(note);
}
@ -348,7 +348,7 @@ class NoteEditorState extends State<NoteEditor> with WidgetsBindingObserver {
Log.d("Note modified - saving");
try {
var stateContainer = Provider.of<StateContainer>(context, listen: false);
var stateContainer = Provider.of<Repository>(context, listen: false);
_isNewNote
? await stateContainer.addNote(note)
: await stateContainer.updateNote(note);
@ -391,15 +391,14 @@ class NoteEditorState extends State<NoteEditor> with WidgetsBindingObserver {
note.parent = destFolder;
setState(() {});
} else {
var stateContainer =
Provider.of<StateContainer>(context, listen: false);
var stateContainer = Provider.of<Repository>(context, listen: false);
stateContainer.moveNote(note, destFolder);
}
}
}
void _discardChangesSelected(Note note) async {
var stateContainer = Provider.of<StateContainer>(context, listen: false);
var stateContainer = Provider.of<Repository>(context, listen: false);
stateContainer.discardChanges(note);
Navigator.pop(context);

View File

@ -8,12 +8,12 @@ import 'package:easy_localization/easy_localization.dart';
import 'package:path/path.dart' as p;
import 'package:provider/provider.dart';
import 'package:gitjournal/repository.dart';
import 'package:gitjournal/screens/settings_widgets.dart';
import 'package:gitjournal/settings.dart';
import 'package:gitjournal/setup/screens.dart';
import 'package:gitjournal/setup/sshkey.dart';
import 'package:gitjournal/ssh/keygen.dart';
import 'package:gitjournal/state_container.dart';
import 'package:gitjournal/utils.dart';
import 'package:gitjournal/utils/logger.dart';
@ -164,7 +164,7 @@ class _GitRemoteSettingsScreenState extends State<GitRemoteSettingsScreen> {
return;
}
var stateContainer = Provider.of<StateContainer>(context, listen: false);
var stateContainer = Provider.of<Repository>(context, listen: false);
var gitDir = stateContainer.appState.gitBaseDirectory;
// Figure out the next available folder

View File

@ -14,6 +14,7 @@ import 'package:url_launcher/url_launcher.dart';
import 'package:gitjournal/app_settings.dart';
import 'package:gitjournal/core/notes_folder_fs.dart';
import 'package:gitjournal/features.dart';
import 'package:gitjournal/repository.dart';
import 'package:gitjournal/screens/debug_screen.dart';
import 'package:gitjournal/screens/feature_timeline_screen.dart';
import 'package:gitjournal/screens/settings_bottom_menu_bar.dart';
@ -26,7 +27,6 @@ import 'package:gitjournal/screens/settings_note_metadata.dart';
import 'package:gitjournal/screens/settings_tags.dart';
import 'package:gitjournal/screens/settings_widgets.dart';
import 'package:gitjournal/settings.dart';
import 'package:gitjournal/state_container.dart';
import 'package:gitjournal/utils.dart';
import 'package:gitjournal/widgets/folder_selection_dialog.dart';
import 'package:gitjournal/widgets/pro_overlay.dart';
@ -65,7 +65,7 @@ class SettingsListState extends State<SettingsList> {
Widget build(BuildContext context) {
var settings = Provider.of<Settings>(context);
var appSettings = Provider.of<AppSettings>(context);
final stateContainer = Provider.of<StateContainer>(context);
final stateContainer = Provider.of<Repository>(context);
final appState = stateContainer.appState;
var saveGitAuthor = (String gitAuthor) {

View File

@ -15,6 +15,7 @@ import 'package:url_launcher/url_launcher.dart';
import 'package:gitjournal/analytics.dart';
import 'package:gitjournal/apis/githost_factory.dart';
import 'package:gitjournal/error_reporting.dart';
import 'package:gitjournal/repository.dart';
import 'package:gitjournal/settings.dart';
import 'package:gitjournal/setup/autoconfigure.dart';
import 'package:gitjournal/setup/button.dart';
@ -23,7 +24,6 @@ import 'package:gitjournal/setup/loading_error.dart';
import 'package:gitjournal/setup/repo_selector.dart';
import 'package:gitjournal/setup/sshkey.dart';
import 'package:gitjournal/ssh/keygen.dart';
import 'package:gitjournal/state_container.dart';
import 'package:gitjournal/utils.dart';
import 'package:gitjournal/utils/logger.dart';
@ -492,7 +492,7 @@ class GitHostSetupScreenState extends State<GitHostSetupScreen> {
gitCloneErrorMessage = "";
});
var stateContainer = Provider.of<StateContainer>(context, listen: false);
var stateContainer = Provider.of<Repository>(context, listen: false);
var basePath = stateContainer.appState.gitBaseDirectory;
var settings = Provider.of<Settings>(context, listen: false);

View File

@ -10,7 +10,7 @@ import 'package:gitjournal/screens/note_editor.dart';
import 'package:gitjournal/settings.dart';
import 'app.dart';
import 'core/note.dart';
import 'state_container.dart';
import 'repository.dart';
import 'utils/logger.dart';
Future<String> getVersionString() async {
@ -27,8 +27,7 @@ Future<String> getVersionString() async {
return versionText;
}
SnackBar buildUndoDeleteSnackbar(
StateContainer stateContainer, Note deletedNote) {
SnackBar buildUndoDeleteSnackbar(Repository stateContainer, Note deletedNote) {
return SnackBar(
content: Text(tr('widgets.FolderView.noteDeleted')),
action: SnackBarAction(

View File

@ -13,7 +13,7 @@ import 'package:url_launcher/url_launcher.dart';
import 'package:gitjournal/analytics.dart';
import 'package:gitjournal/app_settings.dart';
import 'package:gitjournal/state_container.dart';
import 'package:gitjournal/repository.dart';
import 'package:gitjournal/utils.dart';
import 'package:gitjournal/utils/logger.dart';
@ -21,7 +21,7 @@ class AppDrawer extends StatelessWidget {
@override
Widget build(BuildContext context) {
Widget setupGitButton;
var appState = Provider.of<StateContainer>(context).appState;
var appState = Provider.of<Repository>(context).appState;
var appSettings = Provider.of<AppSettings>(context);
var textStyle = Theme.of(context).textTheme.bodyText1;
var currentRoute = ModalRoute.of(context).settings.name;

View File

@ -9,7 +9,7 @@ import 'package:git_bindings/git_bindings.dart';
import 'package:provider/provider.dart';
import 'package:gitjournal/appstate.dart';
import 'package:gitjournal/state_container.dart';
import 'package:gitjournal/repository.dart';
import 'package:gitjournal/utils.dart';
class SyncButton extends StatefulWidget {
@ -41,7 +41,7 @@ class _SyncButtonState extends State<SyncButton> {
@override
Widget build(BuildContext context) {
final appState = Provider.of<StateContainer>(context).appState;
final appState = Provider.of<Repository>(context).appState;
if (_connectivity == ConnectivityResult.none) {
return GitPendingChangesBadge(
@ -87,7 +87,7 @@ class _SyncButtonState extends State<SyncButton> {
void _syncRepo() async {
try {
final container = Provider.of<StateContainer>(context, listen: false);
final container = Provider.of<Repository>(context, listen: false);
await container.syncNotes();
} on GitException catch (e) {
showSnackbar(context, tr('widgets.SyncButton.error', args: [e.cause]));
@ -97,7 +97,7 @@ class _SyncButtonState extends State<SyncButton> {
}
IconData _syncStatusIcon() {
final container = Provider.of<StateContainer>(context);
final container = Provider.of<Repository>(context);
final appState = container.appState;
switch (appState.syncStatus) {
case SyncStatus.Error:
@ -172,7 +172,7 @@ class GitPendingChangesBadge extends StatelessWidget {
color: darkMode ? Colors.black : Colors.white,
);
final appState = Provider.of<StateContainer>(context).appState;
final appState = Provider.of<Repository>(context).appState;
return Badge(
badgeContent: Text(appState.numChanges.toString(), style: style),