Changes to allowed versioned building of Chrome extension that meets new
Chrome extension security requirements
This commit is contained in:
parent
d6d4fc8046
commit
6ca9245a39
@ -1,11 +1,12 @@
|
|||||||
{
|
{
|
||||||
"manifest_version": 2,
|
"manifest_version": 2,
|
||||||
"name": "uriloader@pdf.js",
|
"name": "PDF Viewer",
|
||||||
"version": "0.1",
|
"version": "PDFJSSCRIPT_VERSION",
|
||||||
"description": "Read PDF Document",
|
"description": "Uses HTML5 to display PDF files directly in Chrome.",
|
||||||
"permissions": [
|
"permissions": [
|
||||||
"webRequest", "webRequestBlocking",
|
"webRequest", "webRequestBlocking",
|
||||||
"http://*/*.pdf", "https://*/*.pdf",
|
"http://*/*.pdf",
|
||||||
|
"https://*/*.pdf",
|
||||||
"file:///*/*.pdf"
|
"file:///*/*.pdf"
|
||||||
],
|
],
|
||||||
"background": {
|
"background": {
|
||||||
|
@ -30,9 +30,10 @@ chrome.webRequest.onBeforeRequest.addListener(
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
urls: [
|
urls: [
|
||||||
"http://*/*.pdf", "https://*/*.pdf",
|
'http://*/*.pdf',
|
||||||
"file://*/*.pdf"
|
'https://*/*.pdf',
|
||||||
|
'file://*/*.pdf'
|
||||||
],
|
],
|
||||||
types: [ "main_frame" ]
|
types: ['main_frame']
|
||||||
},
|
},
|
||||||
["blocking"]);
|
['blocking']);
|
||||||
|
9
make.js
9
make.js
@ -52,7 +52,6 @@ target.all = function() {
|
|||||||
// Files that need to be included in every build.
|
// Files that need to be included in every build.
|
||||||
var COMMON_WEB_FILES =
|
var COMMON_WEB_FILES =
|
||||||
['web/viewer.css',
|
['web/viewer.css',
|
||||||
'web/inline.js',
|
|
||||||
'web/images',
|
'web/images',
|
||||||
'web/debugger.js'],
|
'web/debugger.js'],
|
||||||
COMMON_WEB_FILES_PREPROCESS =
|
COMMON_WEB_FILES_PREPROCESS =
|
||||||
@ -582,7 +581,9 @@ target.chrome = function() {
|
|||||||
defines: defines,
|
defines: defines,
|
||||||
copy: [
|
copy: [
|
||||||
[COMMON_WEB_FILES, CHROME_BUILD_CONTENT_DIR + '/web'],
|
[COMMON_WEB_FILES, CHROME_BUILD_CONTENT_DIR + '/web'],
|
||||||
[['extensions/chrome/*.json', 'extensions/chrome/*.html', 'extensions/chrome/*.js'],
|
[['extensions/chrome/*.json',
|
||||||
|
'extensions/chrome/*.html',
|
||||||
|
'extensions/chrome/*.js'],
|
||||||
CHROME_BUILD_DIR],
|
CHROME_BUILD_DIR],
|
||||||
[BUILD_TARGET, CHROME_BUILD_CONTENT_DIR + BUILD_TARGET],
|
[BUILD_TARGET, CHROME_BUILD_CONTENT_DIR + BUILD_TARGET],
|
||||||
['external/webL10n/l10n.js', CHROME_BUILD_CONTENT_DIR + '/web']
|
['external/webL10n/l10n.js', CHROME_BUILD_CONTENT_DIR + '/web']
|
||||||
@ -594,6 +595,10 @@ target.chrome = function() {
|
|||||||
};
|
};
|
||||||
builder.build(setup);
|
builder.build(setup);
|
||||||
|
|
||||||
|
// Update the build version number
|
||||||
|
sed('-i', /PDFJSSCRIPT_VERSION/, EXTENSION_VERSION,
|
||||||
|
CHROME_BUILD_DIR + '/manifest.json');
|
||||||
|
|
||||||
// Bundle the files to a Chrome extension file .crx if path to key is set
|
// Bundle the files to a Chrome extension file .crx if path to key is set
|
||||||
var pem = env['PDFJS_CHROME_KEY'];
|
var pem = env['PDFJS_CHROME_KEY'];
|
||||||
if (!pem) {
|
if (!pem) {
|
||||||
|
@ -2,4 +2,3 @@
|
|||||||
<link rel="resource" type="application/l10n" href="locale.properties"/>
|
<link rel="resource" type="application/l10n" href="locale.properties"/>
|
||||||
<script type="text/javascript" src="l10n.js"></script>
|
<script type="text/javascript" src="l10n.js"></script>
|
||||||
<script type="text/javascript" src="../build/pdf.js"></script>
|
<script type="text/javascript" src="../build/pdf.js"></script>
|
||||||
<script type="text/javascript" src="inline.js"></script>
|
|
||||||
|
@ -82,13 +82,13 @@ limitations under the License.
|
|||||||
|
|
||||||
<div id="sidebarContainer">
|
<div id="sidebarContainer">
|
||||||
<div id="toolbarSidebar" class="splitToolbarButton toggled">
|
<div id="toolbarSidebar" class="splitToolbarButton toggled">
|
||||||
<button id="viewThumbnail" class="toolbarButton group toggled" title="Show Thumbnails" onclick="PDFView.switchSidebarView('thumbs')" tabindex="1" data-l10n-id="thumbs">
|
<button id="viewThumbnail" class="toolbarButton group toggled" title="Show Thumbnails" tabindex="1" data-l10n-id="thumbs">
|
||||||
<span data-l10n-id="thumbs_label">Thumbnails</span>
|
<span data-l10n-id="thumbs_label">Thumbnails</span>
|
||||||
</button>
|
</button>
|
||||||
<button id="viewOutline" class="toolbarButton group" title="Show Document Outline" onclick="PDFView.switchSidebarView('outline')" tabindex="2" data-l10n-id="outline">
|
<button id="viewOutline" class="toolbarButton group" title="Show Document Outline" tabindex="2" data-l10n-id="outline">
|
||||||
<span data-l10n-id="outline_label">Document Outline</span>
|
<span data-l10n-id="outline_label">Document Outline</span>
|
||||||
</button>
|
</button>
|
||||||
<button id="viewSearch" class="toolbarButton group hidden" title="Search Document" onclick="PDFView.switchSidebarView('search')" tabindex="3" data-l10n-id="search_panel">
|
<button id="viewSearch" class="toolbarButton group hidden" title="Search Document" tabindex="3" data-l10n-id="search_panel">
|
||||||
<span data-l10n-id="search_panel_label">Search Document</span>
|
<span data-l10n-id="search_panel_label">Search Document</span>
|
||||||
</button>
|
</button>
|
||||||
</div>
|
</div>
|
||||||
@ -99,8 +99,8 @@ limitations under the License.
|
|||||||
</div>
|
</div>
|
||||||
<div id="searchView" class="hidden">
|
<div id="searchView" class="hidden">
|
||||||
<div id="searchToolbar">
|
<div id="searchToolbar">
|
||||||
<input id="searchTermsInput" class="toolbarField" onkeydown='if (event.keyCode == 13) PDFView.search()'>
|
<input id="searchTermsInput" class="toolbarField">
|
||||||
<button id="searchButton" class="textButton toolbarButton" onclick='PDFView.search()' data-l10n-id="search">Find</button>
|
<button id="searchButton" class="textButton toolbarButton" data-l10n-id="search">Find</button>
|
||||||
</div>
|
</div>
|
||||||
<div id="searchResults"></div>
|
<div id="searchResults"></div>
|
||||||
</div>
|
</div>
|
||||||
@ -118,16 +118,16 @@ limitations under the License.
|
|||||||
</button>
|
</button>
|
||||||
<div class="toolbarButtonSpacer"></div>
|
<div class="toolbarButtonSpacer"></div>
|
||||||
<div class="splitToolbarButton">
|
<div class="splitToolbarButton">
|
||||||
<button class="toolbarButton pageUp" title="Previous Page" onclick="PDFView.page--" id="previous" tabindex="5" data-l10n-id="previous">
|
<button class="toolbarButton pageUp" title="Previous Page" id="previous" tabindex="5" data-l10n-id="previous">
|
||||||
<span data-l10n-id="previous_label">Previous</span>
|
<span data-l10n-id="previous_label">Previous</span>
|
||||||
</button>
|
</button>
|
||||||
<div class="splitToolbarButtonSeparator"></div>
|
<div class="splitToolbarButtonSeparator"></div>
|
||||||
<button class="toolbarButton pageDown" title="Next Page" onclick="PDFView.page++" id="next" tabindex="6" data-l10n-id="next">
|
<button class="toolbarButton pageDown" title="Next Page" id="next" tabindex="6" data-l10n-id="next">
|
||||||
<span data-l10n-id="next_label">Next</span>
|
<span data-l10n-id="next_label">Next</span>
|
||||||
</button>
|
</button>
|
||||||
</div>
|
</div>
|
||||||
<label id="pageNumberLabel" class="toolbarLabel" for="pageNumber" data-l10n-id="page_label">Page: </label>
|
<label id="pageNumberLabel" class="toolbarLabel" for="pageNumber" data-l10n-id="page_label">Page: </label>
|
||||||
<input type="number" id="pageNumber" class="toolbarField pageNumber" onchange="PDFView.page = this.value;" value="1" size="4" min="1" tabindex="7">
|
<input type="number" id="pageNumber" class="toolbarField pageNumber" value="1" size="4" min="1" tabindex="7">
|
||||||
</input>
|
</input>
|
||||||
<span id="numPages" class="toolbarLabel"></span>
|
<span id="numPages" class="toolbarLabel"></span>
|
||||||
</div>
|
</div>
|
||||||
@ -135,19 +135,19 @@ limitations under the License.
|
|||||||
<input id="fileInput" class="fileInput" type="file" oncontextmenu="return false;" style="visibility: hidden; position: fixed; right: 0; top: 0" />
|
<input id="fileInput" class="fileInput" type="file" oncontextmenu="return false;" style="visibility: hidden; position: fixed; right: 0; top: 0" />
|
||||||
|
|
||||||
|
|
||||||
<button id="fullscreen" class="toolbarButton fullscreen" title="Fullscreen" tabindex="11" data-l10n-id="fullscreen" onclick="PDFView.fullscreen();">
|
<button id="fullscreen" class="toolbarButton fullscreen" title="Fullscreen" tabindex="11" data-l10n-id="fullscreen">
|
||||||
<span data-l10n-id="fullscreen_label">Fullscreen</span>
|
<span data-l10n-id="fullscreen_label">Fullscreen</span>
|
||||||
</button>
|
</button>
|
||||||
|
|
||||||
<button id="openFile" class="toolbarButton openFile" title="Open File" tabindex="12" data-l10n-id="open_file" onclick="document.getElementById('fileInput').click()">
|
<button id="openFile" class="toolbarButton openFile" title="Open File" tabindex="12" data-l10n-id="open_file">
|
||||||
<span data-l10n-id="open_file_label">Open</span>
|
<span data-l10n-id="open_file_label">Open</span>
|
||||||
</button>
|
</button>
|
||||||
|
|
||||||
<button id="print" class="toolbarButton print" title="Print" tabindex="13" data-l10n-id="print" onclick="window.print()">
|
<button id="print" class="toolbarButton print" title="Print" tabindex="13" data-l10n-id="print">
|
||||||
<span data-l10n-id="print_label">Print</span>
|
<span data-l10n-id="print_label">Print</span>
|
||||||
</button>
|
</button>
|
||||||
|
|
||||||
<button id="download" class="toolbarButton download" title="Download" onclick="PDFView.download();" tabindex="14" data-l10n-id="download">
|
<button id="download" class="toolbarButton download" title="Download" tabindex="14" data-l10n-id="download">
|
||||||
<span data-l10n-id="download_label">Download</span>
|
<span data-l10n-id="download_label">Download</span>
|
||||||
</button>
|
</button>
|
||||||
<!-- <div class="toolbarButtonSpacer"></div> -->
|
<!-- <div class="toolbarButtonSpacer"></div> -->
|
||||||
@ -156,16 +156,16 @@ limitations under the License.
|
|||||||
<div class="outerCenter">
|
<div class="outerCenter">
|
||||||
<div class="innerCenter" id="toolbarViewerMiddle">
|
<div class="innerCenter" id="toolbarViewerMiddle">
|
||||||
<div class="splitToolbarButton">
|
<div class="splitToolbarButton">
|
||||||
<button class="toolbarButton zoomOut" title="Zoom Out" onclick="PDFView.zoomOut();" tabindex="8" data-l10n-id="zoom_out">
|
<button class="toolbarButton zoomOut" title="Zoom Out" tabindex="8" data-l10n-id="zoom_out">
|
||||||
<span data-l10n-id="zoom_out_label">Zoom Out</span>
|
<span data-l10n-id="zoom_out_label">Zoom Out</span>
|
||||||
</button>
|
</button>
|
||||||
<div class="splitToolbarButtonSeparator"></div>
|
<div class="splitToolbarButtonSeparator"></div>
|
||||||
<button class="toolbarButton zoomIn" title="Zoom In" onclick="PDFView.zoomIn();" tabindex="9" data-l10n-id="zoom_in">
|
<button class="toolbarButton zoomIn" title="Zoom In" tabindex="9" data-l10n-id="zoom_in">
|
||||||
<span data-l10n-id="zoom_in_label">Zoom In</span>
|
<span data-l10n-id="zoom_in_label">Zoom In</span>
|
||||||
</button>
|
</button>
|
||||||
</div>
|
</div>
|
||||||
<span id="scaleSelectContainer" class="dropdownToolbarButton">
|
<span id="scaleSelectContainer" class="dropdownToolbarButton">
|
||||||
<select id="scaleSelect" onchange="PDFView.parseScale(this.value);" title="Zoom" oncontextmenu="return false;" tabindex="10" data-l10n-id="zoom">
|
<select id="scaleSelect" title="Zoom" oncontextmenu="return false;" tabindex="10" data-l10n-id="zoom">
|
||||||
<option id="pageAutoOption" value="auto" selected="selected" data-l10n-id="page_scale_auto">Automatic Zoom</option>
|
<option id="pageAutoOption" value="auto" selected="selected" data-l10n-id="page_scale_auto">Automatic Zoom</option>
|
||||||
<option id="pageActualOption" value="page-actual" data-l10n-id="page_scale_actual">Actual Size</option>
|
<option id="pageActualOption" value="page-actual" data-l10n-id="page_scale_actual">Actual Size</option>
|
||||||
<option id="pageFitOption" value="page-fit" data-l10n-id="page_scale_fit">Fit Page</option>
|
<option id="pageFitOption" value="page-fit" data-l10n-id="page_scale_fit">Fit Page</option>
|
||||||
|
@ -35,6 +35,7 @@ var RenderingStates = {
|
|||||||
FINISHED: 3
|
FINISHED: 3
|
||||||
};
|
};
|
||||||
|
|
||||||
|
PDFJS.workerSrc = '../build/pdf.js';
|
||||||
|
|
||||||
var mozL10n = document.mozL10n || document.webL10n;
|
var mozL10n = document.mozL10n || document.webL10n;
|
||||||
|
|
||||||
@ -1938,6 +1939,84 @@ document.addEventListener('DOMContentLoaded', function webViewerLoad(evt) {
|
|||||||
PDFView.renderHighestPriority();
|
PDFView.renderHighestPriority();
|
||||||
});
|
});
|
||||||
|
|
||||||
|
document.getElementById('viewThumbnail').addEventListener('click',
|
||||||
|
function() {
|
||||||
|
PDFView.switchSidebarView('thumbs');
|
||||||
|
});
|
||||||
|
|
||||||
|
document.getElementById('viewOutline').addEventListener('click',
|
||||||
|
function() {
|
||||||
|
PDFView.switchSidebarView('outline');
|
||||||
|
});
|
||||||
|
|
||||||
|
document.getElementById('viewSearch').addEventListener('click',
|
||||||
|
function() {
|
||||||
|
PDFView.switchSidebarView('search');
|
||||||
|
});
|
||||||
|
|
||||||
|
document.getElementById('searchButton').addEventListener('click',
|
||||||
|
function() {
|
||||||
|
PDFView.search();
|
||||||
|
});
|
||||||
|
|
||||||
|
document.getElementById('previous').addEventListener('click',
|
||||||
|
function() {
|
||||||
|
PDFView.page--;
|
||||||
|
});
|
||||||
|
|
||||||
|
document.getElementById('next').addEventListener('click',
|
||||||
|
function() {
|
||||||
|
PDFView.page++;
|
||||||
|
});
|
||||||
|
|
||||||
|
document.querySelector('.zoomIn').addEventListener('click',
|
||||||
|
function() {
|
||||||
|
PDFView.zoomIn();
|
||||||
|
});
|
||||||
|
|
||||||
|
document.querySelector('.zoomOut').addEventListener('click',
|
||||||
|
function() {
|
||||||
|
PDFView.zoomOut();
|
||||||
|
});
|
||||||
|
|
||||||
|
document.getElementById('fullscreen').addEventListener('click',
|
||||||
|
function() {
|
||||||
|
PDFView.fullscreen();
|
||||||
|
});
|
||||||
|
|
||||||
|
document.getElementById('openFile').addEventListener('click',
|
||||||
|
function() {
|
||||||
|
document.getElementById('fileInput').click();
|
||||||
|
});
|
||||||
|
|
||||||
|
document.getElementById('print').addEventListener('click',
|
||||||
|
function() {
|
||||||
|
window.print();
|
||||||
|
});
|
||||||
|
|
||||||
|
document.getElementById('download').addEventListener('click',
|
||||||
|
function() {
|
||||||
|
PDFView.download();
|
||||||
|
});
|
||||||
|
|
||||||
|
document.getElementById('searchTermsInput').addEventListener('keydown',
|
||||||
|
function() {
|
||||||
|
if (event.keyCode == 13) {
|
||||||
|
PDFView.search();
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
document.getElementById('pageNumber').addEventListener('change',
|
||||||
|
function() {
|
||||||
|
PDFView.page = this.value;
|
||||||
|
});
|
||||||
|
|
||||||
|
document.getElementById('scaleSelect').addEventListener('change',
|
||||||
|
function() {
|
||||||
|
PDFView.parseScale(this.value);
|
||||||
|
});
|
||||||
|
|
||||||
|
|
||||||
//#if (FIREFOX || MOZCENTRAL)
|
//#if (FIREFOX || MOZCENTRAL)
|
||||||
//if (FirefoxCom.requestSync('getLoadingType') == 'passive') {
|
//if (FirefoxCom.requestSync('getLoadingType') == 'passive') {
|
||||||
// PDFView.setTitleUsingUrl(file);
|
// PDFView.setTitleUsingUrl(file);
|
||||||
|
Loading…
Reference in New Issue
Block a user