296 Commits

Author SHA1 Message Date
e65fbdbc71 Add experimental Journal Editor
It removes the title and displays the journal header. This provides a
much better experience for writing a journal.
2020-02-28 12:47:53 +01:00
d137fb83cf Add experimental support for not saving the yaml header
Fixes #19

This is experimental as it changes the whole concept of a Note - We have
till now always assumed that a Note can have attached metadata. With
this, there is no longer any metadata. So other parts of the application
need to start reacting accordingly. For example the Mardkown Editor
should not allow you to modify the title.

This also makes it easier to implement '.txt' file support.
2020-02-18 22:29:16 +01:00
27ebd9686b RawEditor: Give focus when using it for a new note 2020-02-18 16:31:34 +01:00
59d379ab62 Allow the default editor to be configured
This doesn't solve #41, but it does provide a good workaround.
2020-02-18 16:26:12 +01:00
98fb1ccff5 Move git host setup files to setup folder 2020-02-17 16:51:52 +01:00
d2be24a191 HostSetup CloneUrl: Change text size
This way one can comfortably add the entire git url.
2020-02-16 23:58:53 +01:00
2aba80cb75 GitHostSetup: Use git_url_parse2 to try to verify the url
This way if the url is invalid we will know before trying to clone,
which happens much later during the process.
2020-02-16 20:01:59 +01:00
46a38cdedf Rename NoteData -> MdYamlDoc
It more clearly defines what exactly it is.

This is important as its less confusing for when we add support for
other file types.
2020-02-14 08:12:41 +01:00
fa21f6433b Typo in settings_git_remote.dart 2020-02-12 19:01:46 +01:00
3a3ec76529 StateContainer: Use Provider
This way we can avoid listening for changes in many places.
2020-02-11 19:10:34 +01:00
9f5f7c39eb Remove the todo editor toggle
I anyway accidentally set it to true.
2020-02-10 16:17:50 +01:00
4a93850c22 Rename todo editor to Checklist editor
With todos - we could get feature requests for more advanced stuff such
as due dates and all. For now I just want simple checklist support.
2020-02-09 22:55:48 +01:00
1d0cf3ab6d Save the selected sorting mode 2020-02-09 22:41:16 +01:00
e0f03d703e Allow remote sync frequency to be controller
For now the only 2 options are - automaitic and manual.

I rather name it "Automatic" instead of "After each change" as that way
I can choose to do it more frequently, if desired.

Fixes #8
2020-02-09 22:23:39 +01:00
9c02f1d8ac Allow the sorting mode to be toggled 2020-02-09 19:37:10 +01:00
7fd2546334 Add as NotesFolderReadOnly interface
This simplifies the implementation of VirtualNotesFolder and
NotesFolder.
2020-02-09 19:11:01 +01:00
313aace7fb JournalListingScreen: Convert to stateful widget
This way we avoid re-sorting the list each time we render it.
2020-02-09 18:56:13 +01:00
2bc1c0aea8 Fix SortedNotes folder and enable it again 2020-02-09 18:53:56 +01:00
a97bdd8f92 Add a VirtualNotesFolder
Also disable the SortedNotesFolder - it's buggy.

This simplifies using a JournalList as one doesn't need to pick between
a list of notes / notesfolder.
2020-02-09 18:08:57 +01:00
20f8d7f7fe NoteEditor: Improve modified check
If the only modification is the addition of a 'modified' tag, then we
shouldn't count it as modified.

I'm not too fond of this logic.
2020-02-09 17:34:12 +01:00
937d12d5d8 Host Setup: Wrap back button in SafeArea
Otherwise the notch intefers with it.
2020-02-09 16:32:35 +01:00
0c0fd17543 syncNotes: Catch the exception outside the StateContainer
The StateContainer doesn't have access to the snackbar.
2020-02-09 16:32:35 +01:00
4bfd04fa2d Simplify code 2020-02-06 01:46:46 +01:00
143a1d95c7 First iteration of animating the JournalList
Now on adding / removing elements, the list is animated. It looks
slightly better.
2020-02-06 01:29:30 +01:00
55b05926c1 Log why the note was modified
We are getting bug reports about the modified tag being changed even
when the note hasn't been modified.
2020-02-06 00:48:56 +01:00
8761f96bbe UndoSnackBar: Stop using Fimber
It makes everything far more complicated, but at least this way the FAB
moves along with the scaffold. With Fimber, that is not the case, and it
is very annoying.
2020-01-31 17:41:05 +01:00
95dce61479 Allow the new folder for notes to be configurable
This is currently disabled as it requires a substantial change in the
JournalList.
2020-01-31 16:16:12 +01:00
51e42780d6 Split NoteSearchDelegate into its own file 2020-01-31 16:12:55 +01:00
23c6192162 Editor: Add 'Discard Changes' button
It got removed while merging the editor/viewer
2020-01-31 15:55:25 +01:00
7c2cde03b7 Add the first draft of a TodoEditor
It's a small proof of concept and still needs a lot of work.
2020-01-30 18:41:27 +01:00
43281bd2bb Add support for moving a Note to another folder
The Folder selection dialog needs a lot of work, but it's a start.
2020-01-29 16:51:57 +01:00
3f40a2992a Add the concept of Editors
* We no longer have a separate editing and browsing view - This does
mean we loose the ability to quick flip between notes by swiping.
However, this is more how a note editor would behave. I do later want to
add that capability back.

* We have 2 editors for now - Markdown and Raw. By default we use the
Markdown editor which can be toggled between Preview / Edit mode.

I later want to add a rich text editor and a todo editor as well.
2020-01-29 00:04:24 +01:00
127faa39cf JournalEditor: Allow the markdown to be previewed
This is the first implementation of trying to combine the viewer and
editor. It isn't perfect and doesn't work well with the raw editor.
2020-01-28 16:23:00 +01:00
6d38377144 Split NoteViewer into its own file 2020-01-28 16:02:54 +01:00
9912f598df Using the same font when editing and viewing the note
Otherwise the transition seems a bit off. Also, we will soon be
combining both the editor and viewer, so it makes sense for them to look
identical.
2020-01-28 15:57:40 +01:00
5d0054fd7e Remove FontSize configuration
Ever since we had a proper markdown renderer, this option has been
broken as it only scales the body text and not the headers, and other
text in code-blocks. Additionally it only modifies the viewing text size
and not the editing text size. Fixing this feature is way too much work,
and barely any users are using this feature.

Maybe we will introduce it again in the future.
2020-01-28 15:56:59 +01:00
177a7c3d74 DarkMode: Improve markdown code blocks color
Flutter_markdown has hardcoded certain grey colors. This doesn't go well
with a dark theme. For now we're overwriting it.
2020-01-27 23:50:39 +01:00
645892a7dc NoteMetadata Settings: Fix colors for dark mode 2020-01-27 23:33:21 +01:00
150543e065 RenameDialog: Do not accept a name that already exists 2020-01-27 23:27:45 +01:00
f8e7773f16 NoteBrowser: Add a button to rename notes
Fixes #23
2020-01-27 23:09:11 +01:00
35f8559c74 Move RenameDialog to its own file
Also make it a bit more generic
2020-01-27 23:08:33 +01:00
a759ad4a23 Combine showSnackbar code
It's annoying to always have to remember to call it. We had forgotten in
one place and that resulted in a lot of noise.
2020-01-27 19:02:44 +01:00
bd0819c5be Settings: Disable the Git Remote Settings when no remote present 2020-01-27 19:01:47 +01:00
ec1bcb3e3a [Feat] add FAB for note saving
Resolves #52
2020-01-18 11:47:20 +01:00
6f3643bbef Remove the BROWSE title
It's not required. Yes, stuff looks a little bit empty - but the title
over here really serves no purpose. Also, it's a bit confusing when
coming in from the hero animation for the List Tile's title to become
"BROWSE".

I do wish there was an easy way to inform the user that they can swipe
left/right in order to move between notes.
2020-01-08 00:04:20 +01:00
7e3cfb9e37 Allow the default yaml modified key to changed
Some people are using GitJournal to edit Hugo websites, this option is
for them as the Hugo front matter uses the 'lastmod' key to indicate
when the post was last modified.
2020-01-05 18:24:46 +01:00
a292896d5a Host Setup: Clear the clone error before starting a clone
One could have a clone that failed and then we're trying again with some
different values. The old error message is invalid.
2020-01-05 17:39:13 +01:00
6e05ce7f18 CloneUrlInput: All it to expand vertically
Ideally one should remove the code duplication of this form, but for now
duplicating the code is just so much simpler.
2020-01-05 17:38:25 +01:00
dccd58c5f1 prefer_const_constructors 2020-01-04 15:44:34 +01:00
e0afa27b06 Expose Git Remote Settings
This way you can regenerate the SSH Key (if needed) and/or copy it
again. In the future one can add methods to reconfigure the git remote
and add / remove remotes.
2020-01-04 15:31:28 +01:00