Skip to content

Commit e65d7d9

Browse files
committed
Исправлена ошибка, из-за которой миниатюры отображались не сразу
1 parent 6564b5e commit e65d7d9

File tree

2 files changed

+25
-20
lines changed

2 files changed

+25
-20
lines changed

manifest.json

+1-1
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
"manifest_version": 2,
33
"name": "__MSG_extensionName__",
44
"description": "__MSG_extensionDescription__",
5-
"version": "1.0.3c",
5+
"version": "1.0.3d",
66
"default_locale": "en",
77

88
"developer":

mlsd.js

+24-19
Original file line numberDiff line numberDiff line change
@@ -443,20 +443,6 @@ export function swapElements(pathA, pathB) {
443443
folderA.elements[numberA - 1].number = numberA;
444444
folderB.elements[numberB - 1].number = numberB;
445445

446-
function arraysEqual(arr1, arr2) {
447-
if (arr1.length != arr2.length) {
448-
return false;
449-
}
450-
451-
for (let i = 0; i < arr1.length; ++i) {
452-
if (arr1[i] != arr2[i]) {
453-
return false;
454-
}
455-
}
456-
457-
return true;
458-
}
459-
460446
if (arraysEqual(pathA, currPath)) {
461447
rebuildElement(folderA.elements[numberA - 1]);
462448
}
@@ -466,6 +452,23 @@ export function swapElements(pathA, pathB) {
466452
browser.storage.local.set({structure: rootFolder});
467453
}
468454

455+
/**
456+
* Сравнение двух массивов поэлементно
457+
*/
458+
function arraysEqual(arr1, arr2) {
459+
if (arr1.length != arr2.length) {
460+
return false;
461+
}
462+
463+
for (let i = 0; i < arr1.length; ++i) {
464+
if (arr1[i] != arr2[i]) {
465+
return false;
466+
}
467+
}
468+
469+
return true;
470+
}
471+
469472
//https://stackoverflow.com/questions/1369035/how-do-i-prevent-a-parents-onclick-event-from-firing-when-a-child-anchor-is-cli
470473
/**
471474
* Проверка цели события
@@ -829,10 +832,11 @@ function onCurtainClicked(event) {
829832
* @param Element element Новый элемент
830833
*/
831834
export function overwriteElement(path, element) {
832-
let folder = getFolderByPath(path, rootFolder);
835+
let pathOrig = Array.from(path);
836+
let folder = getFolderByPath(pathOrig, rootFolder);
833837
//WARN: element = verifyElementObject(element);
834838
folder.elements[element.number - 1] = element;
835-
if (path == currPath) {
839+
if (arraysEqual(pathOrig, currPath)) {
836840
rebuildElement(element);
837841
}
838842
browser.storage.local.set({structure: rootFolder});
@@ -849,15 +853,16 @@ export function overwriteElement(path, element) {
849853
* @param Element element Новый элемент
850854
*/
851855
export function restoreElement(path, number) {
856+
let pathOrig = Array.from(path);
852857
browser.storage.local.get("structure").then(function(result) {
853-
let folder = getFolderByPath(path, result.structure);
858+
let folder = getFolderByPath(pathOrig, result.structure);
854859
let element = folder.elements[number - 1];
855860

856-
let folderFromStructure = getFolderByPath(path, rootFolder);
861+
let folderFromStructure = getFolderByPath(pathOrig, rootFolder);
857862
//WARN: element = verifyElementObject(element);
858863
folderFromStructure.elements[element.number - 1] = element;
859864

860-
if (path == currPath) {
865+
if (arraysEqual(pathOrig, currPath)) {
861866
rebuildElement(element);
862867
}
863868
}, onPromiseFailed);

0 commit comments

Comments
 (0)