Skip to content

Xposed-Modules-Repo/eu.hxreborn.phdp

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 

Repository files navigation

Punch-hole Download Progress

Xposed module that displays download progress as an animated ring around the camera cutout.

Android CI Kotlin Android

Download progress animation

Features

  • Progress ring rendered around the camera cutout using the native DisplayCutout API
  • Customizable appearance: colors per state (active/completed/failed), arc thickness, opacity, and direction
  • Completion animations and optional haptic feedback
  • Active download counter badge
  • Battery saver-aware rendering
  • Built-in test mode for simulating states
  • Material 3 Expressive settings UI with Jetpack Compose

Requirements

  • Android 12 (API 31) or higher
  • LSPosed (JingMatrix fork recommended)
  • Pixel or AOSP-based ROM
  • Root access (optional, for Restart SystemUI in settings)
  • A phone with a punch-hole display

Installation

  1. Download the APK:

    Get it on IzzyOnDroid Get it on GitHub Get it on Obtainium

  2. Install and enable the module in LSPosed.

  3. Scope to com.android.systemui

  4. Restart SystemUI or reboot the device

The app includes a built-in Restart SystemUI option in the overflow menu. Magisk will prompt for permission; KernelSU/APatch require adding the app manually.

Build

git clone --recurse-submodules https://github.com/hxreborn/punch-hole-download-progress.git
cd punch-hole-download-progress
./gradlew buildLibxposed
./gradlew assembleRelease

Requires JDK 21 and Android SDK. Configure local.properties:

sdk.dir=/path/to/android/sdk

# Optional signing
RELEASE_STORE_FILE=<path/to/keystore.jks>
RELEASE_STORE_PASSWORD=<store_password>
RELEASE_KEY_ALIAS=<key_alias>
RELEASE_KEY_PASSWORD=<key_password>

Contributing

Pull requests welcome. Open an issue for bugs or feature requests.

License

GPLv3

This project is licensed under the GNU General Public License v3.0 – see the LICENSE file for details.