From df7068e853721ea53527a6d27db17e9d6b609988 Mon Sep 17 00:00:00 2001 From: Nonop <68190434+nonop-on-github@users.noreply.github.com> Date: Sat, 21 Jun 2025 09:34:40 +0200 Subject: [PATCH 1/5] Create manifest.json --- submissions/ClickToLens/manifest.json | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) create mode 100644 submissions/ClickToLens/manifest.json diff --git a/submissions/ClickToLens/manifest.json b/submissions/ClickToLens/manifest.json new file mode 100644 index 00000000..3c955367 --- /dev/null +++ b/submissions/ClickToLens/manifest.json @@ -0,0 +1,17 @@ +{ + "manifest_version": 3, + "name": "ClickToLens", + "version": "1.0", + "description": "Search any image with Google Lens and other search engines", + "permissions": [ + "contextMenus" + ], + "background": { + "service_worker": "background.js" + }, + "icons": { + "16": "icons/icon16.png", + "48": "icons/icon48.png", + "128": "icons/icon128.png" + } +} From 3da30fd89b2f1a9af537d63f08467f2aa3427515 Mon Sep 17 00:00:00 2001 From: Nonop <68190434+nonop-on-github@users.noreply.github.com> Date: Sat, 21 Jun 2025 09:37:08 +0200 Subject: [PATCH 2/5] Add files via upload --- submissions/ClickToLens/README.md | 32 ++++++++++++ submissions/ClickToLens/background.js | 73 +++++++++++++++++++++++++++ 2 files changed, 105 insertions(+) create mode 100644 submissions/ClickToLens/README.md create mode 100644 submissions/ClickToLens/background.js diff --git a/submissions/ClickToLens/README.md b/submissions/ClickToLens/README.md new file mode 100644 index 00000000..d56d6dc6 --- /dev/null +++ b/submissions/ClickToLens/README.md @@ -0,0 +1,32 @@ +# ClickToLens + +ClickToLens is a Chrome extension that allows you to quickly capture any with a right-click and analyze the image using various image search engines. + +**Supported search engines:** + +* Google Lens +* Yandex Images +* Bing Images +* TinEye + +## Installation + +1. Download the extension files from the repository. +2. Open Chrome and navigate to `chrome://extensions/`. +3. Enable "Developer mode" in the top right corner. +4. Click "Load unpacked" and select the directory containing the extension files. + +## Usage + +1. Right-click on any image. +2. Select "ClickToLens" from the context menu. +3. Choose the search engine you want to use to analyze the captured image. +4. The image will be automatically sent to the selected search engine, and the results will be displayed in a new tab. + +## Contributing + +Contributions are welcome! Please open an issue or submit a pull request. + +## License + +This project is licensed under the MIT License. diff --git a/submissions/ClickToLens/background.js b/submissions/ClickToLens/background.js new file mode 100644 index 00000000..59324d6e --- /dev/null +++ b/submissions/ClickToLens/background.js @@ -0,0 +1,73 @@ +chrome.runtime.onInstalled.addListener(() => { + chrome.contextMenus.create({ + id: "searchWithGoogleLens", + title: "Search with Google Lens", + contexts: ["image"] + }); + + chrome.contextMenus.create({ + id: "searchOtherEnginesParent", + title: "Search with Other Engines", + contexts: ["image"] + }); + + chrome.contextMenus.create({ + id: "searchBingImages", + title: "Bing Images", + parentId: "searchOtherEnginesParent", + contexts: ["image"] + }); + + chrome.contextMenus.create({ + id: "searchYandexImages", + title: "Yandex Images", + parentId: "searchOtherEnginesParent", + contexts: ["image"] + }); + + chrome.contextMenus.create({ + id: "searchTinEye", + title: "TinEye", + parentId: "searchOtherEnginesParent", + contexts: ["image"] + }); +}); + +chrome.contextMenus.onClicked.addListener((info, tab) => { + if (info.menuItemId === "searchOtherEnginesParent") { + return; + } + + const imageUrl = info.srcUrl; + let searchUrl = ''; + + if (!imageUrl) { + console.error("No image URL found for the clicked item."); + return; + } + + switch (info.menuItemId) { + case "searchWithGoogleLens": + searchUrl = `https://lens.google.com/uploadbyurl?url=${encodeURIComponent(imageUrl)}`; + break; + case "searchBingImages": + searchUrl = `https://www.bing.com/images/search?view=detailv2&iss=SBI&form=SBIIRP&sbisrc=UrlPaste&q=imgurl:${encodeURIComponent(imageUrl)}`; + break; + case "searchYandexImages": + searchUrl = `https://yandex.com/images/search?url=${encodeURIComponent(imageUrl)}&rpt=imageview`; + break; + case "searchTinEye": + searchUrl = `https://tineye.com/search?url=${encodeURIComponent(imageUrl)}`; + break; + default: + console.error("Unknown menu item ID clicked:", info.menuItemId); + return; + } + + if (searchUrl) { + chrome.tabs.create({ + url: searchUrl, + index: tab.index + 1 + }); + } +}); From 0ba3c85dcdf192a62ef55f1404659fb6bc449745 Mon Sep 17 00:00:00 2001 From: Nonop <68190434+nonop-on-github@users.noreply.github.com> Date: Sat, 21 Jun 2025 09:37:45 +0200 Subject: [PATCH 3/5] Create lol --- submissions/ClickToLens/icons/lol | 1 + 1 file changed, 1 insertion(+) create mode 100644 submissions/ClickToLens/icons/lol diff --git a/submissions/ClickToLens/icons/lol b/submissions/ClickToLens/icons/lol new file mode 100644 index 00000000..8b137891 --- /dev/null +++ b/submissions/ClickToLens/icons/lol @@ -0,0 +1 @@ + From a9be6953edbc9d047597d0a398f6aab6955750e7 Mon Sep 17 00:00:00 2001 From: Nonop <68190434+nonop-on-github@users.noreply.github.com> Date: Sat, 21 Jun 2025 09:38:01 +0200 Subject: [PATCH 4/5] Add files via upload --- submissions/ClickToLens/icons/icon128.png | Bin 0 -> 1678 bytes submissions/ClickToLens/icons/icon16.png | Bin 0 -> 361 bytes submissions/ClickToLens/icons/icon48.png | Bin 0 -> 728 bytes 3 files changed, 0 insertions(+), 0 deletions(-) create mode 100644 submissions/ClickToLens/icons/icon128.png create mode 100644 submissions/ClickToLens/icons/icon16.png create mode 100644 submissions/ClickToLens/icons/icon48.png diff --git a/submissions/ClickToLens/icons/icon128.png b/submissions/ClickToLens/icons/icon128.png new file mode 100644 index 0000000000000000000000000000000000000000..2e92f89e8340da85255be33ebd1efd747af839f2 GIT binary patch literal 1678 zcmbW2`#;l*1I9mNa@}lMOMJ07(Omb9h9o0wF3ns^?&`Q5mP;Mimdh)*3CpGEU^^t2 zvbi072`i3UG0t2%=58xCM;$s#oyl?jh41rvJD`*H{ylB<^kKGyZH{@?0WSqnHEBW`*SJ%J4;B>idSR9foI%Qa`a{qU;f3!&rs zYP;%mn*MK1-x7cYf7I3IMYimOiV-(kRzl-s5e^q^e4H`a3xtK{yawg|&$*%d9Lz`R zq5QkgQV+wi3rfMrb%Xqnu6NIFNI%^Cl$1iJUaDg;tYa8Rpgm3dW06-FxOy*Vf%L;| zdR8LpthUl+=}8xNSZR;~Qdb4>Deg-D41I8*jPVvTW22*`hM?|Z*IVJ$u&>ScX<-)% zdq#$DzLZM?LCX9`>aMMeKdh4f?&QN&QY-ECv4Nyw0%lG76iBV1wC>C_-;niP$pzWO zTIran+NX;Z93M;wkneGyV-b=ymz101#5#XNaYGZBXoju!>Y>;r4F?xdFh7|c%0}{$ zkDi_-=R0!F|Iix@VU$q>gQ^EH1wX=9r5&W!<5cEpNf{g^6)h z&>4C7K)&zN%te4;f2-3p%b~OIp$rNKd1EmVv*|fFH_v`26zItw{ZWBZfI}coyE}$k zn#f_oM@l(wZOkBLC;qDl;;F3iS(o=lk41>=F(0{;WPR{NAd8 ziW%^o3tE$Hjazks75@=zPM|9JPM^&o^h6)bqPb%iX}a5q`Gn##dNE@BPa0c2o^9Q2 z#zv!ej{ZHI4nW4nB>$1F=~SOD_uk+dS9oS0Z?zNFqM=~6C<^&1CM<7-TmPV(Xym0L zl{!xzS)&Aue%-ZI95yr)a1BhDQ#gN8MSkn}Y2zuJQo5@E=w1>k5|X@L)Hv3mKFF}J zzWh+YQzISPsHXdz%MMgp(J)ED9~?ETD8(Ct2oZvkMbWMh7Qq8tncWcP2il31sN12`-Hcg+^W8 zqHMJqxjpDeBazXH;w~dI8VRD|N!Nz1&P^{rVLIe0mncJde+|j|nLG-9A^|VmkW28x zF2#mt#Nrl9c-R*VL)ow?*UlE{lA%HG^HJ-+y7MZrjd_+>0KnqqgFzlk{)kmX^a5m-2j$e}i6Stlv}F1dF*Tc`*)k+PklL=j3D)l&%NinHD5O6ps(1DbGb!#3Zzb|_Vg*l)%W|$_qrGdMJe~*zIiQt)9z@X%DJ8{jv*44L(gC5 zJFLLN8qj=G+9|C4|9|7zp-aDZFI}w7?~(eU?{KV#iz)j9`-c8|bGAQhak4$P@qv=5 zbwgm%6Y;2LYR6@-P3KJel5+6sn!b*2$(OE7JymtracS6g-xCL~WwM`3yMOdsKqghd_U`W>(MyV-T55CJ-mA_e70_1 zu!A}5Td&c#j|^{)pKtl;(jizlvv)zfuo9oF#Foe3o61xj7tcNLGkC&*M;)y5?K<3Q zyh2NSp2~1fSa&31mwNQYJ#sv1_7lZU&Y4`Y>RRsS-74xcU8=5$v`BeQ5O$uPJU__z z;^HOZA8I-uPy2l);*@57)~EJ2&3=qEsVg43ZC%@VdAksgrHRkh@;y;2_{)|4>MG7> zNbue=Pd4br)=5>$YnQz6is+twNS^1Ws6Jz?z`L&(LOO#ib>}_!skHls)mfKy+m=~% zS#GIX+8;hK^uXbxPX%()cUwrAF1jRj_?i^!>05IvytiMDO>tU2_fWL{C)4DWopafL z-+I!ka8>UvTh>G2##wg{|2ri6kJWM6!%1i4Uq^j=Tcgz}MVhiC4cT+|k*xj;}zz?$@Mq*~)FdP47)(QI}mB;&*1NcjNcp zm2J1*w-_Ef9J|`az)f)ehXXV8cqJCP&6l{eikUT&>4v+TRN(cl_n`_m|BJINIGj<* zF=yg6`}`j5e`f@q{5P)oZkp`IU;FP&!}X~@Kh1ai($siALF)2_|I9U#9vr&qynjH6 N)6><@Wt~$(697eiE9d|K literal 0 HcmV?d00001 From a6aa34f6bf9d92ad5180de0902f1ccde210c9951 Mon Sep 17 00:00:00 2001 From: Nonop <68190434+nonop-on-github@users.noreply.github.com> Date: Sat, 21 Jun 2025 09:38:20 +0200 Subject: [PATCH 5/5] Delete submissions/ClickToLens/icons/lol --- submissions/ClickToLens/icons/lol | 1 - 1 file changed, 1 deletion(-) delete mode 100644 submissions/ClickToLens/icons/lol diff --git a/submissions/ClickToLens/icons/lol b/submissions/ClickToLens/icons/lol deleted file mode 100644 index 8b137891..00000000 --- a/submissions/ClickToLens/icons/lol +++ /dev/null @@ -1 +0,0 @@ -