From 8908b1dce9d59206246bea720e595e447fecf817 Mon Sep 17 00:00:00 2001 From: kodi Date: Sat, 14 Mar 2026 09:59:42 +0100 Subject: [PATCH] feat: contextmenu deel copy toegevoegd --- webui/backend/data/tasks.db | Bin 184320 -> 188416 bytes .../test_ui_smoke_golden.cpython-313.pyc | Bin 31704 -> 32040 bytes .../tests/golden/test_ui_smoke_golden.py | 4 ++++ webui/html/app.js | 14 ++++++++++++++ webui/html/index.html | 1 + 5 files changed, 19 insertions(+) diff --git a/webui/backend/data/tasks.db b/webui/backend/data/tasks.db index 325f4c381d955b25747c86ed1644f4a0aca48609..b3484b6bbd6ad70af429a6da53ad0c9b328f126a 100644 GIT binary patch delta 1584 zcmbu9O>7%Q7>4JY&HDeRA&puBC`m(TYcyv6W`A6&m(?l+RBPgI^BeOPu^Ea-`hnDj~flXcia{cTkoZ{jP zjN_h5yfOot|IQ5jAi&90HcCzi6QIeeXE~NhXjOBGX38FMt1cx~$!og|JFsCKYC5~Km0tQDXF4aBaIg;wgjw$JyIp^PB zf&m*|-eSEWQg32P3T@Y*^N(VJDlXdE(MqM#0U7NqkXA06pP

$=n6Lro#YVrf|G5^idCwR-5Ob(8dmyBb7bax+H6gu@9SNsr$4v z&9bQNKlmJ{g;W^;<)`xX{2EVe;J5t`H}H>f9Q(7${)q9-TevS9M*i=+T;S0Br_@%T z-&1<%<6Kzk=Ns2>%D;OH4%|R7%ETHRfd>1~IUT(*K&kFn5!? zwsi8tUc}6a#DY9UVh083UvlJ(!Z82s6P%lDe+L}`Zs!RS5u0UhBpO5_68)c97#TU> Ml!3_itL(eK0P85HQvd(} delta 315 zcmV-B0mS}*zzcw&3y>QHFaQ7mEs-EU0Wh&(q@M^454r#V001hJ44@jb5g?Zjv%RlJ zzyUg!1#kgFmr8H}Gy(_Kw|;N|)dK-ilQ9rZ1SkVl0hh1k0VKD|bOAaG13v}omj{3W zT@DJ53T6sD3KR+J2vG^bw|0O5A_bE`5LUP9g#j8`0aBL*-~oY`h~NPy0f@J*-~kx} z0q3(Z5aR*2tK|V%S_EzZL;;r$Kmyzb1o#C*1uD1dKmrj20fVzK5Pt)gEl2_rw~j~x zb~gh!2KAQ*fC4j@Jb(fkw^)DzNd}WZ5Lg5$162Z-?u7v)w;hK9 z=CeX8m?zH^Ql?!+o%DwUzjlFSIv2qsy9Br^j8q z4!UBTlm8irOrFal0H*uQOeWv+5}C}&3*qZR=*@EGA&g)JJNY0IccJt-3jweORelKV z38X;==0fPrah6Velm8fqF>efIo~-DpJo$rx665C0lij-+H+OkL4gKV$#>g`Hqk$sh zfyw8+l$j5PvP@3&R%T=ci7_7zh0sSr*}(jxq3n}C0%bYCyyKyqVERNT7nnX7$_=JZ zh4O%C#?zCdeRNsR1fLB)H@VkGmGeyS`QUSwOnLm1C;BJ?#V-KGANt5LUYr~tuD}w? zAAAYK5DFCtzKjU&bOy~Un?rq>SU8-40j;4~B|kYnP;zs4pb#TC=qKj}DNl|MaupIO zE=epZ0VxVj%}GrzNln?jAV^q}eG@RuizWCr@5(;PH2Gx-|K$3-_Q~J#WF{x%>TEX1 vSLWu3Vq!J_UcnN(Il9W5QQU!z(Uoxq$8`zKixQe&7{J^QZakCsR!ai_XVAzW delta 510 zcmZ4Si}A*HM!wIyyj%=Gut;%hW^l|#zJJV24kD8$=&EcsVoBzk{MuJ|@(Llr$+4^= zo6icZV4lp&qcXWvOl9(3u^O {', app_js) diff --git a/webui/html/app.js b/webui/html/app.js index 125d6a1..5dd5684 100644 --- a/webui/html/app.js +++ b/webui/html/app.js @@ -327,6 +327,7 @@ function contextMenuElements() { scope: document.getElementById("context-menu-scope"), target: document.getElementById("context-menu-target"), renameButton: document.getElementById("context-menu-rename-btn"), + copyButton: document.getElementById("context-menu-copy-btn"), moveButton: document.getElementById("context-menu-move-btn"), deleteButton: document.getElementById("context-menu-delete-btn"), }; @@ -370,6 +371,7 @@ function openContextMenu(pane, entry, event) { elements.scope.textContent = isMulti ? "Multi-selection" : "Single item"; elements.target.textContent = isMulti ? `${items.length} selected items` : entry.name; elements.renameButton.classList.toggle("hidden", isMulti); + elements.copyButton.classList.remove("hidden"); elements.moveButton.classList.remove("hidden"); elements.deleteButton.classList.remove("hidden"); @@ -430,6 +432,15 @@ function startContextMenuMove() { openF6Flow(); } +function startContextMenuCopy() { + if (!applyContextMenuSelection()) { + closeContextMenu(); + return; + } + closeContextMenu(); + startCopySelected(); +} + function settingsElements() { return { overlay: document.getElementById("settings-modal"), @@ -3751,6 +3762,9 @@ function setupEvents() { if (contextMenu.renameButton) { contextMenu.renameButton.onclick = startContextMenuRename; } + if (contextMenu.copyButton) { + contextMenu.copyButton.onclick = startContextMenuCopy; + } if (contextMenu.moveButton) { contextMenu.moveButton.onclick = startContextMenuMove; } diff --git a/webui/html/index.html b/webui/html/index.html index 2f4e381..54017f2 100644 --- a/webui/html/index.html +++ b/webui/html/index.html @@ -123,6 +123,7 @@

+