diff --git a/include/class.queue.php b/include/class.queue.php
index c17e8e91e3851369e3e889910b4c6b50d5d194f7..07b4a1902522ffe24845101dffe949680f1062f2 100644
--- a/include/class.queue.php
+++ b/include/class.queue.php
@@ -725,8 +725,7 @@ extends VerySimpleModel {
         $text = $this->renderBasicValue($row);
 
         // Truncate
-        if ($class = $this->getTruncateClass()) {
-            $text = sprintf('<span class="%s">%s</span>', $class, $text);
+        if ($text = $this->applyTruncate($text)) {
         }
 
         // Filter
@@ -766,15 +765,17 @@ extends VerySimpleModel {
         }
     }
 
-    function getTruncateClass() {
+    function applyTruncate($text) {
         switch ($this->truncate) {
         case 'ellipsis':
-            return 'trucate';
+            return sprintf('<span class="%s" style="max-width:%dpx">%s</span>',
+                'truncate', $this->width*1.1, $text);
         case 'clip':
-            return 'truncate clip';
+            return sprintf('<span class="%s" style="max-width:%dpx">%s</span>',
+                'truncate clip', $this->width*1.1, $text);
         default:
         case 'wrap':
-            return false;
+            return $text;
         }
     }