import 'package:flutter/material.dart'; import 'package:flutter/services.dart'; import 'package:flutter_bloc/flutter_bloc.dart'; import 'package:syncrow_app/features/devices/bloc/devices_cubit.dart'; import 'package:syncrow_app/features/devices/model/device_model.dart'; import 'package:syncrow_app/features/devices/view/widgets/ACs/ac_interface_controls.dart'; import 'package:syncrow_app/features/devices/view/widgets/ACs/ac_interface_temp_unit.dart'; import 'package:syncrow_app/features/shared_widgets/text_widgets/body_large.dart'; import 'package:syncrow_app/generated/assets.dart'; import 'package:syncrow_app/utils/resource_manager/color_manager.dart'; import 'package:syncrow_app/utils/resource_manager/constants.dart'; import 'package:syncrow_app/utils/resource_manager/font_manager.dart'; class AcInterface extends StatelessWidget { const AcInterface({super.key, required this.ac}); final DeviceModel ac; @override Widget build(BuildContext context) { return AnnotatedRegion( value: SystemUiOverlayStyle( statusBarColor: ColorsManager.primaryColor.withOpacity(0.5), statusBarIconBrightness: Brightness.light, ), child: SafeArea( child: BlocConsumer( listener: (context, state) { if (state is DeviceControlError) { // ScaffoldMessenger.of(context).showSnackBar( // SnackBar( // content: Text(state.errorMsg), // ), // ); } }, builder: (context, state) { return Scaffold( backgroundColor: ColorsManager.backgroundColor, extendBodyBehindAppBar: true, extendBody: true, appBar: AppBar( backgroundColor: Colors.transparent, centerTitle: true, title: BodyLarge( text: ac.name ?? "", fontColor: ColorsManager.primaryColor, fontWeight: FontsManager.bold, ), ), body: Container( width: MediaQuery.sizeOf(context).width, height: MediaQuery.sizeOf(context).height, decoration: const BoxDecoration( image: DecorationImage( image: AssetImage( Assets.assetsImagesBackground, ), fit: BoxFit.cover, opacity: 0.4, ), ), child: Padding( padding: EdgeInsets.only( top: Constants.appBarHeight, left: Constants.defaultPadding, right: Constants.defaultPadding, ), child: SingleChildScrollView( child: Column( crossAxisAlignment: CrossAxisAlignment.stretch, children: [ ConstrainedBox( constraints: const BoxConstraints( maxHeight: 380, ), child: AcInterfaceTempUnit( acDevice: ac, ), ), const SizedBox( height: 10, ), ConstrainedBox( constraints: const BoxConstraints( maxHeight: 130, ), child: AcInterfaceControls( deviceModel: ac, ), ), ], ), ), ), ), ); }, ), ), ); } }