diff --git a/index.html b/index.html index 7d403ad6..4eaab68a 100644 --- a/index.html +++ b/index.html @@ -100,20 +100,15 @@ - + d="M24 12.8116L23.9999 12.8541C23.9998 12.872 23.9996 12.8899 23.9994 12.9078C23.9998 12.9287 24 12.9498 24 12.971C24 16.3073 21.4007 19.2604 19.6614 21.2367C19.1567 21.8101 18.7244 22.3013 18.449 22.6957C17.4694 24.0986 16.9524 25.6184 16.8163 26.2029C16.8163 26.6431 16.4509 27 16 27C15.5491 27 15.1837 26.6431 15.1837 26.2029C15.0476 25.6184 14.5306 24.0986 13.551 22.6957C13.2756 22.3013 12.8433 21.8101 12.3386 21.2367C10.5993 19.2604 8 16.3073 8 12.971C8 12.9498 8.0002 12.9287 8.0006 12.9078C8.0002 12.8758 8 12.8437 8 12.8116C8 8.49736 11.5817 5 16 5C20.4183 5 24 8.49736 24 12.8116ZM16 15.6812C17.7132 15.6812 19.102 14.325 19.102 12.6522C19.102 10.9793 17.7132 9.62319 16 9.62319C14.2868 9.62319 12.898 10.9793 12.898 12.6522C12.898 14.325 14.2868 15.6812 16 15.6812Z" /> - + d="M23.1054 9.21856C22.1258 7.37546 20.4161 5.96177 18.3504 5.34277L13.7559 10.5615C14.3208 9.98352 15.1174 9.62346 16.0002 9.62346C17.7134 9.62346 19.1022 10.9796 19.1022 12.6524C19.1022 13.3349 18.8711 13.9646 18.4811 14.4711L23.1054 9.21856Z" /> - + d="M12.4311 21.3425C12.4004 21.3076 12.3695 21.2725 12.3383 21.2371C11.1918 19.9344 9.67162 18.2073 8.76855 16.2257L13.5439 10.8018C13.1387 11.3136 12.8976 11.9556 12.8976 12.6526C12.8976 14.3254 14.2865 15.6816 15.9997 15.6816C16.8675 15.6816 17.6521 15.3336 18.2151 14.7727L12.4311 21.3425Z" /> - + d="M9.89288 7.76562C8.71207 9.12685 8 10.8881 8 12.8117C8 12.8438 8.0002 12.8759 8.0006 12.9079C8.0002 12.9288 8 12.9499 8 12.9711C8 14.1082 8.30196 15.2009 8.76889 16.2254L13.5362 10.8106L9.89288 7.76562Z" /> - + d="M18.3499 5.34254C17.6068 5.11988 16.8176 5 15.9997 5C13.5514 5 11.36 6.07387 9.89258 7.76553L13.5359 10.8105L13.5438 10.8015C13.6101 10.7178 13.6807 10.6375 13.7554 10.5611L18.3499 5.34254Z" /> @@ -683,7 +678,7 @@ fill="white" fill-rule="evenodd" /> -
AI-Tools
+
AI Tools
@@ -1108,7 +1103,7 @@

Material You NewTab

- Upload Wallpaper + Upload Wallpaper @@ -1132,7 +1127,6 @@

Material You NewTab

-
diff --git a/languages.js b/languages.js index 15d90621..4d457a8f 100644 --- a/languages.js +++ b/languages.js @@ -19,7 +19,7 @@ const translations = { "editShortcutsText": "Edit Shortcuts", "shortcutsInfoText": "Choose which shortcuts get shown", "editShortcutsList": "Saved Shortcuts", - 'editShortcutsListInfo': 'You can add new shortcuts by clicking the "+" icon or edit existing ones by clicking on the shortcut name or URL', + 'editShortcutsListInfo': 'You can add new shortcuts by clicking the "+" icon or edit existing ones by clicking on the shortcut name or URL.', "adaptiveIconText": "Adaptive Icon Shapes", "adaptiveIconInfoText": "Shortcut icons will appear smaller", "ai_tools_button": "AI-Tools", @@ -105,6 +105,9 @@ const translations = { "perplexity": "Perplexity", "firefly": "Adobe Firefly", "github": "GitHub", + + // Wallpaper and alerts + "uploadWallpaperText": "Upload Wallpaper", }, @@ -313,7 +316,7 @@ const translations = { "editShortcutsText": "शॉर्टकट्स संपादित करें", "shortcutsInfoText": "निर्धारित करें कि कौन से शॉर्टकट प्रदर्शित किए जाएँ", "editShortcutsList": "सहेजे गए शॉर्टकट", - 'editShortcutsListInfo': 'आप "+" आइकन पर क्लिक करके नए शॉर्टकट्स जोड़ सकते हैं या शॉर्टकट के नाम या URL पर क्लिक करके मौजूदा शॉर्टकट्स को संपादित कर सकते हैं', + 'editShortcutsListInfo': 'आप "+" आइकन पर क्लिक करके नए शॉर्टकट्स जोड़ सकते हैं या शॉर्टकट के नाम या URL पर क्लिक करके मौजूदा शॉर्टकट्स को संपादित कर सकते हैं।', "adaptiveIconText": "अनुकूल आइकन आकृतियाँ", "adaptiveIconInfoText": "शॉर्टकट आइकन छोटे आकार में प्रदर्शित करें", "ai_tools_button": "AI-उपकरण", @@ -400,6 +403,9 @@ const translations = { "firefly": "एडोबी फायरफ्लाई", "github": "गिटहब", "googleAppsHover": "गूगल ऐप्स", + + // Wallpaper and alerts + "uploadWallpaperText": "वॉलपेपर अपलोड करें", }, @@ -676,7 +682,7 @@ const translations = { "editShortcutsText": "শর্টকাট সম্পাদনা করুন", "shortcutsInfoText": "যেসব শর্টকাট প্রদর্শিত হবে তা নির্বাচন করুন", "editShortcutsList": "সংরক্ষিত শর্টকাট", - 'editShortcutsListInfo': 'আপনি "+" আইকনে ক্লিক করে নতুন শর্টকাট যোগ করতে পারেন অথবা শর্টকাটের নাম বা URL-এ ক্লিক করে বিদ্যমান শর্টকাট সম্পাদনা করতে পারেন', + 'editShortcutsListInfo': 'আপনি "+" আইকনে ক্লিক করে নতুন শর্টকাট যোগ করতে পারেন অথবা শর্টকাটের নাম বা URL-এ ক্লিক করে বিদ্যমান শর্টকাট সম্পাদনা করতে পারেন।', "adaptiveIconText": "অ্যাডাপ্টিভ আইকন আকার", "adaptiveIconInfoText": "শর্টকাট আইকন ছোট আকারে প্রদর্শন হবে", "ai_tools_button": "AI সরঞ্জাম", @@ -764,6 +770,9 @@ const translations = { "firefly": "এডোবি ফায়ারফ্লাই", "github": "গিটহাব", "googleAppsHover": "গুগল অ্যাপস", + + // Wallpaper and alerts + "uploadWallpaperText": "ওয়ালপেপার আপলোড করুন", }, @@ -1425,7 +1434,7 @@ const translations = { "editShortcutsText": "शॉर्टकट्स संपादित करा", "shortcutsInfoText": "कोणते शॉर्टकट दाखवायचे ते निवडा", "editShortcutsList": "जतन केलेले शॉर्टकट्स", - 'editShortcutsListInfo': 'आपण "+" आयकॉनवर क्लिक करून नवीन शॉर्टकट्स जोडू शकता किंवा शॉर्टकटच्या नावावर किंवा URL वर क्लिक करून विद्यमान शॉर्टकट्स संपादित करू शकता', + 'editShortcutsListInfo': 'आपण "+" आयकॉनवर क्लिक करून नवीन शॉर्टकट्स जोडू शकता किंवा शॉर्टकटच्या नावावर किंवा URL वर क्लिक करून विद्यमान शॉर्टकट्स संपादित करू शकता।', "adaptiveIconText": "अनुकूल आयकॉन आकार", "adaptiveIconInfoText": "शॉर्टकट आयकॉन छोटे दिसतील", "ai_tools_button": "AI साधने", @@ -1512,6 +1521,9 @@ const translations = { "perplexity": "पर्प्लेक्सिटी", "firefly": "अॅडोबी फायरफ्लाय", "github": "गिटहब", + + // Wallpaper and alerts + "uploadWallpaperText": "वॉलपेपर अपलोड करा", }, }; @@ -1622,7 +1634,8 @@ function applyLanguage(lang) { { id: 'perplexity', key: 'perplexity' }, { id: 'firefly', key: 'firefly' }, { id: 'github', key: 'github' }, - { id: 'googleAppsHover', key: 'googleAppsHover' } + { id: 'googleAppsHover', key: 'googleAppsHover' }, + { id: 'uploadWallpaperText', key: 'uploadWallpaperText' }, ]; diff --git a/script.js b/script.js index cf9c43b0..d0da3abe 100644 --- a/script.js +++ b/script.js @@ -1041,18 +1041,32 @@ const applySelectedTheme = (colorValue) => { fill: #909090; } - #userText { - text-shadow: 1px 1px 2px rgba(0, 0, 0, 0.2), - -1px -1px 2px rgba(0, 0, 0, 0.2), - 1px -1px 2px rgba(0, 0, 0, 0.2), - -1px 1px 2px rgba(0, 0, 0, 0.2); + #userText, #date, .shortcuts .shortcut-name { + text-shadow: 1px 1px 15px rgba(15, 15, 15, 0.9), + -1px -1px 15px rgba(15, 15, 15, 0.9), + 1px -1px 15px rgba(15, 15, 15, 0.9), + -1px 1px 15px rgba(15, 15, 15, 0.9) !important; } - #date { - text-shadow: 1px 1px 2px rgba(0, 0, 0, 0.2), - -1px -1px 2px rgba(0, 0, 0, 0.2), - 1px -1px 2px rgba(0, 0, 0, 0.2), - -1px 1px 2px rgba(0, 0, 0, 0.2); + .uploadButton, + .randomButton{ + background-color: var(--whitishColor-dark); + color: var(--darkColor-blue); + } + + .uploadButton:hover, + .randomButton:hover, + .clearButton{ + background-color: var(--darkColor-blue); + color: var(--whitishColor-dark); + } + + .clearButton:hover{ + background-color: var(--whitishColor-dark) !important; + } + + .micIcon{ + background-color: var(--whitishColor-dark); } #minute, #minute::after, #second::after { @@ -1390,7 +1404,9 @@ document.getElementById('imageUpload').addEventListener('change', function (even `This may impact performance or image may fail to load properly.`); } document.body.style.setProperty('--bg-image', `url(${e.target.result})`); - saveImageToIndexedDB(e.target.result, false).catch(error => console.error(error)); + saveImageToIndexedDB(e.target.result, false) + .then(() => updateTextShadow(true)) + .catch(error => console.error(error)); }; image.src = e.target.result; }; @@ -1400,19 +1416,36 @@ document.getElementById('imageUpload').addEventListener('change', function (even // Fetch and apply random image as background const RANDOM_IMAGE_URL = 'https://picsum.photos/1920/1080'; -async function applyRandomImage() { - if (confirm('Do you want to set a random image as wallpaper?')) { - try { - const response = await fetch(RANDOM_IMAGE_URL); - const imageUrl = response.url; - document.body.style.setProperty('--bg-image', `url(${imageUrl})`); - await saveImageToIndexedDB(imageUrl, true); - } catch (error) { - console.error('Error fetching random image:', error); - } +async function applyRandomImage(showConfirmation = true) { + if (showConfirmation && !confirm('Would you like to set a new image as your wallpaper for the day?')) { + return; + } + try { + const response = await fetch(RANDOM_IMAGE_URL); + const imageUrl = response.url; + document.body.style.setProperty('--bg-image', `url(${imageUrl})`); + await saveImageToIndexedDB(imageUrl, true); + updateTextShadow(true); + } catch (error) { + console.error('Error fetching random image:', error); } } +// Function to update text-shadow styles with animation +function updateTextShadow(hasWallpaper) { + const elements = [document.getElementById('userText'), document.getElementById('date'), ...document.querySelectorAll('.shortcuts:hover .shortcut-name')]; + elements.forEach(element => { + if (hasWallpaper) { + element.style.textShadow = '1px 1px 15px rgba(255, 255, 255, 0.9), ' + + '-1px -1px 15px rgba(255, 255, 255, 0.9), ' + + '1px -1px 15px rgba(255, 255, 255, 0.9), ' + + '-1px 1px 15px rgba(255, 255, 255, 0.9)'; + } else { + element.style.textShadow = 'none'; // Remove the text-shadow + } + }); +} + // Check and update image on page load function checkAndUpdateImage() { loadImageAndDetails() @@ -1420,16 +1453,27 @@ function checkAndUpdateImage() { const now = new Date(); const lastUpdate = new Date(savedTimestamp); - if (!savedTimestamp || isNaN(lastUpdate)) return; - if (!savedImage || imageType === 'upload') return; + if (!savedTimestamp || isNaN(lastUpdate)) { + updateTextShadow(false); + return; + } + + if (!savedImage || imageType === 'upload') { + updateTextShadow(false); + return; + } if (lastUpdate.toDateString() !== now.toDateString()) { - applyRandomImage(); + applyRandomImage(false); } else { document.body.style.setProperty('--bg-image', `url(${savedImage})`); + updateTextShadow(true); } }) - .catch((error) => console.error(error)); + .catch((error) => { + console.error(error); + updateTextShadow(false); + }); } // Event listeners for buttons @@ -1437,10 +1481,15 @@ document.getElementById('uploadTrigger').addEventListener('click', () => documen document.getElementById('clearImage').addEventListener('click', function () { loadImageFromIndexedDB() .then((savedImage) => { - if (savedImage && confirm('Are you sure you want to clear the background image?')) { - clearImageFromIndexedDB() - .then(() => document.body.style.removeProperty('--bg-image')) - .catch((error) => console.error(error)); + if (savedImage) { + if (confirm('Are you sure you want to clear the background image?')) { + clearImageFromIndexedDB() + .then(() => { + document.body.style.removeProperty('--bg-image'); + updateTextShadow(false); + }) + .catch((error) => console.error(error)); + } } else { alert('No background image is currently set.'); } diff --git a/style.css b/style.css index dc7feb2f..7a1c7489 100644 --- a/style.css +++ b/style.css @@ -584,28 +584,20 @@ body { /*bottom: 18px; */ /*Because search engines has margin-bottom 20px*/ bottom: 8px; - left: 5px; + left: 10px; + /* text-align: center; */ } #userText { font-family: "poppins", "Poppins", serif; font-size: 1.4rem; margin-bottom: 10px; - text-shadow: - 1px 1px 2px rgba(255, 255, 255, 0.2), - -1px -1px 2px rgba(255, 255, 255, 0.2), - 1px -1px 2px rgba(255, 255, 255, 0.2), - -1px 1px 2px rgba(255, 255, 255, 0.2); + transition: text-shadow 0.3s ease-in-out; } #date { font-size: 1.4rem; - /* text-align: center; */ - text-shadow: - 1px 1px 2px rgba(255, 255, 255, 0.2), - -1px -1px 2px rgba(255, 255, 255, 0.2), - 1px -1px 2px rgba(255, 255, 255, 0.2), - -1px 1px 2px rgba(255, 255, 255, 0.2); + transition: text-shadow 0.3s ease-in-out; } .digidate { @@ -2025,6 +2017,7 @@ input:checked + .toggle:before { color: var(--darkColor-blue); padding: 10px 20px; font-size: 1rem; + /*white-space: nowrap; */ border: 2px solid transparent; border-radius: 26px; cursor: pointer;