From 55684be7f74f27c937a2e049aee7472db29ce8bb Mon Sep 17 00:00:00 2001 From: Anatoly Kopyl Date: Mon, 13 Apr 2020 21:10:34 +0300 Subject: [PATCH] =?UTF-8?q?=D0=9F=D0=B5=D1=80=D0=B5=D1=88=D0=B5=D0=BB=20?= =?UTF-8?q?=D0=BD=D0=B0=20domnodeinserted?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- controls.css | 49 +++++++++++++++++++++++++++++++ controls.js | 10 +++++-- hide_element.js | 8 ++++- icon128.png => icons/icon128.png | Bin icon140.png => icons/icon140.png | Bin icon48.png => icons/icon48.png | Bin manifest.json | 12 ++++---- mute.png | Bin 0 -> 2136 bytes 8 files changed, 71 insertions(+), 8 deletions(-) create mode 100644 controls.css rename icon128.png => icons/icon128.png (100%) rename icon140.png => icons/icon140.png (100%) rename icon48.png => icons/icon48.png (100%) create mode 100644 mute.png diff --git a/controls.css b/controls.css new file mode 100644 index 0000000..30f6f0f --- /dev/null +++ b/controls.css @@ -0,0 +1,49 @@ +.mute_message .mutetooltip { + visibility: hidden; + width: 120px; + background-color: #555; + color: #fff; + text-align: center; + padding: 5px 0; + border-radius: 6px; + + /* Position the tooltip text */ + position: absolute; + z-index: 1; + bottom: 125%; + left: 50%; + margin-left: -60px; + + /* Fade in tooltip */ + opacity: 0; + transition: opacity 0.3s; +} + +/* Tooltip arrow */ +.mute_message .mutetooltip::after { + content: ""; + position: absolute; + top: 100%; + left: 50%; + margin-left: -5px; + border-width: 5px; + border-style: solid; + border-color: #555 transparent transparent transparent; +} + +/* Show the tooltip text when you mouse over the tooltip container */ +.mute_message:hover .mutetooltip { + visibility: visible; + opacity: 1; +} + +.mute_message { + width: 16px; + height: 16px; + position: relative; + display: inline-block; + vertical-align: top; + background: url('chrome-extension://__MSG_@@extension_id__/mute.png') no-repeat top left; + background-repeat: no-repeat; + padding: 6px; +} \ No newline at end of file diff --git a/controls.js b/controls.js index 4416e23..5ade809 100644 --- a/controls.js +++ b/controls.js @@ -1,11 +1,12 @@ var showMembersBtn = document.getElementsByClassName("_im_chat_members im-page--members")[0]; var controlsArea; +/* function isInt(value) { return !isNaN(value) && (function(x) { return (x | 0) === x; })(parseFloat(value)) } -/* + showMembersBtn.addEventListener('click', function() { var checkExist = setInterval(function() { controlsArea = document.getElementsByClassName("ListItem__aside"); @@ -29,7 +30,11 @@ showMembersBtn.addEventListener('click', function() { */ function muteBtnHTML(id) { - return '🔇' + return ` + + 🔇 + Заглушить + ` } function addControls() { @@ -55,6 +60,7 @@ function addControls() { var clicked_id = event.target.id.substr(event.target.id.length - 9); chrome.storage.sync.set({idToHide: clicked_id}, function() { + hidePeer(clicked_id); console.log('idToHide: ' + clicked_id); }); }); diff --git a/hide_element.js b/hide_element.js index 3523322..9ba35d2 100644 --- a/hide_element.js +++ b/hide_element.js @@ -18,4 +18,10 @@ function hidePeer(peer) { }); } -var interval = window.setInterval(function(){ hidePeer(idToHide) }, 500); +//var interval = window.setInterval(function(){ hidePeer(idToHide) }, 500); + +var chatBody = document.getElementsByClassName("_im_peer_history im-page-chat-contain")[0]; + +chatBody.addEventListener('DOMNodeInserted', function() { + hidePeer(idToHide); +}); diff --git a/icon128.png b/icons/icon128.png similarity index 100% rename from icon128.png rename to icons/icon128.png diff --git a/icon140.png b/icons/icon140.png similarity index 100% rename from icon140.png rename to icons/icon140.png diff --git a/icon48.png b/icons/icon48.png similarity index 100% rename from icon48.png rename to icons/icon48.png diff --git a/manifest.json b/manifest.json index db0305b..1ad8f75 100644 --- a/manifest.json +++ b/manifest.json @@ -1,11 +1,12 @@ { - "name": "Hide Cringe", + "name": "VK Mute", "icons": { - "128": "icon128.png", - "48": "icon48.png" + "140": "icons/icon140.png", + "128": "icons/icon128.png", + "48": "icons/icon48.png" }, "version": "1.0", - "description": "Hides cringe", + "description": "Позволяет заглушить нежелаемых собеседников", "permissions": ["activeTab", "declarativeContent", "storage"], "background": { "scripts": [ @@ -24,7 +25,8 @@ }, { "matches": ["https://*.vk.com/*"], - "js": ["controls.js"] + "js": ["controls.js"], + "css": ["controls.css"] } ] } diff --git a/mute.png b/mute.png new file mode 100644 index 0000000000000000000000000000000000000000..b5c14a38143d3a37ae02105468bcf192b9859cfb GIT binary patch literal 2136 zcmbVN4NTN#7%of^VIWM246{({6o1xhdq2Hv@kF@0$svaf*+7j8y|%|S^sYx+;5bbL zhEAL=X3NYR^C!l|XeQCkpJXb!3AhZi7~?kP)G;;cqRb&?nL2b|kK=|5I zO3T%9S0T+xJ{`kJZeADk1ppd?=H>(g3|qyku$!+G{8r@lk>dy~a8{(uR##W2t25{%xe_BNio$R`rq`nYfhzTWl?kGLW!f-bAsFB66agN1!k@xX_RRLHciVb)rRZ_gt z6R4xhj~M`=b-AK8M%Ci;MNKHGqZYUk3CO5urL;c4VXAZeVMgBxfZ zAA-6hPVm%^1~rj1@i-LJ4aca=e}Xxd_DHgi0bUC}rjo}3{z?Rn#*(&4q9g;uK%HUa zywheYmL-oMf(4~yK_2XM*hqpRNmQ>R!g5_M+UZwR#?SIjyA=Tu(g^}b8_X8YU}71R zG+KYIG9>ZXhTRNf?LKERqFqDj9JktEP$rjDUi4lN5vUX1xhDdW;N8;UtH; zNs_Q|9t%fW%v$Y-%Zbhx6p-lp$Z1;4S4T#o0Ea7xW?1cHSP@n$37$hD)50k6cqYq{ z{dHa*kUphKhO8@+N3COIKDQFY?%7Hady)qVQ~PxN&z8?2VWa7PtaSgk{z!mWFXOM| zLBqum%_B@}O+)Fy{++q-+K4tb3d)-*c6?Kmv~G23i~Gtu@yOb>>%2_goc4lc3llSU9y;9pR>jo#S|PS+ zJAAdPY?ANwGhIc^2YZg~yOe$8^VW+iDn8mw4GdmyH9V-mt0(1b>@5)Qq5E?oWO`8|FyHw)g{>sWHx_E(?tMujh_f8p4#?j1TNHg-2QCx35m ze*53dpMn3|9D%};~QPD!PcduAU)YdWi9 zPW*ZzHnC^JHec-Bt+#&^@91vzy_o&(xb)6~Ef-5SOnaEs-dH`Dz4=ReW&C;*-IUe1 z^JYm_=)rZoWFnGKe4yv$KgQhOWmvn&7qfDfQzyGKPX1}}HndH2m|p8_>4L_$rCEqM z=;;q~pHrvi6`gil=S|3fYqQrRe(X)#e#>%ApB1XwQPc3*l@BM(x5r#+i-oUs#J9gO zHh8q4!G6Cd+4`wxU(E698FBk;k9I9to|Ts}kp6yq#|~mmS<;sH?>Yu%U%r>#*)Hy{ z7Eew+D)rhIgd9^&T}((ZC&HV~Jvgshza==iapo5V$ljJ$(eyW_&g7Q> literal 0 HcmV?d00001