From 0c7d45bbfb232403bd9c285542c2273e5d3470d6 Mon Sep 17 00:00:00 2001
From: notmasteryet <async.processingjs@yahoo.com>
Date: Sat, 3 Mar 2012 19:27:35 -0600
Subject: [PATCH] Chrome extension: uses encodeURIComponent; fixes download
 button

---
 extensions/chrome/pdfHandler.html | 14 ++++++++++++--
 1 file changed, 12 insertions(+), 2 deletions(-)

diff --git a/extensions/chrome/pdfHandler.html b/extensions/chrome/pdfHandler.html
index 1d213bbba..fc67c581d 100644
--- a/extensions/chrome/pdfHandler.html
+++ b/extensions/chrome/pdfHandler.html
@@ -1,18 +1,28 @@
 <!doctype html>
 <script>
+
+function isPdfDownloadable(details) {
+  return details.url.indexOf('pdfjs.action=download') >= 0;
+}
+
 chrome.webRequest.onBeforeRequest.addListener(
   function(details) {
+    if (isPdfDownloadable(details))
+      return;
+
     var viewerPage = 'content/web/viewer.html';
-    var url = chrome.extension.getURL(viewerPage) + '?file=' + details.url;
+    var url = chrome.extension.getURL(viewerPage) +
+      '?file=' + encodeURIComponent(details.url);
     return { redirectUrl: url };
   },
   {
     urls: [
       "http://*/*.pdf",
-      "file://*/*.pdf",
+      "file://*/*.pdf"
     ],
     types: [ "main_frame" ]
   },
   ["blocking"]);
+
 </script>