#240 smaller thumbnail icons to fit 5 on a side

This commit is contained in:
Thibault Deckers 2022-05-23 09:27:30 +09:00
parent 13bac7937b
commit 25019f8357
2 changed files with 6 additions and 2 deletions

View file

@ -1,6 +1,7 @@
import 'dart:math';
import 'package:aves/model/settings/settings.dart';
import 'package:aves/widgets/common/identity/aves_icons.dart';
import 'package:flutter/material.dart';
import 'package:provider/provider.dart';
@ -21,7 +22,8 @@ class GridTheme extends StatelessWidget {
Widget build(BuildContext context) {
return ProxyProvider2<Settings, MediaQueryData, GridThemeData>(
update: (context, settings, mq, previous) {
var iconSize = min(24.0, (extent / 5)).roundToDouble();
final margin = OverlayIcon.defaultMargin.vertical;
var iconSize = min(24.0, ((extent - margin) / 5).floorToDouble() - margin);
final fontSize = (iconSize * .7).floorToDouble();
iconSize *= mq.textScaleFactor;
final highlightBorderWidth = extent * .1;

View file

@ -222,13 +222,15 @@ class OverlayIcon extends StatelessWidget {
final EdgeInsetsGeometry margin;
final Offset? relativeOffset;
static const defaultMargin = EdgeInsets.only(left: 1, right: 1, bottom: 1);
const OverlayIcon({
super.key,
required this.icon,
this.iconScale = 1,
this.text,
// default margin for multiple icons in a `Column`
this.margin = const EdgeInsets.only(left: 1, right: 1, bottom: 1),
this.margin = defaultMargin,
this.relativeOffset,
});