diff --git a/ios/Runner/Info.plist b/ios/Runner/Info.plist index 46b9ce6..7e7a546 100644 --- a/ios/Runner/Info.plist +++ b/ios/Runner/Info.plist @@ -2,6 +2,8 @@ + CADisableMinimumFrameDurationOnPhone + CFBundleDevelopmentRegion $(DEVELOPMENT_LANGUAGE) CFBundleDisplayName @@ -22,12 +24,24 @@ ???? CFBundleVersion $(FLUTTER_BUILD_NUMBER) + LSApplicationCategoryType + public.app-category.music LSRequiresIPhoneOS + NSMicrophoneUsageDescription + To provide information for RhythmBox to normalize the output audio + UIApplicationSupportsIndirectInputEvents + + UIBackgroundModes + + audio + UILaunchStoryboardName LaunchScreen UIMainStoryboardFile Main + UIStatusBarHidden + UISupportedInterfaceOrientations UIInterfaceOrientationPortrait @@ -41,15 +55,5 @@ UIInterfaceOrientationLandscapeLeft UIInterfaceOrientationLandscapeRight - CADisableMinimumFrameDurationOnPhone - - UIApplicationSupportsIndirectInputEvents - - LSApplicationCategoryType - public.app-category.music - NSMicrophoneUsageDescription - To provide information for RhythmBox to normalize the output audio - UIStatusBarHidden - diff --git a/lib/screens/player/view.dart b/lib/screens/player/view.dart index 2675869..cf2cbf6 100644 --- a/lib/screens/player/view.dart +++ b/lib/screens/player/view.dart @@ -240,7 +240,7 @@ class _PlayerScreenState extends State { width: 56, height: 56, child: IconButton.filled( - icon: (_isFetchingActiveTrack && _isPlaying) + icon: _isFetchingActiveTrack ? const SizedBox( height: 20, width: 20, diff --git a/lib/widgets/player/bottom_player.dart b/lib/widgets/player/bottom_player.dart index cd01c49..4517950 100644 --- a/lib/widgets/player/bottom_player.dart +++ b/lib/widgets/player/bottom_player.dart @@ -46,6 +46,8 @@ class _BottomPlayerState extends State late final AudioPlayerProvider _playback = Get.find(); late final QueryingTrackInfoProvider _query = Get.find(); + bool get _isFetchingActiveTrack => _query.isQueryingTrackInfo.value; + String? get _albumArt => (_playback.state.value.activeTrack?.album?.images).asUrlString( index: @@ -102,19 +104,18 @@ class _BottomPlayerState extends State behavior: HitTestBehavior.translucent, child: Column( children: [ - if (_playback.durationCurrent.value != Duration.zero) - TweenAnimationBuilder( - tween: Tween( - begin: 0, - end: _playback.durationCurrent.value.inMilliseconds / - max(_playback.durationTotal.value.inMilliseconds, 1), - ), - duration: const Duration(milliseconds: 1000), - builder: (context, value, _) => LinearProgressIndicator( - minHeight: 3, - value: value, - ), + TweenAnimationBuilder( + tween: Tween( + begin: 0, + end: _playback.durationCurrent.value.inMilliseconds / + max(_playback.durationTotal.value.inMilliseconds, 1), ), + duration: const Duration(milliseconds: 1000), + builder: (context, value, _) => LinearProgressIndicator( + minHeight: 3, + value: _isFetchingActiveTrack ? null : null, + ), + ), Row( mainAxisAlignment: MainAxisAlignment.spaceBetween, children: [ diff --git a/pubspec.yaml b/pubspec.yaml index 376307d..9ed5562 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -16,7 +16,7 @@ publish_to: 'none' # Remove this line if you wish to publish to pub.dev # https://developer.apple.com/library/archive/documentation/General/Reference/InfoPlistKeyReference/Articles/CoreFoundationKeys.html # In Windows, build-name is used as the major, minor, and patch parts # of the product and file versions while build-number is used as the build suffix. -version: 1.0.0+3 +version: 1.0.0+4 environment: sdk: ^3.5.0