diff options
| author | Paul Buetow <paul@buetow.org> | 2026-05-08 00:05:39 +0300 |
|---|---|---|
| committer | Paul Buetow <paul@buetow.org> | 2026-05-08 00:05:39 +0300 |
| commit | 3e4bacb7b939b1de98a2fb07115f638750637357 (patch) | |
| tree | 0897a6854d1c3ca3b1d0252657e992abbba061ba /lib/services/preferences.dart | |
| parent | 665b150727ee7259e398d38d1f6bc51b4c2d4a1c (diff) | |
Rewrite as Flutter app and rename to Quicklogmain
Drop the Go/Fyne implementation and replace it with a native Flutter app
targeting Android (primary) and Linux desktop (development). Rename
quicklogger -> quicklog throughout (project, applicationId, MethodChannel,
cache filename, AppBar title, Linux binary).
Storage on Android moves to /Android/data/org.buetow.quicklog/files/ so
MANAGE_EXTERNAL_STORAGE is no longer required. Share-intent receive is
preserved via a Kotlin ShareActivity that writes shared text to the app
cache, which Dart reads through a MethodChannel on app resume; MainActivity
also accepts SEND directly so launchers that prefer the main target work.
New since the Fyne version: an entry browser screen with read-only viewer
and long-press delete.
Cross-compiling to Android ARM from amd64 Linux no longer needs Docker /
fyne-cross / NDK -- flutter build apk emits ARM binaries directly.
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
Diffstat (limited to 'lib/services/preferences.dart')
| -rw-r--r-- | lib/services/preferences.dart | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/lib/services/preferences.dart b/lib/services/preferences.dart new file mode 100644 index 0000000..dbe261a --- /dev/null +++ b/lib/services/preferences.dart @@ -0,0 +1,30 @@ +import 'package:shared_preferences/shared_preferences.dart'; + +import 'storage.dart'; + +const _kDirectory = 'Directory'; +const _kAutoLogSharedText = 'AutoLogSharedText'; + +class PreferencesService { + Future<String> directory() async { + final prefs = await SharedPreferences.getInstance(); + final stored = prefs.getString(_kDirectory); + if (stored != null && stored.isNotEmpty) return stored; + return defaultLogDirectory(); + } + + Future<bool> autoLogSharedText() async { + final prefs = await SharedPreferences.getInstance(); + return prefs.getBool(_kAutoLogSharedText) ?? false; + } + + Future<void> setDirectory(String value) async { + final prefs = await SharedPreferences.getInstance(); + await prefs.setString(_kDirectory, value); + } + + Future<void> setAutoLogSharedText(bool value) async { + final prefs = await SharedPreferences.getInstance(); + await prefs.setBool(_kAutoLogSharedText, value); + } +} |
