From dd55aca3e6e89d46a6c6e6dd20fe7dcbd5918ca6 Mon Sep 17 00:00:00 2001
From: Jonas Heinrich <onny@project-insanity.org>
Date: Sun, 31 Jan 2021 13:02:25 +0100
Subject: [PATCH] fix table episode play/resume icon and text

---
 CHANGELOG.md             |  4 ++++
 src/components/Table.vue | 21 +++++++++++++++++----
 2 files changed, 21 insertions(+), 4 deletions(-)

diff --git a/CHANGELOG.md b/CHANGELOG.md
index c813771..1c72b38 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,5 +1,9 @@
 ## 0.2 - 2021-02
 
+### Added
+- Pause playing animation
+  [#115](https://git.project-insanity.org/onny/nextcloud-app-podcast/-/issues/115) @onny
+
 ### Changed
 - Use mappers for store
   [#112](https://git.project-insanity.org/onny/nextcloud-app-podcast/-/issues/112) @onny
diff --git a/src/components/Table.vue b/src/components/Table.vue
index 7e56bfa..3150ae4 100644
--- a/src/components/Table.vue
+++ b/src/components/Table.vue
@@ -61,7 +61,7 @@
 				<td class="actionColumn">
 					<Actions>
 						<ActionButton
-							:icon="episodeLoaded(episode.id) ? 'icon-pause' : 'icon-play'"
+							:icon="playButtonIcon(episode.id)"
 							:close-after-click="true"
 							@click="doPlay(episode)">
 							{{ playButtonText(episode.id) }}
@@ -137,13 +137,26 @@ export default {
 	methods: {
 		playButtonText(episodeId) {
 			if (this.episodeLoaded(episodeId)) {
-				return t('podcast', 'Pause')
-			} else if (this.isPaused(episodeId)) {
-				return t('podcast', 'Resume')
+				if (this.isPaused(episodeId)) {
+					return t('podcast', 'Resume')
+				} else {
+					return t('podcast', 'Pause')
+				}
 			} else {
 				return t('podcast', 'Play')
 			}
 		},
+		playButtonIcon(episodeId) {
+			if (this.episodeLoaded(episodeId)) {
+				if (this.isPaused(episodeId)) {
+					return 'icon-play'
+				} else {
+					return 'icon-pause'
+				}
+			} else {
+				return 'icon-play'
+			}
+		},
 		escapedEpisodeDescription(episodeDescription) {
 			episodeDescription = episodeDescription.replace(/\n/g, '')
 			return episodeDescription
-- 
GitLab