Bug 1461203 - use GetScrollbarMetrics() to access scrollbar metrics, r?jhorak
MozReview-Commit-ID: 3gnFNfxQJZi
--- a/widget/gtk/gtk3drawing.cpp
+++ b/widget/gtk/gtk3drawing.cpp
@@ -883,26 +883,24 @@ moz_gtk_scrollbar_button_paint(cairo_t *
// box occupies the full width of the "contents" gadget content box.
InsetByMargin(&rect, style);
} else {
// Scrollbar button has to be inset by trough_border because its DOM
// element is filling width of vertical scrollbar's track (or height
// in case of horizontal scrollbars).
GtkOrientation orientation = flags & MOZ_GTK_STEPPER_VERTICAL ?
GTK_ORIENTATION_VERTICAL : GTK_ORIENTATION_HORIZONTAL;
- const auto& metrics = sScrollbarMetrics[orientation];
- if (!metrics.initialized) {
- NS_WARNING("Didn't measure before drawing?");
- }
+
+ const ScrollbarGTKMetrics* metrics = GetScrollbarMetrics(orientation);
if (flags & MOZ_GTK_STEPPER_VERTICAL) {
- rect.x += metrics.border.track.left;
- rect.width = metrics.size.thumb.width;
+ rect.x += metrics->border.track.left;
+ rect.width = metrics->size.thumb.width;
} else {
- rect.y += metrics.border.track.top;
- rect.height = metrics.size.thumb.height;
+ rect.y += metrics->border.track.top;
+ rect.height = metrics->size.thumb.height;
}
}
gtk_render_background(style, cr, rect.x, rect.y, rect.width, rect.height);
gtk_render_frame(style, cr, rect.x, rect.y, rect.width, rect.height);
arrow_rect.width = rect.width / 2;
arrow_rect.height = rect.height / 2;