fix(programmer): move clock ticker watch to dashboard parent
NowWorkingCard was watching clockTickerProvider but received pre-computed Duration values from ProgrammerDashboard, which never rebuilt on ticks. Move ref.watch(clockTickerProvider) to ProgrammerDashboard.build() so the parent rebuilds every 30 s and passes fresh durations to the card. Remove the now-unused clockTickerProvider watch (and its import) from NowWorkingCard. Co-Authored-By: claude-flow <ruv@ruv.net>
This commit is contained in:
@@ -2,7 +2,6 @@ import 'package:flutter/material.dart';
|
||||
import 'package:flutter_riverpod/flutter_riverpod.dart';
|
||||
|
||||
import '../../../models/programmer_task.model.dart';
|
||||
import '../../../providers/programmer_day_data_provider.dart';
|
||||
import '../../../providers/programmer_tasks_provider.dart';
|
||||
import '../../../utils/programmer_task_ledger.dart';
|
||||
import '../../../widgets/m3_card.dart';
|
||||
@@ -37,9 +36,6 @@ class NowWorkingCard extends ConsumerWidget {
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context, WidgetRef ref) {
|
||||
// Subscribe to the clock so durations re-render every 30 s.
|
||||
ref.watch(clockTickerProvider);
|
||||
|
||||
return M3Card.elevated(
|
||||
child: Padding(
|
||||
padding: const EdgeInsets.all(16),
|
||||
|
||||
@@ -24,6 +24,9 @@ class ProgrammerDashboard extends ConsumerWidget {
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context, WidgetRef ref) {
|
||||
// Drive 30-second rebuilds so duration values stay fresh.
|
||||
ref.watch(clockTickerProvider);
|
||||
|
||||
final tasksAsync = ref.watch(programmerTasksProvider);
|
||||
final runStates = ref.watch(programmerRunStatesProvider);
|
||||
final todayKey = ref.watch(todayKeyProvider);
|
||||
|
||||
Reference in New Issue
Block a user