10 Commits

Author SHA1 Message Date
542fb8c36a Avoid showing the "Reading Git History .." screen
This way startup feels much faster.
2021-12-10 10:57:20 +01:00
ccf571cbe9 NotesCache: Store the entire note
This way the disk barely needs to be accessed when loading GitJournal,
and we can hide how long it takes GitJournal to parse all the notes in
the background.
2021-12-09 20:04:08 +01:00
91c33204b5 dartfmt 2021-12-09 17:34:44 +01:00
6230e2b3df Rename AppSettings to AppConfig
I just want all the 'Settings' classes to the UI. In the end it really
doesn't matter. This was probably a waste of 5 minutes.
2021-10-27 20:47:57 +02:00
e1ea7a4953 Fetch the modified + created time from git
Fixes #78

This is probably the largest commit that I have ever made. From now on -
every File always has an mtime and ctime which is fetched from git.
Notes can optionally override that time by providing yaml metadata.

Additionally the 'filePath' and 'folderPath' is now relative to the
repoPath instead of being the full path.

This will slow down GitJournal like crazy as all the mtimes and ctime
still need to be cached. For my test repo it takes about 23 seconds for
GitJournal to become responsive.
2021-10-26 17:49:08 +02:00
82b077075c Improve File's operator==
Now that the bug in GitHash has been fixed.
2021-10-21 09:54:34 +02:00
f87793acbf NotesCache: Save it as a 'File'
This way it'll also be sorted correctly later.
2021-10-20 22:31:12 +02:00
7a56d0f423 Remove Note's default constructor
Instead there is a new type called 'UnopenedFile'. This was part of my
effort to not have everything inside the 'Note' class and to make it a
bit more immutable.

But, wow, this took a very long time. The 'Note' class seems to be very
deeply integrated everywhere.
2021-10-18 13:03:22 +02:00
ff46c38599 NotesFolderFS: Operate on 'File' instead of 'Note'
Also simplify the loading logic. This makes it much easier to
understand.

With this, I can now slowly migrate the interface of a NotesFolder to be
based on Files instead of Notes.
2021-10-15 15:38:12 +02:00
88697c1965 Make Note implement the 'File' interface.
I'm trying to expand GitJournal and let it understand the concept of
different Files. Right now everything is mashed into the "Note" class,
which is messy.
2021-10-15 12:41:54 +02:00