|
51 | 51 | } |
52 | 52 |
|
53 | 53 | ::-webkit-scrollbar-thumb { |
54 | | - box-shadow: none; |
| 54 | + background-color: transparent; |
55 | 55 | border: none; |
56 | 56 | } |
57 | 57 |
|
|
67 | 67 | :hover::-webkit-scrollbar-thumb, |
68 | 68 | :focus::-webkit-scrollbar-thumb { |
69 | 69 | border-radius: 999px; |
70 | | - box-shadow: 0 0 0 3px rgba(0, 0, 0, 0.6) inset; |
| 70 | + background-color: rgba(0, 0, 0, 0.6); |
| 71 | + background-clip: padding-box; |
71 | 72 | border: 2px solid transparent; |
72 | 73 | } |
73 | 74 |
|
|
96 | 97 | } |
97 | 98 | &::-webkit-scrollbar-thumb { |
98 | 99 | border-radius: 999px; |
99 | | - box-shadow: 0 0 0 5px rgba(0, 0, 0, 0.6) inset !important; |
| 100 | + background-color: rgba(0, 0, 0, 0.6) !important; |
| 101 | + background-clip: padding-box !important; |
100 | 102 | border: 2px solid transparent !important; |
101 | 103 | } |
102 | 104 |
|
103 | 105 | .dark & { |
104 | 106 | &::-webkit-scrollbar-thumb { |
105 | | - box-shadow: 0 0 0 5px rgba(255, 255, 255, 0.3) inset !important; |
| 107 | + background-color: rgba(255, 255, 255, 0.3) !important; |
106 | 108 | } |
107 | 109 | } |
108 | 110 | } |
|
116 | 118 | } |
117 | 119 | &::-webkit-scrollbar-thumb { |
118 | 120 | border-radius: 999px; |
119 | | - box-shadow: 0 0 0 5px rgba(0, 0, 0, 0.3) inset !important; |
| 121 | + background-color: rgba(0, 0, 0, 0.3) !important; |
| 122 | + background-clip: padding-box !important; |
120 | 123 | border: 2px solid transparent !important; |
121 | 124 | } |
122 | 125 |
|
|
125 | 128 | background-color: @dark-bc-menu-bg !important; |
126 | 129 | } |
127 | 130 | &::-webkit-scrollbar-thumb { |
128 | | - box-shadow: 0 0 0 5px rgba(255, 255, 255, 0.3) inset !important; |
| 131 | + background-color: rgba(255, 255, 255, 0.3) !important; |
129 | 132 | } |
130 | 133 | } |
131 | 134 | } |
132 | 135 |
|
133 | 136 | .platform-linux, .platform-mac { |
134 | 137 | // Note: when changing padding/margins, may need to adjust metrics in ScrollTrackMarkers.js |
| 138 | + // Exclude iframes: WKWebView (Tauri macOS) doesn't render custom ::-webkit-scrollbar on |
| 139 | + // iframe elements correctly, causing invisible scrollbars. Native scrollbar renders instead. |
135 | 140 |
|
136 | | - ::-webkit-scrollbar { |
| 141 | + :not(iframe)::-webkit-scrollbar { |
137 | 142 | width: 12px; |
138 | 143 | height: 12px; |
139 | 144 | } |
140 | 145 |
|
141 | | - ::-webkit-scrollbar-track:vertical { |
| 146 | + :not(iframe)::-webkit-scrollbar-track:vertical { |
142 | 147 | margin: 0 0 8px 0; |
143 | 148 | } |
144 | 149 |
|
145 | | - ::-webkit-scrollbar-track:horizontal { |
| 150 | + :not(iframe)::-webkit-scrollbar-track:horizontal { |
146 | 151 | margin: 0 8px 0 0; |
147 | 152 | } |
148 | 153 |
|
149 | | - ::-webkit-scrollbar-thumb { |
| 154 | + :not(iframe)::-webkit-scrollbar-thumb { |
150 | 155 | border-radius: 999px; |
151 | | - box-shadow: 0 0 0 5px @linux-scrollbar-thumb inset; |
| 156 | + background-color: @linux-scrollbar-thumb; |
| 157 | + background-clip: padding-box; |
152 | 158 | border: 2px solid transparent; |
153 | 159 | } |
154 | 160 |
|
155 | | - ::-webkit-scrollbar-corner { |
| 161 | + :not(iframe)::-webkit-scrollbar-corner { |
156 | 162 | background: none; |
157 | 163 | } |
158 | 164 |
|
159 | | - ::-webkit-scrollbar-thumb:window-inactive { |
160 | | - box-shadow: 0 0 0 5px @linux-scrollbar-thumb-inactive inset; |
| 165 | + :not(iframe)::-webkit-scrollbar-thumb:window-inactive { |
| 166 | + background-color: @linux-scrollbar-thumb-inactive; |
161 | 167 | } |
162 | 168 | } |
163 | 169 |
|
164 | 170 | .platform-win { |
165 | 171 | // Note: when changing padding/margins, may need to adjust metrics in ScrollTrackMarkers.js |
166 | 172 |
|
167 | | - ::-webkit-scrollbar { |
| 173 | + :not(iframe)::-webkit-scrollbar { |
168 | 174 | width: 12px; |
169 | 175 | height: 12px; |
170 | 176 | background-color: transparent; |
171 | 177 | } |
172 | 178 |
|
173 | | - ::-webkit-scrollbar:hover { |
| 179 | + :not(iframe)::-webkit-scrollbar:hover { |
174 | 180 | background-color: @win-scrollbar-track; |
175 | 181 | } |
176 | 182 |
|
177 | | - ::-webkit-scrollbar-thumb { |
178 | | - box-shadow: 0 0 0 12px @win-scrollbar-thumb inset; |
| 183 | + :not(iframe)::-webkit-scrollbar-thumb { |
| 184 | + background-color: @win-scrollbar-thumb; |
179 | 185 | } |
180 | 186 |
|
181 | | - .dragging ::-webkit-scrollbar-thumb, |
182 | | - ::-webkit-scrollbar-thumb:hover, |
183 | | - ::-webkit-scrollbar-thumb:focus { |
184 | | - box-shadow: 0 0 0 12px @win-scrollbar-thumb-hover inset; |
| 187 | + .dragging :not(iframe)::-webkit-scrollbar-thumb, |
| 188 | + :not(iframe)::-webkit-scrollbar-thumb:hover, |
| 189 | + :not(iframe)::-webkit-scrollbar-thumb:focus { |
| 190 | + background-color: @win-scrollbar-thumb-hover; |
185 | 191 | } |
186 | | - ::-webkit-scrollbar-thumb:active { |
187 | | - box-shadow: 0 0 0 12px @win-scrollbar-thumb-active inset; |
| 192 | + :not(iframe)::-webkit-scrollbar-thumb:active { |
| 193 | + background-color: @win-scrollbar-thumb-active; |
188 | 194 | } |
189 | 195 |
|
190 | | - ::-webkit-scrollbar-thumb:vertical { |
| 196 | + :not(iframe)::-webkit-scrollbar-thumb:vertical { |
191 | 197 | min-height: 20px; |
192 | 198 | } |
193 | | - ::-webkit-scrollbar-thumb:horizontal { |
| 199 | + :not(iframe)::-webkit-scrollbar-thumb:horizontal { |
194 | 200 | min-width: 20px; |
195 | 201 | } |
196 | 202 |
|
197 | | - ::-webkit-scrollbar-corner { |
| 203 | + :not(iframe)::-webkit-scrollbar-corner { |
198 | 204 | background: none; |
199 | 205 | } |
200 | 206 | } |
|
215 | 221 |
|
216 | 222 | // Note: when changing padding/margins, may need to adjust metrics in ScrollTrackMarkers.js |
217 | 223 |
|
218 | | - ::-webkit-scrollbar { |
| 224 | + :not(iframe)::-webkit-scrollbar { |
219 | 225 | background-color: transparent; |
220 | 226 | } |
221 | 227 |
|
222 | | - ::-webkit-scrollbar:hover { |
| 228 | + :not(iframe)::-webkit-scrollbar:hover { |
223 | 229 | background-color: rgba(15, 15, 15, .5); |
224 | 230 | } |
225 | 231 |
|
226 | | - ::-webkit-scrollbar-thumb { |
227 | | - box-shadow: 0 0 0 12px rgb(49, 49, 49) inset; |
| 232 | + :not(iframe)::-webkit-scrollbar-thumb { |
| 233 | + background-color: rgb(49, 49, 49); |
228 | 234 | } |
229 | | - ::-webkit-scrollbar-thumb:hover, |
230 | | - ::-webkit-scrollbar-thumb:focus { |
231 | | - box-shadow: 0 0 0 12px rgb(89, 89, 89) inset; |
| 235 | + :not(iframe)::-webkit-scrollbar-thumb:hover, |
| 236 | + :not(iframe)::-webkit-scrollbar-thumb:focus { |
| 237 | + background-color: rgb(89, 89, 89); |
232 | 238 | } |
233 | | - ::-webkit-scrollbar-thumb:active { |
234 | | - box-shadow: 0 0 0 12px rgb(169, 169, 169) inset; |
| 239 | + :not(iframe)::-webkit-scrollbar-thumb:active { |
| 240 | + background-color: rgb(169, 169, 169); |
235 | 241 | } |
236 | 242 | } |
237 | 243 |
|
|
241 | 247 | background-color: transparent; |
242 | 248 | } |
243 | 249 |
|
244 | | - ::-webkit-scrollbar-thumb { |
245 | | - box-shadow: 0 0 0 5px rgba(255, 255, 255, 0.24) inset; |
| 250 | + :not(iframe)::-webkit-scrollbar-thumb { |
| 251 | + background-color: rgba(255, 255, 255, 0.24); |
246 | 252 | } |
247 | 253 |
|
248 | | - ::-webkit-scrollbar-thumb:window-inactive { |
249 | | - box-shadow: 0 0 0 5px rgba(255, 255, 255, 0.12) inset; |
| 254 | + :not(iframe)::-webkit-scrollbar-thumb:window-inactive { |
| 255 | + background-color: rgba(255, 255, 255, 0.12); |
250 | 256 | } |
251 | 257 | } |
252 | 258 | } |
| 259 | + |
0 commit comments