Skip to content

Commit 2ee3f86

Browse files
Ignore leave prompt after folder editor bulk move
1 parent ee5860a commit 2ee3f86

6 files changed

Lines changed: 14 additions & 3 deletions

File tree

archive/folderview.plus-2026.04.04.16.txz.sha256

Lines changed: 0 additions & 1 deletion
This file was deleted.
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
7d604e022b876f59dfb4bc25504d02725b216be0444e05df174d5e4f886ec967 folderview.plus-2026.04.05.12.txz

folderview.plus.plg

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,13 +6,17 @@
66
<!ENTITY launch "Settings/FolderViewPlus">
77
<!ENTITY plugdir "/usr/local/emhttp/plugins/&name;">
88
<!ENTITY pluginURL "https://raw.githubusercontent.com/&github;/dev/folderview.plus.plg">
9-
<!ENTITY version "2026.04.05.11">
10-
<!ENTITY md5 "23ac7408c2a596e977f5bae322b2cbd5">
9+
<!ENTITY version "2026.04.05.12">
10+
<!ENTITY md5 "05481520d279c078afbcbd9feb89831a">
1111
]>
1212

1313
<PLUGIN name="&name;" author="&author;" version="&version;" launch="&launch;" pluginURL="&pluginURL;" icon="folder-icon.png" support="https://forums.unraid.net/topic/197631-plugin-folderview-plus/" min="7.0.0">
1414
<CHANGES>
1515

16+
###2026.04.05.12
17+
- UX: Folder editor flows, previews, and bootstrap behavior.
18+
19+
1620
###2026.04.05.11
1721
- Fix: Folder editor Members-tab bulk move now removes reassigned Docker containers and VMs from the live member list immediately instead of keeping them visible until the editor is submitted or reloaded.
1822

src/folderview.plus/usr/local/emhttp/plugins/folderview.plus/scripts/folder.js

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4379,6 +4379,12 @@ function syncMemberSnapshotBaseline() {
43794379
const baseline = parseSnapshotState(initialSnapshot || computeFormSnapshot());
43804380
const current = parseSnapshotState(computeFormSnapshot());
43814381
baseline.members = Array.isArray(current.members) ? current.members : [];
4382+
if (Object.prototype.hasOwnProperty.call(current.fields || {}, 'containers[]')) {
4383+
baseline.fields = baseline.fields && typeof baseline.fields === 'object' ? baseline.fields : {};
4384+
baseline.fields['containers[]'] = current.fields['containers[]'];
4385+
} else if (baseline.fields && typeof baseline.fields === 'object' && Object.prototype.hasOwnProperty.call(baseline.fields, 'containers[]')) {
4386+
delete baseline.fields['containers[]'];
4387+
}
43824388
initialSnapshot = JSON.stringify(baseline);
43834389
updateUnsavedIndicator();
43844390
updateSectionStateIndicators();

tests/folder-editor-member-bulk-move.test.mjs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -36,6 +36,7 @@ test('folder editor members tab renders compact bulk move controls and blocks un
3636
assert.match(folderJs, /renderMemberBulkMoveTargets\(\);/);
3737
assert.match(folderJs, /applyMemberBulkMoveResultLocally\(plan\.targetFolderId/);
3838
assert.match(folderJs, /syncMemberSnapshotBaseline\(\);/);
39+
assert.match(folderJs, /baseline\.fields\['containers\[\]'\] = current\.fields\['containers\[\]'\];/);
3940
assert.match(folderJs, /selected = selected\.filter\(\(member\) => \{/);
4041
assert.match(folderJs, /choose = choose\.filter\(\(member\) => \{/);
4142
assert.match(folderJs, /memberBulkMoveUndoState = \{/);

0 commit comments

Comments
 (0)