diff --git a/web/scripts/requireplugins-jquery-textOverflow.js b/web/scripts/requireplugins-jquery-textOverflow.js new file mode 100644 index 0000000..6be6e62 --- /dev/null +++ b/web/scripts/requireplugins-jquery-textOverflow.js @@ -0,0 +1,108 @@ +/*! + * jQuery Text Overflow v0.7 + * + * Licensed under the new BSD License. + * Copyright 2009-2010, Bram Stein + * All rights reserved. + */ +/*global jQuery, document, setInterval*/ +(function ($) { + var style = document.documentElement.style, + hasTextOverflow = ('textOverflow' in style || 'OTextOverflow' in style), + + domSplit = function (root, maxIndex) { + var index = 0, result = [], + domSplitAux = function (nodes) { + var i = 0, tmp; + + if (index > maxIndex) { + return; + } + + for (i = 0; i < nodes.length; i += 1) { + if (nodes[i].nodeType === 1) { + tmp = nodes[i].cloneNode(false); + result[result.length - 1].appendChild(tmp); + result.push(tmp); + domSplitAux(nodes[i].childNodes); + result.pop(); + } else if (nodes[i].nodeType === 3) { + if (index + nodes[i].length < maxIndex) { + result[result.length - 1].appendChild(nodes[i].cloneNode(false)); + } else { + tmp = nodes[i].cloneNode(false); + tmp.textContent = $.trim(tmp.textContent.substring(0, maxIndex - index)); + result[result.length - 1].appendChild(tmp); + } + index += nodes[i].length; + } else { + result.appendChild(nodes[i].cloneNode(false)); + } + } + }; + result.push(root.cloneNode(false)); + domSplitAux(root.childNodes); + return $(result.pop().childNodes); + }; + + $.extend($.fn, { + textOverflow: function (str, autoUpdate) { + var more = str || '…'; + + if (!hasTextOverflow) { + return this.each(function () { + var element = $(this), + + // the clone element we modify to measure the width + clone = element.clone(), + + // we save a copy so we can restore it if necessary + originalElement = element.clone(), + originalText = element.text(), + originalWidth = element.width(), + low = 0, mid = 0, + high = originalText.length, + reflow = function () { + if (originalWidth !== element.width()) { + element.replaceWith(originalElement); + element = originalElement; + originalElement = element.clone(); + element.textOverflow(str, false); + originalWidth = element.width(); + } + }; + + element.after(clone.hide().css({ + 'position': 'absolute', + 'width': 'auto', + 'overflow': 'visible', + 'max-width': 'inherit' + })); + + if (clone.width() > originalWidth) { + while (low < high) { + mid = Math.floor(low + ((high - low) / 2)); + clone.empty().append(domSplit(originalElement.get(0), mid)).append(more); + if (clone.width() < originalWidth) { + low = mid + 1; + } else { + high = mid; + } + } + + if (low < originalText.length) { + element.empty().append(domSplit(originalElement.get(0), low - 1)).append(more); + } + } + clone.remove(); + + if (autoUpdate) { + setInterval(reflow, 200); + } + }); + } else { + return this; + } + } + }); +})(jQuery); diff --git a/web/share/accounts.html.orig b/web/share/accounts.html.orig new file mode 100644 index 0000000..e14f0bd --- /dev/null +++ b/web/share/accounts.html.orig @@ -0,0 +1,71 @@ + + + + Linkdrop: Account Manager + + + + + + + + + + +
+ + +
+ + + + +
+ + + +
There was an error: {message}
+ + + diff --git a/web/share/index.html b/web/share/index.html index 0944d36..28b43d5 100644 --- a/web/share/index.html +++ b/web/share/index.html @@ -4,6 +4,7 @@ Linkdrop Alpha + @@ -36,10 +37,10 @@
-
-
- - +
Some long ass shit that will have an ellipsis
+
Some long ass shit that will have an ellipsis
+ Some long ass shit that will have an ellipsis + Some long ass shit that will have an ellipsis
diff --git a/web/share/index.js b/web/share/index.js index 96048a2..7dc6def 100644 --- a/web/share/index.js +++ b/web/share/index.js @@ -440,6 +440,12 @@ function (require, $, fn, rdapi, oauth, jig, url, if (options.system) { $(document.documentElement).addClass(options.system); } + + //Create ellipsis for thumbnail section + $('.title').textOverflow(null,true); + $('.description').textOverflow(null,true); + $('.url').textOverflow(null,true); + $('.surl').textOverflow(null,true); //Debug info on the data that was received. $('#debugOutput').val(JSON.stringify(options)); @@ -624,6 +630,7 @@ function (require, $, fn, rdapi, oauth, jig, url, .each(function (i, node) { placeholder(node); }); + }); }); diff --git a/web/share/share.css b/web/share/share.css index 0b11464..faadb29 100644 --- a/web/share/share.css +++ b/web/share/share.css @@ -303,6 +303,7 @@ div.meta { .meta { padding: 0 3px; width: 150px; + line-height: 14px; } .meta .title { @@ -315,8 +316,7 @@ div.meta { color: #444; white-space: normal; font-size: 9px; - line-height: 11px; - max-height: 22px; /* 2 lines worth */ + /* max-height: 22px; */ overflow: hidden; }