From fd9fad082236ed1d5af6c3d37dc4a26e997f52cd Mon Sep 17 00:00:00 2001 From: Michail Vourlakos <mvourlakos@gmail.com> Date: Mon, 21 Jan 2019 20:16:13 +0200 Subject: [PATCH] IMPORTANT:improve splitter positioning on startup --when there was only one applet in the Center under Justify mode then during startup its positioning broke as it was placed faulty at the far right BUG: 403469 --- .../package/contents/code/LayoutManager.js | 25 ++++++++++++++++--- 1 file changed, 21 insertions(+), 4 deletions(-) diff --git a/containment/package/contents/code/LayoutManager.js b/containment/package/contents/code/LayoutManager.js index 2179bef0a..b9d6589bb 100644 --- a/containment/package/contents/code/LayoutManager.js +++ b/containment/package/contents/code/LayoutManager.js @@ -62,6 +62,9 @@ function restore() { // console.log("splitters restored:"+plasmoid.configuration.splitterPosition+ " - " + plasmoid.configuration.splitterPosition2); //add the splitters in the correct position if they exist + + var validSplitter1 = -1; + if(plasmoid.configuration.splitterPosition !== -1){ var missingApplets = 0; @@ -71,19 +74,33 @@ function restore() { } } - root.addInternalViewSplitter(plasmoid.configuration.splitterPosition-missingApplets); + validSplitter1 = plasmoid.configuration.splitterPosition-missingApplets; + + // console.log("INTERNAL SPLITTER 1 ::: " + plasmoid.configuration.splitterPosition); + // console.log("UNDEFINEDSPLITTER 1 ::: " + missingApplets); + // console.log("VALID SPLITTER 1 ::: " + validSplitter1); + + root.addInternalViewSplitter(validSplitter1); } if(plasmoid.configuration.splitterPosition2 !== -1){ var missingApplets2 = 0; + var spacers = plasmoid.configuration.splitterPosition !== -1 ? 1 : 0; + var secondPartIndex = plasmoid.configuration.splitterPosition !== -1 ? plasmoid.configuration.splitterPosition+1 : 0; - for (var i=0; i<plasmoid.configuration.splitterPosition2; ++i) { - if (appletsOrder[i] === undefined) { + for (var i=secondPartIndex; i<plasmoid.configuration.splitterPosition2; ++i) { + if (appletsOrder[i-spacers] === undefined) { missingApplets2 = missingApplets2 + 1; } } - root.addInternalViewSplitter(plasmoid.configuration.splitterPosition2-missingApplets2); + var validSplitter2 = plasmoid.configuration.splitterPosition2-missingApplets2; + + // console.log("INTERNAL SPLITTER 2 ::: " + plasmoid.configuration.splitterPosition2); + // console.log("UNDEFINEDSPLITTER 2 ::: " + missingApplets2); + // console.log("VALID SPLITTER 2 ::: " + validSplitter2); + + root.addInternalViewSplitter(validSplitter2); } //rewrite, so if in the orders there were now invalid ids or if some were missing creates a correct list instead