mirror of
https://github.com/kiwix/kiwix-js-pwa.git
synced 2025-09-10 12:53:54 -04:00
Fix printing bug which caused unhandled exception in WAAHost
Former-commit-id: e5b1de0e3ce9767dce57fbe50ccc291eeab04309 [formerly 2ee69678462efc83cf2c8baf39915781b3f8500f] Former-commit-id: 4f82cd78e1e4cca3586fd5c24be1e66a1ba51943
This commit is contained in:
parent
e4605d7dda
commit
a6128f295b
@ -144,6 +144,21 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
<div id="alertModal" class="modal">
|
||||||
|
<div class="modal-dialog">
|
||||||
|
<div class="modal-content">
|
||||||
|
<div class="modal-header">
|
||||||
|
<h4 class="modal-title">Alert!</h4>
|
||||||
|
</div>
|
||||||
|
<div class="modal-body">
|
||||||
|
<p id="alertContent"></p>
|
||||||
|
</div>
|
||||||
|
<div class="modal-footer">
|
||||||
|
<button class="btn btn-primary" type="button" data-dismiss="modal">Dismiss</button>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
<section id="search-article" role="region">
|
<section id="search-article" role="region">
|
||||||
<header id="top" style="width:100%;">
|
<header id="top" style="width:100%;">
|
||||||
<nav id="navbar" class="navbar navbar-inverse" role="navigation">
|
<nav id="navbar" class="navbar navbar-inverse" role="navigation">
|
||||||
|
@ -162,6 +162,7 @@ define(['jquery', 'zimArchiveLoader', 'util', 'uiUtil', 'cookies', 'q', 'module'
|
|||||||
|
|
||||||
|
|
||||||
function printIntercept() {
|
function printIntercept() {
|
||||||
|
document.getElementById('btnAbout').classList.add('active');
|
||||||
//Pre-load all images in case user wants to print them
|
//Pre-load all images in case user wants to print them
|
||||||
if (params.imageDisplay) {
|
if (params.imageDisplay) {
|
||||||
loadImages(10000);
|
loadImages(10000);
|
||||||
@ -193,12 +194,17 @@ define(['jquery', 'zimArchiveLoader', 'util', 'uiUtil', 'cookies', 'q', 'module'
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
uiUtil.printCustomElements();
|
uiUtil.printCustomElements();
|
||||||
|
document.getElementById("alertContent").innerHTML = "Document will reload to restore the DOM after printing...";
|
||||||
|
$("#alertModal").modal({
|
||||||
|
backdrop: "static",
|
||||||
|
keyboard: true
|
||||||
|
});
|
||||||
//innerDocument.execCommand("print", false, null);
|
//innerDocument.execCommand("print", false, null);
|
||||||
window.frames[0].frameElement.contentWindow.print();
|
window.frames[0].frameElement.contentWindow.print();
|
||||||
setTimeout(function () {
|
});
|
||||||
//Reload article after print dialogue has rendered because DOM is destroyed
|
$("#alertModal").off('hide.bs.modal');
|
||||||
goToArticle(decodeURIComponent(history.state.title));
|
$("#alertModal").on('hide.bs.modal', function () {
|
||||||
}, 3000);
|
goToArticle(decodeURIComponent(history.state.title));
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -542,7 +548,6 @@ define(['jquery', 'zimArchiveLoader', 'util', 'uiUtil', 'cookies', 'q', 'module'
|
|||||||
$('#btnAbout').on('click', function (e) {
|
$('#btnAbout').on('click', function (e) {
|
||||||
var btnAboutElement = document.getElementById('btnAbout');
|
var btnAboutElement = document.getElementById('btnAbout');
|
||||||
if (/glyphicon-print/.test(btnAboutElement.innerHTML)) {
|
if (/glyphicon-print/.test(btnAboutElement.innerHTML)) {
|
||||||
btnAboutElement.classList.add('active');
|
|
||||||
printIntercept();
|
printIntercept();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user