remove unused code and make a limitation for the nobody time picker

This commit is contained in:
mohammad
2025-04-13 14:55:55 +03:00
parent cb6d50d367
commit 9bf37243a6
3 changed files with 44 additions and 25 deletions

View File

@ -11,7 +11,7 @@ class AcStatusModel {
final bool childLock; final bool childLock;
final TempModes acMode; final TempModes acMode;
final FanSpeeds acFanSpeed; final FanSpeeds acFanSpeed;
late final int countdown1; final int countdown1;
AcStatusModel({ AcStatusModel({
required this.uuid, required this.uuid,

View File

@ -13,7 +13,7 @@ import 'package:syncrow_web/utils/constants/assets.dart';
import 'package:syncrow_web/utils/helpers/responsice_layout_helper/responsive_layout_helper.dart'; import 'package:syncrow_web/utils/helpers/responsice_layout_helper/responsive_layout_helper.dart';
class AcDeviceControlsView extends StatelessWidget with HelperResponsiveLayout { class AcDeviceControlsView extends StatelessWidget with HelperResponsiveLayout {
AcDeviceControlsView({super.key, required this.device}); const AcDeviceControlsView({super.key, required this.device});
final AllDevicesModel device; final AllDevicesModel device;

View File

@ -1,4 +1,3 @@
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:syncrow_web/utils/color_manager.dart'; import 'package:syncrow_web/utils/color_manager.dart';
@ -28,9 +27,12 @@ class _TimeWheelPickerState extends State<TimeWheelPicker> {
@override @override
void initState() { void initState() {
super.initState(); super.initState();
_hoursController = FixedExtentScrollController(initialItem: widget.initialHours); _hoursController =
_minutesController = FixedExtentScrollController(initialItem: widget.initialMinutes); FixedExtentScrollController(initialItem: widget.initialHours);
_secondsController = FixedExtentScrollController(initialItem: widget.initialSeconds); _minutesController =
FixedExtentScrollController(initialItem: widget.initialMinutes);
_secondsController =
FixedExtentScrollController(initialItem: widget.initialSeconds);
} }
@override @override
@ -47,6 +49,8 @@ class _TimeWheelPickerState extends State<TimeWheelPicker> {
} }
} }
@override @override
void dispose() { void dispose() {
_hoursController.dispose(); _hoursController.dispose();
@ -63,24 +67,26 @@ class _TimeWheelPickerState extends State<TimeWheelPicker> {
_buildPickerColumn( _buildPickerColumn(
label: 'h', label: 'h',
controller: _hoursController, controller: _hoursController,
itemCount: 24, itemCount: 3,
onChanged: (value) => _handleTimeChange( onChanged: (value) {
_handleTimeChange(
value, value,
_minutesController.selectedItem, _minutesController.selectedItem,
_secondsController.selectedItem, _secondsController.selectedItem,
), );
), }),
const SizedBox(width: 5), const SizedBox(width: 5),
_buildPickerColumn( _buildPickerColumn(
label: 'm', label: 'm',
controller: _minutesController, controller: _minutesController,
itemCount: 60, itemCount: 60,
onChanged: (value) => _handleTimeChange( onChanged: (value) {
_handleTimeChange(
_hoursController.selectedItem, _hoursController.selectedItem,
value, value,
_secondsController.selectedItem, _secondsController.selectedItem,
), );
), }),
const SizedBox(width: 5), const SizedBox(width: 5),
_buildPickerColumn( _buildPickerColumn(
label: 's', label: 's',
@ -97,6 +103,19 @@ class _TimeWheelPickerState extends State<TimeWheelPicker> {
} }
void _handleTimeChange(int hours, int minutes, int seconds) { void _handleTimeChange(int hours, int minutes, int seconds) {
int total = hours * 3600 + minutes * 60 + seconds;
if (total > 10000) {
hours = 2;
minutes = 46;
seconds = 40;
total = 10000;
WidgetsBinding.instance.addPostFrameCallback((_) {
_hoursController.jumpToItem(hours);
_minutesController.jumpToItem(minutes);
_secondsController.jumpToItem(seconds);
});
}
widget.onTimeChanged(hours, minutes, seconds); widget.onTimeChanged(hours, minutes, seconds);
} }