v1.2: fix rotation — use full updateWidget calls with currentRotation state instead of unreliable partiallyUpdateAppWidget

This commit is contained in:
2026-05-22 15:55:47 +00:00
parent fafa5a3bb7
commit d86ffabb98
2 changed files with 9 additions and 25 deletions
@@ -39,6 +39,7 @@ class ClaudeUsageWidget : AppWidgetProvider() {
companion object {
const val ACTION_REFRESH = "me.khodak.claudeusage.ACTION_REFRESH"
@Volatile internal var isRefreshing = false
@Volatile internal var currentRotation = 0f
fun updateWidget(context: Context, manager: AppWidgetManager, widgetId: Int) {
val prefs = PreferencesManager(context)
@@ -149,7 +150,7 @@ class ClaudeUsageWidget : AppWidgetProvider() {
if (status.isNotBlank()) status else if (updatedMs > 0) formatTime(updatedMs) else "")
v.setInt(R.id.btn_refresh, "setColorFilter",
if (isRefreshing) 0xFFCC785C.toInt() else 0xFF999999.toInt())
v.setFloat(R.id.btn_refresh, "setRotation", 0f)
v.setFloat(R.id.btn_refresh, "setRotation", currentRotation)
return v
}
@@ -231,7 +232,7 @@ class ClaudeUsageWidget : AppWidgetProvider() {
)
v.setInt(R.id.btn_refresh, "setColorFilter",
if (isRefreshing) 0xFFCC785C.toInt() else 0xFF999999.toInt())
v.setFloat(R.id.btn_refresh, "setRotation", 0f)
v.setFloat(R.id.btn_refresh, "setRotation", currentRotation)
return v
}