ChrisRegado / streamdeck-googlemeet

A Stream Deck plugin to manage your Google Meet microphone and camera.
MIT License
323 stars 32 forks source link

Fix: update selector of site panel #47

Closed 0n1shi closed 3 months ago

0n1shi commented 3 months ago

Fixed an issue where the button to toggle the side panel was not working.

macOS Ventura: 13.2.1
Google Chrome: 126.0.6478.183(Official Build) (x86_64)
ChrisRegado commented 3 months ago

On my Google account, the existing code still works for me and this PR breaks it (error: no sidepanel control buttons found!).

Did these buttons break recently or have they never worked for you? Is your Google account in an experiment group for some new Meet UI changes? Does the extension log any errors or have any unusual side-effects?


As an example, on my account, the smallest scoped button is still jscontroller="soHxf". (Note the aria-label="Chat with everyone" indicating this is the Chat button.):

<button class="VfPpkd-Bz112c-LgbsSe yHy1rc eT1oJ JsuyRc boDUxc" jscontroller="soHxf" jsaction="click:cOuCgd; mousedown:UX7yZ; mouseup:lbsD7e; mouseenter:tfO1Yc; mouseleave:JywGue; touchstart:p6p2H; touchmove:FwuNnf; touchend:yfqBxc; touchcancel:JMtRjd; focus:AHmuwe; blur:O22p3e; contextmenu:mg9Pef;mlnRJb:fLiPzd;" jsname="A5il2e" data-disable-idom="true" aria-label="Chat with everyone" data-tooltip-enabled="true" data-tooltip-id="tt-c91" aria-pressed="true" data-panel-id="2" style="--mdc-ripple-fg-size: 28px; --mdc-ripple-fg-scale: 1.7142857142857142; --mdc-ripple-left: 10px; --mdc-ripple-top: 10px;">
  <div jsname="s3Eaab" class="VfPpkd-Bz112c-Jh9lGc"></div>
  <div class="VfPpkd-Bz112c-J1Ukfc-LhBDec"></div>
  <i aria-hidden="true" class="google-symbols ebW6mc NtU4hc">chat</i>
  <i aria-hidden="true" class="google-symbols hi38gd Mwv9k">chat_bubble</i>
</button>

I have 4 buttons with jscontroller="PIVayb", whose aria-labels are:

But the Chat and Participants buttons do not have that value.

0n1shi commented 3 months ago

I got the same error on my Google account without the change.

Uncaught ControlsNotFoundError: No sidepanel control buttons found!

And I also found that "Toggle Participants" button doesn't work on my environment (both of macOS and Windows).

The source code of the chat button:

<button class="VYBDae-Bz112c-LgbsSe VYBDae-Bz112c-LgbsSe-OWXEXe-SfQLQb-suEOdc hk9qKe  S5GDme gVYcob JsuyRc boDUxc" jscontroller="PIVayb" jsaction="click:h5M12e; clickmod:h5M12e;pointerdown:FEiYhc;pointerup:mF5Elf;pointerenter:EX0mI;pointerleave:vpvbp;pointercancel:xyn4sd;contextmenu:xexox;focus:h06R8; blur:zjh6rb;mlnRJb:fLiPzd;" data-idom-class="hk9qKe  S5GDme gVYcob JsuyRc boDUxc" jsname="A5il2e" aria-label="Chat with everyone" data-tooltip-enabled="true" data-tooltip-id="tt-c67" data-tooltip-x-position="3" data-tooltip-y-position="2" data-tooltip-classes="PJU52b " role="button" aria-pressed="false" data-panel-id="2">
  <span class="OiePBf-zPjgPe VYBDae-Bz112c-UHGRz"></span>
  <span class="RBHQF-ksKsZd" data-unbounded="false" jscontroller="LBaJxb" jsname="m9ZlFb"></span>
  <span jsname="S5tZuc" aria-hidden="true" class="VYBDae-Bz112c-kBDsod-Rtc0Jf">
    <i aria-hidden="true" class="google-symbols ebW6mc NtU4hc">chat</i>
    <i aria-hidden="true" class="google-symbols hi38gd Mwv9k">chat_bubble</i>
  </span>
  <div class="VYBDae-Bz112c-RLmnJb"></div>
</button>

My Google account is not experimental group or something like that, I guess (I couldn't find the way of checking it though)

ChrisRegado commented 3 months ago

Interesting! It looks like jsname="A5il2e" is the same for both of us. I'll make the extension match on that attribute instead of jscontroller.

Thanks for bringing this up!