Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .github/workflows/release.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -175,7 +175,7 @@ jobs:
if: ${{ env.acra_id }}
continue-on-error: true
run: |
echo -n "See GitHub Actions" | curl -m 120 \
echo -n "See: ${{ github.server_url }}/${{ github.repository }}/actions/runs/${{ github.run_id }}" | curl -m 120 \
-H "Content-Type: text/plain" \
-u "${{ secrets.ACRARIUM_USER }}:${{ secrets.ACRARIUM_PASS }}" \
--data-binary @- \
Expand Down
2 changes: 1 addition & 1 deletion .github/yamllint.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -4,4 +4,4 @@ ignore-from-file: .gitignore

rules:
line-length:
max: 119
max: 120
3 changes: 2 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -304,10 +304,11 @@ You can also star this project on GitHub and support other related projects:

- [Django Files Android](https://github.com/django-files/android-client?tab=readme-ov-file#readme)
- [Zipline Android](https://github.com/cssnr/zipline-android?tab=readme-ov-file#readme)
- [NOAA Weather Android](https://github.com/cssnr/noaa-weather-android?tab=readme-ov-file#readme)
- [Remote Wallpaper Android](https://github.com/cssnr/remote-wallpaper-android?tab=readme-ov-file#readme)
- [NOAA Weather Android](https://github.com/cssnr/noaa-weather-android?tab=readme-ov-file#readme)
- [ParKing Android](https://github.com/cssnr/parking-android?tab=readme-ov-file#readme)
- [Todo List Android](https://github.com/cssnr/todolist-android?tab=readme-ov-file#readme)
- [Device Info Android](https://github.com/cssnr/device-info-android?tab=readme-ov-file#readme)
- [Tibs3DPrints Android](https://github.com/cssnr/tibs3dprints-android?tab=readme-ov-file#readme)

For a full list of current projects visit: [https://cssnr.github.io/](https://cssnr.github.io/)
2 changes: 1 addition & 1 deletion app/src/main/res/values/strings.xml
Original file line number Diff line number Diff line change
Expand Up @@ -60,7 +60,7 @@
</string-array>

<string-array name="parallax_width_entries">
<item>Not Limited</item>
<item>Not Limited (Default)</item>
<item>1.25x Screen Width</item>
<item>1.5x Screen Width</item>
<item>2.0x Screen Width</item>
Expand Down
10 changes: 10 additions & 0 deletions build.gradle.kts
Original file line number Diff line number Diff line change
@@ -1,4 +1,14 @@
// Top-level build file where you can add configuration options common to all sub-projects/modules.
buildscript {
// NOTE: Not sure if this is required or not...
//repositories {
// google()
// mavenCentral()
//}
dependencies {
classpath(libs.kotlin.gradle.plugin)
}
}
plugins {
alias(libs.plugins.android.application) apply false
//alias(libs.plugins.kotlin.android) apply false
Expand Down
98 changes: 74 additions & 24 deletions docs/usage.md
Original file line number Diff line number Diff line change
Expand Up @@ -81,39 +81,89 @@ seconds.**

## :lucide-settings: Settings

App Settings:
Settings control how and when wallpapers update, how the home screen widget looks, and give access
to app information and debugging tools.

- Update Interval
- Screens to Update (Home/Lock)
- Crop Wallpaper for Device
- Updates on Metered Connection
- Remove Background Restriction
### :lucide-cog: App Settings

**Widget Settings** - Opens a separate screen to customize the home screen widget. See
[Appearance](#appearance) and [Foreground Refresh](#foreground-refresh) below.

**Crop Wallpaper for Device** - When enabled (default), the image is scaled and center-cropped to
match your device's screen size. This is required for the system's parallax effect (the wallpaper
that shifts as you swipe between home screens) to work correctly. When disabled, the raw image is
handed to Android as-is.

**Limit Parallax Width** - Caps how much wider than the screen the wallpaper canvas can be (up to
2.5x). A smaller canvas leaves less of the image hidden off-screen, so more of it is visible during
parallax scrolling, at the cost of a larger center-crop. Only shown when **Crop Wallpaper for
Device** is enabled. Off by default.

**Screens to Update** - Controls where the wallpaper is applied: the home screen, the lock screen,
or both (default).

**Update Interval** - How often the wallpaper is refreshed in the background, from 15 minutes up to
weekly. The default is 1 hour. Selecting **Never Update** disables scheduled updates entirely, which
also disables **Updates on Metered Connection**.

**Updates on Metered Connection** - When enabled (default), background updates are allowed on
metered networks like mobile data. When disabled, updates only run on unmetered networks such as
Wi-Fi. Ignored while **Update Interval** is set to **Never Update**.

**Disable HTTP Cache** - A debugging option. When enabled, the app skips its normal conditional
request headers (ETag / Last-Modified) and re-downloads the full image on every update instead of
accepting a `304 Not Modified` response. Off by default.

**Remove Background Restriction** - Android may block the app's background work to save battery,
which delays wallpaper and widget updates. Tapping this requests an exemption from battery
optimizations. Once the permission is granted, the item shows _Permission Already Granted_ and can
no longer be tapped.

### :lucide-app-window: Widget Settings

These options style the home screen widget described in
[Appearance](#appearance) and [Foreground Refresh](#foreground-refresh).

**Text Color** - Sets the color of the widget's text and icons to white, black, or liberty.
White by default.

**Background Color** - Sets the color of the widget's background to white, black, or liberty.
Black by default.

**Background Opacity** - Controls how transparent the widget background is, from 0 (fully
transparent) to 100 (fully opaque). 35 by default.

**Show Screen Icons** - Toggles the Home/Lock screen icons on the widget, which indicate which
screen(s) were updated. On by default.

**Foreground Widget Refresh** - When enabled, the widget's refresh button runs the update through
an invisible foreground activity instead of a background broadcast. This makes the dynamic system
theme update immediately, but the home screen is non-interactive for the roughly 1-2 seconds the
update takes.

Widget Settings:
### :lucide-badge-info: App Information

- Text Color
- Background Color
- Background Opacity
- Show Screen Icons
- Foreground Widget Refresh
**Application Information** - Shows a dialog with the package name, version name, and version code,
plus links to the project website and GitHub repository.

App Information:
**Open Android Settings** - Opens the system's App Info page for Remote Wallpaper, where you can
manage permissions, storage, notifications, and other system-level settings.

- Application Information
- Open Android Settings
- Send Feedback
**Send Feedback** - Opens a dialog with a text field for sending suggestions or bug reports directly
to the developer. The item is disabled after feedback has been sent.

Debugging:
### :lucide-activity: Debugging

- Enable Crash Reporting
- Enable Application Logs
- View Logs
**Enable Crash Reporting** - When enabled (default), an anonymized crash report is sent automatically
after an unhandled crash. See [Crash Reporting](#crash-reporting) below for details on what is
collected.

Application Logs:
**Enable Application Logs** - When enabled (default), the app keeps a local log of wallpaper updates,
scheduled work, and widget refreshes for debugging purposes. Logs are stored on-device only and
entries older than 7 days are purged automatically.

- Wallpaper updates, scheduled work, and widget refreshes
- Entries older than 7 days are purged automatically
- Copy, Share, or Delete the logs from the logs page
**View Logs** - Opens the logs page where the recorded entries can be viewed, copied, shared, or
deleted.

### :lucide-bug: Crash Reporting

Expand Down
4 changes: 3 additions & 1 deletion gradle/libs.versions.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
[versions]
agp = "9.4.1"
# kotlin = "2.4.10"
kotlin = "2.4.20"
ksp = "2.3.12"
coreKtx = "1.19.1"
# coreSplashscreen = "1.2.0"
Expand Down Expand Up @@ -28,7 +29,7 @@ retrofit = "3.0.0"
moshiKotlinCodegen = "1.15.2"
photoview = "1.0.3"
konfettiXml = "2.0.5"
acra = "5.13.1"
acra = "5.14.2"
# taptargetview = "1.15.0"

[libraries]
Expand Down Expand Up @@ -62,6 +63,7 @@ photoview = { group = "io.getstream", name = "photoview", version.ref = "photovi
konfetti-xml = { group = "nl.dionsegijn", name = "konfetti-xml", version.ref = "konfettiXml" }
acra-http = { group = "ch.acra", name = "acra-http", version.ref = "acra" }
acra-toast = { group = "ch.acra", name = "acra-toast", version.ref = "acra" }
kotlin-gradle-plugin = { module = "org.jetbrains.kotlin:kotlin-gradle-plugin", version.ref = "kotlin" }
# taptargetview = { group = "com.getkeepsafe.taptargetview", name = "taptargetview", version.ref = "taptargetview" }

[plugins]
Expand Down
Loading