diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/ClockTool.cc | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/src/ClockTool.cc b/src/ClockTool.cc index 6e06ed6..0bfa136 100644 --- a/src/ClockTool.cc +++ b/src/ClockTool.cc | |||
@@ -220,7 +220,17 @@ void ClockTool::update(FbTk::Subject *subj) { | |||
220 | updateTime(); | 220 | updateTime(); |
221 | 221 | ||
222 | // + 2 to make the entire text fit inside | 222 | // + 2 to make the entire text fit inside |
223 | std::string text(m_button.text().size() + 2, '0'); | 223 | // we only replace numbers with zeros because everything else should be |
224 | // relatively static. If we replace all text with zeros then widths of | ||
225 | // proportional fonts with some strftime formats will be considerably off. | ||
226 | std::string text(m_button.text()); | ||
227 | |||
228 | int textlen = text.size(); | ||
229 | for (int i=0; i < textlen; ++i) { | ||
230 | if (isdigit(text[i])) // don't bother replacing zeros | ||
231 | text[i] = '0'; | ||
232 | } | ||
233 | text.append("00"); // pad | ||
224 | 234 | ||
225 | unsigned int new_width = m_button.width(); | 235 | unsigned int new_width = m_button.width(); |
226 | unsigned int new_height = m_button.height(); | 236 | unsigned int new_height = m_button.height(); |