浏览代码

[gnome] Update extensions and add nyt script

Colin Powell 11 月之前
父节点
当前提交
193447e2bd

+ 4 - 4
bin/.bin/nyt

@@ -1,5 +1,5 @@
 #!/bin/bash
-BASEDIR="$HOME/var/media/nyt"
+BASEDIR="/media/photos/nyt"
 DATE=$(date +"%Y-%m-%d")
 TMPFILE=/tmp/nyt.pdf
 OUTFILE=$BASEDIR/$DATE.jpg
@@ -9,8 +9,8 @@ if test -f "$OUTFILE"; then
 else
 	DATEPATH=$(date +"%Y/%m/%d")
 	curl -o /tmp/nyt.pdf -L https://static01.nyt.com/images/$DATEPATH/nytfrontpage/scan.pdf
-	convert -density 150 -quality 100 $TMPFILE $OUTFILE
+	convert -density 150 -quality 75 $TMPFILE $OUTFILE
+	ln -sf $OUTFILE /var/lib/weewx/www/today.jpg
+	curl -H "X-Title: NYT headlines today" -d "https://wx.lab.unbl.ink/today.jpg" https://ntfy.unbl.ink/news
 	rm $TMPFILE
 fi
-
-sxiv $OUTFILE &

文件差异内容过多而无法显示
+ 525 - 673
gnome/.local/share/gnome-shell/extensions/gjsosk@vishram1123.com/extension.js


+ 0 - 2062
gnome/.local/share/gnome-shell/extensions/gjsosk@vishram1123.com/keycodes.json

@@ -1,2062 +0,0 @@
-{
-  "qwerty": {
-    "row1": [
-      {
-        "code": 1,
-        "lowerName": "esc",
-        "upperName": "esc",
-        "altName": ""
-      },
-      {
-        "code": 59,
-        "lowerName": "F1",
-        "upperName": "F1",
-        "altName": ""
-      },
-      {
-        "code": 60,
-        "lowerName": "F2",
-        "upperName": "F2",
-        "altName": ""
-      },
-      {
-        "code": 61,
-        "lowerName": "F3",
-        "upperName": "F3",
-        "altName": ""
-      },
-      {
-        "code": 62,
-        "lowerName": "F4",
-        "upperName": "F4",
-        "altName": ""
-      },
-      {
-        "code": 63,
-        "lowerName": "F5",
-        "upperName": "F5",
-        "altName": ""
-      },
-      {
-        "code": 64,
-        "lowerName": "F6",
-        "upperName": "F6",
-        "altName": ""
-      },
-      {
-        "code": 65,
-        "lowerName": "F7",
-        "upperName": "F7",
-        "altName": ""
-      },
-      {
-        "code": 66,
-        "lowerName": "F8",
-        "upperName": "F8",
-        "altName": ""
-      },
-      {
-        "code": 67,
-        "lowerName": "F9",
-        "upperName": "F9",
-        "altName": ""
-      },
-      {
-        "code": 68,
-        "lowerName": "F10",
-        "upperName": "F10",
-        "altName": ""
-      },
-      {
-        "code": 87,
-        "lowerName": "F11",
-        "upperName": "F11",
-        "altName": ""
-      },
-      {
-        "code": 88,
-        "lowerName": "F12",
-        "upperName": "F12",
-        "altName": ""
-      },
-      {
-        "code": 210,
-        "lowerName": "PrtSc",
-        "upperName": "PrtSc",
-        "altName": ""
-      },
-      {
-        "code": 111,
-        "lowerName": "delete",
-        "upperName": "delete",
-        "altName": ""
-      }
-    ],
-    "row2": [
-      {
-        "code": 41,
-        "lowerName": "`",
-        "upperName": "~",
-        "altName": ""
-      },
-      {
-        "code": 2,
-        "lowerName": "1",
-        "upperName": "!",
-        "altName": ""
-      },
-      {
-        "code": 3,
-        "lowerName": "2",
-        "upperName": "@",
-        "altName": ""
-      },
-      {
-        "code": 4,
-        "lowerName": "3",
-        "upperName": "#",
-        "altName": ""
-      },
-      {
-        "code": 5,
-        "lowerName": "4",
-        "upperName": "$",
-        "altName": ""
-      },
-      {
-        "code": 6,
-        "lowerName": "5",
-        "upperName": "%",
-        "altName": ""
-      },
-      {
-        "code": 7,
-        "lowerName": "6",
-        "upperName": "^",
-        "altName": ""
-      },
-      {
-        "code": 8,
-        "lowerName": "7",
-        "upperName": "&",
-        "altName": ""
-      },
-      {
-        "code": 9,
-        "lowerName": "8",
-        "upperName": "*",
-        "altName": ""
-      },
-      {
-        "code": 10,
-        "lowerName": "9",
-        "upperName": "(",
-        "altName": ""
-      },
-      {
-        "code": 11,
-        "lowerName": "0",
-        "upperName": ")",
-        "altName": ""
-      },
-      {
-        "code": 12,
-        "lowerName": "-",
-        "upperName": "_",
-        "altName": ""
-      },
-      {
-        "code": 13,
-        "lowerName": "=",
-        "upperName": "+",
-        "altName": ""
-      },
-      {
-        "code": 14,
-        "lowerName": "backspace",
-        "upperName": "backspace",
-        "altName": ""
-      }
-    ],
-    "row3": [
-      {
-        "code": 15,
-        "lowerName": "tab",
-        "upperName": "tab",
-        "altName": ""
-      },
-      {
-        "code": 16,
-        "lowerName": "q",
-        "letter": "primary",
-        "upperName": "Q",
-        "altName": ""
-      },
-      {
-        "code": 17,
-        "lowerName": "w",
-        "letter": "primary",
-        "upperName": "W",
-        "altName": ""
-      },
-      {
-        "code": 18,
-        "lowerName": "e",
-        "letter": "primary",
-        "upperName": "E",
-        "altName": ""
-      },
-      {
-        "code": 19,
-        "lowerName": "r",
-        "letter": "primary",
-        "upperName": "R",
-        "altName": ""
-      },
-      {
-        "code": 20,
-        "lowerName": "t",
-        "letter": "primary",
-        "upperName": "T",
-        "altName": ""
-      },
-      {
-        "code": 21,
-        "lowerName": "y",
-        "letter": "primary",
-        "upperName": "Y",
-        "altName": ""
-      },
-      {
-        "code": 22,
-        "lowerName": "u",
-        "letter": "primary",
-        "upperName": "U",
-        "altName": ""
-      },
-      {
-        "code": 23,
-        "lowerName": "i",
-        "letter": "primary",
-        "upperName": "I",
-        "altName": ""
-      },
-      {
-        "code": 24,
-        "lowerName": "o",
-        "letter": "primary",
-        "upperName": "O",
-        "altName": ""
-      },
-      {
-        "code": 25,
-        "lowerName": "p",
-        "letter": "primary",
-        "upperName": "P",
-        "altName": ""
-      },
-      {
-        "code": 26,
-        "lowerName": "[",
-        "upperName": "{",
-        "altName": ""
-      },
-      {
-        "code": 27,
-        "lowerName": "]",
-        "upperName": "}",
-        "altName": ""
-      },
-      {
-        "code": 43,
-        "lowerName": "\\",
-        "upperName": "|",
-        "altName": ""
-      }
-    ],
-    "row4": [
-      {
-        "code": 58,
-        "lowerName": "capslock",
-        "upperName": "capslock",
-        "altName": ""
-      },
-      {
-        "code": 30,
-        "lowerName": "a",
-        "letter": "primary",
-        "upperName": "A",
-        "altName": ""
-      },
-      {
-        "code": 31,
-        "lowerName": "s",
-        "letter": "primary",
-        "upperName": "S",
-        "altName": ""
-      },
-      {
-        "code": 32,
-        "lowerName": "d",
-        "letter": "primary",
-        "upperName": "D",
-        "altName": ""
-      },
-      {
-        "code": 33,
-        "lowerName": "f",
-        "letter": "primary",
-        "upperName": "F",
-        "altName": ""
-      },
-      {
-        "code": 34,
-        "lowerName": "g",
-        "letter": "primary",
-        "upperName": "G",
-        "altName": ""
-      },
-      {
-        "code": 35,
-        "lowerName": "h",
-        "letter": "primary",
-        "upperName": "H",
-        "altName": ""
-      },
-      {
-        "code": 36,
-        "lowerName": "j",
-        "letter": "primary",
-        "upperName": "J",
-        "altName": ""
-      },
-      {
-        "code": 37,
-        "lowerName": "k",
-        "letter": "primary",
-        "upperName": "K",
-        "altName": ""
-      },
-      {
-        "code": 38,
-        "lowerName": "l",
-        "letter": "primary",
-        "upperName": "L",
-        "altName": ""
-      },
-      {
-        "code": 39,
-        "lowerName": ";",
-        "upperName": ":",
-        "altName": ""
-      },
-      {
-        "code": 40,
-        "lowerName": "'",
-        "upperName": "\"",
-        "altName": ""
-      },
-      {
-        "code": 28,
-        "lowerName": "enter",
-        "upperName": "enter",
-        "altName": ""
-      }
-    ],
-    "row5": [
-      {
-        "code": 42,
-        "lowerName": "shift",
-        "upperName": "shift",
-        "altName": ""
-      },
-      {
-        "code": 44,
-        "lowerName": "z",
-        "letter": "primary",
-        "upperName": "Z",
-        "altName": ""
-      },
-      {
-        "code": 45,
-        "lowerName": "x",
-        "letter": "primary",
-        "upperName": "X",
-        "altName": ""
-      },
-      {
-        "code": 46,
-        "lowerName": "c",
-        "letter": "primary",
-        "upperName": "C",
-        "altName": ""
-      },
-      {
-        "code": 47,
-        "lowerName": "v",
-        "letter": "primary",
-        "upperName": "V",
-        "altName": ""
-      },
-      {
-        "code": 48,
-        "lowerName": "b",
-        "letter": "primary",
-        "upperName": "B",
-        "altName": ""
-      },
-      {
-        "code": 49,
-        "lowerName": "n",
-        "letter": "primary",
-        "upperName": "N",
-        "altName": ""
-      },
-      {
-        "code": 50,
-        "lowerName": "m",
-        "letter": "primary",
-        "upperName": "M",
-        "altName": ""
-      },
-      {
-        "code": 51,
-        "lowerName": ",",
-        "upperName": "<",
-        "altName": ""
-      },
-      {
-        "code": 52,
-        "lowerName": ".",
-        "upperName": ">",
-        "altName": ""
-      },
-      {
-        "code": 53,
-        "lowerName": "/",
-        "upperName": "?",
-        "altName": ""
-      },
-      {
-        "code": 54,
-        "lowerName": "shift",
-        "upperName": "shift",
-        "altName": ""
-      }
-    ],
-    "row6": [
-      {
-        "code": 29,
-        "lowerName": "ctrl",
-        "upperName": "ctrl",
-        "altName": ""
-      },
-      {
-        "code": 125,
-        "lowerName": "super",
-        "upperName": "super",
-        "altName": ""
-      },
-      {
-        "code": 56,
-        "lowerName": "alt",
-        "upperName": "alt",
-        "altName": ""
-      },
-      {
-        "code": 57,
-        "lowerName": "space",
-        "upperName": "space",
-        "altName": ""
-      },
-      {
-        "code": 100,
-        "lowerName": "alt",
-        "upperName": "alt",
-        "altName": ""
-      },
-      {
-        "code": 97,
-        "lowerName": "ctrl",
-        "upperName": "ctrl",
-        "altName": ""
-      },
-      [
-        {
-          "code": 105,
-          "lowerName": "left",
-          "upperName": "left",
-          "altName": ""
-        },
-        {
-          "code": 103,
-          "lowerName": "up",
-          "upperName": "up",
-          "altName": ""
-        },
-        {
-          "code": 108,
-          "lowerName": "down",
-          "upperName": "down",
-          "altName": ""
-        },
-        {
-          "code": 106,
-          "lowerName": "right",
-          "upperName": "right",
-          "altName": ""
-        }
-      ]
-    ]
-  },
-  "azerty": {
-    "row1": [
-      {
-        "code": 1,
-        "lowerName": "esc",
-        "upperName": "esc",
-        "altName": ""
-      },
-      {
-        "code": 59,
-        "lowerName": "F1",
-        "upperName": "F1",
-        "altName": ""
-      },
-      {
-        "code": 60,
-        "lowerName": "F2",
-        "upperName": "F2",
-        "altName": ""
-      },
-      {
-        "code": 61,
-        "lowerName": "F3",
-        "upperName": "F3",
-        "altName": ""
-      },
-      {
-        "code": 62,
-        "lowerName": "F4",
-        "upperName": "F4",
-        "altName": ""
-      },
-      {
-        "code": 63,
-        "lowerName": "F5",
-        "upperName": "F5",
-        "altName": ""
-      },
-      {
-        "code": 64,
-        "lowerName": "F6",
-        "upperName": "F6",
-        "altName": ""
-      },
-      {
-        "code": 65,
-        "lowerName": "F7",
-        "upperName": "F7",
-        "altName": ""
-      },
-      {
-        "code": 66,
-        "lowerName": "F8",
-        "upperName": "F8",
-        "altName": ""
-      },
-      {
-        "code": 67,
-        "lowerName": "F9",
-        "upperName": "F9",
-        "altName": ""
-      },
-      {
-        "code": 68,
-        "lowerName": "F10",
-        "upperName": "F10",
-        "altName": ""
-      },
-      {
-        "code": 87,
-        "lowerName": "F11",
-        "upperName": "F11",
-        "altName": ""
-      },
-      {
-        "code": 88,
-        "lowerName": "F12",
-        "upperName": "F12",
-        "altName": ""
-      },
-      {
-        "code": 210,
-        "lowerName": "PrtSc",
-        "upperName": "PrtSc",
-        "altName": ""
-      },
-      {
-        "code": 111,
-        "lowerName": "delete",
-        "upperName": "delete",
-        "altName": ""
-      }
-    ],
-    "row2": [
-      {
-        "code": 41,
-        "lowerName": "²",
-        "upperName": "²",
-        "altName": ""
-      },
-      {
-        "code": 2,
-        "lowerName": "&",
-        "upperName": "1",
-        "altName": ""
-      },
-      {
-        "code": 3,
-        "lowerName": "é",
-        "letter": "pseudo",
-        "upperName": "2",
-        "altName": "~"
-      },
-      {
-        "code": 4,
-        "lowerName": "\"",
-        "upperName": "3",
-        "altName": "#"
-      },
-      {
-        "code": 5,
-        "lowerName": "'",
-        "upperName": "4",
-        "altName": "{"
-      },
-      {
-        "code": 6,
-        "lowerName": "(",
-        "upperName": "5",
-        "altName": "["
-      },
-      {
-        "code": 7,
-        "lowerName": "-",
-        "upperName": "6",
-        "altName": "|"
-      },
-      {
-        "code": 8,
-        "lowerName": "è",
-        "letter": "pseudo",
-        "upperName": "7",
-        "altName": "`"
-      },
-      {
-        "code": 9,
-        "lowerName": "_",
-        "upperName": "8",
-        "altName": "\""
-      },
-      {
-        "code": 10,
-        "lowerName": "ç",
-        "letter": "pseudo",
-        "upperName": "9",
-        "altName": "^"
-      },
-      {
-        "code": 11,
-        "lowerName": "à",
-        "letter": "pseudo",
-        "upperName": "0",
-        "altName": "@"
-      },
-      {
-        "code": 12,
-        "lowerName": ")",
-        "upperName": "°",
-        "altName": "]"
-      },
-      {
-        "code": 13,
-        "lowerName": "=",
-        "upperName": "+",
-        "altName": "}"
-      },
-      {
-        "code": 14,
-        "lowerName": "backspace",
-        "upperName": "backspace",
-        "altName": ""
-      }
-    ],
-    "row3": [
-      {
-        "code": 15,
-        "lowerName": "tab",
-        "upperName": "tab",
-        "altName": ""
-      },
-      {
-        "code": 16,
-        "lowerName": "a",
-        "letter": "primary",
-        "upperName": "A",
-        "altName": ""
-      },
-      {
-        "code": 17,
-        "lowerName": "z",
-        "letter": "primary",
-        "upperName": "Z",
-        "altName": ""
-      },
-      {
-        "code": 18,
-        "lowerName": "e",
-        "letter": "primary",
-        "upperName": "E",
-        "altName": "€"
-      },
-      {
-        "code": 19,
-        "lowerName": "r",
-        "letter": "primary",
-        "upperName": "R",
-        "altName": ""
-      },
-      {
-        "code": 20,
-        "lowerName": "t",
-        "letter": "primary",
-        "upperName": "T",
-        "altName": ""
-      },
-      {
-        "code": 21,
-        "lowerName": "y",
-        "letter": "primary",
-        "upperName": "Y",
-        "altName": ""
-      },
-      {
-        "code": 22,
-        "lowerName": "u",
-        "letter": "primary",
-        "upperName": "U",
-        "altName": ""
-      },
-      {
-        "code": 23,
-        "lowerName": "i",
-        "letter": "primary",
-        "upperName": "I",
-        "altName": ""
-      },
-      {
-        "code": 24,
-        "lowerName": "o",
-        "letter": "primary",
-        "upperName": "O",
-        "altName": ""
-      },
-      {
-        "code": 25,
-        "lowerName": "p",
-        "letter": "primary",
-        "upperName": "P",
-        "altName": ""
-      },
-      {
-        "code": 26,
-        "lowerName": "^",
-        "upperName": "¨",
-        "altName": ""
-      },
-      {
-        "code": 27,
-        "lowerName": "$",
-        "upperName": "£",
-        "altName": "¤"
-      },
-      {
-        "code": 43,
-        "lowerName": "*",
-        "upperName": "µ",
-        "altName": ""
-      }
-    ],
-    "row4": [
-      {
-        "code": 58,
-        "lowerName": "capslock",
-        "upperName": "capslock",
-        "altName": ""
-      },
-      {
-        "code": 30,
-        "lowerName": "q",
-        "letter": "primary",
-        "upperName": "Q",
-        "altName": ""
-      },
-      {
-        "code": 31,
-        "lowerName": "s",
-        "letter": "primary",
-        "upperName": "S",
-        "altName": ""
-      },
-      {
-        "code": 32,
-        "lowerName": "d",
-        "letter": "primary",
-        "upperName": "D",
-        "altName": ""
-      },
-      {
-        "code": 33,
-        "lowerName": "f",
-        "letter": "primary",
-        "upperName": "F",
-        "altName": ""
-      },
-      {
-        "code": 34,
-        "lowerName": "g",
-        "letter": "primary",
-        "upperName": "G",
-        "altName": ""
-      },
-      {
-        "code": 35,
-        "lowerName": "h",
-        "letter": "primary",
-        "upperName": "H",
-        "altName": ""
-      },
-      {
-        "code": 36,
-        "lowerName": "j",
-        "letter": "primary",
-        "upperName": "J",
-        "altName": ""
-      },
-      {
-        "code": 37,
-        "lowerName": "k",
-        "letter": "primary",
-        "upperName": "K",
-        "altName": ""
-      },
-      {
-        "code": 38,
-        "lowerName": "l",
-        "letter": "primary",
-        "upperName": "L",
-        "altName": ""
-      },
-      {
-        "code": 39,
-        "lowerName": "m",
-        "letter": "primary",
-        "upperName": "M",
-        "altName": ""
-      },
-      {
-        "code": 40,
-        "lowerName": "ù",
-        "letter": "pseudo",
-        "upperName": "%",
-        "altName": ""
-      },
-      {
-        "code": 28,
-        "lowerName": "enter",
-        "upperName": "enter",
-        "altName": ""
-      }
-    ],
-    "row5": [
-      {
-        "code": 42,
-        "lowerName": "shift",
-        "upperName": "shift",
-        "altName": ""
-      },
-      {
-        "code": 86,
-        "lowerName": "<",
-        "upperName": ">",
-        "altName": ""
-      },
-      {
-        "code": 44,
-        "lowerName": "w",
-        "letter": "primary",
-        "upperName": "W",
-        "altName": ""
-      },
-      {
-        "code": 45,
-        "lowerName": "x",
-        "letter": "primary",
-        "upperName": "X",
-        "altName": ""
-      },
-      {
-        "code": 46,
-        "lowerName": "c",
-        "letter": "primary",
-        "upperName": "C",
-        "altName": ""
-      },
-      {
-        "code": 47,
-        "lowerName": "v",
-        "letter": "primary",
-        "upperName": "V",
-        "altName": ""
-      },
-      {
-        "code": 48,
-        "lowerName": "b",
-        "letter": "primary",
-        "upperName": "B",
-        "altName": ""
-      },
-      {
-        "code": 49,
-        "lowerName": "n",
-        "letter": "primary",
-        "upperName": "N",
-        "altName": ""
-      },
-      {
-        "code": 50,
-        "lowerName": ",",
-        "upperName": "?",
-        "altName": ""
-      },
-      {
-        "code": 51,
-        "lowerName": ";",
-        "upperName": ".",
-        "altName": ""
-      },
-      {
-        "code": 52,
-        "lowerName": ":",
-        "upperName": "/",
-        "altName": ""
-      },
-      {
-        "code": 53,
-        "lowerName": "!",
-        "upperName": "§",
-        "altName": ""
-      },
-      {
-        "code": 54,
-        "lowerName": "shift",
-        "upperName": "shift",
-        "altName": ""
-      }
-    ],
-    "row6": [
-      {
-        "code": 29,
-        "lowerName": "ctrl",
-        "upperName": "ctrl",
-        "altName": ""
-      },
-      {
-        "code": 125,
-        "lowerName": "super",
-        "upperName": "super",
-        "altName": ""
-      },
-      {
-        "code": 56,
-        "lowerName": "alt",
-        "upperName": "alt",
-        "altName": ""
-      },
-      {
-        "code": 57,
-        "lowerName": "space",
-        "upperName": "space",
-        "altName": ""
-      },
-      {
-        "code": 100,
-        "lowerName": "alt",
-        "upperName": "alt",
-        "altName": ""
-      },
-      {
-        "code": 97,
-        "lowerName": "ctrl",
-        "upperName": "ctrl",
-        "altName": ""
-      },
-      [
-        {
-          "code": 105,
-          "lowerName": "left",
-          "upperName": "left",
-          "altName": ""
-        },
-        {
-          "code": 103,
-          "lowerName": "up",
-          "upperName": "up",
-          "altName": ""
-        },
-        {
-          "code": 108,
-          "lowerName": "down",
-          "upperName": "down",
-          "altName": ""
-        },
-        {
-          "code": 106,
-          "lowerName": "right",
-          "upperName": "right",
-          "altName": ""
-        }
-      ]
-    ]
-  },
-  "dvorak": {
-    "row1": [
-      {
-        "code": 1,
-        "lowerName": "esc",
-        "upperName": "esc",
-        "altName": ""
-      },
-      {
-        "code": 59,
-        "lowerName": "F1",
-        "upperName": "F1",
-        "altName": ""
-      },
-      {
-        "code": 60,
-        "lowerName": "F2",
-        "upperName": "F2",
-        "altName": ""
-      },
-      {
-        "code": 61,
-        "lowerName": "F3",
-        "upperName": "F3",
-        "altName": ""
-      },
-      {
-        "code": 62,
-        "lowerName": "F4",
-        "upperName": "F4",
-        "altName": ""
-      },
-      {
-        "code": 63,
-        "lowerName": "F5",
-        "upperName": "F5",
-        "altName": ""
-      },
-      {
-        "code": 64,
-        "lowerName": "F6",
-        "upperName": "F6",
-        "altName": ""
-      },
-      {
-        "code": 65,
-        "lowerName": "F7",
-        "upperName": "F7",
-        "altName": ""
-      },
-      {
-        "code": 66,
-        "lowerName": "F8",
-        "upperName": "F8",
-        "altName": ""
-      },
-      {
-        "code": 67,
-        "lowerName": "F9",
-        "upperName": "F9",
-        "altName": ""
-      },
-      {
-        "code": 68,
-        "lowerName": "F10",
-        "upperName": "F10",
-        "altName": ""
-      },
-      {
-        "code": 87,
-        "lowerName": "F11",
-        "upperName": "F11",
-        "altName": ""
-      },
-      {
-        "code": 88,
-        "lowerName": "F12",
-        "upperName": "F12",
-        "altName": ""
-      },
-      {
-        "code": 210,
-        "lowerName": "PrtSc",
-        "upperName": "PrtSc",
-        "altName": ""
-      },
-      {
-        "code": 111,
-        "lowerName": "delete",
-        "upperName": "delete",
-        "altName": ""
-      }
-    ],
-    "row2": [
-      {
-        "code": 41,
-        "lowerName": "`",
-        "upperName": "~",
-        "altName": ""
-      },
-      {
-        "code": 2,
-        "lowerName": "1",
-        "upperName": "!",
-        "altName": ""
-      },
-      {
-        "code": 3,
-        "lowerName": "2",
-        "upperName": "@",
-        "altName": ""
-      },
-      {
-        "code": 4,
-        "lowerName": "3",
-        "upperName": "#",
-        "altName": ""
-      },
-      {
-        "code": 5,
-        "lowerName": "4",
-        "upperName": "$",
-        "altName": ""
-      },
-      {
-        "code": 6,
-        "lowerName": "5",
-        "upperName": "%",
-        "altName": ""
-      },
-      {
-        "code": 7,
-        "lowerName": "6",
-        "upperName": "^",
-        "altName": ""
-      },
-      {
-        "code": 8,
-        "lowerName": "7",
-        "upperName": "&",
-        "altName": ""
-      },
-      {
-        "code": 9,
-        "lowerName": "8",
-        "upperName": "*",
-        "altName": ""
-      },
-      {
-        "code": 10,
-        "lowerName": "9",
-        "upperName": "(",
-        "altName": ""
-      },
-      {
-        "code": 11,
-        "lowerName": "0",
-        "upperName": ")",
-        "altName": ""
-      },
-      {
-        "code": 12,
-        "lowerName": "[",
-        "upperName": "{",
-        "altName": ""
-      },
-      {
-        "code": 13,
-        "lowerName": "]",
-        "upperName": "}",
-        "altName": ""
-      },
-      {
-        "code": 14,
-        "lowerName": "backspace",
-        "upperName": "backspace",
-        "altName": ""
-      }
-    ],
-    "row3": [
-      {
-        "code": 15,
-        "lowerName": "tab",
-        "upperName": "tab",
-        "altName": ""
-      },
-      {
-        "code": 16,
-        "lowerName": "'",
-        "upperName": "\"",
-        "altName": ""
-      },
-      {
-        "code": 17,
-        "lowerName": ",",
-        "upperName": "<",
-        "altName": ""
-      },
-      {
-        "code": 18,
-        "lowerName": ".",
-        "upperName": ">",
-        "altName": ""
-      },
-      {
-        "code": 19,
-        "lowerName": "p",
-        "letter": "primary",
-        "upperName": "P",
-        "altName": ""
-      },
-      {
-        "code": 20,
-        "lowerName": "y",
-        "letter": "primary",
-        "upperName": "Y",
-        "altName": ""
-      },
-      {
-        "code": 21,
-        "lowerName": "f",
-        "letter": "primary",
-        "upperName": "F",
-        "altName": ""
-      },
-      {
-        "code": 22,
-        "lowerName": "g",
-        "letter": "primary",
-        "upperName": "G",
-        "altName": ""
-      },
-      {
-        "code": 23,
-        "lowerName": "c",
-        "letter": "primary",
-        "upperName": "C",
-        "altName": ""
-      },
-      {
-        "code": 24,
-        "lowerName": "r",
-        "letter": "primary",
-        "upperName": "R",
-        "altName": ""
-      },
-      {
-        "code": 25,
-        "lowerName": "l",
-        "letter": "primary",
-        "upperName": "L",
-        "altName": ""
-      },
-      {
-        "code": 26,
-        "lowerName": "/",
-        "upperName": "?",
-        "altName": ""
-      },
-      {
-        "code": 27,
-        "lowerName": "=",
-        "upperName": "+",
-        "altName": ""
-      },
-      {
-        "code": 43,
-        "lowerName": "\\",
-        "upperName": "|",
-        "altName": ""
-      }
-    ],
-    "row4": [
-      {
-        "code": 58,
-        "lowerName": "capslock",
-        "upperName": "capslock",
-        "altName": ""
-      },
-      {
-        "code": 30,
-        "lowerName": "a",
-        "letter": "primary",
-        "upperName": "A",
-        "altName": ""
-      },
-      {
-        "code": 31,
-        "lowerName": "o",
-        "letter": "primary",
-        "upperName": "O",
-        "altName": ""
-      },
-      {
-        "code": 32,
-        "lowerName": "e",
-        "letter": "primary",
-        "upperName": "E",
-        "altName": ""
-      },
-      {
-        "code": 33,
-        "lowerName": "u",
-        "letter": "primary",
-        "upperName": "U",
-        "altName": ""
-      },
-      {
-        "code": 34,
-        "lowerName": "i",
-        "letter": "primary",
-        "upperName": "I",
-        "altName": ""
-      },
-      {
-        "code": 35,
-        "lowerName": "d",
-        "letter": "primary",
-        "upperName": "D",
-        "altName": ""
-      },
-      {
-        "code": 36,
-        "lowerName": "h",
-        "letter": "primary",
-        "upperName": "H",
-        "altName": ""
-      },
-      {
-        "code": 37,
-        "lowerName": "t",
-        "letter": "primary",
-        "upperName": "T",
-        "altName": ""
-      },
-      {
-        "code": 38,
-        "lowerName": "n",
-        "letter": "primary",
-        "upperName": "N",
-        "altName": ""
-      },
-      {
-        "code": 39,
-        "lowerName": "s",
-        "letter": "primary",
-        "upperName": "S",
-        "altName": ""
-      },
-      {
-        "code": 40,
-        "lowerName": "-",
-        "upperName": "_",
-        "altName": ""
-      },
-      {
-        "code": 28,
-        "lowerName": "enter",
-        "upperName": "enter",
-        "altName": ""
-      }
-    ],
-    "row5": [
-      {
-        "code": 42,
-        "lowerName": "shift",
-        "upperName": "shift",
-        "altName": ""
-      },
-      {
-        "code": 44,
-        "lowerName": ";",
-        "upperName": ":",
-        "altName": ""
-      },
-      {
-        "code": 45,
-        "lowerName": "q",
-        "letter": "primary",
-        "upperName": "Q",
-        "altName": ""
-      },
-      {
-        "code": 46,
-        "lowerName": "j",
-        "letter": "primary",
-        "upperName": "J",
-        "altName": ""
-      },
-      {
-        "code": 47,
-        "lowerName": "k",
-        "letter": "primary",
-        "upperName": "K",
-        "altName": ""
-      },
-      {
-        "code": 48,
-        "lowerName": "x",
-        "letter": "primary",
-        "upperName": "X",
-        "altName": ""
-      },
-      {
-        "code": 49,
-        "lowerName": "b",
-        "letter": "primary",
-        "upperName": "B",
-        "altName": ""
-      },
-      {
-        "code": 50,
-        "lowerName": "m",
-        "letter": "primary",
-        "upperName": "M",
-        "altName": ""
-      },
-      {
-        "code": 51,
-        "lowerName": "w",
-        "letter": "primary",
-        "upperName": "W",
-        "altName": ""
-      },
-      {
-        "code": 52,
-        "lowerName": "v",
-        "letter": "primary",
-        "upperName": "V",
-        "altName": ""
-      },
-      {
-        "code": 53,
-        "lowerName": "z",
-        "letter": "primary",
-        "upperName": "Z",
-        "altName": ""
-      },
-      {
-        "code": 54,
-        "lowerName": "shift",
-        "upperName": "shift",
-        "altName": ""
-      }
-    ],
-    "row6": [
-      {
-        "code": 29,
-        "lowerName": "ctrl",
-        "upperName": "ctrl",
-        "altName": ""
-      },
-      {
-        "code": 125,
-        "lowerName": "super",
-        "upperName": "super",
-        "altName": ""
-      },
-      {
-        "code": 56,
-        "lowerName": "alt",
-        "upperName": "alt",
-        "altName": ""
-      },
-      {
-        "code": 57,
-        "lowerName": "space",
-        "upperName": "space",
-        "altName": ""
-      },
-      {
-        "code": 100,
-        "lowerName": "alt",
-        "upperName": "alt",
-        "altName": ""
-      },
-      {
-        "code": 97,
-        "lowerName": "ctrl",
-        "upperName": "ctrl",
-        "altName": ""
-      },
-      [
-        {
-          "code": 105,
-          "lowerName": "left",
-          "upperName": "left",
-          "altName": ""
-        },
-        {
-          "code": 103,
-          "lowerName": "up",
-          "upperName": "up",
-          "altName": ""
-        },
-        {
-          "code": 108,
-          "lowerName": "down",
-          "upperName": "down",
-          "altName": ""
-        },
-        {
-          "code": 106,
-          "lowerName": "right",
-          "upperName": "right",
-          "altName": ""
-        }
-      ]
-    ]
-  },
-  "qwertz": {
-    "row1": [
-      {
-        "code": 1,
-        "lowerName": "esc",
-        "upperName": "esc",
-        "altName": ""
-      },
-      {
-        "code": 59,
-        "lowerName": "F1",
-        "upperName": "F1",
-        "altName": ""
-      },
-      {
-        "code": 60,
-        "lowerName": "F2",
-        "upperName": "F2",
-        "altName": ""
-      },
-      {
-        "code": 61,
-        "lowerName": "F3",
-        "upperName": "F3",
-        "altName": ""
-      },
-      {
-        "code": 62,
-        "lowerName": "F4",
-        "upperName": "F4",
-        "altName": ""
-      },
-      {
-        "code": 63,
-        "lowerName": "F5",
-        "upperName": "F5",
-        "altName": ""
-      },
-      {
-        "code": 64,
-        "lowerName": "F6",
-        "upperName": "F6",
-        "altName": ""
-      },
-      {
-        "code": 65,
-        "lowerName": "F7",
-        "upperName": "F7",
-        "altName": ""
-      },
-      {
-        "code": 66,
-        "lowerName": "F8",
-        "upperName": "F8",
-        "altName": ""
-      },
-      {
-        "code": 67,
-        "lowerName": "F9",
-        "upperName": "F9",
-        "altName": ""
-      },
-      {
-        "code": 68,
-        "lowerName": "F10",
-        "upperName": "F10",
-        "altName": ""
-      },
-      {
-        "code": 87,
-        "lowerName": "F11",
-        "upperName": "F11",
-        "altName": ""
-      },
-      {
-        "code": 88,
-        "lowerName": "F12",
-        "upperName": "F12",
-        "altName": ""
-      },
-      {
-        "code": 210,
-        "lowerName": "PrtSc",
-        "upperName": "PrtSc",
-        "altName": ""
-      },
-      {
-        "code": 111,
-        "lowerName": "delete",
-        "upperName": "delete",
-        "altName": ""
-      }
-    ],
-    "row2": [
-      {
-        "code": 41,
-        "lowerName": "^",
-        "upperName": "°",
-        "altName": "′"
-      },
-      {
-        "code": 2,
-        "lowerName": "1",
-        "upperName": "!",
-        "altName": "¹"
-      },
-      {
-        "code": 3,
-        "lowerName": "2",
-        "upperName": "\"",
-        "altName": "²"
-      },
-      {
-        "code": 4,
-        "lowerName": "3",
-        "upperName": "§",
-        "altName": "³"
-      },
-      {
-        "code": 5,
-        "lowerName": "4",
-        "upperName": "$",
-        "altName": "¼"
-      },
-      {
-        "code": 6,
-        "lowerName": "5",
-        "upperName": "%",
-        "altName": "½"
-      },
-      {
-        "code": 7,
-        "lowerName": "6",
-        "upperName": "&",
-        "altName": "¬"
-      },
-      {
-        "code": 8,
-        "lowerName": "7",
-        "upperName": "/",
-        "altName": "{"
-      },
-      {
-        "code": 9,
-        "lowerName": "8",
-        "upperName": "(",
-        "altName": "["
-      },
-      {
-        "code": 10,
-        "lowerName": "9",
-        "upperName": ")",
-        "altName": "]"
-      },
-      {
-        "code": 11,
-        "lowerName": "0",
-        "upperName": "=",
-        "altName": "}"
-      },
-      {
-        "code": 12,
-        "lowerName": "ß",
-        "upperName": "?",
-        "altName": "\\"
-      },
-      {
-        "code": 13,
-        "lowerName": "´",
-        "upperName": "`",
-        "altName": "¸"
-      },
-      {
-        "code": 14,
-        "lowerName": "backspace",
-        "upperName": "backspace",
-        "altName": ""
-      }
-    ],
-    "row3": [
-      {
-        "code": 15,
-        "lowerName": "tab",
-        "upperName": "tab",
-        "altName": ""
-      },
-      {
-        "code": 16,
-        "lowerName": "q",
-        "letter": "primary",
-        "upperName": "Q",
-        "altName": "@"
-      },
-      {
-        "code": 17,
-        "lowerName": "w",
-        "letter": "primary",
-        "upperName": "W",
-        "altName": "ſ"
-      },
-      {
-        "code": 18,
-        "lowerName": "e",
-        "letter": "primary",
-        "upperName": "E",
-        "altName": "ě"
-      },
-      {
-        "code": 19,
-        "lowerName": "r",
-        "letter": "primary",
-        "upperName": "R",
-        "altName": "ŕ"
-      },
-      {
-        "code": 20,
-        "lowerName": "t",
-        "letter": "primary",
-        "upperName": "T",
-        "altName": "₵"
-      },
-      {
-        "code": 21,
-        "lowerName": "z",
-        "letter": "primary",
-        "upperName": "Z",
-        "altName": "ž"
-      },
-      {
-        "code": 22,
-        "lowerName": "u",
-        "letter": "primary",
-        "upperName": "U",
-        "altName": "ź"
-      },
-      {
-        "code": 23,
-        "lowerName": "i",
-        "letter": "primary",
-        "upperName": "I",
-        "altName": "right"
-      },
-      {
-        "code": 24,
-        "lowerName": "o",
-        "letter": "primary",
-        "upperName": "O",
-        "altName": "ó"
-      },
-      {
-        "code": 25,
-        "lowerName": "p",
-        "letter": "primary",
-        "upperName": "P",
-        "altName": "þ"
-      },
-      {
-        "code": 26,
-        "lowerName": "ü",
-        "letter": "primary",
-        "upperName": "Ü",
-        "altName": "¨"
-      },
-      {
-        "code": 27,
-        "lowerName": "+",
-        "upperName": "*",
-        "altName": "~"
-      },
-      {
-        "code": 43,
-        "lowerName": "#",
-        "upperName": "'",
-        "altName": "’"
-      }
-    ],
-    "row4": [
-      {
-        "code": 58,
-        "lowerName": "capslock",
-        "upperName": "capslock",
-        "altName": ""
-      },
-      {
-        "code": 30,
-        "lowerName": "a",
-        "letter": "primary",
-        "upperName": "A",
-        "altName": "æ"
-      },
-      {
-        "code": 31,
-        "lowerName": "s",
-        "letter": "primary",
-        "upperName": "S",
-        "altName": "ś"
-      },
-      {
-        "code": 32,
-        "lowerName": "d",
-        "letter": "primary",
-        "upperName": "D",
-        "altName": "š"
-      },
-      {
-        "code": 33,
-        "lowerName": "f",
-        "letter": "primary",
-        "upperName": "F",
-        "altName": "đ"
-      },
-      {
-        "code": 34,
-        "lowerName": "g",
-        "letter": "primary",
-        "upperName": "G",
-        "altName": "ŋ"
-      },
-      {
-        "code": 35,
-        "lowerName": "h",
-        "letter": "primary",
-        "upperName": "H",
-        "altName": "ħ"
-      },
-      {
-        "code": 36,
-        "lowerName": "j",
-        "letter": "primary",
-        "upperName": "J",
-        "altName": "."
-      },
-      {
-        "code": 37,
-        "lowerName": "k",
-        "letter": "primary",
-        "upperName": "K",
-        "altName": "ĸ"
-      },
-      {
-        "code": 38,
-        "lowerName": "l",
-        "letter": "primary",
-        "upperName": "L",
-        "altName": "ł"
-      },
-      {
-        "code": 39,
-        "lowerName": "ö",
-        "letter": "primary",
-        "upperName": "Ö",
-        "altName": "˝"
-      },
-      {
-        "code": 40,
-        "lowerName": "ä",
-        "letter": "primary",
-        "upperName": "Ä",
-        "altName": "^"
-      },
-      {
-        "code": 28,
-        "lowerName": "enter",
-        "upperName": "enter",
-        "altName": ""
-      }
-    ],
-    "row5": [
-      {
-        "code": 42,
-        "lowerName": "shift",
-        "upperName": "shift",
-        "altName": ""
-      },
-      {
-        "code": 86,
-        "lowerName": "<",
-        "upperName": ">",
-        "altName": ""
-      },
-      {
-        "code": 44,
-        "lowerName": "y",
-        "letter": "primary",
-        "upperName": "Y",
-        "altName": "»"
-      },
-      {
-        "code": 45,
-        "lowerName": "x",
-        "letter": "primary",
-        "upperName": "X",
-        "altName": "«"
-      },
-      {
-        "code": 46,
-        "lowerName": "c",
-        "letter": "primary",
-        "upperName": "C",
-        "altName": "ć"
-      },
-      {
-        "code": 47,
-        "lowerName": "v",
-        "letter": "primary",
-        "upperName": "V",
-        "altName": "č"
-      },
-      {
-        "code": 48,
-        "lowerName": "b",
-        "letter": "primary",
-        "upperName": "B",
-        "altName": "“"
-      },
-      {
-        "code": 49,
-        "lowerName": "n",
-        "letter": "primary",
-        "upperName": "N",
-        "altName": "ń"
-      },
-      {
-        "code": 50,
-        "lowerName": "m",
-        "letter": "primary",
-        "upperName": "M",
-        "altName": "µ"
-      },
-      {
-        "code": 51,
-        "lowerName": ",",
-        "upperName": ";",
-        "altName": "·"
-      },
-      {
-        "code": 52,
-        "lowerName": ".",
-        "upperName": ":",
-        "altName": "…"
-      },
-      {
-        "code": 53,
-        "lowerName": "-",
-        "upperName": "_",
-        "altName": "–"
-      },
-      {
-        "code": 54,
-        "lowerName": "shift",
-        "upperName": "shift",
-        "altName": ""
-      }
-    ],
-    "row6": [
-      {
-        "code": 29,
-        "lowerName": "ctrl",
-        "upperName": "ctrl",
-        "altName": ""
-      },
-      {
-        "code": 125,
-        "lowerName": "super",
-        "upperName": "super",
-        "altName": ""
-      },
-      {
-        "code": 56,
-        "lowerName": "alt",
-        "upperName": "alt",
-        "altName": ""
-      },
-      {
-        "code": 57,
-        "lowerName": "space",
-        "upperName": "space",
-        "altName": ""
-      },
-      {
-        "code": 100,
-        "lowerName": "alt",
-        "upperName": "alt",
-        "altName": ""
-      },
-      {
-        "code": 97,
-        "lowerName": "ctrl",
-        "upperName": "ctrl",
-        "altName": ""
-      },
-      [
-        {
-          "code": 105,
-          "lowerName": "left",
-          "upperName": "left",
-          "altName": ""
-        },
-        {
-          "code": 103,
-          "lowerName": "up",
-          "upperName": "up",
-          "altName": ""
-        },
-        {
-          "code": 108,
-          "lowerName": "down",
-          "upperName": "down",
-          "altName": ""
-        },
-        {
-          "code": 106,
-          "lowerName": "right",
-          "upperName": "right",
-          "altName": ""
-        }
-      ]
-    ]
-  }
-}

+ 1 - 1
gnome/.local/share/gnome-shell/extensions/gjsosk@vishram1123.com/metadata.json

@@ -11,5 +11,5 @@
   ],
   "url": "https://github.com/Vishram1123/gjs-osk",
   "uuid": "gjsosk@vishram1123.com",
-  "version": 10
+  "version": 27
 }

+ 162 - 104
gnome/.local/share/gnome-shell/extensions/gjsosk@vishram1123.com/prefs.js

@@ -20,80 +20,54 @@ export default class GjsOskPreferences extends ExtensionPreferences {
 			icon_name: "general-symbolic"
 		});
 
-		const group0 = new Adw.PreferencesGroup();
-		page1.add(group0)
-
-		const apply = Gtk.Button.new_with_label(_("Apply Changes"));
-		apply.connect("clicked", () => {
-			settings.set_int("lang", langDrop.selected);
-			settings.set_boolean("enable-drag", dragToggle.active);
-			settings.set_int("enable-tap-gesture", dragOpt.selected);
-			settings.set_boolean("indicator-enabled", indEnabled.active);
-			settings.set_int("portrait-width-percent", numChanger_pW.value);
-			settings.set_int("portrait-height-percent", numChanger_pH.value);
-			settings.set_int("landscape-width-percent", numChanger_lW.value);
-			settings.set_int("landscape-height-percent", numChanger_lH.value);
-			let [r, g, b] = colorButton.get_rgba().to_string().replace("rgb(", "").replace(")", "").split(",")
-			settings.set_double("background-r", r);
-			settings.set_double("background-g", g);
-			settings.set_double("background-b", b);
-			settings.set_int("font-size-px", numChanger_font.value);
-			settings.set_int("border-spacing-px", numChanger_bord.value);
-			settings.set_int("snap-spacing-px", numChanger_snap.value)
-			settings.set_boolean("round-key-corners", dragToggle2.active);
-			settings.set_boolean("play-sound", dragToggle3.active);
-			settings.set_int("default-snap", dropDown.selected);
-		});
-		group0.add(apply)
-
-		const group1 = new Adw.PreferencesGroup({
+		const behaviorGroup = new Adw.PreferencesGroup({
 			title: _("Behavior")
 		});
-		page1.add(group1);
+		page1.add(behaviorGroup);
 
-		const row0 = new Adw.ActionRow({
+		const layoutRow = new Adw.ActionRow({
 			title: _('Layout')
 		});
-		group1.add(row0);
+		behaviorGroup.add(layoutRow);
 
-		let langList = ["QWERTY", "AZERTY", "Dvorak", "QWERTZ"];
-		let langDrop = Gtk.DropDown.new_from_strings(langList);
-		langDrop.valign = Gtk.Align.CENTER;
-		langDrop.selected = settings.get_int("lang");
+		let layoutList = ["Full Sized International", "Full Sized US", "Tenkeyless International", "Tenkeyless US", "Compact International", "Compact US", "Split International", "Split US"];
+		let layoutDrop = Gtk.DropDown.new_from_strings(layoutList);
+		layoutDrop.valign = Gtk.Align.CENTER;
+		layoutDrop.selected = settings.get_int("layout");
 
-		row0.add_suffix(langDrop);
-		row0.activatable_widget = langDrop;
+		layoutRow.add_suffix(layoutDrop);
+		layoutRow.activatable_widget = layoutDrop;
 
-		const row1 = new Adw.ActionRow({
+		const enableDragRow = new Adw.ActionRow({
 			title: _('Enable Dragging')
 		});
-		group1.add(row1);
+		behaviorGroup.add(enableDragRow);
 
-		const dragToggle = new Gtk.Switch({
+		const dragEnableDT = new Gtk.Switch({
 			active: settings.get_boolean('enable-drag'),
 			valign: Gtk.Align.CENTER,
 		});
 
-		row1.add_suffix(dragToggle);
-		row1.activatable_widget = dragToggle;
+		enableDragRow.add_suffix(dragEnableDT);
+		enableDragRow.activatable_widget = dragEnableDT;
 
-		const row1t3 = new Adw.ActionRow({
+		const indEnabledRow = new Adw.ActionRow({
 			title: _('Enable Panel Indicator')
 		});
-		group1.add(row1t3);
+		behaviorGroup.add(indEnabledRow);
 
 		const indEnabled = new Gtk.Switch({
 			active: settings.get_boolean("indicator-enabled"),
 			valign: Gtk.Align.CENTER,
 		});
 
-		row1t3.add_suffix(indEnabled);
-		row1t3.activatable_widget = indEnabled;
+		indEnabledRow.add_suffix(indEnabled);
+		indEnabledRow.activatable_widget = indEnabled;
 
 		const row1t5 = new Adw.ActionRow({
 			title: _('Open upon clicking in a text field')
 		});
-		group1.add(row1t5);
+		behaviorGroup.add(row1t5);
 
 
 		let dragOptList = [_("Never"), _("Only on Touch"), _("Always")];
@@ -104,10 +78,10 @@ export default class GjsOskPreferences extends ExtensionPreferences {
 		row1t5.add_suffix(dragOpt);
 		row1t5.activatable_widget = dragOpt;
 
-		const row2 = new Adw.ExpanderRow({
+		const portraitSizing = new Adw.ExpanderRow({
 			title: _('Portrait Sizing')
 		});
-		group1.add(row2);
+		behaviorGroup.add(portraitSizing);
 
 		let pW = new Adw.ActionRow({
 			title: _('Width (%)')
@@ -128,13 +102,13 @@ export default class GjsOskPreferences extends ExtensionPreferences {
 		pH.add_suffix(numChanger_pH);
 		pH.activatable_widget = numChanger_pH;
 
-		row2.add_row(pW);
-		row2.add_row(pH);
+		portraitSizing.add_row(pW);
+		portraitSizing.add_row(pH);
 
-		const row3 = new Adw.ExpanderRow({
+		const landscapeSizing = new Adw.ExpanderRow({
 			title: _('Landscape Sizing')
 		});
-		group1.add(row3);
+		behaviorGroup.add(landscapeSizing);
 
 		let lW = new Adw.ActionRow({
 			title: _('Width (%)')
@@ -155,104 +129,152 @@ export default class GjsOskPreferences extends ExtensionPreferences {
 		lH.add_suffix(numChanger_lH);
 		lH.activatable_widget = numChanger_lH;
 
-		row3.add_row(lW);
-		row3.add_row(lH);
+		landscapeSizing.add_row(lW);
+		landscapeSizing.add_row(lH);
 
-		const row4 = new Adw.ActionRow({
+		const defaultPosition = new Adw.ActionRow({
 			title: _('Default Position')
 		});
-		group1.add(row4);
+		behaviorGroup.add(defaultPosition);
 
 		let posList = [
 			_("Top Left"), _("Top Center"), _("Top Right"),
 			_("Center Left"), _("Center"), _("Center Right"),
 			_("Bottom Left"), _("Bottom Center"), _("Bottom Right")
 		];
-		let dropDown = Gtk.DropDown.new_from_strings(posList);
-		dropDown.valign = Gtk.Align.CENTER;
-		dropDown.selected = settings.get_int("default-snap");
+		let snapDrop = Gtk.DropDown.new_from_strings(posList);
+		snapDrop.valign = Gtk.Align.CENTER;
+		snapDrop.selected = settings.get_int("default-snap");
 
-		row4.add_suffix(dropDown);
-		row4.activatable_widget = dropDown;
+		defaultPosition.add_suffix(snapDrop);
+		defaultPosition.activatable_widget = snapDrop;
 
-		const row9 = new Adw.ActionRow({
+		const soundPlayRow = new Adw.ActionRow({
 			title: _('Play sound')
 		});
-		group1.add(row9);
+		behaviorGroup.add(soundPlayRow);
 
-		const dragToggle3 = new Gtk.Switch({
+		const soundPlayDT = new Gtk.Switch({
 			active: settings.get_boolean('play-sound'),
 			valign: Gtk.Align.CENTER,
 		});
 
-		row9.add_suffix(dragToggle3);
-		row9.activatable_widget = dragToggle3;
+		soundPlayRow.add_suffix(soundPlayDT);
+		soundPlayRow.activatable_widget = soundPlayDT;
 
-		const group2 = new Adw.PreferencesGroup({
+		const appearanceGroup = new Adw.PreferencesGroup({
 			title: _("Appearance")
 		});
-		page1.add(group2);
+		page1.add(appearanceGroup);
+
+		const colorRow = new Adw.ExpanderRow({
+			title: _("Color")
+		})
+		appearanceGroup.add(colorRow);
+
 
-		const row5 = new Adw.ActionRow({
-			title: _('Color')
+		const lightCol = new Adw.ActionRow({
+			title: _('Light Mode')
 		});
-		group2.add(row5); settings.set_boolean("enable-tap-gesture", dragOpt.selected);
+		colorRow.add_row(lightCol)
 
 		let rgba = new Gdk.RGBA();
-		rgba.parse("rgba(" + settings.get_double("background-r") + ", " + settings.get_double("background-g") + ", " + settings.get_double("background-b") + ", 1)");
+		rgba.parse("rgba(" + settings.get_double("background-r") + ", " + settings.get_double("background-g") + ", " + settings.get_double("background-b") + ", " + settings.get_double("background-a") + ")");
 		let colorButton = new Gtk.ColorButton({
-			rgba,
-			use_alpha: false,
+			rgba: rgba,
+			use_alpha: true,
 			valign: Gtk.Align.CENTER
 		});
-		row5.add_suffix(colorButton);
-		row5.activatable_widget = colorButton;
+		lightCol.add_suffix(colorButton);
+		lightCol.activatable_widget = colorButton;
 
-		let row6 = new Adw.ActionRow({
+		const darkCol = new Adw.ActionRow({
+			title: _('Dark Mode')
+		});
+		colorRow.add_row(darkCol)
+
+		let rgba_d = new Gdk.RGBA();
+		rgba_d.parse("rgba(" + settings.get_double("background-r-dark") + ", " + settings.get_double("background-g-dark") + ", " + settings.get_double("background-b-dark") + ", " + settings.get_double("background-a-dark") + ")");
+		let colorButton_d = new Gtk.ColorButton({
+			rgba: rgba_d,
+			use_alpha: true,
+			valign: Gtk.Align.CENTER
+		});
+		darkCol.add_suffix(colorButton_d);
+		darkCol.activatable_widget = colorButton_d;
+
+		let fontSize = new Adw.ActionRow({
 			title: _('Font Size (px)')
 		});
-		group2.add(row6);
+		appearanceGroup.add(fontSize);
 
 		let numChanger_font = Gtk.SpinButton.new_with_range(0, 100, 1);
 		numChanger_font.value = settings.get_int('font-size-px');
 		numChanger_font.valign = Gtk.Align.CENTER;
-		row6.add_suffix(numChanger_font);
-		row6.activatable_widget = numChanger_font;
+		
+		fontSize.add_suffix(numChanger_font);
+		fontSize.activatable_widget = numChanger_font;
+
+		const fontBoldRow = new Adw.ActionRow({
+			title: _("Bold Font")
+		})
+		appearanceGroup.add(fontBoldRow)
 
-		let row7 = new Adw.ActionRow({
+		const fontBoldEnabled = new Gtk.Switch({
+			active: settings.get_boolean("font-bold"),
+			valign: Gtk.Align.CENTER
+		})
+
+		fontBoldRow.add_suffix(fontBoldEnabled)
+		fontBoldRow.activatable_widget = fontBoldEnabled
+
+		let borderSpacing = new Adw.ActionRow({
 			title: _('Border Spacing (px)')
 		});
-		group2.add(row7);
+		appearanceGroup.add(borderSpacing);
 
 		let numChanger_bord = Gtk.SpinButton.new_with_range(0, 10, 1);
 		numChanger_bord.value = settings.get_int('border-spacing-px');
 		numChanger_bord.valign = Gtk.Align.CENTER;
-		row7.add_suffix(numChanger_bord);
-		row7.activatable_widget = numChanger_bord;
+		borderSpacing.add_suffix(numChanger_bord);
+		borderSpacing.activatable_widget = numChanger_bord;
 
-		let row1t2 = new Adw.ActionRow({
+		let snapSpacing = new Adw.ActionRow({
 			title: _('Drag snap spacing (px)')
 		});
-		group2.add(row1t2);
+		appearanceGroup.add(snapSpacing);
 
 		let numChanger_snap = Gtk.SpinButton.new_with_range(0, 50, 5);
 		numChanger_snap.value = settings.get_int('snap-spacing-px');
 		numChanger_snap.valign = Gtk.Align.CENTER;
-		row1t2.add_suffix(numChanger_snap);
-		row1t2.activatable_widget = numChanger_snap;
+		snapSpacing.add_suffix(numChanger_snap);
+		snapSpacing.activatable_widget = numChanger_snap;
 
-		const row8 = new Adw.ActionRow({
+		const roundCorners = new Adw.ActionRow({
 			title: _('Round Corners')
 		});
-		group2.add(row8);
+		appearanceGroup.add(roundCorners);
 
-		const dragToggle2 = new Gtk.Switch({
+		const roundKeyCDT = new Gtk.Switch({
 			active: settings.get_boolean('round-key-corners'),
 			valign: Gtk.Align.CENTER,
 		});
 
-		row8.add_suffix(dragToggle2);
-		row8.activatable_widget = dragToggle2;
+		roundCorners.add_suffix(roundKeyCDT);
+		roundCorners.activatable_widget = roundKeyCDT;
+
+		const showIcon = new Adw.ActionRow({
+			title: _('Show Special Key Icons')
+		});
+		appearanceGroup.add(showIcon);
+
+		const showIconDT = new Gtk.Switch({
+			active: settings.get_boolean('show-icons'),
+			valign: Gtk.Align.CENTER,
+		});
+
+		showIcon.add_suffix(showIconDT);
+		showIcon.activatable_widget = showIconDT;
 
 		window.add(page1);
 
@@ -287,7 +309,7 @@ export default class GjsOskPreferences extends ExtensionPreferences {
 		context.add_class("title-1");
 
 		let another_label = new Gtk.Label({
-			label: _("Version ") + this.metadata.version
+			label: _("Autorelease ") + `fab8e97`
 		});
 
 		let links_pref_group = new Adw.PreferencesGroup();
@@ -326,25 +348,61 @@ export default class GjsOskPreferences extends ExtensionPreferences {
 		page2.add(links_pref_group);
 
 		window.add(page2);
+		
+		settings.bind("layout", layoutDrop, "selected", 0);
+		settings.bind("enable-drag", dragEnableDT, "active", 0);
+		settings.bind("enable-tap-gesture", dragOpt, "selected", 0);
+		settings.bind("indicator-enabled", indEnabled, "active", 0);
+		settings.bind("portrait-width-percent", numChanger_pW, "value", 0);
+		settings.bind("portrait-height-percent", numChanger_pH, "value", 0);
+		settings.bind("landscape-width-percent", numChanger_lW, "value", 0);
+		settings.bind("landscape-height-percent", numChanger_lH, "value", 0);
+		colorButton.connect("color-set", () => {
+			settings.set_double("background-r", Math.round(colorButton.get_rgba().red * 255));
+			settings.set_double("background-g", Math.round(colorButton.get_rgba().green * 255));
+			settings.set_double("background-b", Math.round(colorButton.get_rgba().blue * 255));
+			settings.set_double("background-a", colorButton.get_rgba().alpha);
+		})
+		colorButton_d.connect("color-set", () => {
+			settings.set_double("background-r-dark", Math.round(colorButton_d.get_rgba().red * 255));
+			settings.set_double("background-g-dark", Math.round(colorButton_d.get_rgba().green * 255));
+			settings.set_double("background-b-dark", Math.round(colorButton_d.get_rgba().blue * 255));
+			settings.set_double("background-a-dark", colorButton_d.get_rgba().alpha);
+		})
+		settings.bind("font-size-px", numChanger_font, "value", 0);
+		settings.bind("font-bold", fontBoldEnabled, "active", 0)
+		settings.bind("border-spacing-px", numChanger_bord, "value", 0);
+		settings.bind("snap-spacing-px", numChanger_snap, "value", 0)
+		settings.bind("round-key-corners", roundKeyCDT, "active", 0);
+		settings.bind("play-sound", soundPlayDT, "active", 0);
+		settings.bind("show-icons", showIconDT, "active", 0)
+		settings.bind("default-snap", snapDrop, "selected", 0);
+
 		window.connect("close-request", () => {
-			settings.set_int("lang", langDrop.selected);
-			settings.set_boolean("enable-drag", dragToggle.active);
+			settings.set_int("layout", layoutDrop.selected);
+			settings.set_boolean("enable-drag", dragEnableDT.active);
 			settings.set_int("enable-tap-gesture", dragOpt.selected);
 			settings.set_boolean("indicator-enabled", indEnabled.active);
 			settings.set_int("portrait-width-percent", numChanger_pW.value);
 			settings.set_int("portrait-height-percent", numChanger_pH.value);
 			settings.set_int("landscape-width-percent", numChanger_lW.value);
 			settings.set_int("landscape-height-percent", numChanger_lH.value);
-			let [r, g, b] = colorButton.get_rgba().to_string().replace("rgb(", "").replace(")", "").split(",")
-			settings.set_double("background-r", r);
-			settings.set_double("background-g", g);
-			settings.set_double("background-b", b);
+			settings.set_double("background-r", Math.round(colorButton.get_rgba().red * 255));
+			settings.set_double("background-g", Math.round(colorButton.get_rgba().green * 255));
+			settings.set_double("background-b", Math.round(colorButton.get_rgba().blue * 255));
+			settings.set_double("background-a", colorButton.get_rgba().alpha);
+			settings.set_double("background-r-dark", Math.round(colorButton_d.get_rgba().red * 255));
+			settings.set_double("background-g-dark", Math.round(colorButton_d.get_rgba().green * 255));
+			settings.set_double("background-b-dark", Math.round(colorButton_d.get_rgba().blue * 255));
+			settings.set_double("background-a-dark", colorButton_d.get_rgba().alpha);
 			settings.set_int("font-size-px", numChanger_font.value);
+			settings.set_boolean("font-bold", fontBoldEnabled.active)
 			settings.set_int("border-spacing-px", numChanger_bord.value);
 			settings.set_int("snap-spacing-px", numChanger_snap.value)
-			settings.set_boolean("round-key-corners", dragToggle2.active);
-			settings.set_boolean("play-sound", dragToggle3.active);
-			settings.set_int("default-snap", dropDown.selected);
-		});
+			settings.set_boolean("round-key-corners", roundKeyCDT.active);
+			settings.set_boolean("play-sound", soundPlayDT.active);
+			settings.set_boolean("show-icons", showIconDT.active)
+			settings.set_int("default-snap", snapDrop.selected);
+		})
 	}
 };

二进制
gnome/.local/share/gnome-shell/extensions/gjsosk@vishram1123.com/schemas/gschemas.compiled


+ 27 - 6
gnome/.local/share/gnome-shell/extensions/gjsosk@vishram1123.com/schemas/org.gnome.shell.extensions.gjsosk.gschema.xml

@@ -1,11 +1,14 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <schemalist>
   <schema id="org.gnome.shell.extensions.gjsosk" path="/org/gnome/shell/extensions/gjsosk/">
+    <key name="layout" type="i">
+      <default>0</default>
+    </key>
     <key name="portrait-width-percent" type="i">
       <default>100</default>
     </key>
     <key name="portrait-height-percent" type="i">
-      <default>20</default>
+      <default>30</default>
     </key>
     <key name="landscape-width-percent" type="i">
       <default>70</default>
@@ -17,17 +20,35 @@
       <default>true</default>
     </key>
     <key name="background-r" type="d">
-      <default>50</default>
+      <default>250</default>
     </key>
     <key name="background-g" type="d">
-      <default>50</default>
+      <default>250</default>
     </key>
     <key name="background-b" type="d">
+      <default>250</default>
+    </key>
+    <key name="background-a" type="d">
+      <default>1</default>
+    </key>
+    <key name="background-r-dark" type="d">
+      <default>50</default>
+    </key>
+    <key name="background-g-dark" type="d">
       <default>50</default>
     </key>
+    <key name="background-b-dark" type="d">
+      <default>50</default>
+    </key>
+    <key name="background-a-dark" type="d">
+      <default>1</default>
+    </key>
     <key name="font-size-px" type="i">
       <default>14</default>
     </key>
+    <key name="font-bold" type="b">
+      <default>false</default>
+    </key>
     <key name="border-spacing-px" type="i">
       <default>2</default>
     </key>
@@ -39,9 +60,6 @@
     </key>
     <key name="default-snap" type="i">
       <default>7</default>
-    </key>
-	<key name="lang" type="i">
-      <default>0</default>
     </key>
     <key name="enable-tap-gesture" type="i">
 		<default>1</default>
@@ -52,6 +70,9 @@
     <key name="play-sound" type="b">
 		<default>true</default>
     </key>
+    <key name="show-icons" type="b">
+		  <default>true</default>
+    </key>
     <child name="indicator" schema="org.gnome.shell.extensions.gjsosk.indicator"/>
 	
   </schema>

+ 8 - 26
gnome/.local/share/gnome-shell/extensions/gjsosk@vishram1123.com/stylesheet.css

@@ -17,9 +17,10 @@
      background-color: rgba(0, 0, 0, 0.05);
      color: black;
 }
-
-.keysHolder>* {
+.key, .moveHandle {
      border: 0;
+     padding: 0;
+     margin: 0;
      background-clip: padding-box;
      box-sizing: border-box;
 }
@@ -31,19 +32,8 @@
      box-sizing: border-box;
 }
 
-.boxLay.regular:dragging {
-     background-image: url(ui/icons/hicolor/scalable/actions/move.svg);
-     background-size: 100px;
-}
-
-.boxLay.inverted:dragging {
-     background-image: url(ui/icons/hicolor/scalable/actions/move-dark.svg);
-     background-size: 100px;
-}
-
 .close_btn,
-.move_btn,
-.delete_btn,
+.settings_btn,
 .backspace_btn,
 .tab_btn,
 .capslock_btn,
@@ -69,20 +59,12 @@
      background-image: url(ui/icons/hicolor/scalable/actions/close-dark.svg);
 }
 
-.move_btn.regular, .move_btn.selected.inverted {
-     background-image: url(ui/icons/hicolor/scalable/actions/move.svg);
-}
-
-.move_btn.inverted, .move_btn.selected.regular {
-     background-image: url(ui/icons/hicolor/scalable/actions/move-dark.svg);
-}
-
-.delete_btn.regular, .delete_btn.selected.inverted {
-     background-image: url(ui/icons/hicolor/scalable/actions/delete.svg);
+.settings_btn.regular {
+     background-image: url(ui/icons/hicolor/scalable/actions/settings.svg);
 }
 
-.delete_btn.inverted, .delete_btn.selected.regular {
-     background-image: url(ui/icons/hicolor/scalable/actions/delete-dark.svg);
+.settings_btn.inverted {
+     background-image: url(ui/icons/hicolor/scalable/actions/settings-dark.svg);
 }
 
 .backspace_btn.regular, .backspace_btn.selected.inverted {

+ 0 - 36
gnome/.local/share/gnome-shell/extensions/gjsosk@vishram1123.com/ui/icons/hicolor/scalable/actions/delete-dark.svg

@@ -1,36 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<svg
-   viewBox="0 0 24 24"
-   fill="rgba(0,0,0,1)"
-   version="1.1"
-   id="svg1"
-   sodipodi:docname="delete-dark.svg"
-   inkscape:version="1.3.2 (091e20ef0f, 2023-11-25)"
-   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
-   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
-   xmlns="http://www.w3.org/2000/svg"
-   xmlns:svg="http://www.w3.org/2000/svg">
-  <defs
-     id="defs1" />
-  <sodipodi:namedview
-     id="namedview1"
-     pagecolor="#ffffff"
-     bordercolor="#000000"
-     borderopacity="0.25"
-     inkscape:showpageshadow="2"
-     inkscape:pageopacity="0.0"
-     inkscape:pagecheckerboard="0"
-     inkscape:deskcolor="#d1d1d1"
-     inkscape:zoom="36.583333"
-     inkscape:cx="11.986333"
-     inkscape:cy="12"
-     inkscape:window-width="912"
-     inkscape:window-height="1064"
-     inkscape:window-x="35"
-     inkscape:window-y="32"
-     inkscape:window-maximized="0"
-     inkscape:current-layer="svg1" />
-  <path
-     d="M 15.665962,21 H 1.2011722 C 0.64887223,21 0.20117223,20.55228 0.20117223,20 V 4 c 0,-0.5523 0.4477,-1 0.99999997,-1 H 15.665962 c 0.33436,0 0.64659,0.1671 0.83205,0.4453 l 5.333338,8 c 0.223933,0.3359 0.223933,0.7735 0,1.1094 l -5.333338,8 C 16.312552,20.8329 16.000322,21 15.665962,21 Z m -0.53518,-2 4.66667,-7 -4.66667,-7 H 2.2011722 v 14 z m -5.9296099,-5.5858 -2.8283999,2.82844 -1.4143,-1.41421 2.8285,-2.82843 -2.8285,-2.8284 1.4143,-1.4142 2.8283999,2.8284 2.8283999,-2.8284 1.41422,1.4142 -2.82842,2.8284 2.82842,2.82843 -1.41422,1.41421 z"
-     id="path1" />
-</svg>

+ 0 - 36
gnome/.local/share/gnome-shell/extensions/gjsosk@vishram1123.com/ui/icons/hicolor/scalable/actions/delete.svg

@@ -1,36 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<svg
-   viewBox="0 0 24 24"
-   fill="rgba(255,255,255,1)"
-   version="1.1"
-   id="svg1"
-   sodipodi:docname="delete.svg"
-   inkscape:version="1.3.2 (091e20ef0f, 2023-11-25)"
-   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
-   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
-   xmlns="http://www.w3.org/2000/svg"
-   xmlns:svg="http://www.w3.org/2000/svg">
-  <defs
-     id="defs1" />
-  <sodipodi:namedview
-     id="namedview1"
-     pagecolor="#ffffff"
-     bordercolor="#000000"
-     borderopacity="0.25"
-     inkscape:showpageshadow="2"
-     inkscape:pageopacity="0.0"
-     inkscape:pagecheckerboard="0"
-     inkscape:deskcolor="#d1d1d1"
-     inkscape:zoom="36.583333"
-     inkscape:cx="10.56492"
-     inkscape:cy="5.2756265"
-     inkscape:window-width="912"
-     inkscape:window-height="1064"
-     inkscape:window-x="35"
-     inkscape:window-y="32"
-     inkscape:window-maximized="0"
-     inkscape:current-layer="svg1" />
-  <path
-     d="M 15.665962,21 H 1.2011721 C 0.64887213,21 0.20117212,20.55228 0.20117212,20 V 4.0000001 c 0,-0.5523 0.44770001,-1 0.99999998,-1 H 15.665962 c 0.33436,0 0.64659,0.1671 0.83205,0.4453 L 21.83135,11.4453 c 0.223933,0.3359 0.223933,0.7735 0,1.1094 l -5.333338,8 C 16.312552,20.8329 16.000322,21 15.665962,21 Z m -0.53518,-2 4.66667,-7 -4.66667,-6.9999999 H 2.2011721 V 19 Z m -5.9296099,-5.5858 -2.8284,2.82844 -1.4143,-1.41421 2.8285,-2.82843 -2.8285,-2.8283999 1.4143,-1.4142 2.8284,2.8283999 2.8283999,-2.8283999 1.41422,1.4142 L 10.615372,12 l 2.82842,2.82843 -1.41422,1.41421 z"
-     id="path1" />
-</svg>

+ 0 - 43
gnome/.local/share/gnome-shell/extensions/gjsosk@vishram1123.com/ui/icons/hicolor/scalable/actions/move-dark.svg

@@ -1,43 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<svg
-   viewBox="0 0 24 24"
-   width="240"
-   height="240"
-   version="1.1"
-   id="svg6"
-   sodipodi:docname="move-dark.svg"
-   inkscape:version="1.1.2 (0a00cf5339, 2022-02-04)"
-   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
-   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
-   xmlns="http://www.w3.org/2000/svg"
-   xmlns:svg="http://www.w3.org/2000/svg">
-  <defs
-     id="defs10" />
-  <sodipodi:namedview
-     id="namedview8"
-     pagecolor="#ffffff"
-     bordercolor="#666666"
-     borderopacity="1.0"
-     inkscape:pageshadow="2"
-     inkscape:pageopacity="0.0"
-     inkscape:pagecheckerboard="0"
-     showgrid="false"
-     inkscape:zoom="3.5291667"
-     inkscape:cx="63.612751"
-     inkscape:cy="120"
-     inkscape:window-width="1550"
-     inkscape:window-height="1056"
-     inkscape:window-x="0"
-     inkscape:window-y="1"
-     inkscape:window-maximized="1"
-     inkscape:current-layer="svg6" />
-  <path
-     fill="none"
-     d="M0 0h24v24H0z"
-     id="path2" />
-  <path
-     d="M18 11V8l4 4-4 4v-3h-5v5h3l-4 4-4-4h3v-5H6v3l-4-4 4-4v3h5V6H8l4-4 4 4h-3v5z"
-     fill="rgba(255,255,255,1)"
-     id="path4"
-     style="fill:#000400;fill-opacity:1" />
-</svg>

+ 0 - 1
gnome/.local/share/gnome-shell/extensions/gjsosk@vishram1123.com/ui/icons/hicolor/scalable/actions/move.svg

@@ -1 +0,0 @@
-<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="240" height="240"><path fill="none" d="M0 0h24v24H0z"/><path d="M18 11V8l4 4-4 4v-3h-5v5h3l-4 4-4-4h3v-5H6v3l-4-4 4-4v3h5V6H8l4-4 4 4h-3v5z" fill="rgba(255,255,255,1)"/></svg>

部分文件因为文件数量过多而无法显示