New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
MPRIS & global media hotkeys broken in Gnome in 4.7.0-pre builds #3583
Comments
Can you confirm if this is only related to YouTube music for you? I just fetched from master and tested and it appears that GPM works fine. IPC is showing the media keys firing to the outer process, leading me to believe that the YTM integration is entirely broken. |
I don't use YouTube Music at all, I've only tried with Google Play Music, and it happens 100% there for me. |
What version of gnome-shell are you running? Everything related to dbus has been changed since 4.6.x, so there's a lot to triage here. |
Debian Buster is using gnome-shell 3.30.2 More specific version info: https://packages.debian.org/buster/gnome-shell |
If you press ctrl+shift+i in the GPMDP window, do you have any errors in the console? Also type |
That's not working to bring up the developer tools here :( Is that perhaps disabled in the CI |
Ah, yeah it is disabled in the packaged versions. Try |
That did the trick for getting access to the developer consoles. At startup, the only thing in the main (ctrl-shift-i) console is this warning:
However in the
The last one repeats regularly. When I start playback, no new messages appear in either console. I tried installing I also went mucking about with App startup on stdout prints this, dunno if its related:
Also I tried running the app under Looking in the "Sources" tab in the dev tools ... it looks almost as if something is going wrong and it's not even loading the |
It appears that the chromecast functionality may be breaking the rest of the integrations for you. Try installing avahi to see if that resolves your problem. If it does we can probably implement a fix to ignore that error if avahi isn't installed. |
I ... do have avahi installed?
Do you know which bit of avahi I may be missing that it needs? |
|
Aah, yep -- that should probably be added to the package depends then? But ... while that fixes the error loading bonjour at startup, I don't have an MPRIS instance in DBus yet. I do still have the I also still have the |
OK, I did some UTSL & figured out how to launch dev mode from the CLI, and now I have what is probably a much more useful error trace for you :)
|
Alright, yeah, that's what I needed. It appears something was missed in the CI build for linux, as that should have been installed as a dependency of dbus-next but wasn't. |
I updated the dbus dependencies on a branch, you can try using this deb: Edit: this is also not working. Works when building locally, fails on CI. |
@jostrander Are you using |
|
It's definitely missing from the built deb:
I'm not sure where it would be stripping that out. |
I think I was able to isolate this down to the packager update in this commit: 23d9799. From 8 -> 13 electron-packager stopped relying on the package manager to prune and started using galactus. It looks like you maintain galactus @MarshallOfSound. Any ideas on why it would be nuking xmlbuilder? |
@jostrander Not without a repro on my machine, it's got quite extensive use and tests so I'll be pretty annoyed if we've hit an edge case 😆 I'll ssh into a CI build at some point and take a look |
At a cursory glance, playing with flora-colossus directly, this is what I'm getting for xml2js: { depType: 2,
path: '/home/jostrander/data/Code/other/Google-Play-Music-Desktop-Player-UNOFFICIAL-/node_modules/xml2js',
name: 'xml2js' }
{ depType: 1,
path: '/home/jostrander/data/Code/other/Google-Play-Music-Desktop-Player-UNOFFICIAL-/node_modules/xml2js/node_modules/xmlbuilder',
name: 'xmlbuilder' } where depType 2 is optional, and 1 is dev. |
Is that suggesting that the root of the issue is that |
Not at all, the underlying problem was definitely that the packager is deleting things under node_modules a bit too aggressively. The underlying problem has been fixed but its 3 dependencies deep so it will take some time to get everything bumped and working. |
Actually, I take that back, a rebuild will more than likely pull in the updated dep and cause it to work, I'll test it out. |
I'm having the exact same issue with Cinnamon 3.6.7-8, let me know if there's any information I can provide for more data points or whatever EDIT: Confirmed building locally via |
Here is a better "4.7.0" release for debian, this should fix the exception at start up. I get MPRIS and media keys in GPM with this. However I have another fix for YTM that I need to publish in order to get that working. |
I'm not getting the require errors any more when starting with However Thanks! |
OK, debugged some more and I think I've figured out what's going wrong with Gnome media keys:
If I launch GPMDP and am careful not to focus a Chrome window again, the global Gnome media keys do work. But eventually after focusing Chrome windows (it doesn't happen immediately), it seems to take over the media key focus, and GPMDP never takes it back. Edit: to be clear, the new build fixes this issue ~95%, it's just some fiddly corner cases that seem to be left, so re-Thanks :D |
Yep, that was actually never implemented to spec unfortunately. It can definitely be fixed. For now you might try removing the GPM chrome extension because that is probably what is stealing your keys, (if its installed) |
Good call. That did at least make it not register an MPRIS instance (or anyways it did after restarting chrome -- disabling / uninstalling without restart was not sufficient). I'm gonna assume that if its MPRIS instance is gone, it will not be grabbing Gnome media keys either. Either way I wasn't using that extension on the desktop anyways (only on a chromebook, but got installed because sync), and things are working now :) |
FYI I'm still seeing cases where chrome steals media keys from GPMDP and won't "give them back", but I've not traced down what triggers this, and so I can't say it's actually a GPMDP bug at this stage. I'll open a new ticket if I find anything useful. |
I can't reproduce with the latest build, what extensions do you have in gnome and chrome? |
I have ... quite a few ... but none that obviously should be doing media key stuff. Loading a youtube page does not trigger chrome to steal. My current best guess is that it's either Google Calendar event notifications, or the Hangouts App, which is doing it, but I've not proven this yet.
|
Checklist:
I have checked that there are no issues with similar or the same content
YOU SHOULD CHECK CLOSED ISSUES ASWELL
I have checked the FAQ (https://github.com/MarshallOfSound/Google-Play-Music-Desktop-Player-UNOFFICIAL-/wiki/FAQ) and the answer I am looking for is not there
I have double checked and can reproduce the issue
OS: Linux -- Debian Buster
GPMDP Version: CI build of 8f86ba7 (also happens with some earlier 4.7.0-pre builds)
Issue Descriptions:
The media player interface that used to integrate with Gnome no longer works in the current CI builds. It works fine in the last 4.6.x release build. Gnome doesn't think any media player app is running at all, and as such shows no panel indicator, nor do global media hotkeys work.
The merge of #3513 is immediately suspect in the commit history, but I have not bisected to prove that theory. Given that #3510 claims that a similar issue on MacOS was fixed via the Electron update, I suppose that may be suspect as being related on Linux?
Steps to Reproduce:
See also:
The text was updated successfully, but these errors were encountered: