SYMBOL INDEX (142 symbols across 19 files) FILE: scripts/ai-tools.js function animateReorder (line 43) | function animateReorder(element1, element2, direction) { function saveAIToolsSettings (line 104) | function saveAIToolsSettings() { function applyAIToolsSettings (line 130) | function applyAIToolsSettings() { function generateAIToolsForm (line 174) | function generateAIToolsForm(settings) { function showAIToolsSettings (line 241) | function showAIToolsSettings() { function updateReorderButtonStates (line 270) | function updateReorderButtonStates() { function closeAIToolsSettings (line 290) | function closeAIToolsSettings() { function toggleAITools (line 298) | function toggleAITools(event) { FILE: scripts/alert-modal.js function alertPrompt (line 37) | function alertPrompt(message, isAlert = true, okText, cancelText) { function confirmPrompt (line 147) | function confirmPrompt(message, okText, cancelText) { FILE: scripts/backup-restore.js function backupData (line 15) | async function backupData() { function validateAndRestoreData (line 50) | async function validateAndRestoreData(event) { function isValidBackupFile (line 76) | function isValidBackupFile(backup) { function backupIndexedDB (line 82) | async function backupIndexedDB() { function restoreIndexedDB (line 122) | async function restoreIndexedDB(data) { function restoreData (line 154) | async function restoreData(backup) { function base64ToBlob (line 172) | function base64ToBlob(base64) { FILE: scripts/bookmarks.js function updateSortButtons (line 154) | function updateSortButtons() { function updateBookmarkUI (line 165) | function updateBookmarkUI(enabled) { function verifyBookmarkPermission (line 172) | async function verifyBookmarkPermission() { function toggleBookmarkSidebar (line 214) | async function toggleBookmarkSidebar() { function loadBookmarks (line 227) | function loadBookmarks() { function setBookmarkFavicon (line 292) | function setBookmarkFavicon(faviconElement, pageUrl) { function displayBookmarks (line 311) | function displayBookmarks(bookmarkNodes) { function updateBookmark (line 505) | function updateBookmark(bookmarkId, title, url) { FILE: scripts/clock.js function toggleHideState (line 24) | function toggleHideState(isHidden) { function applyClockState (line 33) | function applyClockState(isHidden) { function handleClockVisibility (line 40) | function handleClockVisibility() { function initializeClock (line 78) | async function initializeClock() { FILE: scripts/languages.js constant LRM (line 88) | const LRM = "\u200E"; function localizeNumbers (line 90) | function localizeNumbers(text, language) { function applyLanguage (line 118) | function applyLanguage(lang) { function saveLanguageStatus (line 422) | function saveLanguageStatus(key, languageStatus) { function getLanguageStatus (line 427) | function getLanguageStatus(key) { FILE: scripts/menu-shortcut-page.js function pageReset (line 24) | function pageReset() { FILE: scripts/quotes.js constant MAX_QUOTE_LENGTH (line 17) | const MAX_QUOTE_LENGTH = 140; constant MIN_QUOTES_FOR_LANG (line 18) | const MIN_QUOTES_FOR_LANG = 100; constant ONE_DAY (line 19) | const ONE_DAY = 24 * 60 * 60 * 1000; constant FALLBACK_QUOTE (line 22) | const FALLBACK_QUOTE = { function fitAuthorWidth (line 30) | function fitAuthorWidth() { function clearQuotesStorage (line 38) | function clearQuotesStorage() { function clearOtherLanguageQuotes (line 51) | function clearOtherLanguageQuotes(exceptLang) { function needsDataFetch (line 66) | function needsDataFetch(lang) { function getTargetLanguage (line 103) | function getTargetLanguage(currentLang, metadata) { function fetchMetadata (line 120) | async function fetchMetadata() { function fetchQuotes (line 131) | async function fetchQuotes(lang) { function storeQuotesData (line 143) | function storeQuotesData(lang, quotes, metadata) { function storeNoDataInfo (line 157) | function storeNoDataInfo(lang, metadata) { function getStoredQuotes (line 170) | function getStoredQuotes(lang) { function getTodayDate (line 176) | function getTodayDate() { function getDailyQuoteKey (line 185) | function getDailyQuoteKey(lang) { function storeDailyQuote (line 190) | function storeDailyQuote(lang, quote) { function getDailyQuote (line 196) | function getDailyQuote(lang) { function clearOldDailyQuotes (line 203) | function clearOldDailyQuotes() { function displayFallbackQuote (line 215) | function displayFallbackQuote() { function getQuotesForLanguage (line 222) | async function getQuotesForLanguage(forceRefresh = false) { function displayRandomQuote (line 287) | function displayRandomQuote(quotes) { function loadAndDisplayQuote (line 334) | async function loadAndDisplayQuote(forceRefresh = false) { FILE: scripts/save-load-states.js function saveCheckboxState (line 12) | function saveCheckboxState(key, checkbox) { function loadCheckboxState (line 18) | function loadCheckboxState(key, checkbox) { function saveDisplayStatus (line 32) | function saveDisplayStatus(key, displayStatus) { function loadDisplayStatus (line 37) | function loadDisplayStatus(key, element) { function saveActiveStatus (line 47) | function saveActiveStatus(key, activeStatus) { function loadActiveStatus (line 52) | function loadActiveStatus(key, element) { FILE: scripts/script.js function showToast (line 76) | function showToast() { function hideToast (line 91) | function hideToast() { function startProgress (line 96) | function startProgress() { FILE: scripts/search-suggestions.js function showResultBox (line 59) | function showResultBox() { function hideResultBox (line 65) | function hideResultBox() { function getClientParam (line 201) | function getClientParam() { function getAutocompleteSuggestions (line 211) | async function getAutocompleteSuggestions(query) { function showProxyDisclaimer (line 292) | async function showProxyDisclaimer() { function requestHostPermissions (line 298) | async function requestHostPermissions() { function applySearchSuggestionsState (line 316) | function applySearchSuggestionsState(enabled) { FILE: scripts/search.js function toggleSearchEngines (line 62) | function toggleSearchEngines(category) { function swapDropdown (line 190) | function swapDropdown(selectedElement) { function performSearch (line 206) | function performSearch(query) { function updateSelection (line 263) | function updateSelection() { function getAllEngines (line 410) | function getAllEngines() { function getCurrentSearchEngineIndex (line 415) | function getCurrentSearchEngineIndex() { function switchEngine (line 424) | function switchEngine(direction) { FILE: scripts/shortcuts.js method name (line 11) | get name() { return translations[currentLanguage]?.shortcutDefaultN... method inputName (line 13) | get inputName() { return translations[currentLanguage]?.shortcutInputNam... method inputUrl (line 14) | get inputUrl() { return translations[currentLanguage]?.shortcutInputUrl... method inputIcon (line 15) | get inputIcon() { return translations[currentLanguage]?.shortcutInputIco... function loadSettings (line 86) | function loadSettings() { function setupEventListeners (line 102) | function setupEventListeners() { function handleNewShortcutClick (line 114) | function handleNewShortcutClick() { function loadShortcuts (line 138) | function loadShortcuts() { function createShortcutEntry (line 165) | function createShortcutEntry(name, url, iconUrl, deleteInactive, index) { function createShortcutElement (line 295) | function createShortcutElement(name, url, icon, index) { function renderShortcut (line 323) | function renderShortcut(name, url, icon, index) { function escapeHtml (line 334) | function escapeHtml(unsafe) { function isValidCustomIconUrl (line 345) | function isValidCustomIconUrl(url) { function sanitizeSvg (line 358) | function sanitizeSvg(raw) { function processIconInput (line 383) | function processIconInput(raw) { function normalizeUrl (line 396) | function normalizeUrl(url) { function getLogoHtml (line 404) | function getLogoHtml(name, url, customIcon = "") { function validateIconInput (line 502) | function validateIconInput(input) { function attachInputListeners (line 523) | function attachInputListeners(inputs, entry) { function setupDragAndDrop (line 552) | function setupDragAndDrop() { function updateShortcutIndices (line 797) | function updateShortcutIndices() { function saveShortcutOrder (line 804) | function saveShortcutOrder() { function hasOrderChanged (line 841) | function hasOrderChanged(newOrder) { function renderAllShortcuts (line 851) | function renderAllShortcuts(order) { function handleShortcutsToggle (line 863) | function handleShortcutsToggle() { function handleAdaptiveIconToggle (line 878) | function handleAdaptiveIconToggle() { function addNewShortcut (line 888) | function addNewShortcut() { function deleteShortcut (line 913) | function deleteShortcut(entry) { function resetShortcuts (line 942) | async function resetShortcuts() { function saveShortcut (line 976) | function saveShortcut(entry) { FILE: scripts/theme.js function moveIndicator (line 34) | function moveIndicator(theme) { function applyThemeMode (line 42) | function applyThemeMode(theme) { function initializeThemeMode (line 63) | function initializeThemeMode() { function ApplyLoadingColor (line 119) | function ApplyLoadingColor() { function changeFaviconColor (line 169) | function changeFaviconColor() { function adjustHexColor (line 191) | function adjustHexColor(hex, factor, isLighten = true) { function isNearWhite (line 211) | function isNearWhite(hex, threshold = 240) { FILE: scripts/todo-list.js function sanitizeInput (line 29) | function sanitizeInput(input) { function addtodoItem (line 36) | function addtodoItem() { function createTodoItemDOM (line 50) | function createTodoItemDOM(id, title, status, pinned) { function saveEdit (line 135) | function saveEdit() { function cancelEdit (line 152) | function cancelEdit() { function SaveToDoData (line 183) | function SaveToDoData() { function ShowToDoList (line 188) | function ShowToDoList() { FILE: scripts/voice-search.js function isSupportedBrowser (line 10) | function isSupportedBrowser() { function toggleMicIconVisibility (line 41) | function toggleMicIconVisibility(isVisible) { function initializeSpeechRecognition (line 58) | function initializeSpeechRecognition() { FILE: scripts/wallpaper.js function openDatabase (line 17) | function openDatabase() { function saveImageToIndexedDB (line 30) | async function saveImageToIndexedDB(imageBlob, isRandom) { function loadImageAndDetails (line 46) | async function loadImageAndDetails() { function getFromStore (line 55) | function getFromStore(db, key) { function clearImageFromIndexedDB (line 67) | async function clearImageFromIndexedDB() { constant RANDOM_IMAGE_URL (line 103) | const RANDOM_IMAGE_URL = "https://picsum.photos/1920/1080"; function applyRandomImage (line 105) | async function applyRandomImage(showConfirmation = true) { function toggleBackgroundType (line 126) | function toggleBackgroundType(hasWallpaper) { function checkAndUpdateImage (line 131) | function checkAndUpdateImage() { FILE: scripts/weather.js function applyWeatherState (line 19) | function applyWeatherState(hidden) { function getWeatherData (line 51) | async function getWeatherData() { FILE: scripts/widgets-transparency.js function setSliderPosition (line 16) | function setSliderPosition(percentage) { function handleDrag (line 25) | function handleDrag(e) { function startDrag (line 37) | function startDrag() {