LibWeb: Implement scrollbar painting

Introduces the rendering of scroll thumbs in vertical and horizontal
directions. Currently, the thumbs are purely graphical elements that
do not respond to mouse events. Nevertheless, this is beneficial as it
makes it easier to identify elements that should respond to scrolling
events.

Painting of scrollbars uncovers numerous bugs in the calculation of
scrollable overflow rectangles highlighting all the places where
elements are made scrollable whey they shouldn't be. Positively, this
issue might motivate us to pay more attention to this problem to
eliminate unnecessary scrollbars.

Currently, the scrollbar style is uniform across all platforms: a
semi-transparent gray rectangle with rounded corners.

Also here we add `scrollbar-width: none` to all existing scrolling
ref-tests, so they keep working with this change.
This commit is contained in:
Aliaksandr Kalenik 2024-02-15 21:12:50 +01:00 committed by Tim Flynn
parent 8d9e20cb03
commit b821f7b283
Notes: sideshowbarker 2024-07-16 21:45:42 +09:00
16 changed files with 104 additions and 0 deletions

View file

@ -1,4 +1,8 @@
<style>
* {
scrollbar-width: none;
}
#container {
width: 300px;
height: 500px;