GrayPause 1.4: grayscale color breaks for Android
Timers that switch grayscale off and restore it on their own: presets and custom h/m/s timers, Quick Settings tile, launcher shortcuts, countdown notification, reboot recovery, and optional always-in-color apps via an accessibility service. WRITE_SECURE_SETTINGS is granted once via Shizuku or adb. Gradle project for F-Droid with fastlane metadata and a draft fdroiddata recipe; build.sh keeps the Gradle-free on-phone Termux build. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
parent
64aa7adc99
commit
5d7d84eaca
38 changed files with 2419 additions and 1 deletions
56
README.md
56
README.md
|
|
@ -1,2 +1,56 @@
|
|||
# graypause
|
||||
# GrayPause
|
||||
|
||||
Keep your Android phone in grayscale, and take short **color breaks** that end by
|
||||
themselves, so you never forget to switch grayscale back on.
|
||||
|
||||
<img src="fastlane/metadata/android/en-US/images/phoneScreenshots/1_main.jpg" width="240"> <img src="fastlane/metadata/android/en-US/images/phoneScreenshots/2_notification.jpg" width="240">
|
||||
|
||||
## Features
|
||||
|
||||
- One-tap timers (1/5/10/15/30 min by default), plus custom ones with hours, minutes
|
||||
and seconds. Long-press any timer to delete it.
|
||||
- **Quick Settings tile** "Color break": starts a break of the last length used; tap
|
||||
again to end it early.
|
||||
- **Launcher shortcuts**: long-press the app icon to start a timer directly.
|
||||
- **Countdown notification** with *Grayscale now* and *+5 min*.
|
||||
- **Color apps** (optional): apps like your gallery or camera are always shown in
|
||||
color. Uses an accessibility service that only sees which app is in front.
|
||||
- Reboot-safe: a running break is re-armed, or grayscale restored if time ran out.
|
||||
|
||||
No internet permission, no tracking, no dependencies beyond the Shizuku client library.
|
||||
|
||||
## Setup: the one permission
|
||||
|
||||
Grayscale is a secure system setting (`accessibility_display_daltonizer*`), so the app
|
||||
needs `WRITE_SECURE_SETTINGS`. Android has no switch for it in Settings; grant it once:
|
||||
|
||||
- **Shizuku**: start [Shizuku](https://shizuku.rikka.app/), open GrayPause, tap
|
||||
*Grant with Shizuku*. Shizuku can be stopped afterwards.
|
||||
- **adb**:
|
||||
```
|
||||
adb shell pm grant com.lpw.graypause android.permission.WRITE_SECURE_SETTINGS
|
||||
```
|
||||
|
||||
The grant survives reboots and app updates (not an uninstall).
|
||||
|
||||
## Building
|
||||
|
||||
Standard Gradle project (JDK 17+, Android SDK 36):
|
||||
|
||||
```
|
||||
gradle assembleRelease # or ./gradlew
|
||||
```
|
||||
|
||||
`build.sh` is an alternative Gradle-free debug build used to develop the app directly
|
||||
on a phone in Termux (native `aapt2`/`javac`/`apksigner`, `d8` from the SDK). It needs no
|
||||
Android Studio, and `tools/ZipAlign.java` stands in for `zipalign`.
|
||||
|
||||
## F-Droid
|
||||
|
||||
Store texts, icon and screenshots are in `fastlane/metadata/android/en-US/` (F-Droid
|
||||
reads them from the source tree). The draft fdroiddata recipe is
|
||||
`fdroid/com.lpw.graypause.yml`; releases are tagged `vX.Y`.
|
||||
|
||||
## License
|
||||
|
||||
GPL-3.0-or-later, see [LICENSE](LICENSE).
|
||||
|
|
|
|||
Loading…
Reference in a new issue