Skip to content
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

Does not work with gnome 3.32 #45

Closed
ChrisLauinger77 opened this issue Mar 30, 2019 · 20 comments

Comments

@ChrisLauinger77
Copy link
Contributor

commented Mar 30, 2019

After update to gnome 3.32 the extension shows error on extensions.gnome.org
ext

@tledford4

This comment has been minimized.

Copy link

commented Apr 1, 2019

Also observed in latest Stable Manjaro Gnome update (error button). If enabled on my machine with Gnome 3.32, causes gnome-shell to segfault with libsoup.

@grizzlysmit

This comment has been minimized.

Copy link

commented Jun 7, 2019

is this still being developed ?? I loved this extension

@sinisterstuf

This comment has been minimized.

Copy link
Collaborator

commented Aug 22, 2019

@grizzlysmit not actively, it's receiving fixes and compatibility updates but they're hard for me to reproduce since I stopped using Gnome.

@ChrisLauinger77 @tledford4 if this is reproducible, could you please provide any log or stack trace to help find the source of the error so that we can fix it in the code?

@ChrisLauinger77

This comment has been minimized.

Copy link
Contributor Author

commented Aug 22, 2019

in lookinglass is see this:
Bildschirmfoto von 2019-08-22 15-04-36

log says:
Aug 21 15:02:16 debian gnome-shell[2279]: Extension "messagingmenu@screenfreeze.net" had error: TypeError: _indicator is undefined
Aug 21 15:02:16 debian gnome-software[2567]: messagingmenu_screenfreeze.net has error: TypeError: _indicator is undefined
Aug 21 15:02:16 debian gnome-shell[2279]: Extension "messagingmenu@screenfreeze.net" had error: TypeError: this._construct is not a function
Aug 21 15:02:16 debian gnome-software[2567]: messagingmenu_screenfreeze.net has error: TypeError: this._construct is not a function

If you need more input - please tell me what exactly.

@sinisterstuf

This comment has been minimized.

Copy link
Collaborator

commented Aug 22, 2019

Great, there are no occurrences of that in the code, I guess that's exactly the problem. I suppose something in the way GNOME Shell allows javascript extensions to interact with it has changed except I haven't been paying attention to changes. Does anyone have documentation or changelog for GNOME Shell at hand? Otherwise I guess I'll look for it later.

@ChrisLauinger77

This comment has been minimized.

Copy link
Contributor Author

commented Aug 22, 2019

I think here is something intresting:
https://github.com/zhanghai/gnome-shell-extension-es6-class-codemod

@sinisterstuf

This comment has been minimized.

Copy link
Collaborator

commented Aug 22, 2019

OK, a quick Google search found this documentation linked to from an issue in a different extension: https://gitlab.gnome.org/GNOME/gnome-shell/blob/master/HACKING.md#classes

The comment that linked there was this one for context: https://gitlab.gnome.org/GNOME/gjs/issues/233

@sinisterstuf

This comment has been minimized.

Copy link
Collaborator

commented Aug 22, 2019

Ah, thanks for the link, that looks perfect! Could you try running that on this code and submitting a pull request with the result? 🙏

@ChrisLauinger77

This comment has been minimized.

Copy link
Contributor Author

commented Aug 22, 2019

Will do

@ChrisLauinger77

This comment has been minimized.

Copy link
Contributor Author

commented Aug 22, 2019

It asked 2 questions:
Is PopupMenu.PopupBaseMenuItem a GObject class? (y/n): n
Is PanelMenu.Button a GObject class? (y/n): n

I answered both with no.
Now I get in log:
Aug 22 15:49:12 debian gnome-software[2495]: messagingmenu_screenfreeze.net has error: TypeError: this._getApps is not a function

@tledford4

This comment has been minimized.

Copy link

commented Aug 22, 2019

When I added my note to this ticket on April 1st, I was able to install the extension, it is just that if enabled, it crashed gnome-shell with a segfault in a library. However, now it won't install (I had uninstalled it), I get the same "this._construct is not a function" error that Chris mentions above.

This is on up-to-date Manjaro (stable) gnome.

@ChrisLauinger77

This comment has been minimized.

Copy link
Contributor Author

commented Aug 22, 2019

made the pull request after conversion with jscodeshift - maybe you have a clue why its still nagging ?

@sinisterstuf

This comment has been minimized.

Copy link
Collaborator

commented Aug 22, 2019

Thanks for the pull request #46, I left you a comment there. It seems the converter has fixed all (or most) of the function definitions but missed some of the function calls. I'll have access to a computer running GNOME when I get back to work on Monday, but until then if you want you can try fiddling about with different ways of calling the renamed/modified functions 🙂

@ChrisLauinger77

This comment has been minimized.

Copy link
Contributor Author

commented Aug 22, 2019

You are welcome. I try fiddling tomorrow. Not really know javascript very well to be honest but try to dig in.

@ChrisLauinger77

This comment has been minimized.

Copy link
Contributor Author

commented Sep 1, 2019

I converted one more time but with
Is PopupMenu.PopupBaseMenuItem a GObject class? (y/n): n
Is PanelMenu.Button a GObject class? (y/n): y

Now the extension loads :) It does not show an icon though ;(
Bildschirmfoto von 2019-09-01 11-30-22

@ChrisLauinger77

This comment has been minimized.

Copy link
Contributor Author

commented Sep 1, 2019

I changed the icon to mail-message-new-symbolic.
This is how it looks now:
Bildschirmfoto von 2019-09-01 14-42-27

@tledford4

This comment has been minimized.

Copy link

commented Sep 1, 2019

Looks great to me, Chris! Look forward to trying it after you've checked it in, which I assume you'll do when you're comfortable with that.

@ChrisLauinger77

This comment has been minimized.

Copy link
Contributor Author

commented Sep 1, 2019

It is checked in @tledford4. But into my fork of the repo.
I also made a pull request from my fork to this repo. You can find it under pull requests.
Only @sinisterstuf can close the pull request and update this repo though.

@tledford4

This comment has been minimized.

Copy link

commented Sep 1, 2019

Thank you, Chris, working just fine on Manjaro Stable (up to date) running version 3.32.2 of gnome shell. Nice to have it back, appreciate your work on it!

@ChrisLauinger77

This comment has been minimized.

Copy link
Contributor Author

commented Sep 2, 2019

I figured the compose and contacts button did not work after conversion to ES6.
Just checked in the fix for that.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
4 participants
You can’t perform that action at this time.