fix giant toilet

This commit is contained in:
Christien Rioux 2025-05-27 19:35:36 -05:00
parent 5a6b57e8ec
commit b8eca1161e
2 changed files with 14 additions and 10 deletions

View file

@ -103,14 +103,14 @@ class _EditProfileFormState extends State<EditProfileForm> {
labelText: translate('account.form_availability'), labelText: translate('account.form_availability'),
hintText: translate('account.empty_busy_message')), hintText: translate('account.empty_busy_message')),
items: availabilities items: availabilities
.map((x) => DropdownMenuItem<proto.Availability>( .map((availability) => DropdownMenuItem<proto.Availability>(
value: x, value: availability,
child: Row(mainAxisSize: MainAxisSize.min, children: [ child: Row(mainAxisSize: MainAxisSize.min, children: [
AvailabilityWidget.availabilityIcon( AvailabilityWidget.availabilityIcon(
x, scale.primaryScale.appText), context, availability, scale.primaryScale.appText),
Text(x == proto.Availability.AVAILABILITY_OFFLINE Text(availability == proto.Availability.AVAILABILITY_OFFLINE
? translate('availability.always_show_offline') ? translate('availability.always_show_offline')
: AvailabilityWidget.availabilityName(x)) : AvailabilityWidget.availabilityName(availability))
.paddingLTRB(8.scaled(context), 0, 0, 0), .paddingLTRB(8.scaled(context), 0, 0, 0),
]))) ])))
.toList(), .toList(),

View file

@ -4,6 +4,7 @@ import 'package:flutter_svg/flutter_svg.dart';
import 'package:flutter_translate/flutter_translate.dart'; import 'package:flutter_translate/flutter_translate.dart';
import '../../proto/proto.dart' as proto; import '../../proto/proto.dart' as proto;
import '../../theme/theme.dart';
class AvailabilityWidget extends StatelessWidget { class AvailabilityWidget extends StatelessWidget {
const AvailabilityWidget( const AvailabilityWidget(
@ -13,6 +14,7 @@ class AvailabilityWidget extends StatelessWidget {
super.key}); super.key});
static Widget availabilityIcon( static Widget availabilityIcon(
BuildContext context,
proto.Availability availability, proto.Availability availability,
Color color, Color color,
) { ) {
@ -20,15 +22,17 @@ class AvailabilityWidget extends StatelessWidget {
switch (availability) { switch (availability) {
case proto.Availability.AVAILABILITY_AWAY: case proto.Availability.AVAILABILITY_AWAY:
icon = SvgPicture.asset('assets/images/toilet.svg', icon = SvgPicture.asset('assets/images/toilet.svg',
width: 24.scaled(context),
height: 24.scaled(context),
colorFilter: ColorFilter.mode(color, BlendMode.srcATop)); colorFilter: ColorFilter.mode(color, BlendMode.srcATop));
case proto.Availability.AVAILABILITY_BUSY: case proto.Availability.AVAILABILITY_BUSY:
icon = const Icon(Icons.event_busy, applyTextScaling: true); icon = Icon(size: 24.scaled(context), Icons.event_busy);
case proto.Availability.AVAILABILITY_FREE: case proto.Availability.AVAILABILITY_FREE:
icon = const Icon(Icons.event_available, applyTextScaling: true); icon = Icon(size: 24.scaled(context), Icons.event_available);
case proto.Availability.AVAILABILITY_OFFLINE: case proto.Availability.AVAILABILITY_OFFLINE:
icon = const Icon(Icons.cloud_off, applyTextScaling: true); icon = Icon(size: 24.scaled(context), Icons.cloud_off);
case proto.Availability.AVAILABILITY_UNSPECIFIED: case proto.Availability.AVAILABILITY_UNSPECIFIED:
icon = const Icon(Icons.question_mark, applyTextScaling: true); icon = Icon(size: 24.scaled(context), Icons.question_mark);
} }
return icon; return icon;
} }
@ -56,7 +60,7 @@ class AvailabilityWidget extends StatelessWidget {
final textTheme = theme.textTheme; final textTheme = theme.textTheme;
final name = availabilityName(availability); final name = availabilityName(availability);
final icon = availabilityIcon(availability, color); final icon = availabilityIcon(context, availability, color);
return vertical return vertical
? Column(mainAxisSize: MainAxisSize.min, children: [ ? Column(mainAxisSize: MainAxisSize.min, children: [