gnome-shell-extensions icon indicating copy to clipboard operation
gnome-shell-extensions copied to clipboard

apps-menu: Exception: can't convert event.get_time() to an integer

Open Jifl opened this issue 10 years ago • 7 comments

After a while of using the applications menu extension, sometimes items no longer execute when clicked on. Notably, gnome-shell outputs the following when you try:

JS ERROR: !!! Exception was: Error: can't convert event.get_time() to an integer JS ERROR: !!! message = '"can't convert event.get_time() to an integer"' JS ERROR: !!! fileName = '"/usr/share/gnome-shell/extensions/[email protected]/extension.js"' JS ERROR: !!! lineNumber = '77' JS ERROR: !!! stack = '"([object GObject_Union])@/usr/share/gnome-shell/extensions/[email protected]/extension.js:77 wrapper([object GObject_Union])@/usr/share/gjs-1.0/lang.js:213 ([object GObject_Object],[object GObject_Union])@/usr/share/gnome-shell/js/ui/popupMenu.js:87 wrapper([object GObject_Object],[object GObject_Union])@/usr/share/gjs-1.0/lang.js:213 "'

The only way to stop it which I could find was to log out entirely - even restarting gnome-shell was insufficient.

Changing line 77 from: this._app.open_new_window(event.get_time()); to e.g.: this._app.open_new_window(-1);

makes this problem go away though. But obviously this is not a true fix. Hopefully a real fix should be easy so please have a look, thanks :-)

Jifl avatar May 02 '15 02:05 Jifl

I can confirm the same issue and error.

eburgueno avatar Jun 21 '15 11:06 eburgueno

this seems to be present on the version of the plugin that comes as part of centos7, and not fixed in any update (just did a yum update and it reverted my manual -1 fix)

sej7278 avatar Oct 14 '15 17:10 sej7278

I am now seeing this issue on a Debian Jessie box, with 28 days of uptime. Maybe, it's a problem once milliseconds since kernel reboot is outside a 32-bit signed integer range? This is a 64-bit platform, though...

Circuitsoft avatar Jan 04 '16 21:01 Circuitsoft

This occurs on RHEL7.2 as well.

notklaatu avatar Apr 29 '16 06:04 notklaatu

I opened an issue in debian for this ages ago, but have had no response there either. https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=810571

andrewgdotcom avatar Jul 19 '16 11:07 andrewgdotcom

Furthermore, the same thing can happen with the Places menu. Again, a workaround (not fix) is to edit /usr/share/gnome-shell/extensions/[email protected]/placeDisplay.js and change line 46 from: let launchContext = global.create_app_launch_context(timestamp, -1); to: let launchContext = global.create_app_launch_context(-1, -1);

Jifl avatar Oct 16 '16 02:10 Jifl

I came across this while investigating a similar bug in my own extension. FWIW, the correct solution seems to be:

global.create_app_launch_context(0, -1)

Which is now used many places in Gnome Shell and explicitly allowed in the Shell global object documentation: https://developer.gnome.org/shell/stable/shell-shell-global.html#shell-global-create-app-launch-context

andyholmes avatar Mar 03 '18 19:03 andyholmes