A note has a parent which is the physical folder it is inside, and a
parent folder which it is being displayed inside. It's useful to have
the latter as that can be used to display the next note - in the case of
the Journal Editor, and open the graph view as well.
Make it a ChageNotifier and try to access it through the Provider
instead of like a global variable. This way, the state is better
managed and it'll be easier to split out Settings into smaller classes.
If the user has freshly installed the app, they can click on the
Purchase Pro Mode button and that will put them in Pro mode if already
bought.
This is being done, because otherwise the experience in ios is shitty as
the moment the app is launched, the user is asked for their iTunes
password.
Disable the optimization of not checking for pro mode on boot. The
optimization fails and pro members cannot always get the pro features.
This is not good.
As a workaround, opening the but pro mode page also checks if already
purchased.
This will show all the files and not just the "notes". This way the user
can easily figure out why a file isn't included in the list of notes.
It's currently disabled by default as it clearly needs a lot more work.
It seems sometimes when an app is updated their documents path changes.
So our cached version of it is now incorrect and needs to be refreshed -
Fixes#159
Instead lets just use the path_provider. This was being used as for some
reason I wanted the files to reside inside the 'files' folder and not in
the 'app_flutter' directory.
However, that requires maintaining a fork of path_provider, which I no
longer want to do.
This basically asserts if we move to a route without a name. This way
I'll always catch when a route doesn't have a name, and I can start
getting better analytics on which screens are used most frequently.
I've added 3 app shortcuts -
* New Note
* New Checklist
* New Journal Entry
The icons for these shortcuts are horrible, and I cannot seem to make it
prettier, so this will have to do for now. It's also a bit slow as first
the home screen in built and then a NoteEditor is shown.
Fixes#134
This will show all the debug messages, which include when a file is
being ignored and not loaded, and hopefully all the exceptions. So the
user should be able to better understand why a file has been ignored.
It's not an ideal solution, but it's a quick fix.
Fixes#122
This is the folder where the git repo should be stored.
By storing it, we can easily change it later. Also it allows us to
reduce of our custom platform code.
We now have a much clearer separation between Git code and this app
specific code. This is awesome, it will allow other people to easily
integrate Git within their apps. Also, eventually it will be trivial to
switch to another implemention of Git (via JGit or a git client written
completely in Dart)
This breaks the iOS version as I haven't moved the code to build the ios
version. Maybe this will be a good excuse for me to setup a proper CI/CD
system for ios builds.
There is also a chance this breaks Crashalytics NDK symbols :(
The Git Api was strange and took a foldeName and it would only allow you
to access git operations in a particular path. This has now been fixed,
and now it can operate in any path.
This was the first step to moving the git api into its own library.