diff --git a/MonitorInputSource@klangman/files/MonitorInputSource@klangman/applet.js b/MonitorInputSource@klangman/files/MonitorInputSource@klangman/applet.js index 08011f9097a..5298933f469 100644 --- a/MonitorInputSource@klangman/files/MonitorInputSource@klangman/applet.js +++ b/MonitorInputSource@klangman/files/MonitorInputSource@klangman/applet.js @@ -45,8 +45,6 @@ function _(text) { return locText; } -let app = null; - function getActionName(actionCode) { let name = ""; if ((actionCode&Modifier.Ctrl) == Modifier.Ctrl) { @@ -91,37 +89,37 @@ function readDisplay(stdout, stderr, exitCode) { let lines = stdout.split('\n'); for (let i=0 ; i < lines.length ; i++) { if (lines[i].startsWith("Model:")) { - this.name = lines[i].slice(7); + this.display.name = lines[i].slice(7); } else if (lines[i].includes("Feature: 60") && i+1 < lines.length && lines[i+1].includes("Values:")) { for ( i=i+2 ; i=0 ; i--) { if (actions[i].actionCode === action || (actions[i].serialNum == this._display.serialNum && actions[i].productCode == this._display.productCode && actions[i].inputIdx == this._inputIdx)) { if (actions[i].actionCode === action) { - let items = app.menu._getMenuItems(); + let items = this._applet.menu._getMenuItems(); for (let i=0 ; i < items.length ; i++) { if (items[i].actionCode==action) { items[i].actionCode=0; @@ -436,10 +434,10 @@ class InputMenuItem extends PopupMenu.PopupMenuItem { } let actionEntry = {actionCode: action, serialNum: this._display.serialNum, productCode: this._display.productCode, inputIdx: this._inputIdx }; actions.push(actionEntry); - app.settings.setValue("mouse-actions", actions); + this._applet.settings.setValue("mouse-actions", actions); this.actionCode = action; - app.updateToolTip(); - app.menu.close(); + this._applet.updateToolTip(); + this._applet.menu.close(); } else { super._onButtonReleaseEvent(actor, event); } @@ -447,18 +445,19 @@ class InputMenuItem extends PopupMenu.PopupMenuItem { } class RefreshMenuItem extends PopupMenu.PopupIconMenuItem { - _init (params) { + _init (applet, params) { super._init.call(this, _("Refresh"), "view-refresh", St.IconType.SYMBOLIC, params); + this._applet = applet; } _onButtonReleaseEvent(actor, event) { - app.displays = []; + this._applet.displays = []; // Add a "detecting" menu item in case the detecting phase takes a long time - app.removeDisplayMenuItems(); + this._applet.removeDisplayMenuItems(); let item = new PopupMenu.PopupIconMenuItem(_("Detecting monitors..."), "video-display-symbolic", St.IconType.SYMBOLIC); item.actor.set_reactive(false); - app.menu.addMenuItem(item,0); - Util.spawnCommandLineAsyncIO( "ddcutil detect", Lang.bind(app, app._readDisplays) ); + this._applet.menu.addMenuItem(item,0); + Util.spawnCommandLineAsyncIO( "ddcutil detect", Lang.bind(this._applet, this._applet._readDisplays) ); } } diff --git a/MonitorInputSource@klangman/files/MonitorInputSource@klangman/metadata.json b/MonitorInputSource@klangman/files/MonitorInputSource@klangman/metadata.json index ac2992db095..6e8ea443c4e 100644 --- a/MonitorInputSource@klangman/files/MonitorInputSource@klangman/metadata.json +++ b/MonitorInputSource@klangman/files/MonitorInputSource@klangman/metadata.json @@ -2,7 +2,7 @@ "uuid": "MonitorInputSource@klangman", "name": "Monitor Input Source", "description": "Change your monitors video input source directly from the cinnamon panel", - "max-instances": "1", + "max-instances": -1, "author": "klangman", "hide-configuration": true } \ No newline at end of file diff --git a/MonitorInputSource@klangman/files/MonitorInputSource@klangman/po/MonitorInputSource@klangman.pot b/MonitorInputSource@klangman/files/MonitorInputSource@klangman/po/MonitorInputSource@klangman.pot index 0af7b36065e..9e56ecbf1e9 100644 --- a/MonitorInputSource@klangman/files/MonitorInputSource@klangman/po/MonitorInputSource@klangman.pot +++ b/MonitorInputSource@klangman/files/MonitorInputSource@klangman/po/MonitorInputSource@klangman.pot @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2023-11-25 00:05-0500\n" +"POT-Creation-Date: 2023-11-26 11:16-0500\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -17,35 +17,35 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -#: applet.js:173 applet.js:458 +#: applet.js:170 applet.js:457 msgid "Detecting monitors..." msgstr "" -#: applet.js:179 +#: applet.js:176 msgid "Options" msgstr "" -#: applet.js:181 +#: applet.js:178 msgid "Clear monitors cache" msgstr "" -#: applet.js:187 +#: applet.js:184 msgid "Clear quick actions" msgstr "" -#: applet.js:318 +#: applet.js:315 msgid "Required \"ddcutil\" not found" msgstr "" -#: applet.js:322 +#: applet.js:319 msgid "Error, \"ddcutil\" exit code " msgstr "" -#: applet.js:326 +#: applet.js:323 msgid "No capable monitors detected" msgstr "" -#: applet.js:451 +#: applet.js:449 msgid "Refresh" msgstr ""