Skip to content

Comments

v1.30 (44)#196

Merged
bailuk merged 109 commits intomasterfrom
stage
Feb 20, 2026
Merged

v1.30 (44)#196
bailuk merged 109 commits intomasterfrom
stage

Conversation

@bailuk
Copy link
Owner

@bailuk bailuk commented Feb 16, 2026

  • GTK + Android: Add beacon client for sharing live GPS locations (https://github.com/MaxKellermann/beacon)
  • GTK + Android: Add support for Nominatim reverse
  • GTK + Android: Add support for brouter API
  • GTK: Add file menu for detail view
  • Android: New overlay menu in navigation (bottom) bar
  • Android: Fix handling of unpaired power meters
  • Android: Fix sensor scanning state handling for internal and Ble sensors.
  • Lib: Use two decimal precision for average speed
  • Lib: Fix issue with failed tile downloads
  • CI: Update jupiter to 5.14.0
  • CI: Update acra to 5.13.1
  • CI: Update guava to 33.5.0
  • CI: Update gson to 2.13.2
  • CI: Android compileSdk=36
  • CI: Update gradle shadow plugin to version 9.2.2
  • CI: Update gradle wrapper to 9.1.0
  • CI: Update kotlin to 2.2.20
  • CI: Update android gradle plugin to 8.13.0
  • CI: Update H2 Database Engine to 2.4.240
  • CI: Update Java compatibility from 11 to 17
  • CI: Update GNOME Runtime to 49

bailuk and others added 30 commits October 19, 2025 22:48
Package installation breaks if the package lists in the container
image are outdated and the versions referenced therein have been
removed from the Ubuntu mirrors meanwhile.
The old URL leads to some strange unrelated website that wants to sell
something.
.github/workflows/build-on-ubuntu.yml: run "apt-get update"
build.gradle.kts: update gradleup.shadow URL
When I wrote commit 32c590f ("sensor/ble/CyclingPower:
support for cycle power meters"), I forgot to include 0x1818 in the
BleScanner filter, and thus only power meters could ever work that
were paired.

This fix allows using power meters that are not paired.
Commit 2148e79 ("Sensor Java to Kotlin") switched from using
SensorListItem.setState() to assigning the `state` field directly.
This however skips the isNextStateValid() check, unconditionally
leaving the state `SCANNING`.

This however broke BLE sensors: the next
BleSensor.onCharacteristicRead() call would then call
executeNextAndSetState() and setNextState().  With `isScanning==true`,
setNextState() would invoke close().

The simple fix is to revert to using setState().
Method setItem() changes `checkBox.isChecked` which invokes the
`setOnCheckedChangeListener` function.  This in turn can lead to
another setItem() call, which may lead to endless recursion (if AAT's
internal state is somehow inconsistent).

Let's avoid this completely by inhibiting the listener while setItem()
runs.
Add a `format` parameter to the SpeedDescription constructor,
defaulting to one decimal (like before).  Change the
`AverageSpeedDescription` constructor to explicitly pass a two-decimal
format object instead, because having some more accuracy on the
average speed helps me estimate how I perform at any time.
android/{Ble,Internal}Sensor: use SensorListItem.setState()
bailuk and others added 29 commits January 25, 2026 14:42
This replaces the hard-coded "2" and makes adding more "base" pages
easier.
My service for sharing live GPS locations, see
 https://github.com/MaxKellermann/beacon

A demo server is running on beacon.blarg.de; its IP address is
currently 138.201.185.127, and this is the default value.  There
should be a way to use a DNS resolver, but that's a task for another
day.
- Android: New overlay menu in navigation (bottom) bar
- Map Overlay Fixes
@bailuk bailuk merged commit 65812fc into master Feb 20, 2026
3 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants