+int get_eol(char *body, XftFont *font)
+{
+ int body_len = strlen(body);
+ XGlyphInfo info;
+ XftTextExtentsUtf8(display, font, body, body_len, &info);
+
+ int max_text_width = width - 2 * padding;
+
+ if (info.width < max_text_width)
+ return body_len;
+
+ int eol = max_text_width / font->max_advance_width;
+ info.width = 0;
+
+ while (info.width < max_text_width)
+ {
+ eol++;
+ XftTextExtentsUtf8(display, font, body, eol, &info);
+ }
+
+ return --eol;
+}
+