minor fixes

This commit is contained in:
Thibault Deckers 2021-07-15 14:51:29 +09:00
parent fabb2904f9
commit 16e735bdb8
5 changed files with 22 additions and 17 deletions

View file

@ -65,13 +65,13 @@ class BlurredOval extends StatelessWidget {
@override @override
Widget build(BuildContext context) { Widget build(BuildContext context) {
return enabled return ClipOval(
? ClipOval( child: enabled
child: BackdropFilter( ? BackdropFilter(
filter: _filter, filter: _filter,
child: child, child: child,
), )
) : child,
: child; );
} }
} }

View file

@ -152,11 +152,12 @@ class MapOverlayButton extends StatelessWidget {
@override @override
Widget build(BuildContext context) { Widget build(BuildContext context) {
final blurred = settings.enableOverlayBlurEffect;
return BlurredOval( return BlurredOval(
enabled: settings.enableOverlayBlurEffect, enabled: blurred,
child: Material( child: Material(
type: MaterialType.circle, type: MaterialType.circle,
color: kOverlayBackgroundColor, color: overlayBackgroundColor(blurred: blurred),
child: Ink( child: Ink(
decoration: BoxDecoration( decoration: BoxDecoration(
border: AvesBorder.border, border: AvesBorder.border,

View file

@ -77,8 +77,9 @@ class _ViewerBottomOverlayState extends State<ViewerBottomOverlay> {
@override @override
Widget build(BuildContext context) { Widget build(BuildContext context) {
final hasEdgeContent = settings.showOverlayInfo || multiPageController != null; final hasEdgeContent = settings.showOverlayInfo || multiPageController != null;
final blurred = settings.enableOverlayBlurEffect;
return BlurredRect( return BlurredRect(
enabled: hasEdgeContent && settings.enableOverlayBlurEffect, enabled: hasEdgeContent && blurred,
child: Selector<MediaQueryData, Tuple3<double, EdgeInsets, EdgeInsets>>( child: Selector<MediaQueryData, Tuple3<double, EdgeInsets, EdgeInsets>>(
selector: (c, mq) => Tuple3(mq.size.width, mq.viewInsets, mq.viewPadding), selector: (c, mq) => Tuple3(mq.size.width, mq.viewInsets, mq.viewPadding),
builder: (c, mq, child) { builder: (c, mq, child) {
@ -91,7 +92,7 @@ class _ViewerBottomOverlayState extends State<ViewerBottomOverlay> {
final availableWidth = mqWidth - viewPadding.horizontal; final availableWidth = mqWidth - viewPadding.horizontal;
return Container( return Container(
color: hasEdgeContent ? kOverlayBackgroundColor : Colors.transparent, color: hasEdgeContent ? overlayBackgroundColor(blurred: blurred) : Colors.transparent,
padding: EdgeInsets.only( padding: EdgeInsets.only(
left: max(viewInsets.left, viewPadding.left), left: max(viewInsets.left, viewPadding.left),
top: 0, top: 0,

View file

@ -114,10 +114,11 @@ class _VideoControlOverlayState extends State<VideoControlOverlay> with SingleTi
Widget _buildProgressBar() { Widget _buildProgressBar() {
const progressBarBorderRadius = 123.0; const progressBarBorderRadius = 123.0;
final blurred = settings.enableOverlayBlurEffect;
return SizeTransition( return SizeTransition(
sizeFactor: scale, sizeFactor: scale,
child: BlurredRRect( child: BlurredRRect(
enabled: settings.enableOverlayBlurEffect, enabled: blurred,
borderRadius: progressBarBorderRadius, borderRadius: progressBarBorderRadius,
child: GestureDetector( child: GestureDetector(
onTapDown: (details) { onTapDown: (details) {
@ -136,7 +137,7 @@ class _VideoControlOverlayState extends State<VideoControlOverlay> with SingleTi
child: Container( child: Container(
padding: const EdgeInsets.symmetric(vertical: 4, horizontal: 16) + const EdgeInsets.only(bottom: 16), padding: const EdgeInsets.symmetric(vertical: 4, horizontal: 16) + const EdgeInsets.only(bottom: 16),
decoration: BoxDecoration( decoration: BoxDecoration(
color: kOverlayBackgroundColor, color: overlayBackgroundColor(blurred: blurred),
border: AvesBorder.border, border: AvesBorder.border,
borderRadius: const BorderRadius.all(Radius.circular(progressBarBorderRadius)), borderRadius: const BorderRadius.all(Radius.circular(progressBarBorderRadius)),
), ),

View file

@ -3,7 +3,7 @@ import 'package:aves/widgets/common/fx/blurred.dart';
import 'package:aves/widgets/common/fx/borders.dart'; import 'package:aves/widgets/common/fx/borders.dart';
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
const kOverlayBackgroundColor = Colors.black26; Color overlayBackgroundColor({required bool blurred}) => blurred ? Colors.black26 : Colors.black38;
class OverlayButton extends StatelessWidget { class OverlayButton extends StatelessWidget {
final Animation<double> scale; final Animation<double> scale;
@ -17,13 +17,14 @@ class OverlayButton extends StatelessWidget {
@override @override
Widget build(BuildContext context) { Widget build(BuildContext context) {
final blurred = settings.enableOverlayBlurEffect;
return ScaleTransition( return ScaleTransition(
scale: scale, scale: scale,
child: BlurredOval( child: BlurredOval(
enabled: settings.enableOverlayBlurEffect, enabled: blurred,
child: Material( child: Material(
type: MaterialType.circle, type: MaterialType.circle,
color: kOverlayBackgroundColor, color: overlayBackgroundColor(blurred: blurred),
child: Ink( child: Ink(
decoration: BoxDecoration( decoration: BoxDecoration(
border: AvesBorder.border, border: AvesBorder.border,
@ -57,15 +58,16 @@ class OverlayTextButton extends StatelessWidget {
@override @override
Widget build(BuildContext context) { Widget build(BuildContext context) {
final blurred = settings.enableOverlayBlurEffect;
return SizeTransition( return SizeTransition(
sizeFactor: scale, sizeFactor: scale,
child: BlurredRRect( child: BlurredRRect(
enabled: settings.enableOverlayBlurEffect, enabled: blurred,
borderRadius: _borderRadius, borderRadius: _borderRadius,
child: OutlinedButton( child: OutlinedButton(
onPressed: onPressed, onPressed: onPressed,
style: ButtonStyle( style: ButtonStyle(
backgroundColor: MaterialStateProperty.all<Color>(kOverlayBackgroundColor), backgroundColor: MaterialStateProperty.all<Color>(overlayBackgroundColor(blurred: blurred)),
foregroundColor: MaterialStateProperty.all<Color>(Colors.white), foregroundColor: MaterialStateProperty.all<Color>(Colors.white),
overlayColor: MaterialStateProperty.all<Color>(Colors.white.withOpacity(0.12)), overlayColor: MaterialStateProperty.all<Color>(Colors.white.withOpacity(0.12)),
minimumSize: _minSize, minimumSize: _minSize,