fugitech / google-meet-grid-view Goto Github PK
View Code? Open in Web Editor NEWUserscript to offer a grid-view layout in Google Meets
Home Page: https://greasyfork.org/en/scripts/397862-google-meet-grid-view
License: Other
Userscript to offer a grid-view layout in Google Meets
Home Page: https://greasyfork.org/en/scripts/397862-google-meet-grid-view
License: Other
Thank you for this amazing extension! Could be worth to add an ordering option, so that when new participants adds, the grid does not re-order by incoming users, while keep the grid ordered by name. In this way the position of each person will not change during the call :)
[UPDATE]
I can see that there is a sort
in the code here
// sort by participant name, or video id if the name is the same (when someone is presenting)
ret.sort((a, b) => a[magicKey].name.localeCompare(b[magicKey].name) || a[magicKey].id.localeCompare(b[magicKey].id))
Not sure why when new participants are added a re-sort happens and they change positions. Maybe another option could be not only sorting by name, but in a FIFO ordering, so that each participant will just "keep" the initial position.
I installed it with Tampermonkey on Safari but couldn't get it to show up the button.
Is there a way I can help with debugging this?
Safari Version 13.1 (15609.1.20.111.8)
MacOS Catalin 10.15.4
Today there was a Google meeting session with a group. Some of the children were not in a google meet session. She clicked on the link and the organizer was not asked to let them in. Even after closing the browser session and doing it again.
What could this be? Everything worked fine with the same group last week
Thanks
The Chrome Web Store is still listing version 1.15.0 - even after an Empty Cache and Hard Reload. Is there a typical waiting period for new updates to become available?
Chrome Web Store link: https://chrome.google.com/webstore/detail/google-meet-grid-view/kklailfgofogmmdlhgmjgenehkjoioip
1.20 is the last version that works for me in Firefox Developer Edition 76.0b3 on macOS Catalina.
The grid icon isn't present anymore. I'm using the ViolentMonkey extension.
First of all. Thank you for this life saver.
Suggestion: add an option to move the grid over when you open the group chat side bar, so that it can be visible and usable at the same time as the grid, instead of partially covering the grid.
I've only noticed this a couple of times...
In a nutshell, when the Include yourself...
checkbox was cleared, the video of me appeared in the grid and when I clicked the checkbox again (so that it was now selected), I disappeared... i.e., the opposite of the expected behaviour. The problem went away after I reloaded the page (perhaps with a +F5). But I did see it at least once more.
When I have more time, I will try to figure out the steps to replicate.
I use grid view in every meeting I have, would be nice to just have it self enable.
Grid is only showing 6 individuals and yourself in the grid is not working. I changed the zoom of the entire page to 75% and the remaining two people appeared in the grid. You have to constantly adjust zoom depending on the number of participants.
Under what conditions may we use this script? For example, can we include it in a private chrome extension used internally within a company?
You stated elsewhere that it is "open source", which the OSI defines as requiring "Free Redistribution". However, you also stated that you do not want to us a license which allows for redistribution (which clearly runs counter to it being open source).
If you don't want redistribution that's fine, but what about distribution? This whole thing will be a lot easier if you can add a license file explaining how you wish to allow people to use this code, even if it's just one or two sentences you write yourself (although any existing/standard license would be preferred).
I had a different version of Grid View before the update on 4/15. Now my screen is flickering badly during any presentations that other people do during a Google Meet with multiple people. I used to be OK with the older version I used last week with my students, but this Wednesday that did not work anymore. I could only see 4 people on the screen, without being able to see myself or highlight the speaker. Now I can see everyone on the screen, including myself, but I have the issues with the screen flickering badly during presentations. Please fix this or help me fix it. During the school closures it is very important to be able to connect with our students, communicate with them, teach and keep them engaged. Thank you very much.
I am not sure on how it suposes to work but on Brave it does not work (does nothing)
The clicking of the checkboxes is bubbling up to the grid icon... I'll try to have a look over the weekend to see if I can give you a PR to fix it. Just wanted to make sure it was on your radar, though :)
It can be visually distracting to have that pop up over each video as you use your mouse, and in my opinion, it's not necessary when the point of the plugin is to have everyone onscreen at the same time. Great work, by the way. I've looked at the obfuscated javascript files, it's amazing you were able to comprehend what was going on..
I installed this through the link in the readme to the Firefox addons, and it works great on Firefox 75. However, it also shows a warning under the grid button saying this is not an authorized extension and directs me to the Firefox addon page where I installed it from. Probably needs some connection to Mozilla to tell them this is kosher?
Since today the "Include yourself in the grid" function stopped working. The checkbox is still enabled but the videostream does not appear in the grid.
Swedish should be "se", instead of "sv".
Regards
Mattias
Noticed when "Only Show Participants with Video" is checked, and new person joins the Meet or person turns on their camera, the person doesn't show up on the grid unless I move my mouse. When user leaves the meeting or turns off their camera, they are removed from the grid correctly.
In my testing, I went into the same Meet as the same person on 5 different devices. Maybe that could trigger the issue.
When "Only Show Participants with Video" is not checked, then everything works correctly. New person joins the Meet, they automatically get added to the grid.
Hi,
Although the extension worked earlier, we're currently not able to see more than 5 attendees at the same time. Looking at the other reviews in the Chrome Web Store (https://chrome.google.com/webstore/detail/google-meet-grid-view/bjkegbgpfgpikgkfidhcihhiflbjgfic/reviews)
We deployed the extension through G-Suite, earlier versions worked just fine.
Apologies if this has been posted before.
Thanks for the great extension 👏
The new Force 16:9 in Screen Capture Mode from v1.17 makes an overall improvement to the look and feel of a call.
Would it be possible to extract this part out in to a separate toggle in settings?
1.17.0 Grid view is not running on this page. Reloaded, uninstalled and installed, any ideas?
First of all, thanks for this really useful user script!!
I see some other issues floating around here which are similar, but they seem to be things that worked before but stopped working recently. Whereas I started using it on Firefox April 2nd and these features never worked from the beginning. I installed it through greasyfork, so it has been auto-updating ever since. I have the latest version 1.18 now.
Only show participants with video
makes no difference. It seems to show participants whether or not they have video either way.Include yourself in the grid
makes no difference. It never includes yourself.Any guidance would be appreciated. Thanks! Here are a few of the similar issues:
Even though these are technically still open, they appear to have been fixed in the latest version, and they worked before. I'm wondering if maybe it was fixed in a way that works for Chrome but not Firefox?
A few days ago all 20 participants showed up in the grid, but now only 5 are showing....We really want it back so that all participants will show up in our Google Meets. Help!!!????
it: { showOnlyVideo: 'Mostra solo partecipanti con video', highlightSpeaker: 'Illumina chi ha la paola', includeOwnVideo: 'Includi te stesso nella griglia', },
It's "parola" not "paola"
I hope this was the correct way to report an error.
Best regards,
Stella Daniele
Hi, I have seen you've released officially a Chrome extension. It works properly on Microsoft Edge (Chromium version), what about releasing it also in the Microsoft Edge Store?
https://www.microsoft.com/en-us/store/collections/edgeextensions/pc
This project is amazing! Thank for bringing this to life.
'highlight speakers' stop working
tried reverting back to older versions seems something change on the back end?
Can you confirm @Fugiman ?
The highlighting speaker feature is awesome! Now that we can easily see who is speaking in a large meeting I was wondering if it makes sense to add a check box to enable something like "Push to talk"
Something like this:
https://gist.github.com/benjaminoakes/455942d154145876b60e920485b9d23a#file-google-meet-spacebar-user-js
Totally unrelated but I though it would be good to put on your radar. Cheers
Thanks again
Is your feature request related to a problem? Please describe.
Sometimes when checking the repo or reporting bugs I would like to quickly understand the version I am running
Describe the solution you'd like
Display it somehow in the extension
Describe alternatives you've considered
None
Additional context
None
My school uses google meet for video conferencing with each of our classes and as a team. We have been using grid view to helpaid in watching the students while teaching . This morning, none of us could get it to show more than 6 people at a time.
There's no license in place for this and many institutions would benefit from having an open source license to use this.
yesterday gridview showed all meet members but today it only shows 6
When viewing everyone and a screen presentation, it would be nice to be able to resize the presentation screen in case it's too small (even though it's larger than other grid by default).
when you pin someone, instead of making it bigger, it just makes them take up the whole screen.
Options for pinning and disabling audio are unusable
Hey there are some issues with this script and the share screen feature. First of all the shared screen doesn't enlarge (that makes sense). Then when I try to deactivate the layout, it doesn't work. I had to toggle off the extension to make it work.
How to reproduce the bug:
I was wondering, is there a way to include our own video in the grid?
Thank you for your great script!
Google grid is messed up. When I am conferencing with 22 students, it only shows 5 screens at a time. It was showing all of my screens Monday April 13.
Is it OK to request a translation this way?
'sv-SE': {
showOnlyVideo: 'Visa endast deltagare med video',
highlightSpeaker: 'Markera/följ talare',
includeOwnVideo: 'Inkludera dig själv i rutnätet',
},
Regards
Mattias Bystedt
Some time today (2020-04-08, US Eastern time), the extension version of this userscript stopped working.
Reposting from stgeorgesepiscopal/google-meet-grid-view-extension#13 where I was suggested to post here, since that extension just wraps a copy of this user script via a git submodule
I think something must have changed on the google meet site, as this extension was working earlier today, but now it's not working at all -- it doesn't add its button to the meet UI, and clicking the grid toggle in the extension itself doesn't do anything any more.
There's an error in my dev console that I think is coming from this extension:
Error in event handler: TypeError: Cannot read property 'click' of undefined
at chrome-extension://bjkegbgpfgpikgkfidhcihhiflbjgfic/js/inject.js:41:64
Which corresponds to ... code I can't find in this repo?
// ...
injectScript(chrome.runtime.getURL('js/google-meet-grid-view/grid.user.js'));
//injectScript(chrome.runtime.getURL('js/messaging.js'));
chrome.runtime.onMessage.addListener(
function(request, sender, sendResponse) {
let gridOn = !!document.getElementsByClassName('__gmgv-vid-container').length
let showOnlyVideo = JSON.parse(localStorage.getItem('gmgv-show-only-video'))
let highlightSpeaker = JSON.parse(localStorage.getItem('gmgv-highlight-speaker'))
let includeOwnVideo = JSON.parse(localStorage.getItem('gmgv-include-own-video'))
console.log(localStorage)
if(request.hasOwnProperty('startup')){
console.log('init')
} else if(request.hasOwnProperty('toggleGrid')){
document.getElementsByClassName('__gmgv-button')[0].click()
// ^^^ this line ^^^
// ...
I have version 2020.4.7
installed currently.
2020.4.7
of that extension I believe maps to commit bef6bff here. That's not the latest, but the commit log from that to current HEAD of master
doesn't look like it has any functional changes, only translation changes.
A delay could be added to VolumeDetectionProxyHandler
so as to smooth speaker highlighting.
Currently, on breathing or pauses in conversation the speaker selection rapidly selects and deselects. This is a problem when speaking with nationalities with a slow speaking speed and can yield a distracting disco-like experience.
On G-Suite education domains google has implemented new features:
No other participants can silence or kick out the "owner"/"creator" of the meet
This new functionality is broken when "grid view" is active/installed.
Regards
Mattias Bystedt
Chris - I'm a High School math and computer teacher in Ottawa Canada. Like many other schools/school boards, we're starting to use Google Meet for online classes and stumbled across your excellent script.
Based upon feedback from a couple of teachers at our school, I've modified your script so that it will provide a list of students who did not join and did not join the call.
Summary of the changes
attendees
are compared with the invitees
and the textarea is updated to reflect that the person joined.As long as the student appears in the call (ever so briefly), they will be marked as having joined. I do not record time of entry or exit (and at this point have no plans to add that).
I thought I'd check in with you before presumptuously adding it to the mix here. Thoughts?
I'm a teacher and i'm using your plugin to see all students during my lessons.
Students screens appears sorted by name, because their account names have been created in the form "First name Surname", but I know mostly by surname and I search them in the screen by surname (and it is no so easy when students are more than 20).
I have created a javascript function
function swapName(n){
n = n.toUpperCase();
var pos = n.indexOf(" ");
if (pos>0){
var n2 = n.substring(pos+1) + " " + n.substring(0, pos);
//console.log('[google-meet-grid-view] Name:' + n2);
return n2
} else {
//console.log('[google-meet-grid-view] Name:' + n);
return n;
}
}
that changes strings ("Massimo Bambi" becomes "BAMBI MASSIMO")
and I have inserted this function in your sort command
ret.sort((a, b) => swapName(a[magicKey].name).localeCompare(swapName(b[magicKey].name)) || a[magicKey].id.localeCompare(b[magicKey].id))
This function searches only first space in string, so it is not working with multiple names,
but can you add this as an option?
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.