Skip to content

release 0.17.0#930

Merged
forrestguice merged 6 commits into
masterfrom
release-0.17.0
Apr 11, 2026
Merged

release 0.17.0#930
forrestguice merged 6 commits into
masterfrom
release-0.17.0

Conversation

@forrestguice

@forrestguice forrestguice commented Apr 8, 2026

Copy link
Copy Markdown
Owner
  • adds Material You app themes (api31+) (closes [Feature request] Material You support #635).
  • adds fancy digital clock widgets.
  • adds widget preview (and share action) to the widget configuration activity (closes configuration: widget preview w/ current settings #6).
  • adds custom events; shadow factor, day/night percent, moon elevation, and moon illumination (closes [Feature request] Islamic prayer times add-on #729, closes New custom event (Percentage of Daily Duration). #900).
  • adds world map projections; Mercator, Mercator equal-area, and Van der Grinten world maps (and widgets).
  • adds map location picker to the location dialog; choose coordinates from the world map.
  • adds seek time/date action to the sun, moon, and world map dialogs (closes [Feature request] go to a specific time #863).
  • adds seek bar to the sun dialog; tapping or dragging the lightmap or graph jumps to that time (closes [Feature request] SunPosition options improvements #826).
  • adds seek, seek dawn, seek dusk, and seek noon menus to the sun dialog; seek to twilight or custom events.
  • adds seek altitude and seek shadow length popups to the sun dialog; seek/manage custom events.
  • adds 10min, 15min, and 7d step sizes to the sun dialog, and 7d step size to the world map dialog.
  • adds solar noon and sun symbol options to the sun dialog; circle, cross, dot, or line.
  • adds sort places action to the places activity; sort by label (ascending, descending), or nearest (to app location).
  • improves the search places action; adds descriptive tags/icons to the default world places (closes [Feature request] Places #785).
  • enhances the add places dialog; adds gps menu, gps status views, reload agps, and average location actions (Getting GPS location takes very long and frequently fails #884).
  • adds permission android.permission.ACCESS_LOCATION_EXTRA_COMMANDS; required to reload agps data [PERMISSION].
  • adds last update location debug information to place settings; time of last update, location provider, accuracy, time elapsed, and number of satellites (closes Getting GPS location takes very long and frequently fails #884).
  • adds option to hide the location coordinates in the action bar.
  • adds option label (alternate) that displays alternate labels "dawn" and "dusk" in the main table.
  • adds snooze and snooze limit chips to the alarm edit dialog that allows setting these values per alarm.
  • fixes bug where alarm fade-in continues running after sound has stopped; fixes bug where alarm MediaPlayer resources aren't released.
  • adds permission android.permission.SCHEDULE_EXACT_ALARM (needed for alarm functionality) [permission].
  • adds permission android.permission.POST_NOTIFICATIONS (needed for alarm functionality) [permission].
  • adds permission suntimes.permission.ADDON (an experimental alternate to suntimes.permission.READ_CALCULATOR).
  • refactor; decouples core data classes from the Android api (Cross Platform Desktop App #388); moved into calculator and util Java libraries.
  • refactor; decouples UI classes from the Android Support Library; introduces Suntimes support library.
  • build; updates targetSdkVersion (28 -> 30) to Android 11, migrates the app to AndroidX, and replaces use of deprecated API (api30) (closes Crash Report #908).
  • build; adds production and nightly build flavors ("Nightly" Debug Builds #892).
  • build; adds legacy build flavor; assign android.targetVersion = 28 and android.useAndroidX = false in settings.gradle to build against the older Android Support Library.

129 (0.16.15) -> 130 (0.17.0)
@forrestguice forrestguice added this to the v0.17.0 milestone Apr 8, 2026
@forrestguice forrestguice merged commit 2962cb4 into master Apr 11, 2026
1 check passed
@forrestguice

Copy link
Copy Markdown
Owner Author

This changes the build a lot, so I hope there are no issues. 🤞
If there are I'm standing by to fix them.

ping @licaon-kter @linsui
I think the recipe will need an update (adds build flavors). The production flavor is the one that should be published.

@linsui

linsui commented Apr 11, 2026

Copy link
Copy Markdown

We had to use jdk 11 to build the app. It seems we can use jdk 17 now? Will you update to jdk 21?

@linsui

linsui commented Apr 11, 2026

Copy link
Copy Markdown

If this version is a big update you can write something for our TWIF. :) https://forum.f-droid.org/t/new-twif-submission-thread/23546/

@forrestguice

Copy link
Copy Markdown
Owner Author

Right, I understand jdk11 is going away very soon. This version builds with jdk17, but I plan to update to jdk21 in a later patch.

It is a big update, so I guess a twif entry is in order. I'm ambivalent though - I don't feel like I'm good at writing stuff like that and imagine spending the entire afternoon working on a three sentence paragraph. 😆 The update adds "material you", which I guess is the most visible change. It also updates the targetSdk and migrates to androidx; no visible changes there but probably the most consequential.

@linsui

linsui commented Apr 11, 2026

Copy link
Copy Markdown

Then I thought you just need to highlight the material you. :)

@elydpg

elydpg commented Apr 13, 2026

Copy link
Copy Markdown

This changes the build a lot, so I hope there are no issues. 🤞
If there are I'm standing by to fix them.

FYI the update deleted my widgets. Is this intentional / fixable? I know I can recreate them and I could have backed them up but it's probably still worth fixing

@elydpg

elydpg commented Apr 13, 2026

Copy link
Copy Markdown

Also how can I enable material you?

@elydpg

elydpg commented Apr 13, 2026

Copy link
Copy Markdown

Also also the moon phases widget 2×1 just doesn't work anymore

@forrestguice

forrestguice commented Apr 13, 2026

Copy link
Copy Markdown
Owner Author

Is this intentional

No. The widgets themselves are actually managed by your launcher. Nothing has fundamentally changed that would remove them. Which launcher are you using?

Also how can I enable material you?

Settings -> User Interface -> Appearance

Also also the moon phases widget 2×1 just doesn't work anymore

Please file a bug report.

@forrestguice

Copy link
Copy Markdown
Owner Author

@elydpg Confirmed that the 2x1 moon widget now displays "problem loading widget". I'll look into the reason for that asap. It would be better if problems were reported to the issue tracker though so I can manage them better.

@forrestguice

Copy link
Copy Markdown
Owner Author

FYI the update deleted my widgets. Is this intentional / fixable? I know I can recreate them and I could have backed them up but it's probably still worth fixing

@elydpg ugh, I'm very sorry about this. I believe I've discovered the cause and no, breaking everyone's widgets wasn't intentional :(

The code has undergone refactoring in an attempt to pay off accumulating technical debt. In particular the widget classes were reorganized into their own package (the path was changed). I believe this is the reason the widgets are suddenly gone from your launcher.

The configurations themselves are still there, so a backup should still export those settings to file, but I think its probably moot since there isn't a reliable way to restore the widgets themselves (managed by the launcher).

@elydpg

elydpg commented Apr 13, 2026

Copy link
Copy Markdown

Also how can I enable material you?

Settings -> User Interface -> Appearance

I don't see it?

Screenshot_20260413-210737.Suntimes.png

Perhaps I'm confused as it's only in the dynamic colours and not in the UI elements?

@forrestguice

Copy link
Copy Markdown
Owner Author

@elydpg It should be under "light theme" and "dark theme". That top spinner selects for always dark, always light, or system (switch between them).

@elydpg

elydpg commented Apr 13, 2026

Copy link
Copy Markdown

Hmm is it this then?

Screenshot_20260413-213050.Suntimes.png

@forrestguice

Copy link
Copy Markdown
Owner Author

Yeah. I guess I should rename the option so its more recognizable. "Material You" is referred to as "Monet" through the Android docs.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment