From 507af212f087d4e893fde47da224e151fc09d632 Mon Sep 17 00:00:00 2001 From: Anatoly Kopyl Date: Tue, 14 Apr 2020 00:45:42 +0300 Subject: [PATCH] =?UTF-8?q?=D0=9E=D0=BF=D1=82=D0=B8=D0=BC=D0=B8=D0=B7?= =?UTF-8?q?=D0=B8=D1=80=D0=BE=D0=B2=D0=B0=D0=BB=20=D1=83=D0=BF=D1=80=D0=B0?= =?UTF-8?q?=D0=B2=D0=BB=D0=B5=D0=BD=D0=B8=D0=B5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- controls.js | 36 ++++++++++++++++++++++++++++++++++++ 1 file changed, 36 insertions(+) diff --git a/controls.js b/controls.js index 3f2326e..8bb1f6e 100644 --- a/controls.js +++ b/controls.js @@ -36,6 +36,7 @@ function muteBtnHTML(id) { ` } +/* function addControls() { var messages = document.getElementsByClassName("im-mess im_in _im_mess"); @@ -75,3 +76,38 @@ chatBody.addEventListener('DOMNodeInserted', function(event) { addControls(); } }); +*/ + +var chatBody = document.getElementsByClassName("_im_peer_history im-page-chat-contain")[0]; + +chatBody.addEventListener('DOMNodeInserted', function(event) { + if (event.target.className == 'im-mess--check fl_l') { + var message = event.target.parentElement; + + var actionsArea = message.getElementsByClassName("im-mess--actions")[0]; + if (actionsArea && actionsArea.lastChild.className != "mute_message") { + var sender_id = message.parentElement.parentElement.parentElement["dataset"].peer + + actionsArea.innerHTML += muteBtnHTML(sender_id); + var muteBtn = actionsArea.getElementsByClassName("mute_message")[0]; + muteBtn.style.display = "none"; + + actionsArea.parentElement.addEventListener("mouseenter", function( event ) { + event.target.getElementsByClassName("mute_message")[0].style.display = "inline-block"; + }); + + actionsArea.parentElement.addEventListener("mouseleave", function( event ) { + event.target.getElementsByClassName("mute_message")[0].style.display = "none"; + }); + + muteBtn.addEventListener("click", function(event) { + 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); + }); + }); + } + } +});