diff --git a/assets/fonts/custom_icon.ttf b/assets/fonts/custom_icon.ttf index d8ad652f7..4d4178579 100644 Binary files a/assets/fonts/custom_icon.ttf and b/assets/fonts/custom_icon.ttf differ diff --git a/lib/common/widgets/custom_icon.dart b/lib/common/widgets/custom_icon.dart index 79740c27e..29c9072bf 100644 --- a/lib/common/widgets/custom_icon.dart +++ b/lib/common/widgets/custom_icon.dart @@ -25,17 +25,18 @@ abstract final class CustomIcons { static const IconData player_dm_tip_like_solid = IconData(0xe810, fontFamily: _kFontFam); static const IconData player_dm_tip_recall = IconData(0xe811, fontFamily: _kFontFam); static const IconData repeat_rounded_rotate_90 = IconData(0xe812, fontFamily: _kFontFam); - static const IconData share_node = IconData(0xe813, fontFamily: _kFontFam); - static const IconData shield_play_arrow = IconData(0xe814, fontFamily: _kFontFam); - static const IconData shield_published = IconData(0xe815, fontFamily: _kFontFam); - static const IconData shield_reply = IconData(0xe816, fontFamily: _kFontFam); - static const IconData shopping_bag_not_interested = IconData(0xe817, fontFamily: _kFontFam); - static const IconData splitscreen_rotate_90 = IconData(0xe818, fontFamily: _kFontFam); - static const IconData star_favorite_line = IconData(0xe819, fontFamily: _kFontFam); - static const IconData star_favorite_solid = IconData(0xe81a, fontFamily: _kFontFam); - static const IconData subscriptions_outlined = IconData(0xe81b, fontFamily: _kFontFam); - static const IconData topic_tag = IconData(0xe81c, fontFamily: _kFontFam); - static const IconData touch_app_rotate_270 = IconData(0xe81d, fontFamily: _kFontFam); - static const IconData view_headline_rotate_90 = IconData(0xe81e, fontFamily: _kFontFam); - static const IconData watch_later_outlined = IconData(0xe81f, fontFamily: _kFontFam); + static const IconData replay_rounded = IconData(0xe813, fontFamily: _kFontFam); + static const IconData share_node = IconData(0xe814, fontFamily: _kFontFam); + static const IconData shield_play_arrow = IconData(0xe815, fontFamily: _kFontFam); + static const IconData shield_published = IconData(0xe816, fontFamily: _kFontFam); + static const IconData shield_reply = IconData(0xe817, fontFamily: _kFontFam); + static const IconData shopping_bag_not_interested = IconData(0xe818, fontFamily: _kFontFam); + static const IconData splitscreen_rotate_90 = IconData(0xe819, fontFamily: _kFontFam); + static const IconData star_favorite_line = IconData(0xe81a, fontFamily: _kFontFam); + static const IconData star_favorite_solid = IconData(0xe81b, fontFamily: _kFontFam); + static const IconData subscriptions_outlined = IconData(0xe81c, fontFamily: _kFontFam); + static const IconData topic_tag = IconData(0xe81d, fontFamily: _kFontFam); + static const IconData touch_app_rotate_270 = IconData(0xe81e, fontFamily: _kFontFam); + static const IconData view_headline_rotate_90 = IconData(0xe81f, fontFamily: _kFontFam); + static const IconData watch_later_outlined = IconData(0xe820, fontFamily: _kFontFam); } \ No newline at end of file diff --git a/lib/common/widgets/marquee.dart b/lib/common/widgets/marquee.dart index 02393987d..c88b35f72 100644 --- a/lib/common/widgets/marquee.dart +++ b/lib/common/widgets/marquee.dart @@ -6,6 +6,7 @@ import 'package:flutter/scheduler.dart'; class MarqueeText extends StatelessWidget { final String text; final TextStyle? style; + final StrutStyle? strutStyle; final double spacing; final double velocity; final ContextSingleTicker? provider; @@ -14,6 +15,7 @@ class MarqueeText extends StatelessWidget { this.text, { super.key, this.style, + this.strutStyle, this.spacing = 0, this.velocity = 25, this.provider, @@ -28,6 +30,7 @@ class MarqueeText extends StatelessWidget { child: Text( text, style: style, + strutStyle: strutStyle, maxLines: 1, textDirection: TextDirection.ltr, ), diff --git a/lib/pages/live_room/widgets/header_control.dart b/lib/pages/live_room/widgets/header_control.dart index 911758fc1..e1fb7a488 100644 --- a/lib/pages/live_room/widgets/header_control.dart +++ b/lib/pages/live_room/widgets/header_control.dart @@ -78,11 +78,8 @@ class _LiveHeaderControlState extends State liveController.title.value, spacing: 30, velocity: 30, - style: const TextStyle( - fontSize: 15, - height: 1, - color: Colors.white, - ), + strutStyle: const StrutStyle(fontSize: 15, leading: 0), + style: const TextStyle(fontSize: 15, height: 1, color: Colors.white), ), ); if (isFullScreen) { diff --git a/lib/pages/video/view.dart b/lib/pages/video/view.dart index 4256fc094..59fec3d20 100644 --- a/lib/pages/video/view.dart +++ b/lib/pages/video/view.dart @@ -605,37 +605,23 @@ class _VideoDetailPageVState extends State } Widget _buildOverlayToolBar(double scrollRatio) { - final Icon icon; - final double spacing; + final IconData icon; final String playStat; if (videoDetailController.playedTime == null) { - spacing = 2; - icon = Icon( - Icons.play_arrow_rounded, - color: themeData.colorScheme.primary, - ); + icon = Icons.play_arrow_rounded; playStat = '立即'; } else if (plPlayerController!.isCompleted) { - spacing = 4; - icon = Icon( - size: 18, - Icons.replay_rounded, - color: themeData.colorScheme.primary, - ); + icon = CustomIcons.replay_rounded; playStat = '重新'; } else { - spacing = 2; - icon = Icon( - Icons.play_arrow_rounded, - color: themeData.colorScheme.primary, - ); + icon = Icons.play_arrow_rounded; playStat = '继续'; } final playBtn = Row( - spacing: spacing, + spacing: 2, mainAxisSize: .min, children: [ - icon, + Icon(icon, color: themeData.colorScheme.primary), Text( '$playStat播放', style: TextStyle(color: themeData.colorScheme.primary), diff --git a/lib/pages/video/widgets/header_control.dart b/lib/pages/video/widgets/header_control.dart index b407fda3b..0585f3ed5 100644 --- a/lib/pages/video/widgets/header_control.dart +++ b/lib/pages/video/widgets/header_control.dart @@ -1693,10 +1693,8 @@ class HeaderControlState extends State title, spacing: 30, velocity: 30, - style: const TextStyle( - color: Colors.white, - fontSize: 16, - ), + strutStyle: const StrutStyle(fontSize: 16, leading: 0), + style: const TextStyle(color: Colors.white, fontSize: 16), provider: effectiveProvider, ); }, diff --git a/lib/utils/image_utils.dart b/lib/utils/image_utils.dart index 41636c47f..8713712a7 100644 --- a/lib/utils/image_utils.dart +++ b/lib/utils/image_utils.dart @@ -167,7 +167,6 @@ abstract final class ImageUtils { final result = await Future.wait(futures, eagerError: true); bool success = true; if (PlatformUtils.isMobile) { - final delList = []; final saveList = []; for (final i in result) { if (i.statusCode == 200) { @@ -183,9 +182,6 @@ abstract final class ImageUtils { } } await SaverGallery.saveFiles(saveList, skipIfExists: false); - for (final i in delList) { - File(i).tryDel(); - } } else { for (final res in result) { if (res.statusCode == 200) {