diff options
Diffstat (limited to 'program/js/app.js')
-rw-r--r-- | program/js/app.js | 22 |
1 files changed, 21 insertions, 1 deletions
diff --git a/program/js/app.js b/program/js/app.js index 6544fe8f5..0f17633a2 100644 --- a/program/js/app.js +++ b/program/js/app.js @@ -1771,8 +1771,11 @@ function rcube_webmail() } else if (c == 'threads') html = expando; - else if (c == 'subject') + else if (c == 'subject') { + if (bw.ie) + col.onmouseover = function() { rcube_webmail.long_subject_title_ie(this, message.depth+1); }; html = tree + cols[c]; + } else if (c == 'priority') { if (flags.prio > 0 && flags.prio < 6) html = '<span class="prio'+flags.prio+'"> </span>'; @@ -6113,6 +6116,23 @@ rcube_webmail.long_subject_title = function(elem, indent) } }; +rcube_webmail.long_subject_title_ie = function(elem, indent) +{ + if (!elem.title) { + var $elem = $(elem), + txt = $elem.text(), + tmp = $('<span>').text(txt) + .css({'position': 'absolute', 'float': 'left', 'visibility': 'hidden', + 'font-size': $elem.css('font-size'), 'font-weight': $elem.css('font-weight')}) + .appendTo($('body')), + w = tmp.width(); + + tmp.remove(); + if (w + indent * 15 > $elem.width()) + elem.title = txt; + } +}; + // copy event engine prototype rcube_webmail.prototype.addEventListener = rcube_event_engine.prototype.addEventListener; rcube_webmail.prototype.removeEventListener = rcube_event_engine.prototype.removeEventListener; |