stgeorgesepiscopal / google-meet-grid-view-extension

Google Meet Grid View Extension
MIT License
210 stars 27 forks source link

2020.4.7 Stopped working some time today, git missing everything since 2020.04.1 #13

Open mgabeler-lee-6rs opened 4 years ago

mgabeler-lee-6rs commented 4 years ago

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.

leafknode commented 4 years ago

I can validate this. Something broke in the latest release. It worked this morning and then, after the update, stopped working afterwards. I didn't debug it but it looks like @mgabeler-lee-6rs already did that for us (ty for reporting the issue btw, my kid's school is using this and it's been a fantastic value-add to the Google Meet conferencing experience)

jonttm commented 4 years ago

@mgabeler-lee-6rs The repo you are looking for is https://github.com/Fugiman/google-meet-grid-view

This is only an extension wrapper for that userscript. I would go ahead and make the same issue there.

mgabeler-lee-6rs commented 4 years ago

Filed upstream issue: https://github.com/Fugiman/google-meet-grid-view/issues/40

mgabeler-lee-6rs commented 4 years ago

Hmm ... did some debugging and I'm less convinced this is an upstream issue.

In the version of the extension I have locally, the line that crashes is:

  document.body.append(s)

  // Variables
  let runInterval = setInterval(gridUpdateLoop, 250) // <<=== HERE <<====
  let container = null

However, that line is let runInterval = null upstream ... and seemingly always has been?

If I hack up that line in the extension to match upstream ... suddenly things work again.

Which makes me thing that what changed and broke this wasn't google meet, but the latest update to Google Chrome (I installed 81 this morning)

mgabeler-lee-6rs commented 4 years ago

I also note that what's in the chrome web store is 6+ revs newer than than what is here in github :cry:

jonttm commented 4 years ago

I am getting several people having success when they uninstall and reinstall the extension. Does that fix it for you?

mgabeler-lee-6rs commented 4 years ago

Yep ... that upgraded me to 2020.4.9 ... so now we're at like ten versions released to chrome web store without being pushed here :(

mgabeler-lee-6rs commented 4 years ago

Also, ignoring the versions issue, a sizeable chunk of this extension's code is not checked into git here -- gridview.js, messaging.js, and popup.js are all missing. Though it's unclear if they are used at all, or just cruft left over in the author's working directory from before this extension switched from having a copy of the userscript to using a git submodule?

jonttm commented 4 years ago

That's unfortunate that the GitHub is not updated. Not very community friendly 😕

spencercornish-wk commented 4 years ago

@sreyemnayr is the one who deploys the extension, right?

mgabeler-lee-6rs commented 4 years ago

He's the only one that has committed here, and the username lines up with the human name that signed the privacy policy :)

sreyemnayr commented 4 years ago

This was my fault. It was working in my build of Chromium but clearly not across the board. Should be working in 2020.4.9

sreyemnayr commented 4 years ago

That's unfortunate that the GitHub is not updated. Not very community friendly 😕

Lol cut me a break, I’m just trying to help out.

jonttm commented 4 years ago

Sorry about that

sreyemnayr commented 4 years ago

No worries. This whole thing has just gotten so crazy. What started as something I literally packaged for like 300 people has ballooned into 3 million and while that’s kind of neat, it’s mostly been a tremendous amount of work just signing student data agreements and whatnot. I feel like I have to do it because I understand how huge a difference it makes for our families, but this isn’t like what I DO...

sreyemnayr commented 4 years ago

Also, ignoring the versions issue, a sizeable chunk of this extension's code is not checked into git here -- gridview.js, messaging.js, and popup.js are all missing. Though it's unclear if they are used at all, or just cruft left over in the author's working directory from before this extension switched from having a copy of the userscript to using a git submodule?

Kind of a little bit of all of those.

spencercornish-wk commented 4 years ago

I for one would love to help with keeping the extension working @sreyemnayr, if you've got stuff that needs fixing/doing besides the list of gh issues(I can look at those too). This is so incredibly useful to so many people that I can only imagine many others would be willing to help too :)