Add lots of listen: false when using Provider

Provider version 4 has an assert which fires if used incorrectly.
This commit is contained in:
Vishesh Handa
2020-09-28 00:09:14 +02:00
parent c20f8314c1
commit 43269bbe53
10 changed files with 17 additions and 16 deletions

View File

@ -48,7 +48,7 @@ class _EditorScaffoldState extends State<EditorScaffold> {
void _initStateWithContext() { void _initStateWithContext() {
if (!mounted) return; if (!mounted) return;
var settings = Provider.of<Settings>(context); var settings = Provider.of<Settings>(context, listen: false);
setState(() { setState(() {
hideUIElements = settings.zenMode; hideUIElements = settings.zenMode;
@ -79,7 +79,7 @@ class _EditorScaffoldState extends State<EditorScaffold> {
} }
void _editorChanged() { void _editorChanged() {
var settings = Provider.of<Settings>(context); var settings = Provider.of<Settings>(context, listen: false);
if (settings.zenMode && !hideUIElements) { if (settings.zenMode && !hideUIElements) {
setState(() { setState(() {
@ -89,7 +89,7 @@ class _EditorScaffoldState extends State<EditorScaffold> {
} }
void _switchMode() { void _switchMode() {
var settings = Provider.of<Settings>(context); var settings = Provider.of<Settings>(context, listen: false);
setState(() { setState(() {
editingMode = !editingMode; editingMode = !editingMode;

View File

@ -157,7 +157,8 @@ class CreateFolderButton extends StatelessWidget {
); );
if (folderName is String) { if (folderName is String) {
var container = Provider.of<StateContainer>(context, listen: false); var container = Provider.of<StateContainer>(context, listen: false);
final notesFolder = Provider.of<NotesFolderFS>(context); final notesFolder =
Provider.of<NotesFolderFS>(context, listen: false);
container.createFolder(notesFolder, folderName); container.createFolder(notesFolder, folderName);
} }

View File

@ -163,13 +163,13 @@ class _FolderViewState extends State<FolderView> {
NotesFolderFS fsFolder = folder.fsFolder; NotesFolderFS fsFolder = folder.fsFolder;
var isVirtualFolder = folder.name != folder.fsFolder.name; var isVirtualFolder = folder.name != folder.fsFolder.name;
if (isVirtualFolder) { if (isVirtualFolder) {
var rootFolder = Provider.of<NotesFolderFS>(context); var rootFolder = Provider.of<NotesFolderFS>(context, listen: false);
var settings = Provider.of<Settings>(context); var settings = Provider.of<Settings>(context, listen: false);
fsFolder = getFolderForEditor(settings, rootFolder, editorType); fsFolder = getFolderForEditor(settings, rootFolder, editorType);
} }
var settings = Provider.of<Settings>(context); var settings = Provider.of<Settings>(context, listen: false);
if (editorType == EditorType.Journal && settings.journalEditorSingleNote) { if (editorType == EditorType.Journal && settings.journalEditorSingleNote) {
var note = await getTodayJournalEntry(fsFolder.rootFolder); var note = await getTodayJournalEntry(fsFolder.rootFolder);

View File

@ -28,7 +28,7 @@ class _HomeScreenState extends State<HomeScreen> {
void _initFolder() async { void _initFolder() async {
if (!mounted) return; if (!mounted) return;
final rootFolder = Provider.of<NotesFolderFS>(context); final rootFolder = Provider.of<NotesFolderFS>(context, listen: false);
setState(() { setState(() {
notesFolder = FlattenedNotesFolder( notesFolder = FlattenedNotesFolder(
rootFolder, rootFolder,

View File

@ -384,7 +384,7 @@ class NoteEditorState extends State<NoteEditor> {
void _editTagsSelected(Note _note) async { void _editTagsSelected(Note _note) async {
Log.i("Note Tags: ${_note.tags}"); Log.i("Note Tags: ${_note.tags}");
final rootFolder = Provider.of<NotesFolderFS>(context); final rootFolder = Provider.of<NotesFolderFS>(context, listen: false);
var allTags = rootFolder.getNoteTagsRecursively(); var allTags = rootFolder.getNoteTagsRecursively();
Log.i("All Tags: $allTags"); Log.i("All Tags: $allTags");

View File

@ -111,7 +111,7 @@ class OnBoardingScreenState extends State<OnBoardingScreen> {
} }
void _finish() { void _finish() {
var appSettings = Provider.of<AppSettings>(context); var appSettings = Provider.of<AppSettings>(context, listen: false);
appSettings.onBoardingCompleted = true; appSettings.onBoardingCompleted = true;
appSettings.save(); appSettings.save();

View File

@ -79,7 +79,7 @@ class _GitRemoteSettingsScreenState extends State<GitRemoteSettingsScreen> {
), ),
RedButton( RedButton(
text: tr('settings.ssh.reset'), text: tr('settings.ssh.reset'),
onPressed: () => _resetGitHost(context), onPressed: () => _resetGitHost(),
), ),
], ],
crossAxisAlignment: CrossAxisAlignment.start, crossAxisAlignment: CrossAxisAlignment.start,
@ -122,7 +122,7 @@ class _GitRemoteSettingsScreenState extends State<GitRemoteSettingsScreen> {
}); });
} }
void _resetGitHost(BuildContext context) async { void _resetGitHost() async {
var ok = await showDialog( var ok = await showDialog(
context: context, context: context,
builder: (_) => HostChangeConfirmationDialog(), builder: (_) => HostChangeConfirmationDialog(),
@ -131,7 +131,7 @@ class _GitRemoteSettingsScreenState extends State<GitRemoteSettingsScreen> {
return; return;
} }
var stateContainer = Provider.of<StateContainer>(context); var stateContainer = Provider.of<StateContainer>(context, listen: false);
var gitDir = stateContainer.appState.gitBaseDirectory; var gitDir = stateContainer.appState.gitBaseDirectory;
// Figure out the next available folder // Figure out the next available folder

View File

@ -69,7 +69,7 @@ class TagListingScreen extends StatelessWidget {
onTap: () { onTap: () {
var route = MaterialPageRoute( var route = MaterialPageRoute(
builder: (context) { builder: (context) {
var rootFolder = Provider.of<NotesFolderFS>(context); var rootFolder = Provider.of<NotesFolderFS>(context, listen: false);
var folder = FlattenedNotesFolder( var folder = FlattenedNotesFolder(
rootFolder, rootFolder,
filter: (Note n) => filter: (Note n) =>

View File

@ -468,7 +468,7 @@ class GitHostSetupScreenState extends State<GitHostSetupScreen> {
gitCloneErrorMessage = ""; gitCloneErrorMessage = "";
}); });
var stateContainer = Provider.of<StateContainer>(context); var stateContainer = Provider.of<StateContainer>(context, listen: false);
var basePath = stateContainer.appState.gitBaseDirectory; var basePath = stateContainer.appState.gitBaseDirectory;
// Just in case it was half cloned because of an error // Just in case it was half cloned because of an error

View File

@ -223,7 +223,7 @@ class _PurchaseWidgetState extends State<PurchaseWidget> {
} }
void _deliverProduct(SubscriptionStatus status) { void _deliverProduct(SubscriptionStatus status) {
var appSettings = Provider.of<AppSettings>(context); var appSettings = Provider.of<AppSettings>(context, listen: false);
appSettings.proMode = status.isPro; appSettings.proMode = status.isPro;
appSettings.proExpirationDate = status.expiryDate.toIso8601String(); appSettings.proExpirationDate = status.expiryDate.toIso8601String();
appSettings.save(); appSettings.save();