From 11f3deac56a9a410488883f86b3b17a1a69534d9 Mon Sep 17 00:00:00 2001 From: Tony Jin Date: Wed, 16 Dec 2015 17:26:03 -0800 Subject: [PATCH] Allow link rel to be customized. Defaults to 'noreferrer' --- src/display/annotation_layer.js | 5 +++++ src/display/api.js | 8 ++++++++ 2 files changed, 13 insertions(+) diff --git a/src/display/annotation_layer.js b/src/display/annotation_layer.js index f140d381a..e833204d6 100644 --- a/src/display/annotation_layer.js +++ b/src/display/annotation_layer.js @@ -311,6 +311,11 @@ var AnnotationLayer = (function AnnotationLayerClosure() { link.target = LinkTargetStringMap[PDFJS.externalLinkTarget]; } + // Strip referrer + if (item.url) { + link.rel = PDFJS.externalLinkRel; + } + if (!item.url) { if (item.action) { bindNamedAction(link, item.action); diff --git a/src/display/api.js b/src/display/api.js index 1cf5c513e..c890df102 100644 --- a/src/display/api.js +++ b/src/display/api.js @@ -230,6 +230,14 @@ PDFJS.openExternalLinksInNewWindow = ( PDFJS.externalLinkTarget = (PDFJS.externalLinkTarget === undefined ? PDFJS.LinkTarget.NONE : PDFJS.externalLinkTarget); +/** + * Specifies the |rel| attribute for external links. Defaults to stripping + * the referrer. + * @var {string} + */ +PDFJS.externalLinkRel = (PDFJS.externalLinkRel === undefined ? + 'noreferrer' : PDFJS.externalLinkRel); + /** * Determines if we can eval strings as JS. Primarily used to improve * performance for font rendering.