Chromium Code Reviews| Index: third_party/WebKit/Source/devtools/front_end/components/Linkifier.js |
| diff --git a/third_party/WebKit/Source/devtools/front_end/components/Linkifier.js b/third_party/WebKit/Source/devtools/front_end/components/Linkifier.js |
| index 4926fac9712de8b707479812097b27abdee2146e..fdfa420a7a2118872ddb324b687d1b430b2893f1 100644 |
| --- a/third_party/WebKit/Source/devtools/front_end/components/Linkifier.js |
| +++ b/third_party/WebKit/Source/devtools/front_end/components/Linkifier.js |
| @@ -304,6 +304,8 @@ Components.Linkifier = class { |
| Components.Linkifier._bindUILocation(anchor, uiLocation); |
| var text = uiLocation.linkText(); |
| + var info = Components.Linkifier._linkInfo(anchor); |
| + info.originalLinkText = text; |
| text = text.replace(/([a-f0-9]{7})[a-f0-9]{13}[a-f0-9]*/g, '$1\u2026'); |
| if (this._maxLength) |
| text = text.trimMiddle(this._maxLength); |
| @@ -356,7 +358,8 @@ Components.Linkifier = class { |
| if (typeof lineNumber === 'number' && !text) |
| linkText += ':' + (lineNumber + 1); |
| var title = linkText !== url ? url : ''; |
| - var link = Components.Linkifier._createLink(linkText.trimMiddle(150), className || '', title, url, preventClick); |
| + var link = Components.Linkifier._createLink( |
| + linkText, className || '', Components.Linkifier.MaxLengthForDisplayedURLs, title, url, preventClick); |
|
dgozman
2016/12/19 18:38:01
150
luoe
2016/12/19 19:44:39
This was 150 before, but since MaxLengthForDisplay
|
| var info = Components.Linkifier._linkInfo(link); |
| if (typeof lineNumber === 'number') |
| info.lineNumber = lineNumber; |
| @@ -373,7 +376,7 @@ Components.Linkifier = class { |
| */ |
| static linkifyRevealable(revealable, text, fallbackHref) { |
| var link = Components.Linkifier._createLink( |
| - text.trimMiddle(Components.Linkifier.MaxLengthForDisplayedURLs), '', undefined, fallbackHref); |
| + text, '', Components.Linkifier.MaxLengthForDisplayedURLs, undefined, fallbackHref); |
| Components.Linkifier._linkInfo(link).revealable = revealable; |
| return link; |
| } |
| @@ -381,12 +384,13 @@ Components.Linkifier = class { |
| /** |
| * @param {string} text |
| * @param {string} className |
| + * @param {number=} maxLength |
| * @param {string=} title |
| * @param {string=} href |
| * @param {boolean=} preventClick |
| * @returns{!Element} |
| */ |
| - static _createLink(text, className, title, href, preventClick) { |
| + static _createLink(text, className, maxLength, title, href, preventClick) { |
| var link = createElementWithClass('span', className); |
| link.classList.add('devtools-link'); |
| if (title) |
| @@ -394,6 +398,8 @@ Components.Linkifier = class { |
| if (href) |
| link.href = href; |
| link.textContent = text; |
| + if (maxLength) |
| + link.textContent = link.textContent.trimMiddle(maxLength); |
| link[Components.Linkifier._infoSymbol] = { |
| icon: null, |
| enableDecorator: false, |
| @@ -403,7 +409,8 @@ Components.Linkifier = class { |
| lineNumber: null, |
| columnNumber: null, |
| revealable: null, |
| - fallback: null |
| + fallback: null, |
| + originalLinkText: text |
| }; |
| if (!preventClick) |
| link.addEventListener('click', Components.Linkifier._handleClick, false); |
| @@ -414,6 +421,15 @@ Components.Linkifier = class { |
| /** |
| * @param {?Element} link |
| + * @return {?string} |
| + */ |
| + static originalLinkText(link) { |
| + var info = this._linkInfo(link); |
| + return info ? info.originalLinkText : null; |
| + } |
| + |
| + /** |
| + * @param {?Element} link |
| * @return {?Components._LinkInfo} |
| */ |
| static _linkInfo(link) { |
| @@ -545,7 +561,8 @@ Components.Linkifier._infoSymbol = Symbol('Linkifier.info'); |
| * lineNumber: ?number, |
| * columnNumber: ?number, |
| * revealable: ?Object, |
| - * fallback: ?Element |
| + * fallback: ?Element, |
| + * originalLinkText: string |
| * }} |
| */ |
| Components._LinkInfo; |