Fix viewport signs always using the larger font size for marking dirty

This commit is contained in:
Jonathan G Rennison
2020-02-17 23:23:56 +00:00
parent c42ce832ae
commit 2c2184f89d

View File

@@ -1759,10 +1759,10 @@ void ViewportSign::MarkDirty(ZoomLevel maxzoom) const
Rect zoomlevels[ZOOM_LVL_COUNT];
for (ZoomLevel zoom = ZOOM_LVL_BEGIN; zoom != ZOOM_LVL_END; zoom++) {
/* FIXME: This doesn't switch to width_small when appropriate. */
zoomlevels[zoom].left = this->center - ScaleByZoom(this->width_normal / 2 + 1, zoom);
const int width = zoom >= ZOOM_LVL_OUT_16X ? this->width_small : this->width_normal ;
zoomlevels[zoom].left = this->center - ScaleByZoom(width / 2 + 1, zoom);
zoomlevels[zoom].top = this->top - ScaleByZoom(1, zoom);
zoomlevels[zoom].right = this->center + ScaleByZoom(this->width_normal / 2 + 1, zoom);
zoomlevels[zoom].right = this->center + ScaleByZoom(width / 2 + 1, zoom);
zoomlevels[zoom].bottom = this->top + ScaleByZoom(VPSM_TOP + FONT_HEIGHT_NORMAL + VPSM_BOTTOM + 1, zoom);
}