()
| 5041 | * View mode toggle |
| 5042 | */ |
| 5043 | export function createViewToggleButton() { |
| 5044 | let toggleBtn = document.getElementById("toggleViewBtn"); |
| 5045 | if (!toggleBtn) { |
| 5046 | toggleBtn = document.createElement("button"); |
| 5047 | toggleBtn.id = "toggleViewBtn"; |
| 5048 | toggleBtn.classList.add("btn", "action-btn", "icon-only", "btn-light"); |
| 5049 | |
| 5050 | if (window.viewMode === "gallery") { |
| 5051 | toggleBtn.innerHTML = '<i class="material-icons">view_list</i>'; |
| 5052 | toggleBtn.title = t("switch_to_table_view"); |
| 5053 | } else { |
| 5054 | toggleBtn.innerHTML = '<i class="material-icons">view_module</i>'; |
| 5055 | toggleBtn.title = t("switch_to_gallery_view"); |
| 5056 | } |
| 5057 | |
| 5058 | const actionsBar = document.getElementById("fileActionsBar"); |
| 5059 | const headerButtons = document.querySelector(".header-buttons"); |
| 5060 | |
| 5061 | if (actionsBar) { |
| 5062 | actionsBar.appendChild(toggleBtn); |
| 5063 | } else if (headerButtons && headerButtons.lastElementChild) { |
| 5064 | headerButtons.insertBefore(toggleBtn, headerButtons.lastElementChild); |
| 5065 | } else if (headerButtons) { |
| 5066 | headerButtons.appendChild(toggleBtn); |
| 5067 | } |
| 5068 | } else { |
| 5069 | const actionsBar = document.getElementById("fileActionsBar"); |
| 5070 | if (actionsBar && toggleBtn.parentElement !== actionsBar) { |
| 5071 | actionsBar.appendChild(toggleBtn); |
| 5072 | } |
| 5073 | } |
| 5074 | |
| 5075 | toggleBtn.onclick = () => { |
| 5076 | hideViewOptionsPopover(); |
| 5077 | window.viewMode = window.viewMode === "gallery" ? "table" : "gallery"; |
| 5078 | localStorage.setItem("viewMode", window.viewMode); |
| 5079 | loadFileList(window.currentFolder); |
| 5080 | if (window.viewMode === "gallery") { |
| 5081 | toggleBtn.innerHTML = '<i class="material-icons">view_list</i>'; |
| 5082 | toggleBtn.title = t("switch_to_table_view"); |
| 5083 | } else { |
| 5084 | toggleBtn.innerHTML = '<i class="material-icons">view_module</i>'; |
| 5085 | toggleBtn.title = t("switch_to_gallery_view"); |
| 5086 | } |
| 5087 | }; |
| 5088 | |
| 5089 | return toggleBtn; |
| 5090 | } |
| 5091 | |
| 5092 | function ensureSearchEverywhereButton() { |
| 5093 | const cfg = window.__FR_PRO_SEARCH_CFG__ || {}; |
no test coverage detected