625 Commits

Author SHA1 Message Date
3cf951f8dd Improved note parsing
We now handle markdown files without any YAML Headers, and different
variations of the yaml header.

This should also fix a crash.
2019-11-01 23:00:54 +01:00
8de58c138a Make constructor const 2019-10-20 01:37:39 +01:00
d5f91cb898 More prefer_const
It seems like flutter analyze might have some kind of cache
2019-10-20 01:24:43 +01:00
b8964625d4 Remove unused fields 2019-10-20 01:17:20 +01:00
e7b05d7231 Enable unnecessary_const 2019-10-20 01:15:58 +01:00
ffc0af12a3 Enable prefer_const_constructors 2019-10-20 01:11:53 +01:00
5d69dd9de2 AppState: Remove isLoadingFromDisk
It isn't actually used anywhere. I want to simplify this as much as
possible, as I want the note loading to be as lazy as possible.
2019-10-20 00:54:34 +01:00
e1ce6aa2ec README: Add a Contributing section 2019-10-20 00:42:31 +01:00
40bbe3e016 Update .gitignore 2019-10-19 17:25:35 +01:00
e1347b52a3 Add missing file 2019-10-19 17:18:39 +01:00
1d67e82304 Feedback/Bugs: Use @gitjournal.io email addresses 2019-10-19 15:43:28 +01:00
899e355cff gj_common: Makefile add infer command 2019-10-19 15:16:45 +01:00
dc6bab7968 gj_common: Fix Infer possible NULL_DEREFERENCE errors
These are quite unlikely, but we may as well check agains't them.
2019-10-19 15:15:34 +01:00
d1e97d0e85 gj_common: Install infer in the docker container
Going back to Ubuntu as I can't seem to get 'infer' to work in alpine.
2019-10-19 14:59:19 +01:00
f694536469 YAML: Serialize nodes properly
This fixes the error where a YamlList is not of type string.
2019-10-19 12:53:28 +01:00
e8d8c58bff Setting Dialogs: Remove margins and add a Cancel button 2019-10-19 12:07:31 +01:00
c2247c26e9 Settings: Use Radio buttons in dialogs
Instead of highlighting the last selected option.
2019-10-19 12:02:13 +01:00
b4fd9d33f7 Settings: Make 'Dark Theme' a toggle
There are just two options. It doesn't make sense to open a dialog box
and then let the user choose.
2019-10-19 11:53:29 +01:00
aea6f40940 Feedback: Always encode the URI properly
Encoding the URI may work on Android, but it's safter to always just
encode it, specially if we ever add a '&' in the body.
2019-10-19 11:49:05 +01:00
13d5e39c85 Feedback: Send platform name in the email 2019-10-19 11:48:14 +01:00
af36bbdfd4 Move note empty checking to the Note class 2019-10-11 18:35:00 +02:00
704c8f4ce1 NoteEditor: Do not save a note if it has not been modified
This would result in empty commits :(
2019-10-11 17:24:48 +02:00
e9cfb1fde7 NoteEditor: The backButton should save the note
It used to get discarded which was really bad usability. The worst case
is that the user didn't want to save the note, and then they can easily
just delete it, but we shouldn't loose information.
2019-10-11 17:20:53 +02:00
cb399a9586 RawEditor: Use a monospace font
It looks way way nicer. Also it really highlights how you're editing the
raw contents of the file.
2019-10-11 17:07:39 +02:00
be74d80aff Bump version 2019-10-11 16:44:57 +02:00
0ad3a9e2e6 OAuthLaunch: Ignore Platform exceptions
The OAuthFlow doesn't work properly in ios, for now lets just ignore
these exceptions as short of forking the url_launcher, I see no other
way of fixing this.

If the Flutter team can release a fix in a week or so, then I'll just
wait, otherwise I'll probably just fork the url_launcher and close the
FSafariViewController on receiving an error. It wouldn't be a proper
fix, but it will work around the issue.

https://github.com/flutter/flutter/issues/30642
2019-10-11 16:42:23 +02:00
57b37399ef OAuthApp: Add a main
This way we can easily run it
2019-10-11 16:17:27 +02:00
17b13e9f00 ios: Handle expensive operations in a background thread
If we handle them in the main thread, then the UI blocks, especially
when generating a new SSH key.
2019-10-11 16:00:14 +02:00
fbb1b12cb2 Settings: Use a switch instead of a checkbox
Follows the Material Design scheme better
2019-10-11 02:30:45 +02:00
06824ccee3 Note: Setting the 'created' property should update the NoteData
We shouldn't just do it when saving the note, this way when viewing the
raw editor, the created field is show for new notes.
2019-10-11 02:18:34 +02:00
5b25fd56c1 Settings: Git Author Email: Mark keyboard type as email 2019-10-10 16:58:12 +02:00
8e5f0c84c7 NoteEditor: Disable autocorrect
For me, there are still some strange quirks and it hasn't been
completely disabled. Also, isn't there some way to just follow the
system default?
2019-10-10 16:57:23 +02:00
2eb83c16ff NoteEditor: Dispose of TextEditingController in the end
The docs say we should
2019-10-10 16:56:57 +02:00
83a0da9082 gj_common: Use cppcheck to catch potential errors 2019-10-10 13:37:36 +02:00
bf67c9cd06 Revert "Disable crashlytics until initialized"
This reverts commit 860a811568b74f50754377ce14520fe03e2d2f28.

I'm not convinced that this isn't disabling crashlytics completely. I'll
try this again, later.
2019-10-10 12:37:16 +02:00
edb1f88a0f ios Review: Allow it to work on ios9+
Also provide the app id so it works on any version!
2019-10-10 12:28:28 +02:00
51d2efaad9 ios - GitHostSetup: Add a back button on the top left
There is no way to exit the host setup otherwise. In Android, there is
the back button, but that doesn't exist in ios. This took me way too
long to implement, and even now, I'm not convinced that the button looks
right.
2019-10-09 21:50:24 +02:00
57eb00a583 ios Feedback: Spaces must be properly encoded
We ideally should use the same method in both the bug report and
feedback, however, bug reports require an attachment, and then plugin
being used doesn't work if an email client is not installed.

https://github.com/flutter/flutter/issues/10032
2019-10-09 20:49:37 +02:00
94df2853c0 Note Viewer: Delete Dialog: Use more standard Text
After reading the Material Design Guide, I feel some more standard text
such as "Delete" / "Cancel" is better vs "Delete It" / "Keep It".
2019-10-09 16:50:04 +02:00
48b3cf6ba7 NoteEditor: Allow switching between Raw and Rich Editor 2019-10-09 16:46:17 +02:00
5ba7713494 ios: Add fastlane gemfile 2019-10-09 00:28:50 +02:00
a1fee440ba Add some docs for ios 2019-10-09 00:27:00 +02:00
df96467353 UndoSnackbar: Pass the StateContainer down
Not sure why fetching the StateContainer from the context seems to be
failing and throwing an exception.
2019-10-09 00:22:17 +02:00
7f557d3d3e Use Flushbar for Snackbars
The flutter default Snackbars are a major PITA to use as they require a
Scaffold, additionaly, they will not be shown if the parent Scaffold is
destroyed, which is the case when deleting a note and returning to the
main screen.
2019-10-09 00:12:58 +02:00
860a811568 Disable crashlytics until initialized 2019-10-08 23:36:29 +02:00
73715e3417 Crashlytics: Disable in debug builds
This way no matter what, a debug build will not report to crashlytics.
As it currently did.
2019-10-08 23:35:39 +02:00
0a858756c8 Analytics: Log the settings
This way we can adapt the settings in the future to use the most
commonly changed items first.

We're not logging the 'gitAuthor' or 'gitEmail' as that includes
personally identifyable info.
2019-10-08 23:10:37 +02:00
992e2042a7 Ignore another network message 2019-10-08 16:00:56 +02:00
d1a2fed734 gj_common: Avoid returning a NULL shorthand
It's not what we expect and was causing crashes on some repos.
2019-10-08 15:40:36 +02:00
678bf7b879 Fix warning 2019-10-08 14:55:00 +02:00