mirror of
https://github.com/noctalia-dev/noctalia-shell.git
synced 2026-05-11 17:08:27 +08:00
bar: reworked most widgets to support custom icon and text color
This commit is contained in:
@@ -74,7 +74,6 @@
|
||||
"horizontal-bar-description": "Tipp: Verwenden Sie \\n, um einen Zeilenumbruch zu erstellen.",
|
||||
"horizontal-bar-label": "Horizontale Leiste",
|
||||
"preview": "Vorschau",
|
||||
"select-color-description": "Wendet Themenfarben zur Hervorhebung an.",
|
||||
"tooltip-format-description": "Formatzeichenfolge für den Tooltip, der beim Bewegen des Mauszeigers über die Uhr angezeigt wird. Leer lassen, um den Standard-Tooltip zu verwenden.",
|
||||
"tooltip-format-label": "Tooltip-Format",
|
||||
"use-custom-font-description": "Überschreibt die Standard-Schriftart mit einer benutzerdefinierten Schriftart für die Uhr.",
|
||||
@@ -462,6 +461,7 @@
|
||||
"security": "Sicherheit",
|
||||
"select": "Auswählen",
|
||||
"select-color": "Farbe auswählen",
|
||||
"select-color-description": "Wendet Themenfarben zur Hervorhebung an.",
|
||||
"select-icon-color": "Symbolfarbe auswählen",
|
||||
"shortcuts": "Kurzbefehle",
|
||||
"shutdown": "Herunterfahren",
|
||||
|
||||
@@ -74,7 +74,6 @@
|
||||
"horizontal-bar-description": "Tip: Use \\n to create a line break.",
|
||||
"horizontal-bar-label": "Horizontal bar",
|
||||
"preview": "Preview",
|
||||
"select-color-description": "Apply theme colors for emphasis.",
|
||||
"tooltip-format-description": "Format string for the tooltip shown when hovering over the clock. Leave empty to use the default tooltip.",
|
||||
"tooltip-format-label": "Tooltip format",
|
||||
"use-custom-font-description": "Override the default font selection with a custom font for the clock.",
|
||||
@@ -462,6 +461,7 @@
|
||||
"security": "Security",
|
||||
"select": "Select",
|
||||
"select-color": "Select color",
|
||||
"select-color-description": "Apply theme colors for emphasis.",
|
||||
"select-icon-color": "Select icon color",
|
||||
"shortcuts": "Shortcuts",
|
||||
"shutdown": "Shutdown",
|
||||
|
||||
@@ -74,7 +74,6 @@
|
||||
"horizontal-bar-description": "Consejo: Usa \\n para crear un salto de línea.",
|
||||
"horizontal-bar-label": "Barra horizontal",
|
||||
"preview": "Vista previa",
|
||||
"select-color-description": "Aplicar colores del tema para enfatizar.",
|
||||
"tooltip-format-description": "Formato de la información mostrada al pasar el cursor sobre el reloj. Déjalo vacío para usar el formato por defecto.",
|
||||
"tooltip-format-label": "Formato del emergente",
|
||||
"use-custom-font-description": "Anular la fuente predeterminada del sistema con una fuente específica para el reloj.",
|
||||
@@ -462,6 +461,7 @@
|
||||
"security": "Seguridad",
|
||||
"select": "Seleccionar",
|
||||
"select-color": "Seleccionar color",
|
||||
"select-color-description": "Aplicar colores del tema para enfatizar.",
|
||||
"select-icon-color": "Seleccionar color de icono",
|
||||
"shortcuts": "Atajos",
|
||||
"shutdown": "Apagar",
|
||||
|
||||
@@ -74,7 +74,6 @@
|
||||
"horizontal-bar-description": "Astuce : Utilisez \\n pour créer un saut de ligne.",
|
||||
"horizontal-bar-label": "Barre horizontale",
|
||||
"preview": "Aperçu",
|
||||
"select-color-description": "Appliquer les couleurs du thème pour mettre en valeur.",
|
||||
"tooltip-format-description": "Chaîne de format pour l'info-bulle affichée lors du survol de l'horloge. Laissez vide pour utiliser l'info-bulle par défaut.",
|
||||
"tooltip-format-label": "Format de l'info-bulle",
|
||||
"use-custom-font-description": "Remplacez la police par défaut par une police personnalisée pour l'horloge.",
|
||||
@@ -462,6 +461,7 @@
|
||||
"security": "Sécurité",
|
||||
"select": "Sélectionner",
|
||||
"select-color": "Sélectionner une couleur",
|
||||
"select-color-description": "Appliquer les couleurs du thème pour mettre en valeur.",
|
||||
"select-icon-color": "Sélectionner la couleur de l'icône",
|
||||
"shortcuts": "Raccourcis",
|
||||
"shutdown": "Éteindre",
|
||||
|
||||
@@ -74,7 +74,6 @@
|
||||
"horizontal-bar-description": "Råd: Du kann nytta \\n til å skifta til ny lina.",
|
||||
"horizontal-bar-label": "Vassbein rad",
|
||||
"preview": "Vis fyreåt",
|
||||
"select-color-description": "Lìt med hamslìtene for tyngd.",
|
||||
"tooltip-format-description": "Snidstreng for vitringi som kjem upp når du sviv yver klokka. Haldt tom for fyrevald vitring.",
|
||||
"tooltip-format-label": "Vitringssnid",
|
||||
"use-custom-font-description": "Sjå burt frå skriftkyndi elles og nytta ei onnor skriftkynd til klokka.",
|
||||
@@ -89,5 +88,8 @@
|
||||
"browse-library": "Leita i samning",
|
||||
"color-selection-description": "Lìt nøytelteikn med hamslìtene."
|
||||
}
|
||||
},
|
||||
"common": {
|
||||
"select-color-description": "Lìt med hamslìtene for tyngd."
|
||||
}
|
||||
}
|
||||
|
||||
@@ -74,7 +74,6 @@
|
||||
"horizontal-bar-description": "Tipp: Használja a \\n karaktert sortörés létrehozásához.",
|
||||
"horizontal-bar-label": "Vízszintes sáv",
|
||||
"preview": "Előnézet",
|
||||
"select-color-description": "Alkalmazza a témaszíneket a kiemeléshez.",
|
||||
"tooltip-format-description": "Formátumsztring az óra fölé húzva megjelenő eszköztipphez. Hagyja üresen az alapértelmezett eszköztipp használatához.",
|
||||
"tooltip-format-label": "Eszköztipp formátum",
|
||||
"use-custom-font-description": "Felülbírálja az alapértelmezett betűtípus kiválasztását egy egyéni betűtípussal az órához.",
|
||||
@@ -462,6 +461,7 @@
|
||||
"security": "Biztonság",
|
||||
"select": "Kiválasztás",
|
||||
"select-color": "Szín kiválasztása",
|
||||
"select-color-description": "Alkalmazza a témaszíneket a kiemeléshez.",
|
||||
"select-icon-color": "Ikon színének kiválasztása",
|
||||
"shortcuts": "Gyorsbillentyűk",
|
||||
"shutdown": "Leállítás",
|
||||
|
||||
@@ -74,7 +74,6 @@
|
||||
"horizontal-bar-description": "ヒント:\\n を使用すると改行できます。",
|
||||
"horizontal-bar-label": "水平バー",
|
||||
"preview": "プレビュー",
|
||||
"select-color-description": "強調のためにテーマの色を適用します。",
|
||||
"tooltip-format-description": "時計にマウスを合わせたときに表示されるツールチップのフォーマット文字列。デフォルトのツールチップを使用するには空のままにします。",
|
||||
"tooltip-format-label": "ツールチップ形式",
|
||||
"use-custom-font-description": "デフォルトのフォント設定を上書きし、時計にカスタムフォントを使用します。",
|
||||
@@ -462,6 +461,7 @@
|
||||
"security": "セキュリティ",
|
||||
"select": "選択",
|
||||
"select-color": "色を選択",
|
||||
"select-color-description": "強調のためにテーマの色を適用します。",
|
||||
"select-icon-color": "アイコンの色を選択",
|
||||
"shortcuts": "ショートカット",
|
||||
"shutdown": "シャットダウン",
|
||||
|
||||
@@ -74,7 +74,6 @@
|
||||
"horizontal-bar-description": "팁: 줄바꿈을 하려면 \\n을 사용하세요.",
|
||||
"horizontal-bar-label": "수평 바",
|
||||
"preview": "미리보기",
|
||||
"select-color-description": "강조를 위해 테마 색상을 적용합니다.",
|
||||
"tooltip-format-description": "시계 위에 마우스를 올렸을 때 표시되는 툴팁의 형식 문자열입니다. 기본 툴팁을 사용하려면 비워 두세요.",
|
||||
"tooltip-format-label": "툴팁 형식",
|
||||
"use-custom-font-description": "시계의 기본 글꼴 대신 사용자 지정 글꼴을 사용합니다.",
|
||||
@@ -462,6 +461,7 @@
|
||||
"security": "보안",
|
||||
"select": "선택",
|
||||
"select-color": "색상 선택",
|
||||
"select-color-description": "강조를 위해 테마 색상을 적용합니다.",
|
||||
"select-icon-color": "아이콘 색상 선택",
|
||||
"shortcuts": "단축키",
|
||||
"shutdown": "시스템 종료",
|
||||
|
||||
@@ -74,7 +74,6 @@
|
||||
"horizontal-bar-description": "Tip: gebruik \\n om een regeleinde te maken.",
|
||||
"horizontal-bar-label": "Horizontale balk",
|
||||
"preview": "Voorbeeld",
|
||||
"select-color-description": "Themakleuren toepassen voor nadruk.",
|
||||
"tooltip-format-description": "Opmaakreeks voor de tooltip die wordt weergegeven bij het zweven over de klok. Laat leeg om de standaard tooltip te gebruiken.",
|
||||
"tooltip-format-label": "Tooltip-opmaak",
|
||||
"use-custom-font-description": "Overschrijf het standaardlettertype met een aangepast lettertype voor de klok.",
|
||||
@@ -462,6 +461,7 @@
|
||||
"security": "Beveiliging",
|
||||
"select": "Selecteer",
|
||||
"select-color": "Kleur selecteren",
|
||||
"select-color-description": "Themakleuren toepassen voor nadruk.",
|
||||
"select-icon-color": "Icoonkleur selecteren",
|
||||
"shortcuts": "Snelkoppelingen",
|
||||
"shutdown": "Afsluiten",
|
||||
|
||||
@@ -74,7 +74,6 @@
|
||||
"horizontal-bar-description": "Tips: Skriv \\n for å byrja ei ny linje",
|
||||
"horizontal-bar-label": "Vassrett panel",
|
||||
"preview": "Førevisning",
|
||||
"select-color-description": "Gjev temafargar for å heva ut.",
|
||||
"tooltip-format-description": "Formater streng til hjelpeteksten som kjem opp når peikaren er over klokka. Haldt dette tomt for å bruka standardteksten.",
|
||||
"tooltip-format-label": "Hjelpetekstformat",
|
||||
"use-custom-font-description": "Overstyrer standardskrifttypen med eigendefinert skrifttype til klokka.",
|
||||
@@ -462,6 +461,7 @@
|
||||
"security": "Trygging",
|
||||
"select": "Vel",
|
||||
"select-color": "Vel farge",
|
||||
"select-color-description": "Gjev temafargar for å heva ut.",
|
||||
"shortcuts": "Beinvegar",
|
||||
"shutdown": "Slå av",
|
||||
"signal": "Dekning",
|
||||
|
||||
@@ -74,7 +74,6 @@
|
||||
"horizontal-bar-description": "Wskazówka: Użyj \\n, aby utworzyć podział linii.",
|
||||
"horizontal-bar-label": "Pasek poziomy",
|
||||
"preview": "Podgląd",
|
||||
"select-color-description": "Zastosuj kolory motywu dla podkreślenia.",
|
||||
"tooltip-format-description": "Ciąg formatujący dla etykietki wyświetlanej po najechaniu na zegar. Pozostaw puste, aby użyć domyślnej etykietki.",
|
||||
"tooltip-format-label": "Format etykietki",
|
||||
"use-custom-font-description": "Zastąp domyślną czcionkę zegara czcionką niestandardową.",
|
||||
@@ -462,6 +461,7 @@
|
||||
"security": "Bezpieczeństwo",
|
||||
"select": "Wybierz",
|
||||
"select-color": "Wybierz kolor",
|
||||
"select-color-description": "Zastosuj kolory motywu dla podkreślenia.",
|
||||
"select-icon-color": "Wybierz kolor ikony",
|
||||
"shortcuts": "Skróty",
|
||||
"shutdown": "Wyłącz",
|
||||
|
||||
@@ -74,7 +74,6 @@
|
||||
"horizontal-bar-description": "Dica: Use \\n para criar uma quebra de linha.",
|
||||
"horizontal-bar-label": "Barra horizontal",
|
||||
"preview": "Pré-visualização",
|
||||
"select-color-description": "Aplicar cores do tema para enfatizar.",
|
||||
"tooltip-format-description": "String de formato para a dica de ferramenta exibida ao passar o mouse sobre o relógio. Deixe vazio para usar a dica de ferramenta padrão.",
|
||||
"tooltip-format-label": "Formato da dica de ferramenta",
|
||||
"use-custom-font-description": "Substitua a fonte padrão por uma fonte personalizada para o relógio.",
|
||||
@@ -462,6 +461,7 @@
|
||||
"security": "Segurança",
|
||||
"select": "Selecionar",
|
||||
"select-color": "Selecionar cor",
|
||||
"select-color-description": "Aplicar cores do tema para enfatizar.",
|
||||
"select-icon-color": "Selecionar cor do ícone",
|
||||
"shortcuts": "Atalhos",
|
||||
"shutdown": "Desligar",
|
||||
|
||||
@@ -74,7 +74,6 @@
|
||||
"horizontal-bar-description": "Совет: используйте \\n для создания разрыва строки.",
|
||||
"horizontal-bar-label": "Горизонтальная панель",
|
||||
"preview": "Предварительный просмотр",
|
||||
"select-color-description": "Применить цвета темы для выделения.",
|
||||
"tooltip-format-description": "Строка формата для подсказки, отображаемой при наведении на часы. Оставьте пустым, чтобы использовать подсказку по умолчанию.",
|
||||
"tooltip-format-label": "Формат подсказки",
|
||||
"use-custom-font-description": "Переопределить выбор шрифта по умолчанию пользовательским шрифтом для часов.",
|
||||
@@ -462,6 +461,7 @@
|
||||
"security": "Безопасность",
|
||||
"select": "Выбрать",
|
||||
"select-color": "Выбрать цвет",
|
||||
"select-color-description": "Применить цвета темы для выделения.",
|
||||
"select-icon-color": "Выбрать цвет значка",
|
||||
"shortcuts": "Ярлыки",
|
||||
"shutdown": "Выключить",
|
||||
|
||||
@@ -74,7 +74,6 @@
|
||||
"horizontal-bar-description": "Tips: Använd \\n för att skapa en radbrytning.",
|
||||
"horizontal-bar-label": "Horisontell stapel",
|
||||
"preview": "Förhandsgranska",
|
||||
"select-color-description": "Tillämpa temafärger för betoning.",
|
||||
"tooltip-format-description": "Formateringssträng för verktygstips som visas när du håller muspekaren över klockan. Lämna tomt för att använda standardverktygstipset.",
|
||||
"tooltip-format-label": "Verktygstipsformat",
|
||||
"use-custom-font-description": "Åsidosätt standardvalet av teckensnitt med ett anpassat teckensnitt för klockan.",
|
||||
@@ -462,6 +461,7 @@
|
||||
"security": "Säkerhet",
|
||||
"select": "Välj",
|
||||
"select-color": "Välj färg",
|
||||
"select-color-description": "Tillämpa temafärger för betoning.",
|
||||
"select-icon-color": "Välj ikonfärg",
|
||||
"shortcuts": "Genvägar",
|
||||
"shutdown": "Stäng av",
|
||||
|
||||
@@ -74,7 +74,6 @@
|
||||
"horizontal-bar-description": "İpucu: Bir satır sonu oluşturmak için \\n kullanın.",
|
||||
"horizontal-bar-label": "Yatay çubuk",
|
||||
"preview": "Önizleme",
|
||||
"select-color-description": "Vurgu için tema renklerini uygula.",
|
||||
"tooltip-format-description": "Saat üzerine geldiğinizde gösterilen ipucu için format dizesi. Varsayılan ipucunu kullanmak için boş bırakın.",
|
||||
"tooltip-format-label": "İpucu formatı",
|
||||
"use-custom-font-description": "Saat için varsayılan yazı tipi seçimini özel bir yazı tipiyle geçersiz kılın.",
|
||||
@@ -462,6 +461,7 @@
|
||||
"security": "Güvenlik",
|
||||
"select": "Seç",
|
||||
"select-color": "Renk Seç",
|
||||
"select-color-description": "Vurgu için tema renklerini uygula.",
|
||||
"select-icon-color": "Simge rengini seçin",
|
||||
"shortcuts": "Kısayollar",
|
||||
"shutdown": "Kapat",
|
||||
|
||||
@@ -74,7 +74,6 @@
|
||||
"horizontal-bar-description": "Порада: Використовуйте \\n для створення розриву рядка.",
|
||||
"horizontal-bar-label": "Горизонтальна панель",
|
||||
"preview": "Попередній перегляд",
|
||||
"select-color-description": "Застосувати кольори теми для виділення.",
|
||||
"tooltip-format-description": "Рядок формату для підказки, що відображається при наведенні на годинник. Залиште порожнім, щоб використовувати стандартну підказку.",
|
||||
"tooltip-format-label": "Формат підказки",
|
||||
"use-custom-font-description": "Замінити стандартний вибір шрифту власним шрифтом для годинника.",
|
||||
@@ -462,6 +461,7 @@
|
||||
"security": "Безпека",
|
||||
"select": "Вибрати",
|
||||
"select-color": "Вибрати колір",
|
||||
"select-color-description": "Застосувати кольори теми для виділення.",
|
||||
"select-icon-color": "Вибрати колір значка",
|
||||
"shortcuts": "Ярлики",
|
||||
"shutdown": "Вимкнути",
|
||||
|
||||
@@ -74,7 +74,6 @@
|
||||
"horizontal-bar-description": "提示:使用 \\n 创建换行。",
|
||||
"horizontal-bar-label": "水平栏",
|
||||
"preview": "预览",
|
||||
"select-color-description": "应用主题颜色以示强调。",
|
||||
"tooltip-format-description": "自定义鼠标悬停在时钟上时显示的提示信息,可以使用格式化字符串。留空以使用默认提示信息。",
|
||||
"tooltip-format-label": "提示信息格式",
|
||||
"use-custom-font-description": "使用自定义字体覆盖时钟的默认字体选择。",
|
||||
@@ -462,6 +461,7 @@
|
||||
"security": "安全",
|
||||
"select": "选择",
|
||||
"select-color": "选择颜色",
|
||||
"select-color-description": "应用主题颜色以示强调。",
|
||||
"select-icon-color": "选择图标颜色",
|
||||
"shortcuts": "快捷方式",
|
||||
"shutdown": "关机",
|
||||
|
||||
@@ -74,7 +74,6 @@
|
||||
"horizontal-bar-description": "提示: 可以利用 \\n 換行",
|
||||
"horizontal-bar-label": "水平列顯示",
|
||||
"preview": "預覽",
|
||||
"select-color-description": "套用主題顏色以示強調。",
|
||||
"tooltip-format-description": "在游標移過時提示框所顯示的格式, 如果留空則使用預設值",
|
||||
"tooltip-format-label": "提示框格式",
|
||||
"use-custom-font-description": "為時鐘強制套用自訂的字型",
|
||||
@@ -462,6 +461,7 @@
|
||||
"security": "安全",
|
||||
"select": "選取",
|
||||
"select-color": "選擇顏色",
|
||||
"select-color-description": "套用主題顏色以示強調。",
|
||||
"select-icon-color": "選擇圖示顏色",
|
||||
"shortcuts": "快捷鍵",
|
||||
"shutdown": "關機",
|
||||
|
||||
@@ -228,6 +228,59 @@ Singleton {
|
||||
}
|
||||
}
|
||||
|
||||
function resolveColorKey(key) {
|
||||
switch (key) {
|
||||
case "primary":
|
||||
return root.mPrimary;
|
||||
case "secondary":
|
||||
return root.mSecondary;
|
||||
case "tertiary":
|
||||
return root.mTertiary;
|
||||
case "error":
|
||||
return root.mError;
|
||||
default:
|
||||
return root.mOnSurface;
|
||||
}
|
||||
}
|
||||
|
||||
function resolveColorKeyOptional(key) {
|
||||
switch (key) {
|
||||
case "primary":
|
||||
return root.mPrimary;
|
||||
case "secondary":
|
||||
return root.mSecondary;
|
||||
case "tertiary":
|
||||
return root.mTertiary;
|
||||
case "error":
|
||||
return root.mError;
|
||||
default:
|
||||
return "transparent";
|
||||
}
|
||||
}
|
||||
|
||||
readonly property var colorKeyModel: [
|
||||
{
|
||||
"key": "none",
|
||||
"name": I18n.tr("common.none")
|
||||
},
|
||||
{
|
||||
"key": "primary",
|
||||
"name": I18n.tr("common.primary")
|
||||
},
|
||||
{
|
||||
"key": "secondary",
|
||||
"name": I18n.tr("common.secondary")
|
||||
},
|
||||
{
|
||||
"key": "tertiary",
|
||||
"name": I18n.tr("common.tertiary")
|
||||
},
|
||||
{
|
||||
"key": "error",
|
||||
"name": I18n.tr("common.error")
|
||||
}
|
||||
]
|
||||
|
||||
// --------------------------------
|
||||
// Default colors: Rose Pine
|
||||
QtObject {
|
||||
|
||||
@@ -21,6 +21,8 @@ Item {
|
||||
property bool rotateText: false
|
||||
property color customBackgroundColor: "transparent"
|
||||
property color customTextIconColor: "transparent"
|
||||
property color customIconColor: "transparent"
|
||||
property color customTextColor: "transparent"
|
||||
|
||||
readonly property string barPosition: Settings.getBarPositionForScreen(screen?.name)
|
||||
readonly property bool isVerticalBar: barPosition === "left" || barPosition === "right"
|
||||
@@ -64,6 +66,8 @@ Item {
|
||||
rotateText: root.rotateText
|
||||
customBackgroundColor: root.customBackgroundColor
|
||||
customTextIconColor: root.customTextIconColor
|
||||
customIconColor: root.customIconColor
|
||||
customTextColor: root.customTextColor
|
||||
onShown: root.shown()
|
||||
onHidden: root.hidden()
|
||||
onEntered: root.entered()
|
||||
@@ -90,6 +94,8 @@ Item {
|
||||
hovered: root.hovered
|
||||
customBackgroundColor: root.customBackgroundColor
|
||||
customTextIconColor: root.customTextIconColor
|
||||
customIconColor: root.customIconColor
|
||||
customTextColor: root.customTextColor
|
||||
onShown: root.shown()
|
||||
onHidden: root.hidden()
|
||||
onEntered: root.entered()
|
||||
|
||||
@@ -21,6 +21,8 @@ Item {
|
||||
property bool hovered: false
|
||||
property color customBackgroundColor: "transparent"
|
||||
property color customTextIconColor: "transparent"
|
||||
property color customIconColor: "transparent"
|
||||
property color customTextColor: "transparent"
|
||||
|
||||
readonly property bool collapseToIcon: forceClose && !forceOpen
|
||||
|
||||
@@ -50,6 +52,8 @@ Item {
|
||||
// Always prioritize hover color, then the custom one and finally the fallback color
|
||||
readonly property color bgColor: hovered ? Color.mHover : (customBackgroundColor.a > 0) ? customBackgroundColor : Style.capsuleColor
|
||||
readonly property color fgColor: hovered ? Color.mOnHover : (customTextIconColor.a > 0) ? customTextIconColor : Color.mOnSurface
|
||||
readonly property color iconFgColor: hovered ? Color.mOnHover : (customIconColor.a > 0) ? customIconColor : (customTextIconColor.a > 0) ? customTextIconColor : Color.mOnSurface
|
||||
readonly property color textFgColor: hovered ? Color.mOnHover : (customTextColor.a > 0) ? customTextColor : (customTextIconColor.a > 0) ? customTextIconColor : Color.mOnSurface
|
||||
|
||||
readonly property real iconSize: Style.toOdd(pillHeight * 0.48)
|
||||
|
||||
@@ -139,7 +143,7 @@ Item {
|
||||
family: Settings.data.ui.fontFixed
|
||||
pointSize: root.barFontSize
|
||||
applyUiScale: false
|
||||
color: root.fgColor
|
||||
color: root.textFgColor
|
||||
visible: revealed
|
||||
}
|
||||
|
||||
@@ -173,7 +177,7 @@ Item {
|
||||
icon: root.icon
|
||||
pointSize: iconSize
|
||||
applyUiScale: false
|
||||
color: root.fgColor
|
||||
color: root.iconFgColor
|
||||
// Center horizontally
|
||||
x: (iconCircle.width - width) / 2
|
||||
// Center vertically accounting for font metrics
|
||||
|
||||
@@ -22,6 +22,8 @@ Item {
|
||||
property bool rotateText: false
|
||||
property color customBackgroundColor: "transparent"
|
||||
property color customTextIconColor: "transparent"
|
||||
property color customIconColor: "transparent"
|
||||
property color customTextColor: "transparent"
|
||||
|
||||
readonly property bool collapseToIcon: forceClose && !forceOpen
|
||||
|
||||
@@ -57,6 +59,8 @@ Item {
|
||||
// Always prioritize hover color, then the custom one and finally the fallback color
|
||||
readonly property color bgColor: hovered ? Color.mHover : (customBackgroundColor.a > 0) ? customBackgroundColor : Style.capsuleColor
|
||||
readonly property color fgColor: hovered ? Color.mOnHover : (customTextIconColor.a > 0) ? customTextIconColor : Color.mOnSurface
|
||||
readonly property color iconFgColor: hovered ? Color.mOnHover : (customIconColor.a > 0) ? customIconColor : (customTextIconColor.a > 0) ? customTextIconColor : Color.mOnSurface
|
||||
readonly property color textFgColor: hovered ? Color.mOnHover : (customTextColor.a > 0) ? customTextColor : (customTextIconColor.a > 0) ? customTextIconColor : Color.mOnSurface
|
||||
|
||||
readonly property real iconSize: Style.toOdd(pillHeight * 0.48)
|
||||
|
||||
@@ -151,7 +155,7 @@ Item {
|
||||
applyUiScale: false
|
||||
horizontalAlignment: Text.AlignHCenter
|
||||
verticalAlignment: Text.AlignVCenter
|
||||
color: root.fgColor
|
||||
color: root.textFgColor
|
||||
visible: revealed
|
||||
|
||||
function getVerticalCenterOffset() {
|
||||
@@ -198,7 +202,7 @@ Item {
|
||||
icon: root.icon
|
||||
pointSize: iconSize
|
||||
applyUiScale: false
|
||||
color: root.fgColor
|
||||
color: root.iconFgColor
|
||||
// Center horizontally
|
||||
x: (iconCircle.width - width) / 2
|
||||
// Center vertically accounting for font metrics
|
||||
|
||||
@@ -34,6 +34,8 @@ Item {
|
||||
readonly property string barPosition: Settings.getBarPositionForScreen(screenName)
|
||||
readonly property bool isBarVertical: barPosition === "left" || barPosition === "right"
|
||||
readonly property string displayMode: widgetSettings.displayMode !== undefined ? widgetSettings.displayMode : widgetMetadata.displayMode
|
||||
readonly property string iconColorKey: widgetSettings.iconColor !== undefined ? widgetSettings.iconColor : widgetMetadata.iconColor
|
||||
readonly property string textColorKey: widgetSettings.textColor !== undefined ? widgetSettings.textColor : widgetMetadata.textColor
|
||||
|
||||
implicitWidth: pill.width
|
||||
implicitHeight: pill.height
|
||||
@@ -71,6 +73,8 @@ Item {
|
||||
|
||||
screen: root.screen
|
||||
oppositeDirection: BarService.getPillDirection(root)
|
||||
customIconColor: Color.resolveColorKeyOptional(root.iconColorKey)
|
||||
customTextColor: Color.resolveColorKeyOptional(root.textColorKey)
|
||||
icon: !BluetoothService.enabled ? "bluetooth-off" : ((BluetoothService.connectedDevices && BluetoothService.connectedDevices.length > 0) ? "bluetooth-connected" : "bluetooth")
|
||||
text: {
|
||||
if (BluetoothService.connectedDevices && BluetoothService.connectedDevices.length > 0) {
|
||||
|
||||
@@ -35,6 +35,8 @@ Item {
|
||||
readonly property string barPosition: Settings.getBarPositionForScreen(screenName)
|
||||
readonly property bool isBarVertical: barPosition === "left" || barPosition === "right"
|
||||
readonly property string displayMode: (widgetSettings.displayMode !== undefined) ? widgetSettings.displayMode : widgetMetadata.displayMode
|
||||
readonly property string iconColorKey: widgetSettings.iconColor !== undefined ? widgetSettings.iconColor : widgetMetadata.iconColor
|
||||
readonly property string textColorKey: widgetSettings.textColor !== undefined ? widgetSettings.textColor : widgetMetadata.textColor
|
||||
|
||||
// Used to avoid opening the pill on Quickshell startup
|
||||
property bool firstBrightnessReceived: false
|
||||
@@ -134,6 +136,8 @@ Item {
|
||||
|
||||
screen: root.screen
|
||||
oppositeDirection: BarService.getPillDirection(root)
|
||||
customIconColor: Color.resolveColorKeyOptional(root.iconColorKey)
|
||||
customTextColor: Color.resolveColorKeyOptional(root.textColorKey)
|
||||
icon: getIcon()
|
||||
autoHide: false // Important to be false so we can hover as long as we want
|
||||
text: {
|
||||
|
||||
@@ -45,20 +45,7 @@ Item {
|
||||
readonly property string formatVertical: widgetSettings.formatVertical !== undefined ? widgetSettings.formatVertical : widgetMetadata.formatVertical
|
||||
readonly property string tooltipFormat: widgetSettings.tooltipFormat !== undefined ? widgetSettings.tooltipFormat : widgetMetadata.tooltipFormat
|
||||
|
||||
readonly property color textColor: {
|
||||
switch (clockColor) {
|
||||
case "primary":
|
||||
return Color.mPrimary;
|
||||
case "secondary":
|
||||
return Color.mSecondary;
|
||||
case "tertiary":
|
||||
return Color.mTertiary;
|
||||
case "error":
|
||||
return Color.mError;
|
||||
default:
|
||||
return Color.mOnSurface;
|
||||
}
|
||||
}
|
||||
readonly property color textColor: Color.resolveColorKey(clockColor)
|
||||
|
||||
// Content dimensions for implicit sizing
|
||||
readonly property real contentWidth: isBarVertical ? capsuleHeight : Math.round((isBarVertical ? verticalLoader.implicitWidth : horizontalLoader.implicitWidth) + Style.marginXL)
|
||||
|
||||
@@ -8,6 +8,26 @@ NIconButton {
|
||||
|
||||
property ShellScreen screen
|
||||
|
||||
// Widget properties passed from Bar.qml for per-instance settings
|
||||
property string widgetId: ""
|
||||
property string section: ""
|
||||
property int sectionWidgetIndex: -1
|
||||
property int sectionWidgetsCount: 0
|
||||
|
||||
property var widgetMetadata: BarWidgetRegistry.widgetMetadata[widgetId]
|
||||
readonly property string screenName: screen ? screen.name : ""
|
||||
property var widgetSettings: {
|
||||
if (section && sectionWidgetIndex >= 0 && screenName) {
|
||||
var widgets = Settings.getBarWidgetsForScreen(screenName)[section];
|
||||
if (widgets && sectionWidgetIndex < widgets.length) {
|
||||
return widgets[sectionWidgetIndex];
|
||||
}
|
||||
}
|
||||
return {};
|
||||
}
|
||||
|
||||
readonly property string iconColorKey: widgetSettings.iconColor !== undefined ? widgetSettings.iconColor : widgetMetadata.iconColor
|
||||
|
||||
icon: "dark-mode"
|
||||
tooltipText: Settings.data.colorSchemes.darkMode ? I18n.tr("tooltips.switch-to-light-mode") : I18n.tr("tooltips.switch-to-dark-mode")
|
||||
tooltipDirection: BarService.getTooltipDirection(screen?.name)
|
||||
@@ -15,11 +35,36 @@ NIconButton {
|
||||
applyUiScale: false
|
||||
customRadius: Style.radiusL
|
||||
colorBg: Style.capsuleColor
|
||||
colorFg: Color.mOnSurface
|
||||
colorFg: Color.resolveColorKey(iconColorKey)
|
||||
colorBorder: "transparent"
|
||||
colorBorderHover: "transparent"
|
||||
onClicked: Settings.data.colorSchemes.darkMode = !Settings.data.colorSchemes.darkMode
|
||||
|
||||
border.color: Style.capsuleBorderColor
|
||||
border.width: Style.capsuleBorderWidth
|
||||
|
||||
NPopupContextMenu {
|
||||
id: contextMenu
|
||||
|
||||
model: [
|
||||
{
|
||||
"label": I18n.tr("actions.widget-settings"),
|
||||
"action": "widget-settings",
|
||||
"icon": "settings"
|
||||
},
|
||||
]
|
||||
|
||||
onTriggered: action => {
|
||||
contextMenu.close();
|
||||
PanelService.closeContextMenu(screen);
|
||||
|
||||
if (action === "widget-settings") {
|
||||
BarService.openWidgetSettings(screen, section, sectionWidgetIndex, widgetId, widgetSettings);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
onRightClicked: {
|
||||
PanelService.showContextMenu(contextMenu, root, screen);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -33,19 +33,47 @@ Item {
|
||||
|
||||
readonly property string barPosition: Settings.getBarPositionForScreen(screenName)
|
||||
readonly property bool isBarVertical: barPosition === "left" || barPosition === "right"
|
||||
readonly property string iconColorKey: widgetSettings.iconColor !== undefined ? widgetSettings.iconColor : widgetMetadata.iconColor
|
||||
readonly property string textColorKey: widgetSettings.textColor !== undefined ? widgetSettings.textColor : widgetMetadata.textColor
|
||||
|
||||
implicitWidth: pill.width
|
||||
implicitHeight: pill.height
|
||||
|
||||
NPopupContextMenu {
|
||||
id: contextMenu
|
||||
|
||||
model: [
|
||||
{
|
||||
"label": I18n.tr("actions.widget-settings"),
|
||||
"action": "widget-settings",
|
||||
"icon": "settings"
|
||||
},
|
||||
]
|
||||
|
||||
onTriggered: action => {
|
||||
contextMenu.close();
|
||||
PanelService.closeContextMenu(screen);
|
||||
|
||||
if (action === "widget-settings") {
|
||||
BarService.openWidgetSettings(screen, section, sectionWidgetIndex, widgetId, widgetSettings);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
BarPill {
|
||||
id: pill
|
||||
|
||||
screen: root.screen
|
||||
text: IdleInhibitorService.timeout == null ? "" : Time.formatVagueHumanReadableDuration(IdleInhibitorService.timeout)
|
||||
oppositeDirection: BarService.getPillDirection(root)
|
||||
customIconColor: Color.resolveColorKeyOptional(root.iconColorKey)
|
||||
customTextColor: Color.resolveColorKeyOptional(root.textColorKey)
|
||||
icon: IdleInhibitorService.isInhibited ? "keep-awake-on" : "keep-awake-off"
|
||||
tooltipText: IdleInhibitorService.isInhibited ? I18n.tr("tooltips.keep-awake") : I18n.tr("tooltips.keep-awake")
|
||||
onClicked: IdleInhibitorService.manualToggle()
|
||||
onRightClicked: {
|
||||
PanelService.showContextMenu(contextMenu, pill, screen);
|
||||
}
|
||||
forceOpen: IdleInhibitorService.timeout !== null
|
||||
forceClose: IdleInhibitorService.timeout == null
|
||||
onWheel: function (delta) {
|
||||
|
||||
@@ -40,6 +40,8 @@ Item {
|
||||
|
||||
readonly property string displayMode: (widgetSettings.displayMode !== undefined) ? widgetSettings.displayMode : widgetMetadata.displayMode
|
||||
readonly property bool showIcon: (widgetSettings.showIcon !== undefined) ? widgetSettings.showIcon : widgetMetadata.showIcon
|
||||
readonly property string iconColorKey: widgetSettings.iconColor !== undefined ? widgetSettings.iconColor : widgetMetadata.iconColor
|
||||
readonly property string textColorKey: widgetSettings.textColor !== undefined ? widgetSettings.textColor : widgetMetadata.textColor
|
||||
|
||||
// Use the shared service for keyboard layout
|
||||
property string currentLayout: KeyboardLayoutService.currentLayout
|
||||
@@ -73,6 +75,8 @@ Item {
|
||||
anchors.verticalCenter: parent.verticalCenter
|
||||
screen: root.screen
|
||||
oppositeDirection: BarService.getPillDirection(root)
|
||||
customIconColor: Color.resolveColorKeyOptional(root.iconColorKey)
|
||||
customTextColor: Color.resolveColorKeyOptional(root.textColorKey)
|
||||
icon: root.showIcon ? "keyboard" : ""
|
||||
autoHide: false // Important to be false so we can hover as long as we want
|
||||
text: isBarVertical ? currentLayout.substring(0, 3).toUpperCase() : currentLayout
|
||||
|
||||
@@ -30,7 +30,7 @@ NIconButton {
|
||||
}
|
||||
|
||||
readonly property string iconName: widgetSettings.icon || (widgetMetadata ? widgetMetadata.icon : "search")
|
||||
readonly property bool usePrimaryColor: (widgetSettings.usePrimaryColor !== undefined) ? widgetSettings.usePrimaryColor : ((widgetMetadata && widgetMetadata.usePrimaryColor !== undefined) ? widgetMetadata.usePrimaryColor : true)
|
||||
readonly property string iconColorKey: widgetSettings.iconColor !== undefined ? widgetSettings.iconColor : widgetMetadata.iconColor
|
||||
|
||||
icon: iconName
|
||||
tooltipText: I18n.tr("actions.open-launcher")
|
||||
@@ -40,8 +40,8 @@ NIconButton {
|
||||
customRadius: Style.radiusL
|
||||
colorBg: Style.capsuleColor
|
||||
colorBgHover: Color.mHover
|
||||
colorFg: usePrimaryColor ? Color.mPrimary : Color.mOnSurface
|
||||
colorFgHover: usePrimaryColor ? Qt.darker(Color.mPrimary, 1.2) : Color.mOnHover
|
||||
colorFg: Color.resolveColorKey(iconColorKey)
|
||||
colorFgHover: Color.mOnHover
|
||||
colorBorder: Style.capsuleBorderColor
|
||||
colorBorderHover: Style.capsuleBorderColor
|
||||
|
||||
|
||||
@@ -38,6 +38,8 @@ Item {
|
||||
readonly property bool isBarVertical: barPosition === "left" || barPosition === "right"
|
||||
readonly property string displayMode: (widgetSettings.displayMode !== undefined) ? widgetSettings.displayMode : widgetMetadata.displayMode
|
||||
readonly property string middleClickCommand: (widgetSettings.middleClickCommand !== undefined) ? widgetSettings.middleClickCommand : widgetMetadata.middleClickCommand
|
||||
readonly property string iconColorKey: widgetSettings.iconColor !== undefined ? widgetSettings.iconColor : widgetMetadata.iconColor
|
||||
readonly property string textColorKey: widgetSettings.textColor !== undefined ? widgetSettings.textColor : widgetMetadata.textColor
|
||||
|
||||
// Used to avoid opening the pill on Quickshell startup
|
||||
property bool firstInputVolumeReceived: false
|
||||
@@ -129,6 +131,8 @@ Item {
|
||||
|
||||
screen: root.screen
|
||||
oppositeDirection: BarService.getPillDirection(root)
|
||||
customIconColor: Color.resolveColorKeyOptional(root.iconColorKey)
|
||||
customTextColor: Color.resolveColorKeyOptional(root.textColorKey)
|
||||
icon: AudioService.getInputIcon()
|
||||
autoHide: false // Important to be false so we can hover as long as we want
|
||||
text: {
|
||||
|
||||
@@ -34,6 +34,8 @@ Item {
|
||||
readonly property string barPosition: Settings.getBarPositionForScreen(screenName)
|
||||
readonly property bool isBarVertical: barPosition === "left" || barPosition === "right"
|
||||
readonly property string displayMode: widgetSettings.displayMode !== undefined ? widgetSettings.displayMode : widgetMetadata.displayMode
|
||||
readonly property string iconColorKey: widgetSettings.iconColor !== undefined ? widgetSettings.iconColor : widgetMetadata.iconColor
|
||||
readonly property string textColorKey: widgetSettings.textColor !== undefined ? widgetSettings.textColor : widgetMetadata.textColor
|
||||
|
||||
implicitWidth: pill.width
|
||||
implicitHeight: pill.height
|
||||
@@ -71,6 +73,8 @@ Item {
|
||||
|
||||
screen: root.screen
|
||||
oppositeDirection: BarService.getPillDirection(root)
|
||||
customIconColor: Color.resolveColorKeyOptional(root.iconColorKey)
|
||||
customTextColor: Color.resolveColorKeyOptional(root.textColorKey)
|
||||
icon: {
|
||||
try {
|
||||
if (NetworkService.ethernetConnected) {
|
||||
|
||||
@@ -14,11 +14,31 @@ NIconButton {
|
||||
|
||||
property ShellScreen screen
|
||||
|
||||
// Widget properties passed from Bar.qml for per-instance settings
|
||||
property string widgetId: ""
|
||||
property string section: ""
|
||||
property int sectionWidgetIndex: -1
|
||||
property int sectionWidgetsCount: 0
|
||||
|
||||
property var widgetMetadata: BarWidgetRegistry.widgetMetadata[widgetId]
|
||||
readonly property string screenName: screen ? screen.name : ""
|
||||
property var widgetSettings: {
|
||||
if (section && sectionWidgetIndex >= 0 && screenName) {
|
||||
var widgets = Settings.getBarWidgetsForScreen(screenName)[section];
|
||||
if (widgets && sectionWidgetIndex < widgets.length) {
|
||||
return widgets[sectionWidgetIndex];
|
||||
}
|
||||
}
|
||||
return {};
|
||||
}
|
||||
|
||||
readonly property string iconColorKey: widgetSettings.iconColor !== undefined ? widgetSettings.iconColor : widgetMetadata.iconColor
|
||||
|
||||
baseSize: Style.getCapsuleHeightForScreen(screen?.name)
|
||||
applyUiScale: false
|
||||
customRadius: Style.radiusL
|
||||
colorBg: Settings.data.nightLight.forced ? Color.mPrimary : Style.capsuleColor
|
||||
colorFg: Settings.data.nightLight.forced ? Color.mOnPrimary : Color.mOnSurface
|
||||
colorFg: Settings.data.nightLight.forced ? Color.mOnPrimary : Color.resolveColorKey(iconColorKey)
|
||||
colorBorder: "transparent"
|
||||
colorBorderHover: "transparent"
|
||||
border.color: Style.capsuleBorderColor
|
||||
@@ -45,9 +65,28 @@ NIconButton {
|
||||
}
|
||||
}
|
||||
|
||||
NPopupContextMenu {
|
||||
id: contextMenu
|
||||
|
||||
model: [
|
||||
{
|
||||
"label": I18n.tr("actions.widget-settings"),
|
||||
"action": "widget-settings",
|
||||
"icon": "settings"
|
||||
},
|
||||
]
|
||||
|
||||
onTriggered: action => {
|
||||
contextMenu.close();
|
||||
PanelService.closeContextMenu(screen);
|
||||
|
||||
if (action === "widget-settings") {
|
||||
BarService.openWidgetSettings(screen, section, sectionWidgetIndex, widgetId, widgetSettings);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
onRightClicked: {
|
||||
var settingsPanel = PanelService.getPanel("settingsPanel", screen);
|
||||
settingsPanel.requestedTab = SettingsPanel.Tab.Display;
|
||||
settingsPanel.open();
|
||||
PanelService.showContextMenu(contextMenu, root, screen);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -14,11 +14,31 @@ NIconButton {
|
||||
|
||||
property ShellScreen screen
|
||||
|
||||
// Widget properties passed from Bar.qml for per-instance settings
|
||||
property string widgetId: ""
|
||||
property string section: ""
|
||||
property int sectionWidgetIndex: -1
|
||||
property int sectionWidgetsCount: 0
|
||||
|
||||
property var widgetMetadata: BarWidgetRegistry.widgetMetadata[widgetId]
|
||||
readonly property string screenName: screen ? screen.name : ""
|
||||
property var widgetSettings: {
|
||||
if (section && sectionWidgetIndex >= 0 && screenName) {
|
||||
var widgets = Settings.getBarWidgetsForScreen(screenName)[section];
|
||||
if (widgets && sectionWidgetIndex < widgets.length) {
|
||||
return widgets[sectionWidgetIndex];
|
||||
}
|
||||
}
|
||||
return {};
|
||||
}
|
||||
|
||||
readonly property string iconColorKey: widgetSettings.iconColor !== undefined ? widgetSettings.iconColor : widgetMetadata.iconColor
|
||||
|
||||
baseSize: Style.getCapsuleHeightForScreen(screen?.name)
|
||||
applyUiScale: false
|
||||
customRadius: Style.radiusL
|
||||
colorBg: PowerProfileService.noctaliaPerformanceMode ? Color.mPrimary : Style.capsuleColor
|
||||
colorFg: PowerProfileService.noctaliaPerformanceMode ? Color.mOnPrimary : Color.mOnSurface
|
||||
colorFg: PowerProfileService.noctaliaPerformanceMode ? Color.mOnPrimary : Color.resolveColorKey(iconColorKey)
|
||||
colorBorder: "transparent"
|
||||
colorBorderHover: "transparent"
|
||||
border.color: Style.capsuleBorderColor
|
||||
@@ -28,4 +48,29 @@ NIconButton {
|
||||
tooltipText: PowerProfileService.noctaliaPerformanceMode ? I18n.tr("tooltips.noctalia-performance-enabled") : I18n.tr("tooltips.noctalia-performance-enabled")
|
||||
tooltipDirection: BarService.getTooltipDirection(screen?.name)
|
||||
onClicked: PowerProfileService.toggleNoctaliaPerformance()
|
||||
|
||||
NPopupContextMenu {
|
||||
id: contextMenu
|
||||
|
||||
model: [
|
||||
{
|
||||
"label": I18n.tr("actions.widget-settings"),
|
||||
"action": "widget-settings",
|
||||
"icon": "settings"
|
||||
},
|
||||
]
|
||||
|
||||
onTriggered: action => {
|
||||
contextMenu.close();
|
||||
PanelService.closeContextMenu(screen);
|
||||
|
||||
if (action === "widget-settings") {
|
||||
BarService.openWidgetSettings(screen, section, sectionWidgetIndex, widgetId, widgetSettings);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
onRightClicked: {
|
||||
PanelService.showContextMenu(contextMenu, root, screen);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -36,6 +36,7 @@ NIconButton {
|
||||
readonly property bool hideWhenZero: widgetSettings.hideWhenZero !== undefined ? widgetSettings.hideWhenZero : widgetMetadata.hideWhenZero
|
||||
readonly property bool hideWhenZeroUnread: widgetSettings.hideWhenZeroUnread !== undefined ? widgetSettings.hideWhenZeroUnread : widgetMetadata.hideWhenZeroUnread
|
||||
readonly property string unreadBadgeColor: widgetSettings.unreadBadgeColor !== undefined ? widgetSettings.unreadBadgeColor : widgetMetadata.unreadBadgeColor
|
||||
readonly property string iconColorKey: widgetSettings.iconColor !== undefined ? widgetSettings.iconColor : widgetMetadata.iconColor
|
||||
|
||||
readonly property color badgeColor: {
|
||||
switch (unreadBadgeColor) {
|
||||
@@ -74,7 +75,7 @@ NIconButton {
|
||||
tooltipText: NotificationService.doNotDisturb ? I18n.tr("tooltips.open-notification-history-enable-dnd") : I18n.tr("tooltips.open-notification-history-enable-dnd")
|
||||
tooltipDirection: BarService.getTooltipDirection(screen?.name)
|
||||
colorBg: Style.capsuleColor
|
||||
colorFg: Color.mOnSurface
|
||||
colorFg: Color.resolveColorKey(iconColorKey)
|
||||
colorBorder: "transparent"
|
||||
colorBorderHover: "transparent"
|
||||
border.color: Style.capsuleBorderColor
|
||||
|
||||
@@ -12,6 +12,26 @@ NIconButton {
|
||||
|
||||
property ShellScreen screen
|
||||
|
||||
// Widget properties passed from Bar.qml for per-instance settings
|
||||
property string widgetId: ""
|
||||
property string section: ""
|
||||
property int sectionWidgetIndex: -1
|
||||
property int sectionWidgetsCount: 0
|
||||
|
||||
property var widgetMetadata: BarWidgetRegistry.widgetMetadata[widgetId]
|
||||
readonly property string screenName: screen ? screen.name : ""
|
||||
property var widgetSettings: {
|
||||
if (section && sectionWidgetIndex >= 0 && screenName) {
|
||||
var widgets = Settings.getBarWidgetsForScreen(screenName)[section];
|
||||
if (widgets && sectionWidgetIndex < widgets.length) {
|
||||
return widgets[sectionWidgetIndex];
|
||||
}
|
||||
}
|
||||
return {};
|
||||
}
|
||||
|
||||
readonly property string iconColorKey: widgetSettings.iconColor !== undefined ? widgetSettings.iconColor : widgetMetadata.iconColor
|
||||
|
||||
baseSize: Style.getCapsuleHeightForScreen(screen?.name)
|
||||
applyUiScale: false
|
||||
customRadius: Style.radiusL
|
||||
@@ -22,11 +42,35 @@ NIconButton {
|
||||
})
|
||||
tooltipDirection: BarService.getTooltipDirection(screen?.name)
|
||||
colorBg: (PowerProfileService.profile === PowerProfile.Balanced) ? Style.capsuleColor : Color.mPrimary
|
||||
colorFg: (PowerProfileService.profile === PowerProfile.Balanced) ? Color.mOnSurface : Color.mOnPrimary
|
||||
colorFg: (PowerProfileService.profile === PowerProfile.Balanced) ? Color.resolveColorKey(iconColorKey) : Color.mOnPrimary
|
||||
colorBorder: "transparent"
|
||||
colorBorderHover: "transparent"
|
||||
border.color: Style.capsuleBorderColor
|
||||
border.width: Style.capsuleBorderWidth
|
||||
onClicked: PowerProfileService.cycleProfile()
|
||||
onRightClicked: PowerProfileService.cycleProfileReverse()
|
||||
|
||||
NPopupContextMenu {
|
||||
id: contextMenu
|
||||
|
||||
model: [
|
||||
{
|
||||
"label": I18n.tr("actions.widget-settings"),
|
||||
"action": "widget-settings",
|
||||
"icon": "settings"
|
||||
},
|
||||
]
|
||||
|
||||
onTriggered: action => {
|
||||
contextMenu.close();
|
||||
PanelService.closeContextMenu(screen);
|
||||
|
||||
if (action === "widget-settings") {
|
||||
BarService.openWidgetSettings(screen, section, sectionWidgetIndex, widgetId, widgetSettings);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
onRightClicked: {
|
||||
PanelService.showContextMenu(contextMenu, root, screen);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -31,22 +31,7 @@ NIconButton {
|
||||
return {};
|
||||
}
|
||||
|
||||
readonly property string colorName: widgetSettings.colorName !== undefined ? widgetSettings.colorName : widgetMetadata.colorName
|
||||
|
||||
readonly property color iconColor: {
|
||||
switch (colorName) {
|
||||
case "primary":
|
||||
return Color.mPrimary;
|
||||
case "secondary":
|
||||
return Color.mSecondary;
|
||||
case "tertiary":
|
||||
return Color.mTertiary;
|
||||
case "error":
|
||||
return Color.mError;
|
||||
default:
|
||||
return Color.mOnSurface;
|
||||
}
|
||||
}
|
||||
readonly property string iconColorKey: (widgetSettings.iconColor !== undefined) ? widgetSettings.iconColor : widgetMetadata.iconColor
|
||||
|
||||
baseSize: Style.getCapsuleHeightForScreen(screenName)
|
||||
applyUiScale: false
|
||||
@@ -55,7 +40,7 @@ NIconButton {
|
||||
tooltipText: I18n.tr("tooltips.session-menu")
|
||||
tooltipDirection: BarService.getTooltipDirection(screenName)
|
||||
colorBg: Style.capsuleColor
|
||||
colorFg: root.iconColor
|
||||
colorFg: Color.resolveColorKey(iconColorKey)
|
||||
colorBorder: "transparent"
|
||||
colorBorderHover: "transparent"
|
||||
border.color: Style.capsuleBorderColor
|
||||
|
||||
@@ -66,35 +66,8 @@ Item {
|
||||
readonly property real contentWidth: isVertical ? capsuleHeight : Math.round(mainGrid.implicitWidth + Style.marginXL)
|
||||
readonly property real contentHeight: isVertical ? Math.round(mainGrid.implicitHeight + Style.marginXL) : capsuleHeight
|
||||
|
||||
readonly property color iconColor: {
|
||||
switch (iconColorKey) {
|
||||
case "primary":
|
||||
return Color.mPrimary;
|
||||
case "secondary":
|
||||
return Color.mSecondary;
|
||||
case "tertiary":
|
||||
return Color.mTertiary;
|
||||
case "error":
|
||||
return Color.mError;
|
||||
default:
|
||||
return Color.mOnSurface;
|
||||
}
|
||||
}
|
||||
|
||||
readonly property color textColor: {
|
||||
switch (textColorKey) {
|
||||
case "primary":
|
||||
return Color.mPrimary;
|
||||
case "secondary":
|
||||
return Color.mSecondary;
|
||||
case "tertiary":
|
||||
return Color.mTertiary;
|
||||
case "error":
|
||||
return Color.mError;
|
||||
default:
|
||||
return Color.mOnSurface;
|
||||
}
|
||||
}
|
||||
readonly property color iconColor: Color.resolveColorKey(iconColorKey)
|
||||
readonly property color textColor: Color.resolveColorKey(textColorKey)
|
||||
|
||||
// Size: use implicit width/height
|
||||
// BarWidgetLoader sets explicit width/height to extend click area
|
||||
|
||||
@@ -33,6 +33,8 @@ Item {
|
||||
readonly property string barPosition: Settings.getBarPositionForScreen(screenName)
|
||||
readonly property bool isBarVertical: barPosition === "left" || barPosition === "right"
|
||||
readonly property string displayMode: widgetSettings.displayMode !== undefined ? widgetSettings.displayMode : widgetMetadata.displayMode
|
||||
readonly property string iconColorKey: widgetSettings.iconColor !== undefined ? widgetSettings.iconColor : widgetMetadata.iconColor
|
||||
readonly property string textColorKey: widgetSettings.textColor !== undefined ? widgetSettings.textColor : widgetMetadata.textColor
|
||||
|
||||
implicitWidth: pill.width
|
||||
implicitHeight: pill.height
|
||||
@@ -100,6 +102,8 @@ Item {
|
||||
|
||||
screen: root.screen
|
||||
oppositeDirection: BarService.getPillDirection(root)
|
||||
customIconColor: Color.resolveColorKeyOptional(root.iconColorKey)
|
||||
customTextColor: Color.resolveColorKeyOptional(root.textColorKey)
|
||||
icon: VPNService.hasActiveConnection ? "shield-lock" : "shield"
|
||||
text: {
|
||||
if (VPNService.activeConnections.length > 0) {
|
||||
|
||||
@@ -37,6 +37,8 @@ Item {
|
||||
readonly property bool isBarVertical: barPosition === "left" || barPosition === "right"
|
||||
readonly property string displayMode: (widgetSettings.displayMode !== undefined) ? widgetSettings.displayMode : widgetMetadata.displayMode
|
||||
readonly property string middleClickCommand: (widgetSettings.middleClickCommand !== undefined) ? widgetSettings.middleClickCommand : widgetMetadata.middleClickCommand
|
||||
readonly property string iconColorKey: widgetSettings.iconColor !== undefined ? widgetSettings.iconColor : widgetMetadata.iconColor
|
||||
readonly property string textColorKey: widgetSettings.textColor !== undefined ? widgetSettings.textColor : widgetMetadata.textColor
|
||||
|
||||
// Used to avoid opening the pill on Quickshell startup
|
||||
property bool firstVolumeReceived: false
|
||||
@@ -111,6 +113,8 @@ Item {
|
||||
|
||||
screen: root.screen
|
||||
oppositeDirection: BarService.getPillDirection(root)
|
||||
customIconColor: Color.resolveColorKeyOptional(root.iconColorKey)
|
||||
customTextColor: Color.resolveColorKeyOptional(root.textColorKey)
|
||||
icon: AudioService.getOutputIcon()
|
||||
autoHide: false // Important to be false so we can hover as long as we want
|
||||
text: {
|
||||
|
||||
@@ -12,6 +12,26 @@ NIconButton {
|
||||
|
||||
property ShellScreen screen
|
||||
|
||||
// Widget properties passed from Bar.qml for per-instance settings
|
||||
property string widgetId: ""
|
||||
property string section: ""
|
||||
property int sectionWidgetIndex: -1
|
||||
property int sectionWidgetsCount: 0
|
||||
|
||||
property var widgetMetadata: BarWidgetRegistry.widgetMetadata[widgetId]
|
||||
readonly property string screenName: screen ? screen.name : ""
|
||||
property var widgetSettings: {
|
||||
if (section && sectionWidgetIndex >= 0 && screenName) {
|
||||
var widgets = Settings.getBarWidgetsForScreen(screenName)[section];
|
||||
if (widgets && sectionWidgetIndex < widgets.length) {
|
||||
return widgets[sectionWidgetIndex];
|
||||
}
|
||||
}
|
||||
return {};
|
||||
}
|
||||
|
||||
readonly property string iconColorKey: widgetSettings.iconColor !== undefined ? widgetSettings.iconColor : widgetMetadata.iconColor
|
||||
|
||||
enabled: Settings.data.wallpaper.enabled
|
||||
baseSize: Style.getCapsuleHeightForScreen(screen?.name)
|
||||
applyUiScale: false
|
||||
@@ -20,7 +40,7 @@ NIconButton {
|
||||
tooltipText: I18n.tr("tooltips.wallpaper-selector")
|
||||
tooltipDirection: BarService.getTooltipDirection(screen?.name)
|
||||
colorBg: Style.capsuleColor
|
||||
colorFg: Color.mOnSurface
|
||||
colorFg: Color.resolveColorKey(iconColorKey)
|
||||
colorBorder: "transparent"
|
||||
colorBorderHover: "transparent"
|
||||
border.color: Style.capsuleBorderColor
|
||||
@@ -35,6 +55,11 @@ NIconButton {
|
||||
"action": "random-wallpaper",
|
||||
"icon": "dice"
|
||||
},
|
||||
{
|
||||
"label": I18n.tr("actions.widget-settings"),
|
||||
"action": "widget-settings",
|
||||
"icon": "settings"
|
||||
},
|
||||
]
|
||||
|
||||
onTriggered: action => {
|
||||
@@ -43,6 +68,8 @@ NIconButton {
|
||||
|
||||
if (action === "random-wallpaper") {
|
||||
WallpaperService.setRandomWallpaper();
|
||||
} else if (action === "widget-settings") {
|
||||
BarService.openWidgetSettings(screen, section, sectionWidgetIndex, widgetId, widgetSettings);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -40,28 +40,7 @@ ColumnLayout {
|
||||
Layout.fillWidth: true
|
||||
label: I18n.tr("bar.audio-visualizer.color-name-label")
|
||||
description: I18n.tr("bar.audio-visualizer.color-name-description")
|
||||
model: [
|
||||
{
|
||||
"key": "none",
|
||||
"name": I18n.tr("common.none")
|
||||
},
|
||||
{
|
||||
"key": "primary",
|
||||
"name": I18n.tr("common.primary")
|
||||
},
|
||||
{
|
||||
"key": "secondary",
|
||||
"name": I18n.tr("common.secondary")
|
||||
},
|
||||
{
|
||||
"key": "tertiary",
|
||||
"name": I18n.tr("common.tertiary")
|
||||
},
|
||||
{
|
||||
"key": "error",
|
||||
"name": I18n.tr("common.error")
|
||||
}
|
||||
]
|
||||
model: Color.colorKeyModel
|
||||
currentKey: root.valueColorName
|
||||
onSelected: key => {
|
||||
root.valueColorName = key;
|
||||
|
||||
@@ -15,10 +15,14 @@ ColumnLayout {
|
||||
|
||||
// Local state
|
||||
property string valueDisplayMode: widgetData.displayMode !== undefined ? widgetData.displayMode : widgetMetadata.displayMode
|
||||
property string valueIconColor: widgetData.iconColor !== undefined ? widgetData.iconColor : widgetMetadata.iconColor
|
||||
property string valueTextColor: widgetData.textColor !== undefined ? widgetData.textColor : widgetMetadata.textColor
|
||||
|
||||
function saveSettings() {
|
||||
var settings = Object.assign({}, widgetData || {});
|
||||
settings.displayMode = valueDisplayMode;
|
||||
settings.iconColor = valueIconColor;
|
||||
settings.textColor = valueTextColor;
|
||||
return settings;
|
||||
}
|
||||
|
||||
@@ -46,4 +50,28 @@ ColumnLayout {
|
||||
settingsChanged(saveSettings());
|
||||
}
|
||||
}
|
||||
|
||||
NComboBox {
|
||||
label: I18n.tr("common.select-icon-color")
|
||||
description: I18n.tr("common.select-color-description")
|
||||
model: Color.colorKeyModel
|
||||
currentKey: valueIconColor
|
||||
onSelected: key => {
|
||||
valueIconColor = key;
|
||||
settingsChanged(saveSettings());
|
||||
}
|
||||
minimumWidth: 200
|
||||
}
|
||||
|
||||
NComboBox {
|
||||
label: I18n.tr("common.select-color")
|
||||
description: I18n.tr("common.select-color-description")
|
||||
model: Color.colorKeyModel
|
||||
currentKey: valueTextColor
|
||||
onSelected: key => {
|
||||
valueTextColor = key;
|
||||
settingsChanged(saveSettings());
|
||||
}
|
||||
minimumWidth: 200
|
||||
}
|
||||
}
|
||||
|
||||
@@ -16,10 +16,14 @@ ColumnLayout {
|
||||
|
||||
// Local state
|
||||
property string valueDisplayMode: widgetData.displayMode !== undefined ? widgetData.displayMode : widgetMetadata.displayMode
|
||||
property string valueIconColor: widgetData.iconColor !== undefined ? widgetData.iconColor : widgetMetadata.iconColor
|
||||
property string valueTextColor: widgetData.textColor !== undefined ? widgetData.textColor : widgetMetadata.textColor
|
||||
|
||||
function saveSettings() {
|
||||
var settings = Object.assign({}, widgetData || {});
|
||||
settings.displayMode = valueDisplayMode;
|
||||
settings.iconColor = valueIconColor;
|
||||
settings.textColor = valueTextColor;
|
||||
return settings;
|
||||
}
|
||||
|
||||
@@ -47,4 +51,28 @@ ColumnLayout {
|
||||
settingsChanged(saveSettings());
|
||||
}
|
||||
}
|
||||
|
||||
NComboBox {
|
||||
label: I18n.tr("common.select-icon-color")
|
||||
description: I18n.tr("common.select-color-description")
|
||||
model: Color.colorKeyModel
|
||||
currentKey: valueIconColor
|
||||
onSelected: key => {
|
||||
valueIconColor = key;
|
||||
settingsChanged(saveSettings());
|
||||
}
|
||||
minimumWidth: 200
|
||||
}
|
||||
|
||||
NComboBox {
|
||||
label: I18n.tr("common.select-color")
|
||||
description: I18n.tr("common.select-color-description")
|
||||
model: Color.colorKeyModel
|
||||
currentKey: valueTextColor
|
||||
onSelected: key => {
|
||||
valueTextColor = key;
|
||||
settingsChanged(saveSettings());
|
||||
}
|
||||
minimumWidth: 200
|
||||
}
|
||||
}
|
||||
|
||||
@@ -85,29 +85,8 @@ ColumnLayout {
|
||||
|
||||
NComboBox {
|
||||
label: I18n.tr("common.select-color")
|
||||
description: I18n.tr("bar.clock.select-color-description")
|
||||
model: [
|
||||
{
|
||||
"name": I18n.tr("common.none"),
|
||||
"key": "none"
|
||||
},
|
||||
{
|
||||
"key": "primary",
|
||||
"name": I18n.tr("common.primary")
|
||||
},
|
||||
{
|
||||
"key": "secondary",
|
||||
"name": I18n.tr("common.secondary")
|
||||
},
|
||||
{
|
||||
"key": "tertiary",
|
||||
"name": I18n.tr("common.tertiary")
|
||||
},
|
||||
{
|
||||
"key": "error",
|
||||
"name": I18n.tr("common.error")
|
||||
}
|
||||
]
|
||||
description: I18n.tr("common.select-color-description")
|
||||
model: Color.colorKeyModel
|
||||
currentKey: valueClockColor
|
||||
onSelected: key => {
|
||||
valueClockColor = key;
|
||||
|
||||
@@ -57,28 +57,7 @@ ColumnLayout {
|
||||
visible: valueEnableColorization
|
||||
label: I18n.tr("common.select-color")
|
||||
description: I18n.tr("bar.control-center.color-selection-description")
|
||||
model: [
|
||||
{
|
||||
"name": I18n.tr("common.none"),
|
||||
"key": "none"
|
||||
},
|
||||
{
|
||||
"name": I18n.tr("common.primary"),
|
||||
"key": "primary"
|
||||
},
|
||||
{
|
||||
"name": I18n.tr("common.secondary"),
|
||||
"key": "secondary"
|
||||
},
|
||||
{
|
||||
"name": I18n.tr("common.tertiary"),
|
||||
"key": "tertiary"
|
||||
},
|
||||
{
|
||||
"name": I18n.tr("common.error"),
|
||||
"key": "error"
|
||||
}
|
||||
]
|
||||
model: Color.colorKeyModel
|
||||
currentKey: valueColorizeSystemIcon
|
||||
onSelected: function (key) {
|
||||
valueColorizeSystemIcon = key;
|
||||
|
||||
@@ -115,28 +115,7 @@ ColumnLayout {
|
||||
visible: valueEnableColorization
|
||||
label: I18n.tr("common.select-color")
|
||||
description: I18n.tr("bar.custom-button.color-selection-description")
|
||||
model: [
|
||||
{
|
||||
"name": I18n.tr("common.none"),
|
||||
"key": "none"
|
||||
},
|
||||
{
|
||||
"name": I18n.tr("common.primary"),
|
||||
"key": "primary"
|
||||
},
|
||||
{
|
||||
"name": I18n.tr("common.secondary"),
|
||||
"key": "secondary"
|
||||
},
|
||||
{
|
||||
"name": I18n.tr("common.tertiary"),
|
||||
"key": "tertiary"
|
||||
},
|
||||
{
|
||||
"name": I18n.tr("common.error"),
|
||||
"key": "error"
|
||||
}
|
||||
]
|
||||
model: Color.colorKeyModel
|
||||
currentKey: valueColorizeSystemIcon
|
||||
onSelected: key => {
|
||||
valueColorizeSystemIcon = key;
|
||||
|
||||
@@ -0,0 +1,34 @@
|
||||
import QtQuick
|
||||
import QtQuick.Layouts
|
||||
import qs.Commons
|
||||
import qs.Widgets
|
||||
|
||||
ColumnLayout {
|
||||
id: root
|
||||
spacing: Style.marginM
|
||||
|
||||
property var widgetData: null
|
||||
property var widgetMetadata: null
|
||||
|
||||
signal settingsChanged(var settings)
|
||||
|
||||
property string valueIconColor: widgetData.iconColor !== undefined ? widgetData.iconColor : widgetMetadata.iconColor
|
||||
|
||||
function saveSettings() {
|
||||
var settings = Object.assign({}, widgetData || {});
|
||||
settings.iconColor = valueIconColor;
|
||||
return settings;
|
||||
}
|
||||
|
||||
NComboBox {
|
||||
label: I18n.tr("common.select-icon-color")
|
||||
description: I18n.tr("common.select-color-description")
|
||||
model: Color.colorKeyModel
|
||||
currentKey: valueIconColor
|
||||
onSelected: key => {
|
||||
valueIconColor = key;
|
||||
settingsChanged(saveSettings());
|
||||
}
|
||||
minimumWidth: 200
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,48 @@
|
||||
import QtQuick
|
||||
import QtQuick.Layouts
|
||||
import qs.Commons
|
||||
import qs.Widgets
|
||||
|
||||
ColumnLayout {
|
||||
id: root
|
||||
spacing: Style.marginM
|
||||
|
||||
property var widgetData: null
|
||||
property var widgetMetadata: null
|
||||
|
||||
signal settingsChanged(var settings)
|
||||
|
||||
property string valueIconColor: widgetData.iconColor !== undefined ? widgetData.iconColor : widgetMetadata.iconColor
|
||||
property string valueTextColor: widgetData.textColor !== undefined ? widgetData.textColor : widgetMetadata.textColor
|
||||
|
||||
function saveSettings() {
|
||||
var settings = Object.assign({}, widgetData || {});
|
||||
settings.iconColor = valueIconColor;
|
||||
settings.textColor = valueTextColor;
|
||||
return settings;
|
||||
}
|
||||
|
||||
NComboBox {
|
||||
label: I18n.tr("common.select-icon-color")
|
||||
description: I18n.tr("common.select-color-description")
|
||||
model: Color.colorKeyModel
|
||||
currentKey: valueIconColor
|
||||
onSelected: key => {
|
||||
valueIconColor = key;
|
||||
settingsChanged(saveSettings());
|
||||
}
|
||||
minimumWidth: 200
|
||||
}
|
||||
|
||||
NComboBox {
|
||||
label: I18n.tr("common.select-color")
|
||||
description: I18n.tr("common.select-color-description")
|
||||
model: Color.colorKeyModel
|
||||
currentKey: valueTextColor
|
||||
onSelected: key => {
|
||||
valueTextColor = key;
|
||||
settingsChanged(saveSettings());
|
||||
}
|
||||
minimumWidth: 200
|
||||
}
|
||||
}
|
||||
@@ -17,11 +17,15 @@ ColumnLayout {
|
||||
// Local state
|
||||
property string valueDisplayMode: widgetData.displayMode !== undefined ? widgetData.displayMode : widgetMetadata.displayMode
|
||||
property bool valueShowIcon: widgetData.showIcon !== undefined ? widgetData.showIcon : widgetMetadata.showIcon
|
||||
property string valueIconColor: widgetData.iconColor !== undefined ? widgetData.iconColor : widgetMetadata.iconColor
|
||||
property string valueTextColor: widgetData.textColor !== undefined ? widgetData.textColor : widgetMetadata.textColor
|
||||
|
||||
function saveSettings() {
|
||||
var settings = Object.assign({}, widgetData || {});
|
||||
settings.displayMode = valueDisplayMode;
|
||||
settings.showIcon = valueShowIcon;
|
||||
settings.iconColor = valueIconColor;
|
||||
settings.textColor = valueTextColor;
|
||||
return settings;
|
||||
}
|
||||
|
||||
@@ -60,4 +64,28 @@ ColumnLayout {
|
||||
settingsChanged(saveSettings());
|
||||
}
|
||||
}
|
||||
|
||||
NComboBox {
|
||||
label: I18n.tr("common.select-icon-color")
|
||||
description: I18n.tr("common.select-color-description")
|
||||
model: Color.colorKeyModel
|
||||
currentKey: valueIconColor
|
||||
onSelected: key => {
|
||||
valueIconColor = key;
|
||||
settingsChanged(saveSettings());
|
||||
}
|
||||
minimumWidth: 200
|
||||
}
|
||||
|
||||
NComboBox {
|
||||
label: I18n.tr("common.select-color")
|
||||
description: I18n.tr("common.select-color-description")
|
||||
model: Color.colorKeyModel
|
||||
currentKey: valueTextColor
|
||||
onSelected: key => {
|
||||
valueTextColor = key;
|
||||
settingsChanged(saveSettings());
|
||||
}
|
||||
minimumWidth: 200
|
||||
}
|
||||
}
|
||||
|
||||
@@ -16,21 +16,23 @@ ColumnLayout {
|
||||
signal settingsChanged(var settings)
|
||||
|
||||
// Local state
|
||||
property bool valueUsePrimaryColor: widgetData.usePrimaryColor !== undefined ? widgetData.usePrimaryColor : (widgetMetadata ? widgetMetadata.usePrimaryColor : false)
|
||||
property string valueIconColor: widgetData.iconColor !== undefined ? widgetData.iconColor : widgetMetadata.iconColor
|
||||
|
||||
function saveSettings() {
|
||||
var settings = Object.assign({}, widgetData || {});
|
||||
settings.usePrimaryColor = valueUsePrimaryColor;
|
||||
settings.iconColor = valueIconColor;
|
||||
return settings;
|
||||
}
|
||||
|
||||
NToggle {
|
||||
label: I18n.tr("bar.clock.use-primary-color-label")
|
||||
description: I18n.tr("bar.clock.use-primary-color-description")
|
||||
checked: valueUsePrimaryColor
|
||||
onToggled: checked => {
|
||||
valueUsePrimaryColor = checked;
|
||||
settingsChanged(saveSettings());
|
||||
}
|
||||
NComboBox {
|
||||
label: I18n.tr("common.select-icon-color")
|
||||
description: I18n.tr("common.select-color-description")
|
||||
model: Color.colorKeyModel
|
||||
currentKey: valueIconColor
|
||||
onSelected: key => {
|
||||
valueIconColor = key;
|
||||
settingsChanged(saveSettings());
|
||||
}
|
||||
minimumWidth: 200
|
||||
}
|
||||
}
|
||||
|
||||
@@ -17,11 +17,15 @@ ColumnLayout {
|
||||
// Local state
|
||||
property string valueDisplayMode: widgetData.displayMode !== undefined ? widgetData.displayMode : widgetMetadata.displayMode
|
||||
property string valueMiddleClickCommand: widgetData.middleClickCommand !== undefined ? widgetData.middleClickCommand : widgetMetadata.middleClickCommand
|
||||
property string valueIconColor: widgetData.iconColor !== undefined ? widgetData.iconColor : widgetMetadata.iconColor
|
||||
property string valueTextColor: widgetData.textColor !== undefined ? widgetData.textColor : widgetMetadata.textColor
|
||||
|
||||
function saveSettings() {
|
||||
var settings = Object.assign({}, widgetData || {});
|
||||
settings.displayMode = valueDisplayMode;
|
||||
settings.middleClickCommand = valueMiddleClickCommand;
|
||||
settings.iconColor = valueIconColor;
|
||||
settings.textColor = valueTextColor;
|
||||
return settings;
|
||||
}
|
||||
|
||||
@@ -50,6 +54,30 @@ ColumnLayout {
|
||||
}
|
||||
}
|
||||
|
||||
NComboBox {
|
||||
label: I18n.tr("common.select-icon-color")
|
||||
description: I18n.tr("common.select-color-description")
|
||||
model: Color.colorKeyModel
|
||||
currentKey: valueIconColor
|
||||
onSelected: key => {
|
||||
valueIconColor = key;
|
||||
settingsChanged(saveSettings());
|
||||
}
|
||||
minimumWidth: 200
|
||||
}
|
||||
|
||||
NComboBox {
|
||||
label: I18n.tr("common.select-color")
|
||||
description: I18n.tr("common.select-color-description")
|
||||
model: Color.colorKeyModel
|
||||
currentKey: valueTextColor
|
||||
onSelected: key => {
|
||||
valueTextColor = key;
|
||||
settingsChanged(saveSettings());
|
||||
}
|
||||
minimumWidth: 200
|
||||
}
|
||||
|
||||
// Middle click command
|
||||
NTextInput {
|
||||
label: I18n.tr("panels.control-center.shortcuts-custom-button-on-middle-clicked-label")
|
||||
|
||||
@@ -15,10 +15,14 @@ ColumnLayout {
|
||||
|
||||
// Local state
|
||||
property string valueDisplayMode: widgetData.displayMode !== undefined ? widgetData.displayMode : widgetMetadata.displayMode
|
||||
property string valueIconColor: widgetData.iconColor !== undefined ? widgetData.iconColor : widgetMetadata.iconColor
|
||||
property string valueTextColor: widgetData.textColor !== undefined ? widgetData.textColor : widgetMetadata.textColor
|
||||
|
||||
function saveSettings() {
|
||||
var settings = Object.assign({}, widgetData || {});
|
||||
settings.displayMode = valueDisplayMode;
|
||||
settings.iconColor = valueIconColor;
|
||||
settings.textColor = valueTextColor;
|
||||
return settings;
|
||||
}
|
||||
|
||||
@@ -46,4 +50,28 @@ ColumnLayout {
|
||||
settingsChanged(saveSettings());
|
||||
}
|
||||
}
|
||||
|
||||
NComboBox {
|
||||
label: I18n.tr("common.select-icon-color")
|
||||
description: I18n.tr("common.select-color-description")
|
||||
model: Color.colorKeyModel
|
||||
currentKey: valueIconColor
|
||||
onSelected: key => {
|
||||
valueIconColor = key;
|
||||
settingsChanged(saveSettings());
|
||||
}
|
||||
minimumWidth: 200
|
||||
}
|
||||
|
||||
NComboBox {
|
||||
label: I18n.tr("common.select-color")
|
||||
description: I18n.tr("common.select-color-description")
|
||||
model: Color.colorKeyModel
|
||||
currentKey: valueTextColor
|
||||
onSelected: key => {
|
||||
valueTextColor = key;
|
||||
settingsChanged(saveSettings());
|
||||
}
|
||||
minimumWidth: 200
|
||||
}
|
||||
}
|
||||
|
||||
@@ -0,0 +1,34 @@
|
||||
import QtQuick
|
||||
import QtQuick.Layouts
|
||||
import qs.Commons
|
||||
import qs.Widgets
|
||||
|
||||
ColumnLayout {
|
||||
id: root
|
||||
spacing: Style.marginM
|
||||
|
||||
property var widgetData: null
|
||||
property var widgetMetadata: null
|
||||
|
||||
signal settingsChanged(var settings)
|
||||
|
||||
property string valueIconColor: widgetData.iconColor !== undefined ? widgetData.iconColor : widgetMetadata.iconColor
|
||||
|
||||
function saveSettings() {
|
||||
var settings = Object.assign({}, widgetData || {});
|
||||
settings.iconColor = valueIconColor;
|
||||
return settings;
|
||||
}
|
||||
|
||||
NComboBox {
|
||||
label: I18n.tr("common.select-icon-color")
|
||||
description: I18n.tr("common.select-color-description")
|
||||
model: Color.colorKeyModel
|
||||
currentKey: valueIconColor
|
||||
onSelected: key => {
|
||||
valueIconColor = key;
|
||||
settingsChanged(saveSettings());
|
||||
}
|
||||
minimumWidth: 200
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,34 @@
|
||||
import QtQuick
|
||||
import QtQuick.Layouts
|
||||
import qs.Commons
|
||||
import qs.Widgets
|
||||
|
||||
ColumnLayout {
|
||||
id: root
|
||||
spacing: Style.marginM
|
||||
|
||||
property var widgetData: null
|
||||
property var widgetMetadata: null
|
||||
|
||||
signal settingsChanged(var settings)
|
||||
|
||||
property string valueIconColor: widgetData.iconColor !== undefined ? widgetData.iconColor : widgetMetadata.iconColor
|
||||
|
||||
function saveSettings() {
|
||||
var settings = Object.assign({}, widgetData || {});
|
||||
settings.iconColor = valueIconColor;
|
||||
return settings;
|
||||
}
|
||||
|
||||
NComboBox {
|
||||
label: I18n.tr("common.select-icon-color")
|
||||
description: I18n.tr("common.select-color-description")
|
||||
model: Color.colorKeyModel
|
||||
currentKey: valueIconColor
|
||||
onSelected: key => {
|
||||
valueIconColor = key;
|
||||
settingsChanged(saveSettings());
|
||||
}
|
||||
minimumWidth: 200
|
||||
}
|
||||
}
|
||||
@@ -19,6 +19,7 @@ ColumnLayout {
|
||||
property bool valueHideWhenZero: widgetData.hideWhenZero !== undefined ? widgetData.hideWhenZero : widgetMetadata.hideWhenZero
|
||||
property bool valueHideWhenZeroUnread: widgetData.hideWhenZeroUnread !== undefined ? widgetData.hideWhenZeroUnread : widgetMetadata.hideWhenZeroUnread
|
||||
property string valueUnreadBadgeColor: widgetData.unreadBadgeColor !== undefined ? widgetData.unreadBadgeColor : widgetMetadata.unreadBadgeColor
|
||||
property string valueIconColor: widgetData.iconColor !== undefined ? widgetData.iconColor : widgetMetadata.iconColor
|
||||
|
||||
function saveSettings() {
|
||||
var settings = Object.assign({}, widgetData || {});
|
||||
@@ -26,6 +27,7 @@ ColumnLayout {
|
||||
settings.hideWhenZero = valueHideWhenZero;
|
||||
settings.hideWhenZeroUnread = valueHideWhenZeroUnread;
|
||||
settings.unreadBadgeColor = valueUnreadBadgeColor;
|
||||
settings.iconColor = valueIconColor;
|
||||
return settings;
|
||||
}
|
||||
|
||||
@@ -39,31 +41,22 @@ ColumnLayout {
|
||||
}
|
||||
}
|
||||
|
||||
NComboBox {
|
||||
label: I18n.tr("common.select-icon-color")
|
||||
description: I18n.tr("common.select-color-description")
|
||||
model: Color.colorKeyModel
|
||||
currentKey: valueIconColor
|
||||
onSelected: key => {
|
||||
valueIconColor = key;
|
||||
settingsChanged(saveSettings());
|
||||
}
|
||||
minimumWidth: 200
|
||||
}
|
||||
|
||||
NComboBox {
|
||||
label: I18n.tr("bar.notification-history.unread-badge-color-label")
|
||||
description: I18n.tr("bar.notification-history.unread-badge-color-description")
|
||||
model: [
|
||||
{
|
||||
"key": "none",
|
||||
"name": I18n.tr("common.none")
|
||||
},
|
||||
{
|
||||
"key": "primary",
|
||||
"name": I18n.tr("common.primary")
|
||||
},
|
||||
{
|
||||
"key": "secondary",
|
||||
"name": I18n.tr("common.secondary")
|
||||
},
|
||||
{
|
||||
"key": "tertiary",
|
||||
"name": I18n.tr("common.tertiary")
|
||||
},
|
||||
{
|
||||
"key": "error",
|
||||
"name": I18n.tr("common.error")
|
||||
}
|
||||
]
|
||||
model: Color.colorKeyModel
|
||||
currentKey: valueUnreadBadgeColor
|
||||
onSelected: key => {
|
||||
valueUnreadBadgeColor = key;
|
||||
|
||||
@@ -0,0 +1,34 @@
|
||||
import QtQuick
|
||||
import QtQuick.Layouts
|
||||
import qs.Commons
|
||||
import qs.Widgets
|
||||
|
||||
ColumnLayout {
|
||||
id: root
|
||||
spacing: Style.marginM
|
||||
|
||||
property var widgetData: null
|
||||
property var widgetMetadata: null
|
||||
|
||||
signal settingsChanged(var settings)
|
||||
|
||||
property string valueIconColor: widgetData.iconColor !== undefined ? widgetData.iconColor : widgetMetadata.iconColor
|
||||
|
||||
function saveSettings() {
|
||||
var settings = Object.assign({}, widgetData || {});
|
||||
settings.iconColor = valueIconColor;
|
||||
return settings;
|
||||
}
|
||||
|
||||
NComboBox {
|
||||
label: I18n.tr("common.select-icon-color")
|
||||
description: I18n.tr("common.select-color-description")
|
||||
model: Color.colorKeyModel
|
||||
currentKey: valueIconColor
|
||||
onSelected: key => {
|
||||
valueIconColor = key;
|
||||
settingsChanged(saveSettings());
|
||||
}
|
||||
minimumWidth: 200
|
||||
}
|
||||
}
|
||||
@@ -17,44 +17,23 @@ ColumnLayout {
|
||||
signal settingsChanged(var settings)
|
||||
|
||||
// Local state
|
||||
property string valueColorName: widgetData.colorName !== undefined ? widgetData.colorName : widgetMetadata.colorName
|
||||
property string valueIconColor: widgetData.iconColor !== undefined ? widgetData.iconColor : (widgetData.colorName !== undefined ? widgetData.colorName : widgetMetadata.iconColor)
|
||||
|
||||
function saveSettings() {
|
||||
var settings = Object.assign({}, widgetData || {});
|
||||
settings.colorName = valueColorName;
|
||||
settings.iconColor = valueIconColor;
|
||||
return settings;
|
||||
}
|
||||
|
||||
NComboBox {
|
||||
Layout.fillWidth: true
|
||||
label: I18n.tr("bar.audio-visualizer.color-name-label")
|
||||
description: I18n.tr("bar.audio-visualizer.color-name-description")
|
||||
model: [
|
||||
{
|
||||
"key": "none",
|
||||
"name": I18n.tr("common.none")
|
||||
},
|
||||
{
|
||||
"key": "primary",
|
||||
"name": I18n.tr("common.primary")
|
||||
},
|
||||
{
|
||||
"key": "secondary",
|
||||
"name": I18n.tr("common.secondary")
|
||||
},
|
||||
{
|
||||
"key": "tertiary",
|
||||
"name": I18n.tr("common.tertiary")
|
||||
},
|
||||
{
|
||||
"key": "error",
|
||||
"name": I18n.tr("common.error")
|
||||
}
|
||||
]
|
||||
currentKey: root.valueColorName
|
||||
label: I18n.tr("common.select-icon-color")
|
||||
description: I18n.tr("common.select-color-description")
|
||||
model: Color.colorKeyModel
|
||||
currentKey: root.valueIconColor
|
||||
onSelected: key => {
|
||||
root.valueColorName = key;
|
||||
root.valueIconColor = key;
|
||||
settingsChanged(saveSettings());
|
||||
}
|
||||
minimumWidth: 200
|
||||
}
|
||||
}
|
||||
|
||||
@@ -70,29 +70,8 @@ ColumnLayout {
|
||||
|
||||
NComboBox {
|
||||
label: I18n.tr("common.select-icon-color")
|
||||
description: I18n.tr("bar.clock.select-color-description")
|
||||
model: [
|
||||
{
|
||||
"name": I18n.tr("common.none"),
|
||||
"key": "none"
|
||||
},
|
||||
{
|
||||
"key": "primary",
|
||||
"name": I18n.tr("common.primary")
|
||||
},
|
||||
{
|
||||
"key": "secondary",
|
||||
"name": I18n.tr("common.secondary")
|
||||
},
|
||||
{
|
||||
"key": "tertiary",
|
||||
"name": I18n.tr("common.tertiary")
|
||||
},
|
||||
{
|
||||
"key": "error",
|
||||
"name": I18n.tr("common.error")
|
||||
}
|
||||
]
|
||||
description: I18n.tr("common.select-color-description")
|
||||
model: Color.colorKeyModel
|
||||
currentKey: valueIconColor
|
||||
onSelected: key => {
|
||||
valueIconColor = key;
|
||||
@@ -103,29 +82,8 @@ ColumnLayout {
|
||||
|
||||
NComboBox {
|
||||
label: I18n.tr("common.select-color")
|
||||
description: I18n.tr("bar.clock.select-color-description")
|
||||
model: [
|
||||
{
|
||||
"name": I18n.tr("common.none"),
|
||||
"key": "none"
|
||||
},
|
||||
{
|
||||
"key": "primary",
|
||||
"name": I18n.tr("common.primary")
|
||||
},
|
||||
{
|
||||
"key": "secondary",
|
||||
"name": I18n.tr("common.secondary")
|
||||
},
|
||||
{
|
||||
"key": "tertiary",
|
||||
"name": I18n.tr("common.tertiary")
|
||||
},
|
||||
{
|
||||
"key": "error",
|
||||
"name": I18n.tr("common.error")
|
||||
}
|
||||
]
|
||||
description: I18n.tr("common.select-color-description")
|
||||
model: Color.colorKeyModel
|
||||
currentKey: valueTextColor
|
||||
onSelected: key => {
|
||||
valueTextColor = key;
|
||||
|
||||
@@ -13,10 +13,14 @@ ColumnLayout {
|
||||
signal settingsChanged(var settings)
|
||||
|
||||
property string valueDisplayMode: widgetData.displayMode !== undefined ? widgetData.displayMode : widgetMetadata.displayMode
|
||||
property string valueIconColor: widgetData.iconColor !== undefined ? widgetData.iconColor : widgetMetadata.iconColor
|
||||
property string valueTextColor: widgetData.textColor !== undefined ? widgetData.textColor : widgetMetadata.textColor
|
||||
|
||||
function saveSettings() {
|
||||
var settings = Object.assign({}, widgetData || {});
|
||||
settings.displayMode = valueDisplayMode;
|
||||
settings.iconColor = valueIconColor;
|
||||
settings.textColor = valueTextColor;
|
||||
return settings;
|
||||
}
|
||||
|
||||
@@ -44,4 +48,28 @@ ColumnLayout {
|
||||
settingsChanged(saveSettings());
|
||||
}
|
||||
}
|
||||
|
||||
NComboBox {
|
||||
label: I18n.tr("common.select-icon-color")
|
||||
description: I18n.tr("common.select-color-description")
|
||||
model: Color.colorKeyModel
|
||||
currentKey: valueIconColor
|
||||
onSelected: key => {
|
||||
valueIconColor = key;
|
||||
settingsChanged(saveSettings());
|
||||
}
|
||||
minimumWidth: 200
|
||||
}
|
||||
|
||||
NComboBox {
|
||||
label: I18n.tr("common.select-color")
|
||||
description: I18n.tr("common.select-color-description")
|
||||
model: Color.colorKeyModel
|
||||
currentKey: valueTextColor
|
||||
onSelected: key => {
|
||||
valueTextColor = key;
|
||||
settingsChanged(saveSettings());
|
||||
}
|
||||
minimumWidth: 200
|
||||
}
|
||||
}
|
||||
|
||||
@@ -17,11 +17,15 @@ ColumnLayout {
|
||||
// Local state
|
||||
property string valueDisplayMode: widgetData.displayMode !== undefined ? widgetData.displayMode : widgetMetadata.displayMode
|
||||
property string valueMiddleClickCommand: widgetData.middleClickCommand !== undefined ? widgetData.middleClickCommand : widgetMetadata.middleClickCommand
|
||||
property string valueIconColor: widgetData.iconColor !== undefined ? widgetData.iconColor : widgetMetadata.iconColor
|
||||
property string valueTextColor: widgetData.textColor !== undefined ? widgetData.textColor : widgetMetadata.textColor
|
||||
|
||||
function saveSettings() {
|
||||
var settings = Object.assign({}, widgetData || {});
|
||||
settings.displayMode = valueDisplayMode;
|
||||
settings.middleClickCommand = valueMiddleClickCommand;
|
||||
settings.iconColor = valueIconColor;
|
||||
settings.textColor = valueTextColor;
|
||||
return settings;
|
||||
}
|
||||
|
||||
@@ -50,6 +54,30 @@ ColumnLayout {
|
||||
}
|
||||
}
|
||||
|
||||
NComboBox {
|
||||
label: I18n.tr("common.select-icon-color")
|
||||
description: I18n.tr("common.select-color-description")
|
||||
model: Color.colorKeyModel
|
||||
currentKey: valueIconColor
|
||||
onSelected: key => {
|
||||
valueIconColor = key;
|
||||
settingsChanged(saveSettings());
|
||||
}
|
||||
minimumWidth: 200
|
||||
}
|
||||
|
||||
NComboBox {
|
||||
label: I18n.tr("common.select-color")
|
||||
description: I18n.tr("common.select-color-description")
|
||||
model: Color.colorKeyModel
|
||||
currentKey: valueTextColor
|
||||
onSelected: key => {
|
||||
valueTextColor = key;
|
||||
settingsChanged(saveSettings());
|
||||
}
|
||||
minimumWidth: 200
|
||||
}
|
||||
|
||||
// Middle click command
|
||||
NTextInput {
|
||||
label: I18n.tr("panels.control-center.shortcuts-custom-button-on-middle-clicked-label")
|
||||
|
||||
@@ -0,0 +1,34 @@
|
||||
import QtQuick
|
||||
import QtQuick.Layouts
|
||||
import qs.Commons
|
||||
import qs.Widgets
|
||||
|
||||
ColumnLayout {
|
||||
id: root
|
||||
spacing: Style.marginM
|
||||
|
||||
property var widgetData: null
|
||||
property var widgetMetadata: null
|
||||
|
||||
signal settingsChanged(var settings)
|
||||
|
||||
property string valueIconColor: widgetData.iconColor !== undefined ? widgetData.iconColor : widgetMetadata.iconColor
|
||||
|
||||
function saveSettings() {
|
||||
var settings = Object.assign({}, widgetData || {});
|
||||
settings.iconColor = valueIconColor;
|
||||
return settings;
|
||||
}
|
||||
|
||||
NComboBox {
|
||||
label: I18n.tr("common.select-icon-color")
|
||||
description: I18n.tr("common.select-color-description")
|
||||
model: Color.colorKeyModel
|
||||
currentKey: valueIconColor
|
||||
onSelected: key => {
|
||||
valueIconColor = key;
|
||||
settingsChanged(saveSettings());
|
||||
}
|
||||
minimumWidth: 200
|
||||
}
|
||||
}
|
||||
@@ -52,13 +52,18 @@ Singleton {
|
||||
"Clock": "WidgetSettings/ClockSettings.qml",
|
||||
"ControlCenter": "WidgetSettings/ControlCenterSettings.qml",
|
||||
"CustomButton": "WidgetSettings/CustomButtonSettings.qml",
|
||||
"DarkMode": "WidgetSettings/DarkModeSettings.qml",
|
||||
"KeepAwake": "WidgetSettings/KeepAwakeSettings.qml",
|
||||
"KeyboardLayout": "WidgetSettings/KeyboardLayoutSettings.qml",
|
||||
"Launcher": "WidgetSettings/LauncherSettings.qml",
|
||||
"LockKeys": "WidgetSettings/LockKeysSettings.qml",
|
||||
"MediaMini": "WidgetSettings/MediaMiniSettings.qml",
|
||||
"Microphone": "WidgetSettings/MicrophoneSettings.qml",
|
||||
"Network": "WidgetSettings/NetworkSettings.qml",
|
||||
"NightLight": "WidgetSettings/NightLightSettings.qml",
|
||||
"NoctaliaPerformance": "WidgetSettings/NoctaliaPerformanceSettings.qml",
|
||||
"NotificationHistory": "WidgetSettings/NotificationHistorySettings.qml",
|
||||
"PowerProfile": "WidgetSettings/PowerProfileSettings.qml",
|
||||
"SessionMenu": "WidgetSettings/SessionMenuSettings.qml",
|
||||
"Spacer": "WidgetSettings/SpacerSettings.qml",
|
||||
"SystemMonitor": "WidgetSettings/SystemMonitorSettings.qml",
|
||||
@@ -66,6 +71,7 @@ Singleton {
|
||||
"Tray": "WidgetSettings/TraySettings.qml",
|
||||
"Volume": "WidgetSettings/VolumeSettings.qml",
|
||||
"VPN": "WidgetSettings/VPNSettings.qml",
|
||||
"WallpaperSelector": "WidgetSettings/WallpaperSelectorSettings.qml",
|
||||
"Workspace": "WidgetSettings/WorkspaceSettings.qml"
|
||||
})
|
||||
|
||||
@@ -92,10 +98,14 @@ Singleton {
|
||||
"hideIfIdle": false
|
||||
},
|
||||
"Bluetooth": {
|
||||
"displayMode": "onhover"
|
||||
"displayMode": "onhover",
|
||||
"iconColor": "none",
|
||||
"textColor": "none"
|
||||
},
|
||||
"Brightness": {
|
||||
"displayMode": "onhover"
|
||||
"displayMode": "onhover",
|
||||
"iconColor": "none",
|
||||
"textColor": "none"
|
||||
},
|
||||
"Clock": {
|
||||
"clockColor": "none",
|
||||
@@ -143,9 +153,18 @@ Singleton {
|
||||
"colorizeSystemIcon": "none",
|
||||
"ipcIdentifier": ""
|
||||
},
|
||||
"DarkMode": {
|
||||
"iconColor": "none"
|
||||
},
|
||||
"KeepAwake": {
|
||||
"iconColor": "none",
|
||||
"textColor": "none"
|
||||
},
|
||||
"KeyboardLayout": {
|
||||
"displayMode": "onhover",
|
||||
"showIcon": true
|
||||
"showIcon": true,
|
||||
"iconColor": "none",
|
||||
"textColor": "none"
|
||||
},
|
||||
"LockKeys": {
|
||||
"showCapsLock": true,
|
||||
@@ -158,7 +177,7 @@ Singleton {
|
||||
},
|
||||
"Launcher": {
|
||||
"icon": "rocket",
|
||||
"usePrimaryColor": false
|
||||
"iconColor": "none"
|
||||
},
|
||||
"MediaMini": {
|
||||
"hideMode": "hidden",
|
||||
@@ -179,16 +198,19 @@ Singleton {
|
||||
},
|
||||
"Microphone": {
|
||||
"displayMode": "onhover",
|
||||
"middleClickCommand": "pwvucontrol || pavucontrol"
|
||||
"middleClickCommand": "pwvucontrol || pavucontrol",
|
||||
"iconColor": "none",
|
||||
"textColor": "none"
|
||||
},
|
||||
"NotificationHistory": {
|
||||
"showUnreadBadge": true,
|
||||
"hideWhenZero": false,
|
||||
"hideWhenZeroUnread": false,
|
||||
"unreadBadgeColor": "primary"
|
||||
"unreadBadgeColor": "primary",
|
||||
"iconColor": "none"
|
||||
},
|
||||
"SessionMenu": {
|
||||
"colorName": "error"
|
||||
"iconColor": "error"
|
||||
},
|
||||
"Spacer": {
|
||||
"width": 20
|
||||
@@ -232,13 +254,26 @@ Singleton {
|
||||
"hidePassive": false
|
||||
},
|
||||
"VPN": {
|
||||
"displayMode": "onhover"
|
||||
"displayMode": "onhover",
|
||||
"iconColor": "none",
|
||||
"textColor": "none"
|
||||
},
|
||||
"WiFi": {
|
||||
"displayMode": "onhover"
|
||||
},
|
||||
"Network": {
|
||||
"displayMode": "onhover"
|
||||
"displayMode": "onhover",
|
||||
"iconColor": "none",
|
||||
"textColor": "none"
|
||||
},
|
||||
"NightLight": {
|
||||
"iconColor": "none"
|
||||
},
|
||||
"NoctaliaPerformance": {
|
||||
"iconColor": "none"
|
||||
},
|
||||
"PowerProfile": {
|
||||
"iconColor": "none"
|
||||
},
|
||||
"Workspace": {
|
||||
"labelMode": "index",
|
||||
@@ -261,7 +296,12 @@ Singleton {
|
||||
},
|
||||
"Volume": {
|
||||
"displayMode": "onhover",
|
||||
"middleClickCommand": "pwvucontrol || pavucontrol"
|
||||
"middleClickCommand": "pwvucontrol || pavucontrol",
|
||||
"iconColor": "none",
|
||||
"textColor": "none"
|
||||
},
|
||||
"WallpaperSelector": {
|
||||
"iconColor": "none"
|
||||
}
|
||||
})
|
||||
|
||||
|
||||
Reference in New Issue
Block a user