For future reference, my bug was marked as WONTFIX by a gnome
maintainer. Here's his reason for it:
The reason for that particular error is that the extension-prefs
tool doesn't include the (private) mutter typelibs in its search
path. While we could add that, most gnome-shell code (and most
definitively the code in the Meta namespace) is only useful when
run in the compositor. So I don't see much of a point to make a
handful of methods usable from external applications - if you want
to use any of findUrls(), formatTime(), lowerBound() or
insertSorted()(*) in a prefs dialog, you can just copy the code.
(*) those are the only functions in utils.js that look like they
would work
Em 20-11-2016 18:55, Vitor Boufleur
escreveu:
I made a
fork of your extension and only added the 'const Util =
imports.misc.util;' line to the prefs.js file. The error
happened there too.
Could you do me a favor and test it on your machine please?
This is the
link to the fork: https://github.com/vboufleur/twitchlive-extension
I just tested this import on my extension, on a fresh copy of
Fedora
Workstation booted on my pen drive, and the error happened
anyway. I
think this is a bug for upstream.
If this import works on your machine, could you give me your
shell
version please?
Em 18-11-2016 13:17, Mario Wenzel escreveu:
> The preferences dialogue has a different context even. It
is run via
> the gnome-shell-extension-prefs tool.
>
> Here's an example on how to spawn the dialogue correctly:
> https://github.com/maweki/twitchlive-extension/blob/master/extension.js
> #L147-L152 (Lines 147-152) and the dialogue needs to be
specifically in
> prefs.js and needs to be returned by the buildPrefsWidget
function
> https://github.com/maweki/twitchlive-extension/blob/master/prefs.js
>
> And you don't really create the window, that is handled
by the prefs
> tool. You just supply the inner container.
>
> I hope these examples help.
>
> Mario
>
>
> Am Freitag, den 18.11.2016, 12:59 -0200 schrieb Vitor
Araujo Boufleur:
>> Well, if it's any help, this error happens only when
I open my
>> extension preferences through the gnome-tweak-tool.
This doesn't seem
>> to happen on the 'normal' extension context.
>> Does the preferences and extension have different
contexts?
>> Em 18-11-2016 12:30, Mario Wenzel escreveu:
>>> If you can run `imports.misc.util` in lg, then
it's run basically
>>> the same way as an extension. There shouldn't be
any error in a way
>>> you're describing. You could put the current
state of your code on
>>> github or somewhere where we can get a more
complete picture in
>>> order to try and reproduce it.
>>>
>>> Shell debugging is quite a problem. I hope we
will have better
>>> tools in the future.
>>>
>>> Mario
>>>
>>> Am Freitag, den 18.11.2016, 12:16 -0200 schrieb
Vitor Araujo
>>> Boufleur:
>>>> Hi Mario, thanks for responding, I joined the
mailing list.
>>>> Executing 'gnome-shell --version' gives me
'GNOME Shell 3.20.4'.
>>>> I'm running this command in the shell
extension context, not
>>>> through user context.
>>>> I ran the command through LookingGlass in two
ways:
>>>> 1
>>>>
>>>
>>> 2
>>>
>>> There doesn't seem to have any error. Do you know
what may cause
>>> this bug?
>>>
>>> Em 18-11-2016 06:59, Mario Wenzel escreveu:
>>>> Hi Vitor,
>>>>
>>>> first of all, as an extension developer you
might want to join
>>>> this
>>>> (rather new) mailing list. This is the way we
(the GNOME people)
>>>> want
>>>> to keep touch with the extension developer
community.
>>>>
>>>> Then please tell us which shell version
you're running and in
>>>> which
>>>> context you're running this command. For
example, if you're
>>>> creating a
>>>> shell extension, you can't run it with gjs,
it has to be run from
>>>> the
>>>> shell context instead of the user context
(which would be gjs).
>>>>
>>>> If you press alt+f2 and enter "lg", you get a
js console in the
>>>> shell
>>>> context. Does the command work there?
>>>>
>>>> Mario
>>>>
>>>>
>>>> Am Donnerstag, den 17.11.2016, 16:41 -0200
schrieb Vitor Araujo
>>>> Boufleur:
>>>>> Hi all,
>>>>>
>>>>> This line "const Util =
imports.misc.util;" is throwing this
>>>>> error
>>>>> "Error: Requiring Shell, version none:
Typelib file for
>>>>> namespace
>>>>> 'Meta', version '3.0' not found".
>>>>>
>>>>> Stack trace:
>>>>>
@resource:///org/gnome/shell/misc/util.js:7
>>>>> @/home/CENSORED/.local/share/gnome-
>>>>> shell/extensions/CENSORED/lib/util.js:34
>>>>> @/home/CENSORED/.local/share/gnome-
>>>>> shell/extensions/CENSORED/prefs.js:7
>>>>>
Application<._getExtensionPrefsModule@resource:///org/gnome/she
>>>>> ll/ext
>>>>> ensionPrefs/main.js:74
>>>>>
wrapper@resource:///org/gnome/gjs/modules/lang.js:178
>>>>>
Application<._selectExtension@resource:///org/gnome/shell/exten
>>>>> sionPr
>>>>> efs/main.js:89
>>>>>
wrapper@resource:///org/gnome/gjs/modules/lang.js:178
>>>>>
Application<._onCommandLine@resource:///org/gnome/shell/extensi
>>>>> onPref
>>>>> s/main.js:238
>>>>>
wrapper@resource:///org/gnome/gjs/modules/lang.js:178
>>>>>
main@resource:///org/gnome/shell/extensionPrefs/main.js:376
>>>>> @<main>:1
>>>>>
>>>>> Does anyone know the cause of this?
>>>>>
>>>>> With regards,
>>>>> Vitor Araujo Boufleur
>>>>>
>>>>>
>>>>>
_______________________________________________
>>>>> gnome-shell-extensions-list mailing list
>>>>> gnome-shell-extensions-list gnome org
>>>>> https://mail.gnome.org/mailman/listinfo/gnome-shell-extensions-
>>>>> list
>>>
>>
|