Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Save benjaminoakes/455942d154145876b60e920485b9d23a to your computer and use it in GitHub Desktop.
Save benjaminoakes/455942d154145876b60e920485b9d23a to your computer and use it in GitHub Desktop.
Google Meet/Hangouts Push-to-Talk
// ==UserScript==
// @name Google Push to Talk
// @namespace http://tampermonkey.net/
// @version 0.5
// @description Hold down the spacebar to unmute the mic in Google Meet; tapping the spacebar toggles mute.
// @author Marc Reynolds (github.com/marcreynolds)
// @match https://meet.google.com/*
// @updateUrl https://gist.github.com/marcreynolds/6c629eaf8bfe87986ebe90ebea7daf85/raw/google-meet-spacebar.user.js
// @grant none
// ==/UserScript==
(function() {
'use strict';
window._getGoogleMeetMuteEl = function() {
if(window._googleMeetMuteEl === undefined) {
window._googleMeetMuteEl = document.querySelector('div[role=\"button\"][data-tooltip*=\"microphone\"]');
}
return window._googleMeetMuteEl;
};
window._clickMute = function() {
window._getGoogleMeetMuteEl().click();
};
window._isMuted = function() {
return window._getGoogleMeetMuteEl().attributes["data-tooltip"].value.match(/turn on microphone/i) !== null;
};
document.body.onkeyup = function(e) {
if(e.keyCode == 32){
e.stopPropagation();
e.preventDefault();
window._clickMute();
window._meetupSpaceDown = false;
}
};
document.body.onkeydown = function(e) {
if(e.keyCode == 32 && window._meetupSpaceDown !== true){
e.stopPropagation();
e.preventDefault();
if(window._isMuted()) {
window._clickMute();
}
window._meetupSpaceDown = true;
}
};
})();
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment