MCPcopy Create free account
hub / github.com/error311/FileRise / createViewToggleButton

Function createViewToggleButton

public/js/fileListView.js:5043–5090  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

5041 * View mode toggle
5042 */
5043export 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
5092function ensureSearchEverywhereButton() {
5093 const cfg = window.__FR_PRO_SEARCH_CFG__ || {};

Callers 2

renderFileTableFunction · 0.85
renderGalleryViewFunction · 0.85

Calls 3

tFunction · 0.85
hideViewOptionsPopoverFunction · 0.85
loadFileListFunction · 0.85

Tested by

no test coverage detected