#68 thumbnail overlay: smaller icons & intra padding, icon color / size follows text color / scale factor
This commit is contained in:
parent
ff8a7b0688
commit
245085b3df
2 changed files with 12 additions and 6 deletions
|
@ -18,10 +18,11 @@ class GridTheme extends StatelessWidget {
|
||||||
|
|
||||||
@override
|
@override
|
||||||
Widget build(BuildContext context) {
|
Widget build(BuildContext context) {
|
||||||
return ProxyProvider<Settings, GridThemeData>(
|
return ProxyProvider2<Settings, MediaQueryData, GridThemeData>(
|
||||||
update: (_, settings, __) {
|
update: (context, settings, mq, previous) {
|
||||||
final iconSize = min(28.0, (extent / 4)).roundToDouble();
|
var iconSize = min(24.0, (extent / 5)).roundToDouble();
|
||||||
final fontSize = (iconSize / 2).floorToDouble();
|
final fontSize = (iconSize * .7).floorToDouble();
|
||||||
|
iconSize *= mq.textScaleFactor;
|
||||||
final highlightBorderWidth = extent * .1;
|
final highlightBorderWidth = extent * .1;
|
||||||
return GridThemeData(
|
return GridThemeData(
|
||||||
iconSize: iconSize,
|
iconSize: iconSize,
|
||||||
|
|
|
@ -158,7 +158,12 @@ class OverlayIcon extends StatelessWidget {
|
||||||
@override
|
@override
|
||||||
Widget build(BuildContext context) {
|
Widget build(BuildContext context) {
|
||||||
final size = context.select<GridThemeData, double>((t) => t.iconSize);
|
final size = context.select<GridThemeData, double>((t) => t.iconSize);
|
||||||
final iconChild = Icon(icon, size: size);
|
final iconChild = Icon(
|
||||||
|
icon,
|
||||||
|
size: size,
|
||||||
|
// consistent with the color used for the text next to it
|
||||||
|
color: DefaultTextStyle.of(context).style.color,
|
||||||
|
);
|
||||||
final iconBox = SizedBox(
|
final iconBox = SizedBox(
|
||||||
width: size,
|
width: size,
|
||||||
height: size,
|
height: size,
|
||||||
|
@ -172,7 +177,7 @@ class OverlayIcon extends StatelessWidget {
|
||||||
);
|
);
|
||||||
|
|
||||||
return Container(
|
return Container(
|
||||||
margin: const EdgeInsets.all(1),
|
margin: const EdgeInsets.only(left: 1, right: 1, bottom: 1),
|
||||||
padding: text != null ? EdgeInsets.only(right: size / 4) : null,
|
padding: text != null ? EdgeInsets.only(right: size / 4) : null,
|
||||||
decoration: BoxDecoration(
|
decoration: BoxDecoration(
|
||||||
color: const Color(0xBB000000),
|
color: const Color(0xBB000000),
|
||||||
|
|
Loading…
Reference in a new issue