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); + }); + }); + } + } +});