aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--lib/weather.lua1
-rw-r--r--widgets/hourly.lua7
2 files changed, 8 insertions, 0 deletions
diff --git a/lib/weather.lua b/lib/weather.lua
index a30663f..3cb7b64 100644
--- a/lib/weather.lua
+++ b/lib/weather.lua
@@ -35,6 +35,7 @@ M.ICON = {
few_night = '\u{E379}',
overcast = '\u{E312}',
unknown = '\u{E374}',
+ raindrop = '\u{E371}',
}
-- WMO weather code to glyph. The codes are sparse groups, not ranges, so a
diff --git a/widgets/hourly.lua b/widgets/hourly.lua
index dfcc64d..31a425b 100644
--- a/widgets/hourly.lua
+++ b/widgets/hourly.lua
@@ -15,6 +15,12 @@ local function draw_curve(cr, x, y, w, h, colors, hours, S)
local n = math.min(#hours, 24)
local label = math.max(9, math.min(h * 0.135, w / 8 * 0.22, S * 0.32))
local glyph = label * 1.5
+ -- A gutter on the left for the raindrop that labels the rain-chance row.
+ -- The whole band shifts, so the hour columns stay aligned with each other.
+ card.font(cr, card.FONT_MONO, label, false)
+ local gutter = card.advance(cr, weather.ICON.raindrop .. ' ')
+ local x0 = x
+ x, w = x + gutter, w - gutter
local slot = w / n
local function px(i) return x + (i - 0.5) * slot end
local top = y + glyph + label * 1.6
@@ -44,6 +50,7 @@ local function draw_curve(cr, x, y, w, h, colors, hours, S)
end
end
cairo_fill(cr)
+ card.text(cr, x0, base - label * 0.1, weather.ICON.raindrop)
card.rgba(cr, colors.rule, 0.6)
cairo_set_line_width(cr, 1)