From df01f62b017555dd8b485cac7efebc636301be8b Mon Sep 17 00:00:00 2001
From: Eliot Berriot <contact@eliotberriot.com>
Date: Tue, 15 Jan 2019 09:57:20 +0100
Subject: [PATCH] Hide and remove uneeded canvas object generated for the
 player background

---
 front/src/components/audio/Player.vue | 3 +++
 front/src/style/_main.scss            | 4 ++++
 front/src/vendor/color-thief.js       | 1 +
 3 files changed, 8 insertions(+)

diff --git a/front/src/components/audio/Player.vue b/front/src/components/audio/Player.vue
index 9f17fc8f..e010f151 100644
--- a/front/src/components/audio/Player.vue
+++ b/front/src/components/audio/Player.vue
@@ -221,6 +221,7 @@ import { mapState, mapGetters, mapActions } from "vuex"
 import GlobalEvents from "@/components/utils/global-events"
 import ColorThief from "@/vendor/color-thief"
 import { Howl } from "howler"
+import $ from 'jquery'
 
 import AudioTrack from "@/components/audio/Track"
 import TrackFavoriteIcon from "@/components/favorites/TrackFavoriteIcon"
@@ -310,6 +311,8 @@ export default {
       this.$refs.currentAudio.setCurrentTime(time)
     },
     updateBackground() {
+      // delete existing canvas, if any
+      $('canvas.color-thief').remove()
       if (!this.currentTrack.album.cover) {
         this.ambiantColors = this.defaultAmbiantColors
         return
diff --git a/front/src/style/_main.scss b/front/src/style/_main.scss
index 0c165c76..d6c5ff61 100644
--- a/front/src/style/_main.scss
+++ b/front/src/style/_main.scss
@@ -263,3 +263,7 @@ button.reset {
 label .tooltip {
   margin-left: 1em;
 }
+
+canvas.color-thief {
+  display: none;
+}
diff --git a/front/src/vendor/color-thief.js b/front/src/vendor/color-thief.js
index 0acb7c13..ed0612f8 100644
--- a/front/src/vendor/color-thief.js
+++ b/front/src/vendor/color-thief.js
@@ -27,6 +27,7 @@
 */
 var CanvasImage = function (image) {
     this.canvas  = document.createElement('canvas');
+    this.canvas.className = "color-thief hidden";
     this.context = this.canvas.getContext('2d');
 
     document.body.appendChild(this.canvas);
-- 
GitLab