Skip to content

Commit

Permalink
feat(parkings): make fav icon a proper button with splash
Browse files Browse the repository at this point in the history
  • Loading branch information
simon-the-shark committed Sep 4, 2024
1 parent 16d10d3 commit 93963c9
Show file tree
Hide file tree
Showing 2 changed files with 16 additions and 9 deletions.
17 changes: 10 additions & 7 deletions lib/features/parkings_view/widgets/parking_favourite.dart
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
import "package:flutter/material.dart";
import "package:flutter_riverpod/flutter_riverpod.dart";

import "../../../theme/app_theme.dart";
import "../../../theme/iparking_theme.dart";
import "../models/parking.dart";
import "../repository/local_fav_parking_repository.dart";
Expand All @@ -14,15 +15,17 @@ class FavouriteParkingWidget extends ConsumerWidget {
ref.watch(localFavParkingsRepositoryProvider(parking.id).notifier);
final isFavorite =
ref.watch(localFavParkingsRepositoryProvider(parking.id));
return GestureDetector(
onTap: favController.toggle,
child: isFavorite == null
return IconButton(
visualDensity: VisualDensity.compact,
onPressed: favController.toggle,
icon: isFavorite == null
? const FavouriteIcon(
icon: Icons.error,
)
: FavouriteIcon(
icon:
isFavorite ? Icons.favorite : Icons.favorite_border_outlined,
icon: isFavorite
? Icons.favorite_rounded
: Icons.favorite_border_outlined,
),
);
}
Expand All @@ -36,8 +39,8 @@ class FavouriteIcon extends StatelessWidget {
Widget build(BuildContext context) {
return Icon(
icon,
color: Colors.white,
size: 25,
color: context.colorTheme.whiteSoap,
size: 22,
shadows: iparkingShadows,
);
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -52,6 +52,11 @@ class ParkingWideTileCard extends StatelessWidget {
padding: ParkingsConfig.padding,
child: _RightColumn(parking, isActive: isActive),
),
Positioned(
top: 1,
right: 2,
child: FavouriteParkingWidget(parking),
),
],
),
),
Expand Down Expand Up @@ -118,9 +123,8 @@ class _RightColumn extends StatelessWidget {
Widget build(BuildContext context) {
return Column(
crossAxisAlignment: CrossAxisAlignment.end,
mainAxisAlignment: MainAxisAlignment.spaceBetween,
mainAxisAlignment: MainAxisAlignment.end,
children: [
FavouriteParkingWidget(parking),
Text(
parking.counterText,
style: isActive
Expand Down

0 comments on commit 93963c9

Please # to comment.