Commit graph

254 commits

Author SHA1 Message Date
7ed94aebf4
Remove padding from markdown editor and pre-render preview 2024-05-05 23:06:27 -06:00
c7f44e2b81
Fix link to crashlytics in privacy policy 2024-05-05 23:01:47 -06:00
c86d2c2f6a
Improve ergonomics of editor:
- Show indicator in title for when file has unsaved changes
- Fix issues with scrolling on preview
  - Default to disable locked swiping between tabs
  - Disable gestures on navigation drawer
 - Fix text selection and typing in editor
2024-05-05 19:44:36 -06:00
208e0a1a6f
Use MD4C to convert markdown to HTML 2024-05-04 10:37:33 -06:00
37f0b8bae8 Remove Plausible 2024-02-22 22:14:16 -07:00
ccc4299d10 Fix missing import in build.gradle.kts 2024-02-15 16:35:23 -07:00
e0d43d5154 Fix tests 2024-02-15 16:35:23 -07:00
a6616550dd Fix cropping on splash screen icon 2024-02-15 16:35:23 -07:00
a48f243e48 Improve widescreen layout for large devices 2024-02-15 16:35:23 -07:00
6acacf5edb Limit file titles to one line in toolbar 2024-02-15 16:35:23 -07:00
a35aa62399 Add extra padding to text field when keyboard is open
This allows users to be able to scroll all the way to the bottom of long documents without the keyboard obscuring the text
2024-02-15 16:35:23 -07:00
f891d3635d Hide keyboard when switching to preview 2024-02-15 16:35:23 -07:00
b706f5b5eb Remove AndDown code 2024-02-15 16:35:23 -07:00
32b4518bf7 Use javascript markdown engine 2024-02-15 16:35:23 -07:00
c2cc9fbd1c Add tests for MarkdownViewModel#load 2024-02-15 16:35:23 -07:00
ae5b13dfd0 Finish compose migration and remove unnecessary assets/code 2024-02-15 16:35:23 -07:00
493444aaab Implement Readability Highlighting in compose
This could still use some performance tweaks to make it run a bit better but at least it works
2024-02-15 16:35:23 -07:00
c7e54f21d9 Migrate some more to Jetpack Compose + Material3 2024-02-15 16:35:23 -07:00
643345493e Migrate to Jetpack Compose + Material3 2024-02-15 16:35:23 -07:00
8b7d83c6ae Fix UI tests 2023-12-15 19:54:40 -07:00
f69bf81630
Implement semi-automated releases
This still requires manually running the gradle task but the next step will be getting a GitHub workflow to perform the release whenever a new tag is pushed
2023-09-28 20:15:38 -06:00
fe2f36f06a Add support for themed icon 2023-03-28 06:34:40 -06:00
c5355d1565 Skip permissions checking for saving and loading files
At some point I refactored to an API that doesn't require any permissions at all but never removed the permissions check. This corrects that
2023-03-27 20:23:28 -06:00
13bfe236a3
Convert .gradle files to gradle.kts 2023-01-29 20:41:15 -07:00
b9bc147bde
Bump dependency versions 2023-01-29 20:10:53 -07:00
c54f6c00ac
Disable Plausible for debug builds 2023-01-27 18:15:01 -07:00
5fe4942d84
Bump AGP 2023-01-27 18:13:53 -07:00
b8bbd267c7 Track app build info in plausible 2022-11-03 09:15:52 -06:00
40e8326d14 Drop Samsung builds
I haven't updated the app in the Galaxy store for years anyways, and it probably doesn't have any active users.
2022-11-03 07:06:09 -06:00
b231a56c9a Fix tests 2022-11-03 06:57:18 -06:00
47dd47aa7e Use snapshot release of plausible-android 2022-11-03 06:10:54 -06:00
5af4d2028f Replace Firebase analytics with Plausible 2022-10-29 22:03:39 -06:00
6ac4c94937 Bump version for release 2022-10-23 23:48:54 -06:00
d0c61bea52 Update dependencies and target sdk 2022-10-23 23:45:28 -06:00
3108114b60 Improve analytics
- Automatic page view tracking wasn't helpful since it was based on the Activities viewed, and SimpleMarkdown is a single-Activity app, so page views are now tracked manually
- User preferences are now reported so I can remove preferences that aren't used and focus my time on features that are actively used
- Opting out of crash reports is no longer possible. I need crash reports to be able to improve the app. It would also simplify the code a bit to not need to take that into account. Existing opt-outs will be respected but moving forward, new users will need to download the app from Fdroid if they'd like to avoid interactions with Google.
2022-10-23 23:44:02 -06:00
c315439763 Update dependencies 2021-06-27 19:35:51 -06:00
17d1bd28c5 Remove Billing permission from free variant 2021-06-27 10:46:27 -06:00
89d957c2d0 Bump version for release
Nothing new here, just a minor fix for F-Droid
2021-03-12 15:53:00 -07:00
94cdb70da7 Fix free flavor builds 2021-03-12 15:53:00 -07:00
62720ddd05 Bump version for release 2021-03-12 15:42:51 -07:00
50d7622172 Consolidate autosave URI persistence management 2021-02-21 18:32:53 -07:00
1522806e62 Prevent save/discard dialog from appearing when file contents haven't changed after loading 2021-02-21 17:57:41 -07:00
c2be2274e8 Prevent autosave when manual save is in progress 2021-02-21 17:56:53 -07:00
260c49d8d5 Fix PersistentTree logging to append 2021-02-21 17:29:02 -07:00
31e81f31b4 Fix URI logging in ViewModel 2021-02-21 17:14:02 -07:00
14dc55433a Use Timber for logging 2021-02-21 14:18:37 -07:00
96e7b7c6b3 Fix potential memory leak in ReviewHelper
There was a static reference to the currentActivity that was unnecessary
2021-02-21 14:18:36 -07:00
eb756e8525 Remove manual CoroutineScope implementations 2021-02-21 14:18:36 -07:00
b056e779e0 Grant WRITE_EXTERNAL_STORAGE permission for UI tests
The absence of this was causing the tests to fail on Firebase.
2021-02-20 22:23:58 -07:00
67bf1626a0 Run UI tests on API 29
For some reason running the tests on API 30 fails with the below exception. Interestingly enough the tests run just fine on my local API 30 emulator.

java.lang.RuntimeException: Exception thrown in onCreate() of ComponentInfo{com.wbrawner.simplemarkdown.test/androidx.test.runner.AndroidJUnitRunner}: java.lang.IllegalStateException: Cannot connect to androidx.test.orchestrator.OrchestratorService
     FATAL EXCEPTION: main
Process: com.wbrawner.simplemarkdown, PID: 21960
java.lang.RuntimeException: Exception thrown in onCreate() of ComponentInfo{com.wbrawner.simplemarkdown.test/androidx.test.runner.AndroidJUnitRunner}: java.lang.IllegalStateException: Cannot connect to androidx.test.orchestrator.OrchestratorService
	at android.app.ActivityThread.handleBindApplication(ActivityThread.java:6709)
	at android.app.ActivityThread.access$1300(ActivityThread.java:237)
	at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1913)
	at android.os.Handler.dispatchMessage(Handler.java:106)
	at android.os.Looper.loop(Looper.java:223)
	at android.app.ActivityThread.main(ActivityThread.java:7656)
	at java.lang.reflect.Method.invoke(Native Method)
	at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:592)
	at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:947)
Caused by: java.lang.IllegalStateException: Cannot connect to androidx.test.orchestrator.OrchestratorService
	at androidx.test.internal.events.client.TestEventServiceConnectionBase.connect(TestEventServiceConnectionBase.java:91)
	at androidx.test.internal.events.client.TestEventClient.connect(TestEventClient.java:125)
	at androidx.test.runner.AndroidJUnitRunner.isOrchestratorServiceProvided(AndroidJUnitRunner.java:347)
	at androidx.test.runner.AndroidJUnitRunner.onCreate(AndroidJUnitRunner.java:319)
	at android.app.ActivityThread.handleBindApplication(ActivityThread.java:6704)
	... 8 more
2021-02-20 22:01:43 -07:00