Skip to content
Snippets Groups Projects
Commit 0d4fff10 authored by Tomáš Valenta's avatar Tomáš Valenta
Browse files

finish image sharing between templates

parent 5db54b6a
Branches
No related tags found
No related merge requests found
Pipeline #14970 passed
Showing
with 100 additions and 50 deletions
......@@ -12,6 +12,7 @@
name="auto-reload-checkbox"
type="checkbox"
:checked="modelValue"
autocomplete="off"
@input="$emit('update:modelValue', $event.target.checked)"
>
<label
......
......@@ -30,7 +30,7 @@ const updateAutoRedrawStorage = (autoRedraw) => {
}
const loadCanvasStorage = (data) => {
const loadCanvasStorage = async (data) => {
const canvasProperties = JSON.parse(window.sessionStorage.getItem("canvas_properties"))
const autoRedraw = JSON.parse(window.sessionStorage.getItem("auto_redraw"))
......@@ -42,7 +42,16 @@ const loadCanvasStorage = (data) => {
if (key.toLowerCase().endsWith("image") && value) {
const image = new Image()
await new Promise(
resolve => {
image.onload = () => {
resolve()
}
image.src = value
}
)
data[key] = image
......
......@@ -55,7 +55,7 @@ export default {
}
}
let data = {
return {
mainImage: null,
mainText: null,
personName: null,
......@@ -74,10 +74,9 @@ export default {
predefinedLogoImages: generateDefaultLogos('defaultLight'),
autoRedraw: false
}
loadCanvasStorage(data)
return data
},
async created () {
await loadCanvasStorage(this)
},
methods: {
async reloadCanvasProperties () {
......@@ -123,6 +122,10 @@ export default {
vm => [vm.autoRedraw],
async (value) => {
updateAutoRedrawStorage(this.autoRedraw)
if (this.autoRedraw) {
await this.reloadCanvasProperties()
}
}
)
},
......
......@@ -14,6 +14,8 @@ let logoImage = null
let arrow = null
let mainImageSource = null
const redraw = async (canvas, options) => {
clearObjects(
[
......@@ -319,13 +321,14 @@ const redraw = async (canvas, options) => {
/* BEGIN Main image render */
console.log(options.mainImage, mainImage, options.mainImage.src)
if (
options.mainImage !== null
&& (
!canvas.contains(mainImage)
|| (
mainImage === null
|| options.mainImage.src !== mainImage._element.src
|| options.mainImage.src !== mainImageSource
)
)
) {
if (mainImage !== null) {
......@@ -353,6 +356,7 @@ const redraw = async (canvas, options) => {
}
canvas.add(mainImage)
mainImageSource = options.mainImage.src
// canvas.centerObject(mainImage)
} else if (
mainImage !== null
......
......@@ -53,7 +53,7 @@ export default {
}
}
let data = {
return {
mainImage: null,
mainText: null,
logoImage: null,
......@@ -74,10 +74,9 @@ export default {
predefinedLogoImages: generateDefaultLogos('defaultDark'),
autoRedraw: false
}
loadCanvasStorage(data)
return data
},
async created () {
await loadCanvasStorage(this)
},
methods: {
async reloadCanvasProperties () {
......@@ -127,6 +126,10 @@ export default {
vm => [vm.autoRedraw],
async (value) => {
updateAutoRedrawStorage(this.autoRedraw)
if (this.autoRedraw) {
await this.reloadCanvasProperties()
}
}
)
}
......
......@@ -17,6 +17,8 @@ let secondEmojiImage = null
let firstEmojiText = null
let secondEmojiText = null
let mainImageSource = null
const redraw = async (canvas, options) => {
clearObjects(
[
......@@ -339,8 +341,11 @@ const redraw = async (canvas, options) => {
if (
options.mainImage !== null
&& (
!canvas.contains(mainImage)
|| (
mainImage === null
|| options.mainImage.src !== mainImage._element.src
|| options.mainImage.src !== mainImageSource
)
)
) {
if (mainImage !== null) {
......@@ -368,6 +373,7 @@ const redraw = async (canvas, options) => {
}
canvas.add(mainImage)
mainImageSource = options.mainImage.src
// canvas.centerObject(mainImage)
} else if (
mainImage !== null
......
......@@ -64,7 +64,7 @@ export default {
}
}
let data = {
return {
mainImage: null,
sourceImage: null,
mainText: null,
......@@ -84,10 +84,9 @@ export default {
predefinedSourceImages: SOURCE_IMAGES,
autoRedraw: false
}
loadCanvasStorage(data)
return data
},
async created () {
await loadCanvasStorage(this)
},
methods: {
async reloadCanvasProperties () {
......@@ -133,6 +132,10 @@ export default {
vm => [vm.autoRedraw],
async (value) => {
updateAutoRedrawStorage(this.autoRedraw)
if (this.autoRedraw) {
await this.reloadCanvasProperties()
}
}
)
}
......
......@@ -25,6 +25,8 @@ let rightQuote = null
let tear = null
let tearFill = null
let mainImageSource = null
const redraw = async (canvas, options) => {
clearObjects(
[
......@@ -429,8 +431,11 @@ const redraw = async (canvas, options) => {
if (
options.mainImage !== null
&& (
!canvas.contains(mainImage)
|| (
mainImage === null
|| options.mainImage.src !== mainImage._element.src
|| options.mainImage.src !== mainImageSource
)
)
) {
if (mainImage !== null) {
......@@ -458,6 +463,7 @@ const redraw = async (canvas, options) => {
}
canvas.add(mainImage)
mainImageSource = options.mainImage.src
// canvas.centerObject(mainImage)
} else if (
mainImage !== null
......
......@@ -68,7 +68,7 @@ export default {
}
}
let data = {
return {
sourceImage: null,
mainText: null,
personName: null,
......@@ -89,10 +89,9 @@ export default {
predefinedSourceImages: SOURCE_IMAGES,
autoRedraw: false
}
loadCanvasStorage(data)
return data
},
async created () {
await loadCanvasStorage(this)
},
methods: {
async reloadCanvasProperties () {
......@@ -136,6 +135,10 @@ export default {
vm => [vm.autoRedraw],
async (value) => {
updateAutoRedrawStorage(this.autoRedraw)
if (this.autoRedraw) {
await this.reloadCanvasProperties()
}
}
)
}
......
......@@ -44,7 +44,7 @@ export default {
}
}
let data = {
return {
mainText: null,
logoImage: null,
colorLabels: {
......@@ -59,10 +59,9 @@ export default {
predefinedLogoImages: generateDefaultLogos('defaultLight'),
autoRedraw: false
}
loadCanvasStorage(data)
return data
},
async created () {
await loadCanvasStorage(this)
},
methods: {
async reloadCanvasProperties () {
......@@ -100,6 +99,10 @@ export default {
vm => [vm.autoRedraw],
async (value) => {
updateAutoRedrawStorage(this.autoRedraw)
if (this.autoRedraw) {
await this.reloadCanvasProperties()
}
}
)
}
......
......@@ -71,7 +71,7 @@ export default {
}
}
let data = {
return {
defaultSelection: personOptions.klara,
personOptions: personOptions,
mainImage: null,
......@@ -88,10 +88,9 @@ export default {
},
autoRedraw: false
}
loadCanvasStorage(data)
return data
},
async created () {
await loadCanvasStorage(this)
},
methods: {
async reloadCanvasProperties () {
......@@ -137,6 +136,10 @@ export default {
vm => [vm.autoRedraw],
async (value) => {
updateAutoRedrawStorage(this.autoRedraw)
if (this.autoRedraw) {
await this.reloadCanvasProperties()
}
}
)
}
......
......@@ -55,7 +55,7 @@ export default {
}
}
let data = {
return {
mainImage: null,
mainText: null,
personName: null,
......@@ -74,10 +74,9 @@ export default {
predefinedLogoImages: generateDefaultLogos('defaultLight'),
autoRedraw: false
}
loadCanvasStorage(data)
return data
},
async created () {
await loadCanvasStorage(this)
},
methods: {
async reloadCanvasProperties () {
......@@ -123,6 +122,10 @@ export default {
vm => [vm.autoRedraw],
async (value) => {
updateAutoRedrawStorage(this.autoRedraw)
if (this.autoRedraw) {
await this.reloadCanvasProperties()
}
}
)
}
......
......@@ -46,7 +46,7 @@ export default {
}
}
let data = {
return {
mainText: null,
logoImage: null,
colorLabels: {
......@@ -65,10 +65,9 @@ export default {
],
autoRedraw: false
}
loadCanvasStorage(data)
return data
},
async created () {
await loadCanvasStorage(this)
},
methods: {
async reloadCanvasProperties () {
......@@ -106,6 +105,10 @@ export default {
vm => [vm.autoRedraw],
async (value) => {
updateAutoRedrawStorage(this.autoRedraw)
if (this.autoRedraw) {
await this.reloadCanvasProperties()
}
}
)
}
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment