Skip to content

Commit 05655b2

Browse files
[GTK] Add support for rendering slider ticks
https://bugs.webkit.org/show_bug.cgi?id=208132 Reviewed by Adrian Perez de Castro. .: Add a test case for sliders with ticks. * ManualTests/gtk/theme.html: Source/WebCore: * rendering/RenderThemeAdwaita.cpp: (WebCore::RenderThemeAdwaita::paintSliderTrack): (WebCore::RenderThemeAdwaita::sliderTickSize const): (WebCore::RenderThemeAdwaita::sliderTickOffsetFromTrackCenter const): git-svn-id: http://svn.webkit.org/repository/webkit/trunk@257300 268f45cc-cd09-0410-ab3c-d52691b4dbfc
1 parent 004b9e6 commit 05655b2

File tree

4 files changed

+40
-4
lines changed

4 files changed

+40
-4
lines changed

ChangeLog

+11
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,14 @@
1+
2020-02-25 Carlos Garcia Campos <[email protected]>
2+
3+
[GTK] Add support for rendering slider ticks
4+
https://bugs.webkit.org/show_bug.cgi?id=208132
5+
6+
Reviewed by Adrian Perez de Castro.
7+
8+
Add a test case for sliders with ticks.
9+
10+
* ManualTests/gtk/theme.html:
11+
112
2020-02-25 Carlos Garcia Campos <[email protected]>
213

314
[GTK] Stop using gtk foreign drawing API to style form controls

ManualTests/gtk/theme.html

+11
Original file line numberDiff line numberDiff line change
@@ -133,7 +133,18 @@ <h1>Range selector</h1>
133133
<td><input type="range" value="50" max="100" disabled></input></td>
134134
<td><input type="range" value="50" max="100" style="-webkit-appearance: slider-vertical" disabled></input></td>
135135
</tr>
136+
<tr>
137+
<td><input type="range" min="0" max="100" step="25" list="steplist"></input></td>
138+
<td><input type="range" min="0" max="100" step="25" list="steplist" style="-webkit-appearance: slider-vertical"></input></td>
139+
</tr>
136140
</table>
141+
<datalist id="steplist">
142+
<option>0</option>
143+
<option>25</option>
144+
<option>50</option>
145+
<option>75</option>
146+
<option>100</option>
147+
</datalist>
137148

138149
<h1>Iframe scrollbars</h1>
139150
<iframe width="200" height="100" scrolling="yes" src="data:text/html,

Source/WebCore/ChangeLog

+12
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,15 @@
1+
2020-02-25 Carlos Garcia Campos <[email protected]>
2+
3+
[GTK] Add support for rendering slider ticks
4+
https://bugs.webkit.org/show_bug.cgi?id=208132
5+
6+
Reviewed by Adrian Perez de Castro.
7+
8+
* rendering/RenderThemeAdwaita.cpp:
9+
(WebCore::RenderThemeAdwaita::paintSliderTrack):
10+
(WebCore::RenderThemeAdwaita::sliderTickSize const):
11+
(WebCore::RenderThemeAdwaita::sliderTickOffsetFromTrackCenter const):
12+
113
2020-02-25 Carlos Garcia Campos <[email protected]>
214

315
[GTK] Stop using gtk foreign drawing API to style form controls

Source/WebCore/rendering/RenderThemeAdwaita.cpp

+6-4
Original file line numberDiff line numberDiff line change
@@ -433,6 +433,10 @@ bool RenderThemeAdwaita::paintSliderTrack(const RenderObject& renderObject, cons
433433
graphicsContext.setFillColor(activeSelectionBackgroundColor({ }));
434434
graphicsContext.fillPath(path);
435435

436+
#if ENABLE(DATALIST_ELEMENT)
437+
paintSliderTicks(renderObject, paintInfo, rect);
438+
#endif
439+
436440
if (isFocused(renderObject))
437441
ThemeAdwaita::paintFocus(graphicsContext, fieldRect, sliderTrackFocusOffset);
438442

@@ -565,14 +569,12 @@ bool RenderThemeAdwaita::paintMediaVolumeSliderTrack(const RenderObject& renderO
565569
#if ENABLE(DATALIST_ELEMENT)
566570
IntSize RenderThemeAdwaita::sliderTickSize() const
567571
{
568-
// FIXME: We need to set this to the size of one tick mark.
569-
return IntSize(0, 0);
572+
return { 1, 7 };
570573
}
571574

572575
int RenderThemeAdwaita::sliderTickOffsetFromTrackCenter() const
573576
{
574-
// FIXME: We need to set this to the position of the tick marks.
575-
return 0;
577+
return -16;
576578
}
577579

578580
void RenderThemeAdwaita::adjustListButtonStyle(RenderStyle& style, const Element*) const

0 commit comments

Comments
 (0)