The agenda widget loaded and sliced its data in the provideGlance preamble and captured it as a non-reactive local. updateAll() reliably recomposes a live Glance session but does not reliably re-run that preamble, so a range change was redrawn against the stale slice (intermittently — only when no session was alive did it pick up the new range). This is the same platform limitation the month widget already works around. Mirror that pattern: load the widest selectable window once, store the range in per-instance Glance state (AGENDA_RANGE_KEY), read it reactively via currentState, and slice in the composition. The settings setter writes the state into each instance and recomposes, so a range change now reflects via plain recomposition regardless of session lifecycle. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
20 lines
292 B
Markdown
20 lines
292 B
Markdown
---
|
|
name: Question
|
|
about: Ask how something works or get help using Calendula
|
|
title: ""
|
|
labels:
|
|
- question
|
|
---
|
|
|
|
### Your question
|
|
|
|
|
|
### What you've tried
|
|
<!-- so far, if anything -->
|
|
|
|
|
|
### Context
|
|
- Calendula version: <!-- Settings → bottom of the screen -->
|
|
- Android version:
|
|
- Device:
|