Refactor screen titles to use bloc device info

This commit is contained in:
mohammad
2025-05-19 11:04:59 +03:00
parent c76995fbb8
commit 7a19291088
4 changed files with 458 additions and 410 deletions

View File

@ -29,7 +29,7 @@ class SosScreen extends StatelessWidget {
builder: (context, state) {
final sensor = BlocProvider.of<SosBloc>(context);
return DefaultScaffold(
title: device?.name,
title: sensor.deviceInfo.name,
actions: [
InkWell(
onTap: () async {
@ -38,7 +38,7 @@ class SosScreen extends StatelessWidget {
builder: (context) => SettingsPage(device: device!),
),
);
if (val == null) {
if (val == null || val == true) {
sensor.add(SosInitialDeviseInfo());
sensor.add(const SosInitial());
}
@ -72,33 +72,38 @@ class SosScreen extends StatelessWidget {
Expanded(
flex: 4,
child: InkWell(
overlayColor:
WidgetStateProperty.all(Colors.transparent),
overlayColor: WidgetStateProperty.all(
Colors.transparent),
onTap: () {
// Add functionality for the main SOS button here
},
child: Row(
mainAxisAlignment: MainAxisAlignment.center,
crossAxisAlignment: CrossAxisAlignment.center,
crossAxisAlignment:
CrossAxisAlignment.center,
children: [
Container(
decoration: BoxDecoration(
borderRadius: BorderRadius.circular(890),
borderRadius:
BorderRadius.circular(890),
boxShadow: [
BoxShadow(
color: Colors.white.withOpacity(0.1),
color:
Colors.white.withOpacity(0.1),
blurRadius: 24,
offset: const Offset(-5, -5),
blurStyle: BlurStyle.outer,
),
BoxShadow(
color: Colors.black.withOpacity(0.11),
color: Colors.black
.withOpacity(0.11),
blurRadius: 25,
offset: const Offset(5, 5),
blurStyle: BlurStyle.outer,
),
BoxShadow(
color: Colors.black.withOpacity(0.13),
color: Colors.black
.withOpacity(0.13),
blurRadius: 30,
offset: const Offset(5, 5),
blurStyle: BlurStyle.inner,
@ -125,8 +130,9 @@ class SosScreen extends StatelessWidget {
onTap: () {
Navigator.of(context).push(
MaterialPageRoute(
builder: (context) => SosRecordsScreen(
sosId: device!.uuid!),
builder: (context) =>
SosRecordsScreen(
sosId: device!.uuid!),
),
);
},
@ -181,8 +187,8 @@ class SosScreen extends StatelessWidget {
maxHeight: 46,
maxWidth: 50,
),
child: SvgPicture.asset(
Assets.doorNotificationSetting),
child: SvgPicture.asset(Assets
.doorNotificationSetting),
),
const SizedBox(height: 15),
const Flexible(