mirror of
https://github.com/noctalia-dev/noctalia-shell.git
synced 2026-05-11 17:08:27 +08:00
Merge remote-tracking branch 'upstream/main' into pr/networking-refactor-pt2
This commit is contained in:
@@ -1558,6 +1558,8 @@
|
||||
"installed-no-plugins-description": "Installieren Sie Plugins aus dem Abschnitt \"Verfügbar\".",
|
||||
"installed-no-plugins-label": "Keine Plugins installiert",
|
||||
"installing": "{plugin} wird installiert...",
|
||||
"notify-updates": "Plugin-Update-Benachrichtigungen",
|
||||
"notify-updates-description": "Zeige ein Benachrichtigungs-Popup an, wenn neue Plugin-Updates verfügbar sind.",
|
||||
"open-plugin-page": "Plugin-Seite öffnen",
|
||||
"open-plugins-tab": "Plugin-Einstellungen öffnen",
|
||||
"plugin-settings-title": "{plugin} Einstellungen",
|
||||
|
||||
@@ -1553,6 +1553,8 @@
|
||||
"installed-no-plugins-description": "Install plugins from the \"Available\" section.",
|
||||
"installed-no-plugins-label": "No plugins installed",
|
||||
"installing": "Installing {plugin}...",
|
||||
"notify-updates": "Plugin update notifications",
|
||||
"notify-updates-description": "Show a notification popup when new plugin updates are available.",
|
||||
"open-plugin-page": "Open plugin page",
|
||||
"open-plugins-tab": "Open plugins settings",
|
||||
"plugin-settings-title": "{plugin} Settings",
|
||||
|
||||
@@ -1558,6 +1558,8 @@
|
||||
"installed-no-plugins-description": "Instale los plugins de la sección \"Disponible\".",
|
||||
"installed-no-plugins-label": "No hay plugins instalados",
|
||||
"installing": "Instalando {plugin}...",
|
||||
"notify-updates": "Notificaciones de actualización de plugins",
|
||||
"notify-updates-description": "Mostrar una notificación emergente cuando haya nuevas actualizaciones de plugins disponibles.",
|
||||
"open-plugin-page": "Abrir página del plugin",
|
||||
"open-plugins-tab": "Abrir la configuración de los plugins",
|
||||
"plugin-settings-title": "Ajustes de {plugin}",
|
||||
|
||||
@@ -1558,6 +1558,8 @@
|
||||
"installed-no-plugins-description": "Installez les plugins depuis la section \"Disponible\".",
|
||||
"installed-no-plugins-label": "Aucun plugin installé",
|
||||
"installing": "Installation de {plugin}...",
|
||||
"notify-updates": "Notifications de mise à jour des plugins",
|
||||
"notify-updates-description": "Afficher une notification contextuelle lorsque de nouvelles mises à jour de plugins sont disponibles.",
|
||||
"open-plugin-page": "Ouvrir la page du plugin",
|
||||
"open-plugins-tab": "Ouvrir les paramètres des plugins",
|
||||
"plugin-settings-title": "Paramètres de {plugin}",
|
||||
|
||||
@@ -1558,6 +1558,8 @@
|
||||
"installed-no-plugins-description": "Bővítmények telepítése az \"Elérhető\" szakaszban lehetséges.",
|
||||
"installed-no-plugins-label": "Nincs telepített bővítmény",
|
||||
"installing": "{plugin} telepítése...",
|
||||
"notify-updates": "Bővítményfrissítési értesítések",
|
||||
"notify-updates-description": "Értesítési előugró ablak megjelenítése, ha új bővítményfrissítések érhetők el.",
|
||||
"open-plugin-page": "Bővítmény oldal megnyitása",
|
||||
"open-plugins-tab": "Bővítmények beállításainak megnyitása",
|
||||
"plugin-settings-title": "{plugin} beállításai",
|
||||
|
||||
@@ -1558,6 +1558,8 @@
|
||||
"installed-no-plugins-description": "Installa plugin dalla sezione \"Disponibili\".",
|
||||
"installed-no-plugins-label": "Nessun plugin installato",
|
||||
"installing": "Installazione {plugin}...",
|
||||
"notify-updates": "Notifiche di aggiornamento dei plugin",
|
||||
"notify-updates-description": "Mostra un popup di notifica quando sono disponibili nuovi aggiornamenti per i plugin.",
|
||||
"open-plugin-page": "Apri pagina plugin",
|
||||
"open-plugins-tab": "Apri impostazioni plugin",
|
||||
"plugin-settings-title": "Impostazioni {plugin}",
|
||||
|
||||
@@ -1558,6 +1558,8 @@
|
||||
"installed-no-plugins-description": "「利用可能」セクションからプラグインをインストールしてください。",
|
||||
"installed-no-plugins-label": "インストールされているプラグインはありません",
|
||||
"installing": "{plugin} をインストール中...",
|
||||
"notify-updates": "プラグインの更新通知",
|
||||
"notify-updates-description": "新しいプラグインのアップデートが利用可能な場合に通知ポップアップを表示します。",
|
||||
"open-plugin-page": "プラグインページを開く",
|
||||
"open-plugins-tab": "プラグイン設定を開く",
|
||||
"plugin-settings-title": "{plugin} の設定",
|
||||
|
||||
@@ -1558,6 +1558,8 @@
|
||||
"installed-no-plugins-description": "\"사용 가능\" 섹션에서 플러그인을 설치하세요.",
|
||||
"installed-no-plugins-label": "설치된 플러그인 없음",
|
||||
"installing": "{plugin} 설치 중...",
|
||||
"notify-updates": "플러그인 업데이트 알림",
|
||||
"notify-updates-description": "새로운 플러그인 업데이트가 있을 때 알림 팝업을 표시합니다.",
|
||||
"open-plugin-page": "플러그인 페이지 열기",
|
||||
"open-plugins-tab": "플러그인 설정 열기",
|
||||
"plugin-settings-title": "{plugin} 설정",
|
||||
|
||||
@@ -1558,6 +1558,8 @@
|
||||
"installed-no-plugins-description": "Installeer plugins uit de sectie \"Beschikbaar\".",
|
||||
"installed-no-plugins-label": "Geen plugins geïnstalleerd",
|
||||
"installing": "{plugin} installeren...",
|
||||
"notify-updates": "Plugin-updatemeldingen",
|
||||
"notify-updates-description": "Toon een melding wanneer nieuwe plug-in-updates beschikbaar zijn.",
|
||||
"open-plugin-page": "Open plug-in pagina",
|
||||
"open-plugins-tab": "Open plugininstellingen",
|
||||
"plugin-settings-title": "{plugin} Instellingen",
|
||||
|
||||
@@ -1558,6 +1558,8 @@
|
||||
"installed-no-plugins-description": "Zainstaluj wtyczki z sekcji \"Dostępne\".",
|
||||
"installed-no-plugins-label": "Brak zainstalowanych wtyczek",
|
||||
"installing": "Instalowanie {plugin}...",
|
||||
"notify-updates": "Powiadomienia o aktualizacjach wtyczek",
|
||||
"notify-updates-description": "Wyświetl wyskakujące powiadomienie, gdy dostępne są nowe aktualizacje wtyczek.",
|
||||
"open-plugin-page": "Otwórz stronę wtyczki",
|
||||
"open-plugins-tab": "Otwórz ustawienia wtyczek",
|
||||
"plugin-settings-title": "Ustawienia {plugin}",
|
||||
|
||||
@@ -1558,6 +1558,8 @@
|
||||
"installed-no-plugins-description": "Instale os plugins da seção \"Disponível\".",
|
||||
"installed-no-plugins-label": "Nenhum plugin instalado",
|
||||
"installing": "Instalando {plugin}...",
|
||||
"notify-updates": "Notificações de atualização de plugins",
|
||||
"notify-updates-description": "Mostrar um popup de notificação quando novas atualizações de plugins estiverem disponíveis.",
|
||||
"open-plugin-page": "Abrir página do plugin",
|
||||
"open-plugins-tab": "Abrir configurações de plugins",
|
||||
"plugin-settings-title": "Configurações do {plugin}",
|
||||
|
||||
@@ -1558,6 +1558,8 @@
|
||||
"installed-no-plugins-description": "Установите плагины из раздела \"Доступно\".",
|
||||
"installed-no-plugins-label": "Нет установленных плагинов",
|
||||
"installing": "Установка {plugin}...",
|
||||
"notify-updates": "Уведомления об обновлении плагинов",
|
||||
"notify-updates-description": "Показывать всплывающее уведомление при наличии новых обновлений плагинов.",
|
||||
"open-plugin-page": "Открыть страницу плагина",
|
||||
"open-plugins-tab": "Открыть настройки плагинов",
|
||||
"plugin-settings-title": "Настройки {plugin}",
|
||||
|
||||
@@ -1558,6 +1558,8 @@
|
||||
"installed-no-plugins-description": "Installera insticksmoduler från avsnittet \"Tillgängliga\".",
|
||||
"installed-no-plugins-label": "Inga insticksmoduler installerade",
|
||||
"installing": "Installerar {plugin}...",
|
||||
"notify-updates": "Meddelanden om plugin-uppdateringar",
|
||||
"notify-updates-description": "Visa en notifikationspopup när nya plugin-uppdateringar är tillgängliga.",
|
||||
"open-plugin-page": "Öppna insticksmodulsida",
|
||||
"open-plugins-tab": "Öppna insticksmodulinställningar",
|
||||
"plugin-settings-title": "Inställningar för {plugin}",
|
||||
|
||||
@@ -1558,6 +1558,8 @@
|
||||
"installed-no-plugins-description": "\"Mevcut\" bölümünden eklentileri kurun.",
|
||||
"installed-no-plugins-label": "Eklenti kurulu değil",
|
||||
"installing": "{eklenti} kuruluyor...",
|
||||
"notify-updates": "Eklenti güncelleme bildirimleri",
|
||||
"notify-updates-description": "Yeni eklenti güncellemeleri olduğunda bir bildirim penceresi göster.",
|
||||
"open-plugin-page": "Eklenti sayfasını aç",
|
||||
"open-plugins-tab": "Eklenti ayarlarına git",
|
||||
"plugin-settings-title": "{plugin} ayarları",
|
||||
|
||||
@@ -1558,6 +1558,8 @@
|
||||
"installed-no-plugins-description": "Встановіть плагіни з розділу \"Доступний\".",
|
||||
"installed-no-plugins-label": "Немає встановлених плагінів",
|
||||
"installing": "Встановлення {plugin}...",
|
||||
"notify-updates": "Сповіщення про оновлення плагінів",
|
||||
"notify-updates-description": "Показувати спливаюче сповіщення, коли доступні нові оновлення плагінів.",
|
||||
"open-plugin-page": "Відкрити сторінку плагіна",
|
||||
"open-plugins-tab": "Відкрити налаштування плагінів",
|
||||
"plugin-settings-title": "Налаштування {plugin}",
|
||||
|
||||
@@ -1558,6 +1558,8 @@
|
||||
"installed-no-plugins-description": "从“可用”部分安装插件。",
|
||||
"installed-no-plugins-label": "未安装插件",
|
||||
"installing": "正在安装 {plugin}...",
|
||||
"notify-updates": "插件更新通知",
|
||||
"notify-updates-description": "当有新的插件更新可用时,显示通知弹窗。",
|
||||
"open-plugin-page": "打开插件页面",
|
||||
"open-plugins-tab": "打开插件设置",
|
||||
"plugin-settings-title": "{plugin} 设置",
|
||||
|
||||
@@ -1558,6 +1558,8 @@
|
||||
"installed-no-plugins-description": "從 \"可用\"頁面來安裝外掛模組",
|
||||
"installed-no-plugins-label": "沒有安裝外掛模組",
|
||||
"installing": "正在安裝 {plugin}...",
|
||||
"notify-updates": "外掛程式更新通知",
|
||||
"notify-updates-description": "當有新的外掛程式更新可用時,顯示通知彈出視窗。",
|
||||
"open-plugin-page": "打開模組頁面",
|
||||
"open-plugins-tab": "開啟外掛模組設定",
|
||||
"plugin-settings-title": "{plugin} 設定",
|
||||
|
||||
@@ -526,10 +526,12 @@
|
||||
"performanceModeEnabled": "",
|
||||
"performanceModeDisabled": "",
|
||||
"startup": "",
|
||||
"session": ""
|
||||
"session": "",
|
||||
"colorGeneration": ""
|
||||
},
|
||||
"plugins": {
|
||||
"autoUpdate": false
|
||||
"autoUpdate": false,
|
||||
"notifyUpdates": true
|
||||
},
|
||||
"idle": {
|
||||
"enabled": false,
|
||||
|
||||
@@ -1950,6 +1950,15 @@
|
||||
"subTab": 0,
|
||||
"subTabLabel": "common.installed"
|
||||
},
|
||||
{
|
||||
"labelKey": "panels.plugins.notify-updates",
|
||||
"descriptionKey": "panels.plugins.notify-updates-description",
|
||||
"widget": "NToggle",
|
||||
"tab": 19,
|
||||
"tabLabel": "panels.plugins.title",
|
||||
"subTab": 0,
|
||||
"subTabLabel": "common.installed"
|
||||
},
|
||||
{
|
||||
"labelKey": "panels.plugins.installed-no-plugins-label",
|
||||
"descriptionKey": "panels.plugins.installed-no-plugins-description",
|
||||
|
||||
@@ -744,6 +744,7 @@ Singleton {
|
||||
// plugins
|
||||
property JsonObject plugins: JsonObject {
|
||||
property bool autoUpdate: false
|
||||
property bool notifyUpdates: true
|
||||
}
|
||||
|
||||
// idle management
|
||||
|
||||
@@ -664,14 +664,20 @@ Item {
|
||||
readonly property bool isExpanded: root.infoSsid === modelData.ssid
|
||||
readonly property bool isEnterprise: NetworkService.isEnterprise(modelData.security)
|
||||
|
||||
function getContentColor(defaultColor = Color.mOnSurface) {
|
||||
function getContentColors(defaultColors = [Color.mSurface, Color.mOnSurface]) {
|
||||
if (root.passwordSsid === modelData.ssid || NetworkService.connectingTo === modelData.ssid) {
|
||||
return Color.mPrimary;
|
||||
return [Color.mPrimary, Color.mOnPrimary];
|
||||
}
|
||||
if (modelData.connected && NetworkService.internetConnectivity && NetworkService.disconnectingFrom !== modelData.ssid) {
|
||||
return [Color.mPrimary, Color.mOnPrimary];
|
||||
}
|
||||
if (NetworkService.disconnectingFrom === modelData.ssid || NetworkService.forgettingNetwork === modelData.ssid) {
|
||||
return Color.mError;
|
||||
return [Color.mError, Color.mOnError];
|
||||
}
|
||||
return defaultColor;
|
||||
if (modelData.connected && !NetworkService.internetConnectivity) {
|
||||
return [Color.mError, Color.mOnError];
|
||||
}
|
||||
return defaultColors;
|
||||
}
|
||||
|
||||
Layout.fillWidth: true
|
||||
@@ -679,7 +685,7 @@ Item {
|
||||
radius: Style.radiusM
|
||||
clip: true
|
||||
|
||||
color: (modelData.connected && NetworkService.disconnectingFrom !== modelData.ssid) ? Qt.alpha(Color.mPrimary, Math.min(1.15 - Color.panelBackgroundOpacity, 0.75)) : Color.mSurface
|
||||
color: networkItem.getContentColors()[0]
|
||||
|
||||
ColumnLayout {
|
||||
id: deviceColumn
|
||||
@@ -701,11 +707,11 @@ Item {
|
||||
color: Color.smartAlpha(Color.mSurfaceVariant)
|
||||
Layout.alignment: Qt.AlignVCenter
|
||||
|
||||
NIcon {
|
||||
anchors.centerIn: parent
|
||||
icon: NetworkService.getSignalInfo(modelData.signal, modelData.connected).icon
|
||||
pointSize: Style.fontSizeXXL
|
||||
color: modelData.connected ? (NetworkService.internetConnectivity ? Color.mPrimary : Color.mError) : networkItem.getContentColor(Color.mOnSurface)
|
||||
NIcon {
|
||||
icon: NetworkService.signalIcon(modelData.signal, modelData.connected)
|
||||
pointSize: Style.fontSizeXXL
|
||||
color: networkItem.getContentColors()[1]
|
||||
Layout.alignment: Qt.AlignVCenter
|
||||
|
||||
MouseArea {
|
||||
anchors.fill: parent
|
||||
@@ -725,7 +731,7 @@ Item {
|
||||
pointSize: Style.fontSizeM
|
||||
font.weight: modelData.connected ? Style.fontWeightBold : Style.fontWeightMedium
|
||||
elide: Text.ElideRight
|
||||
color: networkItem.getContentColor(Color.mOnSurface)
|
||||
color: networkItem.getContentColors()[1]
|
||||
Layout.fillWidth: true
|
||||
}
|
||||
|
||||
@@ -735,7 +741,7 @@ Item {
|
||||
NIcon {
|
||||
icon: NetworkService.isSecured(modelData.security) ? "lock" : "lock-open"
|
||||
pointSize: Style.fontSizeXXS
|
||||
color: networkItem.getContentColor(Color.mOnSurfaceVariant)
|
||||
color: Qt.alpha(networkItem.getContentColors()[1], Style.opacityHeavy)
|
||||
visible: !modelData.connected && NetworkService.disconnectingFrom !== modelData.ssid && NetworkService.forgettingNetwork !== modelData.ssid
|
||||
}
|
||||
|
||||
@@ -765,15 +771,7 @@ Item {
|
||||
return NetworkService.isSecured(modelData.security) ? modelData.security : I18n.tr("wifi.panel.security-open");
|
||||
}
|
||||
pointSize: Style.fontSizeXXS
|
||||
color: {
|
||||
if (modelData.connected) {
|
||||
return (NetworkService.networkConnectivity === "full") ? Color.mPrimary : Color.mError;
|
||||
}
|
||||
if (NetworkService.disconnectingFrom === modelData.ssid || NetworkService.forgettingNetwork === modelData.ssid) {
|
||||
return Color.mError;
|
||||
}
|
||||
return networkItem.getContentColor(Color.mOnSurfaceVariant);
|
||||
}
|
||||
color: Qt.alpha(networkItem.getContentColors()[1], Style.opacityHeavy)
|
||||
}
|
||||
|
||||
// Network speed indicators (visible when connected and speed > 0)
|
||||
@@ -787,15 +785,14 @@ Item {
|
||||
visible: SystemStatService.rxSpeed > 0
|
||||
icon: "arrow-down"
|
||||
pointSize: Style.fontSizeXXS
|
||||
color: networkItem.getContentColor(Color.mOnSurfaceVariant)
|
||||
color: Qt.alpha(networkItem.getContentColors()[1], Style.opacityHeavy)
|
||||
}
|
||||
|
||||
NText {
|
||||
visible: SystemStatService.rxSpeed > 0
|
||||
text: SystemStatService.formatSpeed(SystemStatService.rxSpeed)
|
||||
pointSize: Style.fontSizeXXS
|
||||
color: networkItem.getContentColor(Color.mOnSurfaceVariant)
|
||||
elide: Text.ElideNone
|
||||
color: Qt.alpha(networkItem.getContentColors()[1], Style.opacityHeavy)
|
||||
}
|
||||
|
||||
Item {
|
||||
@@ -808,15 +805,14 @@ Item {
|
||||
visible: SystemStatService.txSpeed > 0
|
||||
icon: "arrow-up"
|
||||
pointSize: Style.fontSizeXXS
|
||||
color: networkItem.getContentColor(Color.mOnSurfaceVariant)
|
||||
color: Qt.alpha(networkItem.getContentColors()[1], Style.opacityHeavy)
|
||||
}
|
||||
|
||||
NText {
|
||||
visible: SystemStatService.txSpeed > 0
|
||||
text: SystemStatService.formatSpeed(SystemStatService.txSpeed)
|
||||
pointSize: Style.fontSizeXXS
|
||||
color: networkItem.getContentColor(Color.mOnSurfaceVariant)
|
||||
elide: Text.ElideNone
|
||||
color: Qt.alpha(networkItem.getContentColors()[1], Style.opacityHeavy)
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -832,7 +828,7 @@ Item {
|
||||
NBusyIndicator {
|
||||
visible: networkItem.isBusy
|
||||
running: visible && root.effectivelyVisible
|
||||
color: Color.mPrimary
|
||||
color: networkItem.getContentColors()[1]
|
||||
size: Style.baseWidgetSize * 0.5
|
||||
}
|
||||
|
||||
@@ -841,6 +837,10 @@ Item {
|
||||
icon: "info"
|
||||
tooltipText: I18n.tr("common.info")
|
||||
baseSize: Style.baseWidgetSize * 0.8
|
||||
colorBg: Color.mSurfaceVariant
|
||||
colorFg: Color.mOnSurface
|
||||
colorBorder: "transparent"
|
||||
colorBorderHover: "transparent"
|
||||
onClicked: {
|
||||
if (root.infoSsid === modelData.ssid) {
|
||||
root.infoSsid = "";
|
||||
@@ -856,6 +856,10 @@ Item {
|
||||
icon: "trash"
|
||||
tooltipText: I18n.tr("tooltips.forget-network")
|
||||
baseSize: Style.baseWidgetSize * 0.8
|
||||
colorBg: Color.mSurfaceVariant
|
||||
colorFg: Color.mOnSurface
|
||||
colorBorder: "transparent"
|
||||
colorBorderHover: "transparent"
|
||||
onClicked: root.requestForget(modelData.ssid)
|
||||
}
|
||||
|
||||
@@ -863,9 +867,9 @@ Item {
|
||||
id: button
|
||||
visible: itemHover.hovered && !modelData.connected && NetworkService.connectingTo !== modelData.ssid && root.passwordSsid !== modelData.ssid
|
||||
enabled: !NetworkService.connecting && !networkItem.isBusy
|
||||
outlined: !button.hovered
|
||||
fontSize: Style.fontSizeS
|
||||
backgroundColor: Color.mPrimary
|
||||
textColor: Color.mOnPrimary
|
||||
text: I18n.tr("common.connect")
|
||||
onClicked: {
|
||||
if (modelData.existing || modelData.cached || !NetworkService.isSecured(modelData.security)) {
|
||||
@@ -880,9 +884,9 @@ Item {
|
||||
id: disconnectButton
|
||||
visible: itemHover.hovered && modelData.connected && NetworkService.disconnectingFrom !== modelData.ssid
|
||||
text: I18n.tr("common.disconnect")
|
||||
outlined: !disconnectButton.hovered
|
||||
fontSize: Style.fontSizeS
|
||||
backgroundColor: Color.mError
|
||||
backgroundColor: Color.mSurfaceVariant
|
||||
textColor: Color.mOnSurface
|
||||
onClicked: NetworkService.disconnect(modelData.ssid)
|
||||
}
|
||||
}
|
||||
|
||||
@@ -40,6 +40,14 @@ ColumnLayout {
|
||||
onToggled: checked => Settings.data.plugins.autoUpdate = checked
|
||||
}
|
||||
|
||||
// Update notification toggle
|
||||
NToggle {
|
||||
label: I18n.tr("panels.plugins.notify-updates")
|
||||
description: I18n.tr("panels.plugins.notify-updates-description")
|
||||
checked: Settings.data.plugins.notifyUpdates
|
||||
onToggled: checked => Settings.data.plugins.notifyUpdates = checked
|
||||
}
|
||||
|
||||
// Check for updates button
|
||||
NButton {
|
||||
property bool isChecking: Object.keys(PluginService.activeFetches).length > 0
|
||||
|
||||
@@ -1451,25 +1451,28 @@ Singleton {
|
||||
|
||||
if (updateCount > 0) {
|
||||
Logger.i("PluginService", updateCount, "plugin update(s) available");
|
||||
ToastService.showNotice(I18n.tr("panels.plugins.title"), I18n.trp("panels.plugins.update-available", updateCount) + "\n\n" + updatesDescription, "plugin", 5000, I18n.tr("panels.plugins.open-plugins-tab"), function () {
|
||||
// Open settings panel to Plugins tab on the screen where the cursor is
|
||||
if (root.screenDetector) {
|
||||
root.screenDetector.withCurrentScreen(function (screen) {
|
||||
var panel = PanelService.getPanel("settingsPanel", screen);
|
||||
|
||||
if (Settings.data.plugins.notifyUpdates) {
|
||||
ToastService.showNotice(I18n.tr("panels.plugins.title"), I18n.trp("panels.plugins.update-available", updateCount) + "\n\n" + updatesDescription, "plugin", 5000, I18n.tr("panels.plugins.open-plugins-tab"), function () {
|
||||
// Open settings panel to Plugins tab on the screen where the cursor is
|
||||
if (root.screenDetector) {
|
||||
root.screenDetector.withCurrentScreen(function (screen) {
|
||||
var panel = PanelService.getPanel("settingsPanel", screen);
|
||||
if (panel) {
|
||||
panel.requestedTab = SettingsPanel.Tab.Plugins;
|
||||
panel.open();
|
||||
}
|
||||
});
|
||||
} else {
|
||||
// Fallback to primary screen if screen detector is not available
|
||||
var panel = PanelService.getPanel("settingsPanel", Quickshell.screens[0]);
|
||||
if (panel) {
|
||||
panel.requestedTab = SettingsPanel.Tab.Plugins;
|
||||
panel.open();
|
||||
}
|
||||
});
|
||||
} else {
|
||||
// Fallback to primary screen if screen detector is not available
|
||||
var panel = PanelService.getPanel("settingsPanel", Quickshell.screens[0]);
|
||||
if (panel) {
|
||||
panel.requestedTab = SettingsPanel.Tab.Plugins;
|
||||
panel.open();
|
||||
}
|
||||
}
|
||||
});
|
||||
});
|
||||
}
|
||||
} else if (pendingCount > 0) {
|
||||
Logger.i("PluginService", pendingCount, "plugin update(s) pending (require newer Noctalia)");
|
||||
} else {
|
||||
|
||||
Generated
+42
-7
@@ -2,11 +2,11 @@
|
||||
"nodes": {
|
||||
"nixpkgs": {
|
||||
"locked": {
|
||||
"lastModified": 1772963539,
|
||||
"narHash": "sha256-9jVDGZnvCckTGdYT53d/EfznygLskyLQXYwJLKMPsZs=",
|
||||
"lastModified": 1773389992,
|
||||
"narHash": "sha256-wvfdLLWJ2I9oEpDd9PfMA8osfIZicoQ5MT1jIwNs9Tk=",
|
||||
"owner": "nixos",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "9dcb002ca1690658be4a04645215baea8b95f31d",
|
||||
"rev": "c06b4ae3d6599a672a6210b7021d699c351eebda",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -16,19 +16,36 @@
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs_2": {
|
||||
"locked": {
|
||||
"lastModified": 1770107345,
|
||||
"narHash": "sha256-tbS0Ebx2PiA1FRW8mt8oejR0qMXmziJmPaU1d4kYY9g=",
|
||||
"owner": "nixos",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "4533d9293756b63904b7238acb84ac8fe4c8c2c4",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "nixos",
|
||||
"ref": "nixpkgs-unstable",
|
||||
"repo": "nixpkgs",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"noctalia-qs": {
|
||||
"inputs": {
|
||||
"nixpkgs": [
|
||||
"nixpkgs"
|
||||
],
|
||||
"systems": "systems"
|
||||
"systems": "systems",
|
||||
"treefmt-nix": "treefmt-nix"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1773175685,
|
||||
"narHash": "sha256-YOkWzVq7opym1ovJvSCvqpG6OCDGJwPo/EPeRxcGay4=",
|
||||
"lastModified": 1773514555,
|
||||
"narHash": "sha256-XNmLf4HqUM6/he/eJiHT+Mvxmt7QuwgGU14jB4Ha+pM=",
|
||||
"owner": "noctalia-dev",
|
||||
"repo": "noctalia-qs",
|
||||
"rev": "6b9eceefde3d47ca83c544b54bcdd358be4cbd2f",
|
||||
"rev": "8aa9d8ce86ef018fb442c585ad7fbb2a15a4f822",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -57,6 +74,24 @@
|
||||
"repo": "default-linux",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"treefmt-nix": {
|
||||
"inputs": {
|
||||
"nixpkgs": "nixpkgs_2"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1772660329,
|
||||
"narHash": "sha256-IjU1FxYqm+VDe5qIOxoW+pISBlGvVApRjiw/Y/ttJzY=",
|
||||
"owner": "numtide",
|
||||
"repo": "treefmt-nix",
|
||||
"rev": "3710e0e1218041bbad640352a0440114b1e10428",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "numtide",
|
||||
"repo": "treefmt-nix",
|
||||
"type": "github"
|
||||
}
|
||||
}
|
||||
},
|
||||
"root": "root",
|
||||
|
||||
Reference in New Issue
Block a user