Same anti-pattern that #16 fixed in lib/widgets/lines_panel_v2.dart has reappeared in lib/pages/blender/blender_lines_panel.dart, which is now the active editor under Blender Mode.
dispose() calls a commit helper that calls context.read() directly, guarded only by mounted (which doesn't prevent "Looking up a deactivated widget's ancestor is unsafe"):
another State's dispose() (~line 601) -> _commitWidth()/_commitPadding() -> _update() (line 663) -> context.read
Fix the same way #16 was fixed: cache the dependency earlier (initState/didChangeDependencies) instead of looking it up in dispose.
Acceptance: no assertion when rapidly opening/closing the panel or switching tools.
Same anti-pattern that #16 fixed in lib/widgets/lines_panel_v2.dart has reappeared in lib/pages/blender/blender_lines_panel.dart, which is now the active editor under Blender Mode.
dispose() calls a commit helper that calls context.read<MapDataProvider>() directly, guarded only by `mounted` (which doesn't prevent "Looking up a deactivated widget's ancestor is unsafe"):
- _ActiveLineNameField.dispose() (~line 444) -> _commit() (line 457) -> context.read
- - another State's dispose() (~line 601) -> _commitWidth()/_commitPadding() -> _update() (line 663) -> context.read
Fix the same way #16 was fixed: cache the dependency earlier (initState/didChangeDependencies) instead of looking it up in dispose.
Acceptance: no assertion when rapidly opening/closing the panel or switching tools.
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Same anti-pattern that #16 fixed in lib/widgets/lines_panel_v2.dart has reappeared in lib/pages/blender/blender_lines_panel.dart, which is now the active editor under Blender Mode.
dispose() calls a commit helper that calls context.read() directly, guarded only by
mounted(which doesn't prevent "Looking up a deactivated widget's ancestor is unsafe"):Fix the same way #16 was fixed: cache the dependency earlier (initState/didChangeDependencies) instead of looking it up in dispose.
Acceptance: no assertion when rapidly opening/closing the panel or switching tools.