]> _ Git - fluidbook-toolbox.git/commitdiff
wip #7785 @1:00 previewLinksMode
authorsoufiane <soufiane@cubedesigners.com>
Thu, 16 Oct 2025 16:28:38 +0000 (18:28 +0200)
committersoufiane <soufiane@cubedesigners.com>
Thu, 16 Oct 2025 16:28:38 +0000 (18:28 +0200)
resources/linkeditor/js/linkeditor.links.js
resources/linkeditor/js/linkeditor.previewLinks.js
resources/linkeditor/style/inc/_layers.sass

index 18e33ad3a7e52ad17c125fc1d49fc8d6567420dd..d2b46e0a5c12204a443f83ff7aba985da76a7b26 100644 (file)
@@ -1745,7 +1745,7 @@ LinkeditorLinks.prototype = {
                     if(entries[0] === "preventFlickering"){
                         result['preventflickering'] = 0
                     }
-                    if(entries[0] === "transformOrigin"){
+                    /*if(entries[0] === "transformOrigin"){
                         if(entries[1]?.replace(/([\"]+)/gm, "") === "0% 50%") {
                             result['transformorigin'] = origin0_50
                         }else if(entries[1]?.replace(/([\"]+)/gm, "") === "0% 100%") {
@@ -1755,7 +1755,7 @@ LinkeditorLinks.prototype = {
                         }else if(entries[1]?.replace(/([\"]+)/gm, "") === "center") {
                             result['transformorigin'] = origin
                         }
-                    }
+                    }*/
                 }
                 obj[anim] = Object.assign({}, result)
             }
index 9efb31270ceae5e9aac98ae640c250bf92dd659d..cf3350e48e33fe37dd55579eef90e7f88f2e0c7b 100644 (file)
@@ -1,6 +1,7 @@
 var LinkeditorPreviewLinks = function(linkeditor) {
     this.linkeditor = linkeditor;
     this.linkData = []
+    this.links = null
     this.init()
 }
 
@@ -18,7 +19,7 @@ LinkeditorPreviewLinks.prototype = {
     },
 
     setPreview: function(isZooming = false, reset = false) {
-        const links = this.linkeditor.links.getLinksOfPage(this.linkeditor.currentPage)
+        this.links = this.linkeditor.links.getLinksOfPage(this.linkeditor.currentPage)
 
         if($('#linkeditor-layer-links').length < 1) {
             $("#linkeditor-zoom").prepend('<div id="linkeditor-layer-links"></div>')
@@ -26,9 +27,13 @@ LinkeditorPreviewLinks.prototype = {
 
         this.linkeditor.links.updatePolygonLinks();
 
-        for (let link in links) {
-            this.updatePreview(links[link],isZooming,reset)
+        for (let link in this.links) {
+            this.updatePreview(this.links[link],isZooming,reset)
         }
+
+        setTimeout(() => {
+            this.setLimit(this.links)
+        }, 500)
     },
 
     updatePreview: function(link, isZooming = false, reset = false) {
@@ -44,8 +49,13 @@ LinkeditorPreviewLinks.prototype = {
 
         // Cropper les bords pour éviter que les animations de type scale etc... ne fassent sortir le calque
         // du fb afin d'obtenir un rendu plus proche du rendu final
-        const time = setTimeout(function(){
-            if(link.type !== '39') {
+    },
+
+    setLimit: function(links) {
+        for(let k in links) {
+            if(links[k].type !== '39') {
+                let l = this.linkeditor.links.getLinkById(links[k].uid)
+
                 const { right, bottom, top } = $("#linkeditor-fluidbook")[0].getBoundingClientRect()
 
                 const {width: wLink, height: hLink, right: rLink, bottom: bLink, left: lLink, top: tLink} = l[0].getBoundingClientRect()
@@ -69,8 +79,7 @@ LinkeditorPreviewLinks.prototype = {
 
                 l.css('clip-path',`polygon(${limitLeft}px ${limitTop}px, ${limitRight}px ${limitTop}px, ${limitRight}px ${limitBottom}px, ${limitLeft}px ${limitBottom}px)`)
             }
-        }, 500)
-
+        }
     },
 
     previewByType: function (type, isZooming = false, reset = false) {
@@ -328,7 +337,7 @@ LinkeditorPreviewLinks.prototype = {
     setTransformOrigin(link, option) {
         const targetDiv = $('#linkeditor-layer-links [data-id-preview="'+link.uid+'"]');
 
-        if(targetDiv !== undefined) {
+        /*if(targetDiv !== undefined) {
             let referenceCenterX = parseInt(link.left) + parseInt(link.width) / 2;
             let referenceCenterY = parseInt(link.top) + parseInt(link.height) / 2;
             targetDiv.attr("data-origin", `${referenceCenterX}px ${referenceCenterY}px`);
@@ -341,7 +350,7 @@ LinkeditorPreviewLinks.prototype = {
 
             let referenceCenterY0 = parseInt(link.top)
             targetDiv.attr("data-origin-0-0", `${referenceCenterX0}px ${referenceCenterY0}px`);
-        }
+        }*/
     },
 
     getClipPath(x,y,w,h) {
index 4ce410a4c89ce8072b94dba573b1ac3f92ae7aa3..03584d83c6dad98acb0a61b968ed9b8580275703 100644 (file)
@@ -1,3 +1,6 @@
+#linkeditor-layer-links
+    overflow: hidden
+
 #linkeditor-panel-layers
     font-size: 11px
     color: $color