schoolbox web extension :)
0
fork

Configure Feed

Select the types of activity you want to include in your feed.

feat: option to set current icon as tab favicon (#239)

* close #178

authored by

willow and committed by
GitHub
3b84ae80 0b690394

+367 -12
+163
public/schooltape-ctp.svg
··· 1 + <?xml version="1.0" encoding="UTF-8" ?> 2 + <svg version="1.1" width="16" height="16" xmlns="http://www.w3.org/2000/svg" shape-rendering="crispEdges"> 3 + <rect x="5" y="2" width="1" height="1" fill="#24273A" /> 4 + <rect x="6" y="2" width="1" height="1" fill="#24273A" /> 5 + <rect x="7" y="2" width="1" height="1" fill="#24273A" /> 6 + <rect x="8" y="2" width="1" height="1" fill="#24273A" /> 7 + <rect x="9" y="2" width="1" height="1" fill="#24273A" /> 8 + <rect x="10" y="2" width="1" height="1" fill="#24273A" /> 9 + <rect x="2" y="3" width="1" height="1" fill="#24273A" /> 10 + <rect x="3" y="3" width="1" height="1" fill="#24273A" /> 11 + <rect x="4" y="3" width="1" height="1" fill="#24273A" /> 12 + <rect x="5" y="3" width="1" height="1" fill="#EE99A0" /> 13 + <rect x="6" y="3" width="1" height="1" fill="#EE99A0" /> 14 + <rect x="7" y="3" width="1" height="1" fill="#F5A97F" /> 15 + <rect x="8" y="3" width="1" height="1" fill="#F5A97F" /> 16 + <rect x="9" y="3" width="1" height="1" fill="#EED49F" /> 17 + <rect x="10" y="3" width="1" height="1" fill="#EED49F" /> 18 + <rect x="11" y="3" width="1" height="1" fill="#24273A" /> 19 + <rect x="12" y="3" width="1" height="1" fill="#24273A" /> 20 + <rect x="13" y="3" width="1" height="1" fill="#24273A" /> 21 + <rect x="1" y="4" width="1" height="1" fill="#24273A" /> 22 + <rect x="2" y="4" width="1" height="1" fill="#EE99A0" /> 23 + <rect x="3" y="4" width="1" height="1" fill="#EE99A0" /> 24 + <rect x="4" y="4" width="1" height="1" fill="#EE99A0" /> 25 + <rect x="5" y="4" width="1" height="1" fill="#EE99A0" /> 26 + <rect x="6" y="4" width="1" height="1" fill="#F5A97F" /> 27 + <rect x="7" y="4" width="1" height="1" fill="#F5A97F" /> 28 + <rect x="8" y="4" width="1" height="1" fill="#EED49F" /> 29 + <rect x="9" y="4" width="1" height="1" fill="#EED49F" /> 30 + <rect x="10" y="4" width="1" height="1" fill="#A6DA95" /> 31 + <rect x="11" y="4" width="1" height="1" fill="#A6DA95" /> 32 + <rect x="12" y="4" width="1" height="1" fill="#7DC4E4" /> 33 + <rect x="13" y="4" width="1" height="1" fill="#7DC4E4" /> 34 + <rect x="14" y="4" width="1" height="1" fill="#24273A" /> 35 + <rect x="0" y="5" width="1" height="1" fill="#24273A" /> 36 + <rect x="1" y="5" width="1" height="1" fill="#EE99A0" /> 37 + <rect x="2" y="5" width="1" height="1" fill="#EE99A0" /> 38 + <rect x="3" y="5" width="1" height="1" fill="#EE99A0" /> 39 + <rect x="4" y="5" width="1" height="1" fill="#EE99A0" /> 40 + <rect x="5" y="5" width="1" height="1" fill="#24273A" /> 41 + <rect x="6" y="5" width="1" height="1" fill="#24273A" /> 42 + <rect x="7" y="5" width="1" height="1" fill="#24273A" /> 43 + <rect x="8" y="5" width="1" height="1" fill="#24273A" /> 44 + <rect x="9" y="5" width="1" height="1" fill="#24273A" /> 45 + <rect x="10" y="5" width="1" height="1" fill="#24273A" /> 46 + <rect x="11" y="5" width="1" height="1" fill="#7DC4E4" /> 47 + <rect x="12" y="5" width="1" height="1" fill="#7DC4E4" /> 48 + <rect x="13" y="5" width="1" height="1" fill="#C6A0F6" /> 49 + <rect x="14" y="5" width="1" height="1" fill="#C6A0F6" /> 50 + <rect x="15" y="5" width="1" height="1" fill="#24273A" /> 51 + <rect x="0" y="6" width="1" height="1" fill="#24273A" /> 52 + <rect x="1" y="6" width="1" height="1" fill="#EE99A0" /> 53 + <rect x="2" y="6" width="1" height="1" fill="#EE99A0" /> 54 + <rect x="3" y="6" width="1" height="1" fill="#24273A" /> 55 + <rect x="4" y="6" width="1" height="1" fill="#24273A" /> 56 + <rect x="5" y="6" width="1" height="1" fill="#24273A" /> 57 + <rect x="6" y="6" width="1" height="1" fill="#24273A" /> 58 + <rect x="7" y="6" width="1" height="1" fill="#24273A" /> 59 + <rect x="8" y="6" width="1" height="1" fill="#24273A" /> 60 + <rect x="9" y="6" width="1" height="1" fill="#24273A" /> 61 + <rect x="10" y="6" width="1" height="1" fill="#24273A" /> 62 + <rect x="11" y="6" width="1" height="1" fill="#24273A" /> 63 + <rect x="12" y="6" width="1" height="1" fill="#24273A" /> 64 + <rect x="13" y="6" width="1" height="1" fill="#C6A0F6" /> 65 + <rect x="14" y="6" width="1" height="1" fill="#C6A0F6" /> 66 + <rect x="15" y="6" width="1" height="1" fill="#24273A" /> 67 + <rect x="0" y="7" width="1" height="1" fill="#24273A" /> 68 + <rect x="1" y="7" width="1" height="1" fill="#EE99A0" /> 69 + <rect x="2" y="7" width="1" height="1" fill="#EE99A0" /> 70 + <rect x="3" y="7" width="1" height="1" fill="#F5A97F" /> 71 + <rect x="4" y="7" width="1" height="1" fill="#F5A97F" /> 72 + <rect x="5" y="7" width="1" height="1" fill="#24273A" /> 73 + <rect x="6" y="7" width="1" height="1" fill="#24273A" /> 74 + <rect x="7" y="7" width="1" height="1" fill="#24273A" /> 75 + <rect x="8" y="7" width="1" height="1" fill="#24273A" /> 76 + <rect x="9" y="7" width="1" height="1" fill="#24273A" /> 77 + <rect x="10" y="7" width="1" height="1" fill="#24273A" /> 78 + <rect x="11" y="7" width="1" height="1" fill="#C6A0F6" /> 79 + <rect x="12" y="7" width="1" height="1" fill="#C6A0F6" /> 80 + <rect x="13" y="7" width="1" height="1" fill="#C6A0F6" /> 81 + <rect x="14" y="7" width="1" height="1" fill="#C6A0F6" /> 82 + <rect x="15" y="7" width="1" height="1" fill="#24273A" /> 83 + <rect x="0" y="8" width="1" height="1" fill="#24273A" /> 84 + <rect x="1" y="8" width="1" height="1" fill="#24273A" /> 85 + <rect x="2" y="8" width="1" height="1" fill="#F5A97F" /> 86 + <rect x="3" y="8" width="1" height="1" fill="#F5A97F" /> 87 + <rect x="4" y="8" width="1" height="1" fill="#EED49F" /> 88 + <rect x="5" y="8" width="1" height="1" fill="#EED49F" /> 89 + <rect x="6" y="8" width="1" height="1" fill="#A6DA95" /> 90 + <rect x="7" y="8" width="1" height="1" fill="#A6DA95" /> 91 + <rect x="8" y="8" width="1" height="1" fill="#7DC4E4" /> 92 + <rect x="9" y="8" width="1" height="1" fill="#7DC4E4" /> 93 + <rect x="10" y="8" width="1" height="1" fill="#C6A0F6" /> 94 + <rect x="11" y="8" width="1" height="1" fill="#C6A0F6" /> 95 + <rect x="12" y="8" width="1" height="1" fill="#C6A0F6" /> 96 + <rect x="13" y="8" width="1" height="1" fill="#C6A0F6" /> 97 + <rect x="14" y="8" width="1" height="1" fill="#24273A" /> 98 + <rect x="15" y="8" width="1" height="1" fill="#24273A" /> 99 + <rect x="0" y="9" width="1" height="1" fill="#24273A" /> 100 + <rect x="1" y="9" width="1" height="1" fill="#91D7E3" /> 101 + <rect x="2" y="9" width="1" height="1" fill="#24273A" /> 102 + <rect x="3" y="9" width="1" height="1" fill="#24273A" /> 103 + <rect x="4" y="9" width="1" height="1" fill="#24273A" /> 104 + <rect x="5" y="9" width="1" height="1" fill="#A6DA95" /> 105 + <rect x="6" y="9" width="1" height="1" fill="#A6DA95" /> 106 + <rect x="7" y="9" width="1" height="1" fill="#7DC4E4" /> 107 + <rect x="8" y="9" width="1" height="1" fill="#7DC4E4" /> 108 + <rect x="9" y="9" width="1" height="1" fill="#C6A0F6" /> 109 + <rect x="10" y="9" width="1" height="1" fill="#C6A0F6" /> 110 + <rect x="11" y="9" width="1" height="1" fill="#24273A" /> 111 + <rect x="12" y="9" width="1" height="1" fill="#24273A" /> 112 + <rect x="13" y="9" width="1" height="1" fill="#24273A" /> 113 + <rect x="14" y="9" width="1" height="1" fill="#7DC4E4" /> 114 + <rect x="15" y="9" width="1" height="1" fill="#24273A" /> 115 + <rect x="0" y="10" width="1" height="1" fill="#24273A" /> 116 + <rect x="1" y="10" width="1" height="1" fill="#91D7E3" /> 117 + <rect x="2" y="10" width="1" height="1" fill="#91D7E3" /> 118 + <rect x="3" y="10" width="1" height="1" fill="#91D7E3" /> 119 + <rect x="4" y="10" width="1" height="1" fill="#91D7E3" /> 120 + <rect x="5" y="10" width="1" height="1" fill="#24273A" /> 121 + <rect x="6" y="10" width="1" height="1" fill="#24273A" /> 122 + <rect x="7" y="10" width="1" height="1" fill="#24273A" /> 123 + <rect x="8" y="10" width="1" height="1" fill="#24273A" /> 124 + <rect x="9" y="10" width="1" height="1" fill="#24273A" /> 125 + <rect x="10" y="10" width="1" height="1" fill="#24273A" /> 126 + <rect x="11" y="10" width="1" height="1" fill="#7DC4E4" /> 127 + <rect x="12" y="10" width="1" height="1" fill="#7DC4E4" /> 128 + <rect x="13" y="10" width="1" height="1" fill="#7DC4E4" /> 129 + <rect x="14" y="10" width="1" height="1" fill="#7DC4E4" /> 130 + <rect x="15" y="10" width="1" height="1" fill="#24273A" /> 131 + <rect x="1" y="11" width="1" height="1" fill="#24273A" /> 132 + <rect x="2" y="11" width="1" height="1" fill="#91D7E3" /> 133 + <rect x="3" y="11" width="1" height="1" fill="#91D7E3" /> 134 + <rect x="4" y="11" width="1" height="1" fill="#91D7E3" /> 135 + <rect x="5" y="11" width="1" height="1" fill="#91D7E3" /> 136 + <rect x="6" y="11" width="1" height="1" fill="#91D7E3" /> 137 + <rect x="7" y="11" width="1" height="1" fill="#91D7E3" /> 138 + <rect x="8" y="11" width="1" height="1" fill="#7DC4E4" /> 139 + <rect x="9" y="11" width="1" height="1" fill="#7DC4E4" /> 140 + <rect x="10" y="11" width="1" height="1" fill="#7DC4E4" /> 141 + <rect x="11" y="11" width="1" height="1" fill="#7DC4E4" /> 142 + <rect x="12" y="11" width="1" height="1" fill="#7DC4E4" /> 143 + <rect x="13" y="11" width="1" height="1" fill="#7DC4E4" /> 144 + <rect x="14" y="11" width="1" height="1" fill="#24273A" /> 145 + <rect x="2" y="12" width="1" height="1" fill="#24273A" /> 146 + <rect x="3" y="12" width="1" height="1" fill="#24273A" /> 147 + <rect x="4" y="12" width="1" height="1" fill="#24273A" /> 148 + <rect x="5" y="12" width="1" height="1" fill="#91D7E3" /> 149 + <rect x="6" y="12" width="1" height="1" fill="#91D7E3" /> 150 + <rect x="7" y="12" width="1" height="1" fill="#91D7E3" /> 151 + <rect x="8" y="12" width="1" height="1" fill="#7DC4E4" /> 152 + <rect x="9" y="12" width="1" height="1" fill="#7DC4E4" /> 153 + <rect x="10" y="12" width="1" height="1" fill="#7DC4E4" /> 154 + <rect x="11" y="12" width="1" height="1" fill="#24273A" /> 155 + <rect x="12" y="12" width="1" height="1" fill="#24273A" /> 156 + <rect x="13" y="12" width="1" height="1" fill="#24273A" /> 157 + <rect x="5" y="13" width="1" height="1" fill="#24273A" /> 158 + <rect x="6" y="13" width="1" height="1" fill="#24273A" /> 159 + <rect x="7" y="13" width="1" height="1" fill="#24273A" /> 160 + <rect x="8" y="13" width="1" height="1" fill="#24273A" /> 161 + <rect x="9" y="13" width="1" height="1" fill="#24273A" /> 162 + <rect x="10" y="13" width="1" height="1" fill="#24273A" /> 163 + </svg>
+163
public/schooltape.svg
··· 1 + <?xml version="1.0" encoding="UTF-8" ?> 2 + <svg version="1.1" width="16" height="16" xmlns="http://www.w3.org/2000/svg" shape-rendering="crispEdges"> 3 + <rect x="5" y="2" width="1" height="1" fill="#051D29" /> 4 + <rect x="6" y="2" width="1" height="1" fill="#051D29" /> 5 + <rect x="7" y="2" width="1" height="1" fill="#051D29" /> 6 + <rect x="8" y="2" width="1" height="1" fill="#051D29" /> 7 + <rect x="9" y="2" width="1" height="1" fill="#051D29" /> 8 + <rect x="10" y="2" width="1" height="1" fill="#051D29" /> 9 + <rect x="2" y="3" width="1" height="1" fill="#051D29" /> 10 + <rect x="3" y="3" width="1" height="1" fill="#051D29" /> 11 + <rect x="4" y="3" width="1" height="1" fill="#051D29" /> 12 + <rect x="5" y="3" width="1" height="1" fill="#7FD4FA" /> 13 + <rect x="6" y="3" width="1" height="1" fill="#7FD4FA" /> 14 + <rect x="7" y="3" width="1" height="1" fill="#7FD4FA" /> 15 + <rect x="8" y="3" width="1" height="1" fill="#7FD4FA" /> 16 + <rect x="9" y="3" width="1" height="1" fill="#7FD4FA" /> 17 + <rect x="10" y="3" width="1" height="1" fill="#7FD4FA" /> 18 + <rect x="11" y="3" width="1" height="1" fill="#051D29" /> 19 + <rect x="12" y="3" width="1" height="1" fill="#051D29" /> 20 + <rect x="13" y="3" width="1" height="1" fill="#051D29" /> 21 + <rect x="1" y="4" width="1" height="1" fill="#051D29" /> 22 + <rect x="2" y="4" width="1" height="1" fill="#7FD4FA" /> 23 + <rect x="3" y="4" width="1" height="1" fill="#7FD4FA" /> 24 + <rect x="4" y="4" width="1" height="1" fill="#7FD4FA" /> 25 + <rect x="5" y="4" width="1" height="1" fill="#7FD4FA" /> 26 + <rect x="6" y="4" width="1" height="1" fill="#7FD4FA" /> 27 + <rect x="7" y="4" width="1" height="1" fill="#7FD4FA" /> 28 + <rect x="8" y="4" width="1" height="1" fill="#7FD4FA" /> 29 + <rect x="9" y="4" width="1" height="1" fill="#7FD4FA" /> 30 + <rect x="10" y="4" width="1" height="1" fill="#7FD4FA" /> 31 + <rect x="11" y="4" width="1" height="1" fill="#7FD4FA" /> 32 + <rect x="12" y="4" width="1" height="1" fill="#7FD4FA" /> 33 + <rect x="13" y="4" width="1" height="1" fill="#7FD4FA" /> 34 + <rect x="14" y="4" width="1" height="1" fill="#051D29" /> 35 + <rect x="0" y="5" width="1" height="1" fill="#051D29" /> 36 + <rect x="1" y="5" width="1" height="1" fill="#7FD4FA" /> 37 + <rect x="2" y="5" width="1" height="1" fill="#7FD4FA" /> 38 + <rect x="3" y="5" width="1" height="1" fill="#7FD4FA" /> 39 + <rect x="4" y="5" width="1" height="1" fill="#7FD4FA" /> 40 + <rect x="5" y="5" width="1" height="1" fill="#1EA2E4" /> 41 + <rect x="6" y="5" width="1" height="1" fill="#1EA2E4" /> 42 + <rect x="7" y="5" width="1" height="1" fill="#1EA2E4" /> 43 + <rect x="8" y="5" width="1" height="1" fill="#1EA2E4" /> 44 + <rect x="9" y="5" width="1" height="1" fill="#1EA2E4" /> 45 + <rect x="10" y="5" width="1" height="1" fill="#1EA2E4" /> 46 + <rect x="11" y="5" width="1" height="1" fill="#7FD4FA" /> 47 + <rect x="12" y="5" width="1" height="1" fill="#7FD4FA" /> 48 + <rect x="13" y="5" width="1" height="1" fill="#7FD4FA" /> 49 + <rect x="14" y="5" width="1" height="1" fill="#7FD4FA" /> 50 + <rect x="15" y="5" width="1" height="1" fill="#051D29" /> 51 + <rect x="0" y="6" width="1" height="1" fill="#051D29" /> 52 + <rect x="1" y="6" width="1" height="1" fill="#7FD4FA" /> 53 + <rect x="2" y="6" width="1" height="1" fill="#7FD4FA" /> 54 + <rect x="3" y="6" width="1" height="1" fill="#1EA2E4" /> 55 + <rect x="4" y="6" width="1" height="1" fill="#1EA2E4" /> 56 + <rect x="5" y="6" width="1" height="1" fill="#1EA2E4" /> 57 + <rect x="6" y="6" width="1" height="1" fill="#1EA2E4" /> 58 + <rect x="7" y="6" width="1" height="1" fill="#1EA2E4" /> 59 + <rect x="8" y="6" width="1" height="1" fill="#1EA2E4" /> 60 + <rect x="9" y="6" width="1" height="1" fill="#1EA2E4" /> 61 + <rect x="10" y="6" width="1" height="1" fill="#1EA2E4" /> 62 + <rect x="11" y="6" width="1" height="1" fill="#1EA2E4" /> 63 + <rect x="12" y="6" width="1" height="1" fill="#1EA2E4" /> 64 + <rect x="13" y="6" width="1" height="1" fill="#7FD4FA" /> 65 + <rect x="14" y="6" width="1" height="1" fill="#7FD4FA" /> 66 + <rect x="15" y="6" width="1" height="1" fill="#051D29" /> 67 + <rect x="0" y="7" width="1" height="1" fill="#051D29" /> 68 + <rect x="1" y="7" width="1" height="1" fill="#7FD4FA" /> 69 + <rect x="2" y="7" width="1" height="1" fill="#7FD4FA" /> 70 + <rect x="3" y="7" width="1" height="1" fill="#7FD4FA" /> 71 + <rect x="4" y="7" width="1" height="1" fill="#7FD4FA" /> 72 + <rect x="5" y="7" width="1" height="1" fill="#1EA2E4" /> 73 + <rect x="6" y="7" width="1" height="1" fill="#1EA2E4" /> 74 + <rect x="7" y="7" width="1" height="1" fill="#1EA2E4" /> 75 + <rect x="8" y="7" width="1" height="1" fill="#1EA2E4" /> 76 + <rect x="9" y="7" width="1" height="1" fill="#1EA2E4" /> 77 + <rect x="10" y="7" width="1" height="1" fill="#1EA2E4" /> 78 + <rect x="11" y="7" width="1" height="1" fill="#7FD4FA" /> 79 + <rect x="12" y="7" width="1" height="1" fill="#7FD4FA" /> 80 + <rect x="13" y="7" width="1" height="1" fill="#7FD4FA" /> 81 + <rect x="14" y="7" width="1" height="1" fill="#7FD4FA" /> 82 + <rect x="15" y="7" width="1" height="1" fill="#051D29" /> 83 + <rect x="0" y="8" width="1" height="1" fill="#051D29" /> 84 + <rect x="1" y="8" width="1" height="1" fill="#051D29" /> 85 + <rect x="2" y="8" width="1" height="1" fill="#7FD4FA" /> 86 + <rect x="3" y="8" width="1" height="1" fill="#7FD4FA" /> 87 + <rect x="4" y="8" width="1" height="1" fill="#7FD4FA" /> 88 + <rect x="5" y="8" width="1" height="1" fill="#7FD4FA" /> 89 + <rect x="6" y="8" width="1" height="1" fill="#7FD4FA" /> 90 + <rect x="7" y="8" width="1" height="1" fill="#7FD4FA" /> 91 + <rect x="8" y="8" width="1" height="1" fill="#7FD4FA" /> 92 + <rect x="9" y="8" width="1" height="1" fill="#7FD4FA" /> 93 + <rect x="10" y="8" width="1" height="1" fill="#7FD4FA" /> 94 + <rect x="11" y="8" width="1" height="1" fill="#7FD4FA" /> 95 + <rect x="12" y="8" width="1" height="1" fill="#7FD4FA" /> 96 + <rect x="13" y="8" width="1" height="1" fill="#7FD4FA" /> 97 + <rect x="14" y="8" width="1" height="1" fill="#051D29" /> 98 + <rect x="15" y="8" width="1" height="1" fill="#051D29" /> 99 + <rect x="0" y="9" width="1" height="1" fill="#051D29" /> 100 + <rect x="1" y="9" width="1" height="1" fill="#2EB8ED" /> 101 + <rect x="2" y="9" width="1" height="1" fill="#051D29" /> 102 + <rect x="3" y="9" width="1" height="1" fill="#051D29" /> 103 + <rect x="4" y="9" width="1" height="1" fill="#051D29" /> 104 + <rect x="5" y="9" width="1" height="1" fill="#7FD4FA" /> 105 + <rect x="6" y="9" width="1" height="1" fill="#7FD4FA" /> 106 + <rect x="7" y="9" width="1" height="1" fill="#7FD4FA" /> 107 + <rect x="8" y="9" width="1" height="1" fill="#7FD4FA" /> 108 + <rect x="9" y="9" width="1" height="1" fill="#7FD4FA" /> 109 + <rect x="10" y="9" width="1" height="1" fill="#7FD4FA" /> 110 + <rect x="11" y="9" width="1" height="1" fill="#051D29" /> 111 + <rect x="12" y="9" width="1" height="1" fill="#051D29" /> 112 + <rect x="13" y="9" width="1" height="1" fill="#051D29" /> 113 + <rect x="14" y="9" width="1" height="1" fill="#1EA2E4" /> 114 + <rect x="15" y="9" width="1" height="1" fill="#051D29" /> 115 + <rect x="0" y="10" width="1" height="1" fill="#051D29" /> 116 + <rect x="1" y="10" width="1" height="1" fill="#2EB8ED" /> 117 + <rect x="2" y="10" width="1" height="1" fill="#2EB8ED" /> 118 + <rect x="3" y="10" width="1" height="1" fill="#2EB8ED" /> 119 + <rect x="4" y="10" width="1" height="1" fill="#2EB8ED" /> 120 + <rect x="5" y="10" width="1" height="1" fill="#051D29" /> 121 + <rect x="6" y="10" width="1" height="1" fill="#051D29" /> 122 + <rect x="7" y="10" width="1" height="1" fill="#051D29" /> 123 + <rect x="8" y="10" width="1" height="1" fill="#051D29" /> 124 + <rect x="9" y="10" width="1" height="1" fill="#051D29" /> 125 + <rect x="10" y="10" width="1" height="1" fill="#051D29" /> 126 + <rect x="11" y="10" width="1" height="1" fill="#1EA2E4" /> 127 + <rect x="12" y="10" width="1" height="1" fill="#1EA2E4" /> 128 + <rect x="13" y="10" width="1" height="1" fill="#1EA2E4" /> 129 + <rect x="14" y="10" width="1" height="1" fill="#1EA2E4" /> 130 + <rect x="15" y="10" width="1" height="1" fill="#051D29" /> 131 + <rect x="1" y="11" width="1" height="1" fill="#051D29" /> 132 + <rect x="2" y="11" width="1" height="1" fill="#2EB8ED" /> 133 + <rect x="3" y="11" width="1" height="1" fill="#2EB8ED" /> 134 + <rect x="4" y="11" width="1" height="1" fill="#2EB8ED" /> 135 + <rect x="5" y="11" width="1" height="1" fill="#2EB8ED" /> 136 + <rect x="6" y="11" width="1" height="1" fill="#2EB8ED" /> 137 + <rect x="7" y="11" width="1" height="1" fill="#2EB8ED" /> 138 + <rect x="8" y="11" width="1" height="1" fill="#1EA2E4" /> 139 + <rect x="9" y="11" width="1" height="1" fill="#1EA2E4" /> 140 + <rect x="10" y="11" width="1" height="1" fill="#1EA2E4" /> 141 + <rect x="11" y="11" width="1" height="1" fill="#1EA2E4" /> 142 + <rect x="12" y="11" width="1" height="1" fill="#1EA2E4" /> 143 + <rect x="13" y="11" width="1" height="1" fill="#1EA2E4" /> 144 + <rect x="14" y="11" width="1" height="1" fill="#051D29" /> 145 + <rect x="2" y="12" width="1" height="1" fill="#051D29" /> 146 + <rect x="3" y="12" width="1" height="1" fill="#051D29" /> 147 + <rect x="4" y="12" width="1" height="1" fill="#051D29" /> 148 + <rect x="5" y="12" width="1" height="1" fill="#2EB8ED" /> 149 + <rect x="6" y="12" width="1" height="1" fill="#2EB8ED" /> 150 + <rect x="7" y="12" width="1" height="1" fill="#2EB8ED" /> 151 + <rect x="8" y="12" width="1" height="1" fill="#1EA2E4" /> 152 + <rect x="9" y="12" width="1" height="1" fill="#1EA2E4" /> 153 + <rect x="10" y="12" width="1" height="1" fill="#1EA2E4" /> 154 + <rect x="11" y="12" width="1" height="1" fill="#051D29" /> 155 + <rect x="12" y="12" width="1" height="1" fill="#051D29" /> 156 + <rect x="13" y="12" width="1" height="1" fill="#051D29" /> 157 + <rect x="5" y="13" width="1" height="1" fill="#051D29" /> 158 + <rect x="6" y="13" width="1" height="1" fill="#051D29" /> 159 + <rect x="7" y="13" width="1" height="1" fill="#051D29" /> 160 + <rect x="8" y="13" width="1" height="1" fill="#051D29" /> 161 + <rect x="9" y="13" width="1" height="1" fill="#051D29" /> 162 + <rect x="10" y="13" width="1" height="1" fill="#051D29" /> 163 + </svg>
+21 -7
src/entrypoints/popup/routes/Themes.svelte
··· 2 2 import Title from "../components/Title.svelte"; 3 3 import Modal from "../components/Modal.svelte"; 4 4 import IconBtn from "../components/inputs/IconBtn.svelte"; 5 + import Toggle from "../components/inputs/Toggle.svelte"; 5 6 import { Layers3 } from "lucide-svelte"; 6 7 import { globalSettings } from "#imports"; 7 8 ··· 43 44 globalSettings.set({ themeLogo: logoId as LogoId }); 44 45 }} 45 46 class:highlight={globalSettings.state.themeLogo === logoId} 46 - class="border border-(--ctp-accent) p-2 flex flex-col items-center justify-between rounded-lg"> 47 + class="border border-(--ctp-accent) p-2 flex flex-col rounded-lg"> 47 48 <span>{logo.name}</span> 48 49 {#if logo.disable !== true} 49 - {#if logo.adaptive} 50 - <!-- eslint-disable-next-line @typescript-eslint/no-explicit-any --> 51 - <span class="logo-picker" style="--icon: url({browser.runtime.getURL(logo.url as any)})"></span> 52 - {:else} 53 - <img src={logo.url} alt="Logo" class="h-16 mt-2" /> 54 - {/if} 50 + <div class="flex items-center justify-center h-full"> 51 + {#if logo.adaptive} 52 + <!-- eslint-disable-next-line @typescript-eslint/no-explicit-any --> 53 + <span class="logo-picker" style="--icon: url({browser.runtime.getURL(logo.url as any)})"></span> 54 + {:else} 55 + <img src={logo.url} alt="Logo" class="w-16 mt-2" /> 56 + {/if} 57 + </div> 55 58 {/if} 56 59 </button> 57 60 {/each} 61 + </div> 62 + 63 + <div class="mt-4"> 64 + <Toggle 65 + update={(toggled) => { 66 + globalSettings.set({ themeLogoAsFavicon: toggled }); 67 + }} 68 + checked={globalSettings.state.themeLogoAsFavicon} 69 + id="setAsFavicon" 70 + size="small" 71 + text="Set icon as tab favicon" /> 58 72 </div> 59 73 </Modal> 60 74
+1 -1
src/entrypoints/start.content.ts
··· 17 17 } 18 18 19 19 // inject logo 20 - injectLogo(LOGO_INFO[settings.themeLogo as LogoId]); 20 + injectLogo(LOGO_INFO[settings.themeLogo as LogoId], settings.themeLogoAsFavicon); 21 21 22 22 // inject snippets 23 23 if (settings.snippets) {
+2 -2
src/utils/constants.ts
··· 19 19 }, 20 20 schooltape: { 21 21 name: "Schooltape", 22 - url: "https://schooltape.github.io/schooltape.svg", 22 + url: "schooltape.svg", 23 23 }, 24 24 "schooltape-rainbow": { 25 25 name: "ST Rainbow", 26 - url: "https://schooltape.github.io/schooltape-ctp.svg", 26 + url: "schooltape-ctp.svg", 27 27 }, 28 28 "schooltape-legacy": { 29 29 name: "ST Legacy",
+1
src/utils/storage.ts
··· 14 14 themeFlavour: "mocha", 15 15 themeAccent: "mauve", 16 16 themeLogo: "schooltape-rainbow", 17 + themeLogoAsFavicon: false, 17 18 18 19 userSnippets: {}, 19 20 },
+1
src/utils/types.ts
··· 8 8 themeFlavour: string; 9 9 themeAccent: string; 10 10 themeLogo: LogoId; 11 + themeLogoAsFavicon: boolean; 11 12 12 13 userSnippets: Record<string, UserSnippet>; 13 14 }
+15 -2
src/utils/utils.ts
··· 24 24 injectStyles(styleText); 25 25 } 26 26 27 - export function injectLogo(logo: LogoInfo) { 27 + export function injectLogo(logo: LogoInfo, setAsFavicon: boolean) { 28 28 let url = logo.url; 29 29 if (!url.startsWith("http")) { 30 + // eslint-disable-next-line @typescript-eslint/no-explicit-any 30 31 url = browser.runtime.getURL(url as any); 31 32 } 32 33 logger.info(`[content-utils] Injecting Logo: ${logo.name}`); ··· 51 52 }); 52 53 }); 53 54 } else { 54 - style.textContent = `a.logo > img { content: url("${url}"); max-width: 30%; }`; 55 + style.textContent = `a.logo { padding-bottom: 1rem !important; } a.logo > img { content: url("${url}"); max-width: 30%; width: 100px; }`; 55 56 } 56 57 document.head.appendChild(style); 58 + 59 + // inject favicon 60 + if (setAsFavicon) { 61 + let favicon = document.querySelector("link[rel~='icon']") as HTMLLinkElement | null; 62 + if (!favicon) { 63 + favicon = document.createElement("link") as HTMLLinkElement; 64 + favicon.rel = "icon"; 65 + document.head.appendChild(favicon); 66 + } 67 + favicon.href = url; 68 + } 57 69 } 58 70 71 + // eslint-disable-next-line @typescript-eslint/no-explicit-any 59 72 export function injectStylesheet(url: any) { 60 73 logger.info(`[content-utils] Injecting stylesheet: ${url}`); 61 74 const link = document.createElement("link");