From 6bc0d3620c62ad9c356126902aa21ed5208174f5 Mon Sep 17 00:00:00 2001 From: stonegate Date: Fri, 31 Jul 2020 16:50:48 +0800 Subject: [PATCH] Fixed get player height issue. --- lib/home/audioplayer.dart | 36 +++++++++++++++++++----------------- lib/state/audio_state.dart | 8 ++++---- 2 files changed, 23 insertions(+), 21 deletions(-) diff --git a/lib/home/audioplayer.dart b/lib/home/audioplayer.dart index ac632e4..7f957b3 100644 --- a/lib/home/audioplayer.dart +++ b/lib/home/audioplayer.dart @@ -219,24 +219,26 @@ class PlayerWidget extends StatelessWidget { return Selector>( selector: (_, audio) => Tuple2(audio.playerRunning, audio?.playerHeight), builder: (_, data, __) { - var minHeight = kMinPlayerHeight[data.item2.index]; - var maxHeight = kMaxPlayerHeight[data.item2.index]; - return !data.item1 - ? Center() - : AudioPanel( - minHeight: minHeight, + if (!data.item1) { + return Center(); + } else { + var minHeight = kMinPlayerHeight[data.item2.index]; + var maxHeight = kMaxPlayerHeight[data.item2.index]; + return AudioPanel( + minHeight: minHeight, + maxHeight: maxHeight, + key: playerKey, + miniPanel: _miniPanel(context), + expandedPanel: ControlPanel( maxHeight: maxHeight, - key: playerKey, - miniPanel: _miniPanel(context), - expandedPanel: ControlPanel( - maxHeight: maxHeight, - onExpand: () { - playerKey.currentState.scrollToTop(); - }, - onClose: () { - playerKey.currentState.backToMini(); - }, - )); + onExpand: () { + playerKey.currentState.scrollToTop(); + }, + onClose: () { + playerKey.currentState.backToMini(); + }, + )); + } }, ); } diff --git a/lib/state/audio_state.dart b/lib/state/audio_state.dart index b482350..9d8ee40 100644 --- a/lib/state/audio_state.dart +++ b/lib/state/audio_state.dart @@ -208,12 +208,12 @@ class AudioPlayerNotifier extends ChangeNotifier { } @override - void addListener(VoidCallback listener) async { - await _getPlayerHeight(); + void addListener(VoidCallback listener) { super.addListener(listener); + _getPlayerHeight(); _queueUpdate = false; - await _getAutoSleepTimer(); - await AudioService.connect(); + _getAutoSleepTimer(); + AudioService.connect(); var running = AudioService.running; if (running) {} }