datetime-format icon indicating copy to clipboard operation
datetime-format copied to clipboard

Error after clicking "Extension Settings" for the addon in Ubuntu Software

Open 49studebaker opened this issue 5 years ago • 4 comments

The settings of extension [email protected] had an error:

TypeError: extension.metadata.formatTargets is undefined

Stack trace:

buildPrefsWidget@/home/htpc/.local/share/gnome-shell/extensions/[email protected]/prefs.js:136:2
_showPrefs@resource:///org/gnome/shell/extensionPrefs/main.js:57:22
_extensionsLoaded@resource:///org/gnome/shell/extensionPrefs/main.js:320:13
_scanExtensions/<@resource:///org/gnome/shell/extensionPrefs/main.js:298:13
asyncCallback@resource:///org/gnome/gjs/modules/overrides/Gio.js:132:13
main@resource:///org/gnome/shell/extensionPrefs/main.js:707:5
@<main>:1:43

49studebaker avatar Nov 04 '19 22:11 49studebaker

+1 exact same error

tcharlss avatar Nov 16 '19 19:11 tcharlss

+1 same here

ChristophSchmidpeter avatar Dec 08 '19 10:12 ChristophSchmidpeter

I have a slightly different problem, but I believe it may be related:

TypeError: (new Date(...)).toLocaleFormat is not a function

Stack trace:
  dateTimeFormat@/home/ito/.local/share/gnome-shell/extensions/[email protected]/Utilities.js:15:85
  updatePreview@/home/ito/.local/share/gnome-shell/extensions/[email protected]/FormatTarget.js:49:25
  create@/home/ito/.local/share/gnome-shell/extensions/[email protected]/FormatTarget.js:55:2
  buildPrefsWidget/<@/home/ito/.local/share/gnome-shell/extensions/[email protected]/prefs.js:136:61
  buildPrefsWidget@/home/ito/.local/share/gnome-shell/extensions/[email protected]/prefs.js:136:2
  _selectExtension@resource:///org/gnome/shell/extensionPrefs/main.js:83:22
  wrapper@resource:///org/gnome/gjs/modules/_legacy.js:82:22
  _onCommandLine@resource:///org/gnome/shell/extensionPrefs/main.js:235:17
  wrapper@resource:///org/gnome/gjs/modules/_legacy.js:82:22
  main@resource:///org/gnome/shell/extensionPrefs/main.js:389:5
  @<main>:1:43

itay-grudev avatar Dec 15 '19 23:12 itay-grudev

In src/prefs.js, replace line 136 with:

["DateMenuDate", "DateMenuDay", "StatusBar"].forEach((formatTarget) => extension.imports.FormatTarget.create(formatTargetsBox, formatTarget, Utilities.getBuilder(gladeFile), settings, editWindow));

Here is a patch:

From 465aa3072424406cb7891e9177a63499da6d4dd3 Mon Sep 17 00:00:00 2001
From: Brenden Campbell <[email protected]>
Date: Sat, 5 Dec 2020 22:56:23 -0500
Subject: [PATCH] Temporary bugfix for missing extension metadata

---
 src/prefs.js | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/prefs.js b/src/prefs.js
index 38f8ed0..30dec6e 100644
--- a/src/prefs.js
+++ b/src/prefs.js
@@ -133,7 +133,7 @@ function buildPrefsWidget() {
 	const editWindow = new extension.imports.EditWindow.Class(preferencesBox, gladeFile, settings, language);
 
 	// Generate format options
-	extension.metadata.formatTargets.forEach((formatTarget) => extension.imports.FormatTarget.create(formatTargetsBox, formatTarget, Utilities.getBuilder(gladeFile), settings, editWindow));
+	["DateMenuDate", "DateMenuDay", "StatusBar"].forEach((formatTarget) => extension.imports.FormatTarget.create(formatTargetsBox, formatTarget, Utilities.getBuilder(gladeFile), settings, editWindow));
 
 	return preferencesBox;
 }
\ No newline at end of file
-- 
2.28.0

brenfwd avatar Dec 06 '20 03:12 brenfwd

Any ETA for this fix?

mclang avatar Mar 18 '21 13:03 mclang