Signed-off-by: dom <githubaccount56556@proton.me>
This commit is contained in:
dom
2026-01-20 17:42:40 +08:00
parent 923af32c96
commit 0b1f6c4d0e
26 changed files with 377 additions and 451 deletions

View File

@@ -94,7 +94,6 @@ class _VideoReplyReplyPanelState extends State<VideoReplyReplyPanel>
with SingleTickerProviderStateMixin, CommonSlideMixin {
late VideoReplyReplyController _controller;
late final _tag = Utils.makeHeroTag('${widget.rpid}${widget.dialog}');
CurvedAnimation? _curvedAnimation;
Animation<Color?>? _colorAnimation;
late final bool isDialogue = widget.dialog != null;
@@ -129,7 +128,6 @@ class _VideoReplyReplyPanelState extends State<VideoReplyReplyPanel>
@override
void dispose() {
_curvedAnimation?.dispose();
Get.delete<VideoReplyReplyController>(tag: _tag);
super.dispose();
}
@@ -334,16 +332,16 @@ class _VideoReplyReplyPanelState extends State<VideoReplyReplyPanel>
final child = _replyItem(context, response[index], index);
if (jumpIndex == index) {
return AnimatedBuilder(
animation: _colorAnimation ??=
ColorTween(
begin: theme.colorScheme.onInverseSurface,
end: theme.colorScheme.surface,
).animate(
_curvedAnimation ??= CurvedAnimation(
parent: _controller.animController,
curve: const Interval(0.8, 1.0), // 前0.8s不变, 后0.2s开始动画
),
animation: _colorAnimation ??= _controller.animController.drive(
ColorTween(
begin: theme.colorScheme.onInverseSurface,
end: theme.colorScheme.surface,
).chain(
CurveTween(
curve: const Interval(0.8, 1.0), // 前0.8s不变, 后0.2s开始动画
),
),
),
child: child,
builder: (context, child) {
return ColoredBox(