Compare commits

..

No commits in common. "e340327e323663357b2089e4b5b096613640eb09" and "6566108994371f149720b330447422605227356b" have entirely different histories.

4 changed files with 128 additions and 139 deletions

View file

@ -1,5 +1,4 @@
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:flutter/scheduler.dart';
import 'package:lightmeter/generated/l10n.dart'; import 'package:lightmeter/generated/l10n.dart';
import 'package:lightmeter/res/dimens.dart'; import 'package:lightmeter/res/dimens.dart';
@ -35,20 +34,18 @@ class _DialogFilterState<T> extends State<DialogFilter<T>> {
bool get _hasAnySelected => checkboxValues.contains(true); bool get _hasAnySelected => checkboxValues.contains(true);
bool get _hasAnyUnselected => checkboxValues.contains(false); bool get _hasAnyUnselected => checkboxValues.contains(false);
final ScrollController _scrollController = ScrollController(); late final ScrollController _scrollController;
@override @override
void initState() { void initState() {
super.initState(); super.initState();
SchedulerBinding.instance.addPostFrameCallback((_) {
int i = 0; int i = 0;
for (; i < checkboxValues.length; i++) { for (; i < checkboxValues.length; i++) {
if (checkboxValues[i]) { if (checkboxValues[i]) {
break; break;
} }
} }
_scrollController.jumpTo((Dimens.grid56 * i).clamp(0, _scrollController.position.maxScrollExtent)); _scrollController = ScrollController(initialScrollOffset: Dimens.grid56 * i);
});
} }
@override @override
@ -64,9 +61,7 @@ class _DialogFilterState<T> extends State<DialogFilter<T>> {
titlePadding: Dimens.dialogIconTitlePadding, titlePadding: Dimens.dialogIconTitlePadding,
title: Text(widget.title), title: Text(widget.title),
contentPadding: EdgeInsets.zero, contentPadding: EdgeInsets.zero,
content: SizedBox( content: Column(
width: double.maxFinite,
child: Column(
children: [ children: [
Padding( Padding(
padding: Dimens.dialogIconTitlePadding, padding: Dimens.dialogIconTitlePadding,
@ -111,7 +106,9 @@ class _DialogFilterState<T> extends State<DialogFilter<T>> {
padding: EdgeInsets.zero, padding: EdgeInsets.zero,
icon: Icon(_hasAnyUnselected ? Icons.select_all : Icons.deselect), icon: Icon(_hasAnyUnselected ? Icons.select_all : Icons.deselect),
onPressed: _toggleAll, onPressed: _toggleAll,
tooltip: _hasAnyUnselected ? S.of(context).tooltipSelectAll : S.of(context).tooltipDesecelectAll, tooltip: _hasAnyUnselected
? S.of(context).tooltipSelectAll
: S.of(context).tooltipDesecelectAll,
), ),
), ),
const Spacer(), const Spacer(),
@ -138,7 +135,6 @@ class _DialogFilterState<T> extends State<DialogFilter<T>> {
) )
], ],
), ),
),
); );
} }

View file

@ -32,10 +32,7 @@ class _DialogPickerState<T> extends State<DialogPicker<T>> {
titlePadding: Dimens.dialogIconTitlePadding, titlePadding: Dimens.dialogIconTitlePadding,
title: Text(widget.title), title: Text(widget.title),
contentPadding: EdgeInsets.zero, contentPadding: EdgeInsets.zero,
content: SizedBox( content: Column(
width: double.maxFinite,
child: Column(
crossAxisAlignment: CrossAxisAlignment.stretch,
mainAxisSize: MainAxisSize.min, mainAxisSize: MainAxisSize.min,
children: widget.values children: widget.values
.map( .map(
@ -54,7 +51,6 @@ class _DialogPickerState<T> extends State<DialogPicker<T>> {
) )
.toList(), .toList(),
), ),
),
actionsPadding: Dimens.dialogActionsPadding, actionsPadding: Dimens.dialogActionsPadding,
actions: [ actions: [
TextButton( TextButton(

View file

@ -36,9 +36,7 @@ class _DialogRangePickerState<T extends PhotographyValue> extends State<DialogRa
titlePadding: Dimens.dialogIconTitlePadding, titlePadding: Dimens.dialogIconTitlePadding,
title: Text(widget.title), title: Text(widget.title),
contentPadding: EdgeInsets.zero, contentPadding: EdgeInsets.zero,
content: SizedBox( content: Column(
width: double.maxFinite,
child: Column(
mainAxisSize: MainAxisSize.min, mainAxisSize: MainAxisSize.min,
children: [ children: [
Padding( Padding(
@ -80,7 +78,6 @@ class _DialogRangePickerState<T extends PhotographyValue> extends State<DialogRa
), ),
], ],
), ),
),
actionsPadding: Dimens.dialogActionsPadding, actionsPadding: Dimens.dialogActionsPadding,
actions: [ actions: [
TextButton( TextButton(

View file

@ -1,7 +1,7 @@
name: lightmeter name: lightmeter
description: Lightmeter app inspired by Material 3 design system. description: Lightmeter app inspired by Material 3 design system.
publish_to: "none" publish_to: "none"
version: 0.16.0+45 version: 0.15.3+44
environment: environment:
sdk: ">=3.0.0 <4.0.0" sdk: ">=3.0.0 <4.0.0"