Browse Source

Adds pre and post UI control change events.

Yury Delendik 9 years ago
parent
commit
4a2c76a34f
  1. 8
      web/app.js
  2. 19
      web/pdf_viewer.js

8
web/app.js

@ -1231,8 +1231,8 @@ var PDFViewerApplication = {
eventBus.on('pagerendered', webViewerPageRendered); eventBus.on('pagerendered', webViewerPageRendered);
eventBus.on('textlayerrendered', webViewerTextLayerRendered); eventBus.on('textlayerrendered', webViewerTextLayerRendered);
eventBus.on('updateviewarea', webViewerUpdateViewarea); eventBus.on('updateviewarea', webViewerUpdateViewarea);
eventBus.on('pagechange', webViewerPageChange); eventBus.on('pagechanging', webViewerPageChanging);
eventBus.on('scalechange', webViewerScaleChange); eventBus.on('scalechanging', webViewerScaleChanging);
eventBus.on('sidebarviewchanged', webViewerSidebarViewChanged); eventBus.on('sidebarviewchanged', webViewerSidebarViewChanged);
eventBus.on('pagemode', webViewerPageMode); eventBus.on('pagemode', webViewerPageMode);
eventBus.on('namedaction', webViewerNamedAction); eventBus.on('namedaction', webViewerNamedAction);
@ -1873,7 +1873,7 @@ function webViewerFind(e) {
}); });
} }
function webViewerScaleChange(e) { function webViewerScaleChanging(e) {
var appConfig = PDFViewerApplication.appConfig; var appConfig = PDFViewerApplication.appConfig;
appConfig.toolbar.zoomOut.disabled = (e.scale === MIN_SCALE); appConfig.toolbar.zoomOut.disabled = (e.scale === MIN_SCALE);
appConfig.toolbar.zoomIn.disabled = (e.scale === MAX_SCALE); appConfig.toolbar.zoomIn.disabled = (e.scale === MAX_SCALE);
@ -1894,7 +1894,7 @@ function webViewerScaleChange(e) {
PDFViewerApplication.pdfViewer.update(); PDFViewerApplication.pdfViewer.update();
} }
function webViewerPageChange(e) { function webViewerPageChanging(e) {
var page = e.pageNumber; var page = e.pageNumber;
if (e.previousPageNumber !== page) { if (e.previousPageNumber !== page) {
PDFViewerApplication.appConfig.toolbar.pageNumber.value = page; PDFViewerApplication.appConfig.toolbar.pageNumber.value = page;

19
web/pdf_viewer.js

@ -166,23 +166,28 @@ var PDFViewer = (function pdfViewer() {
return; return;
} }
var arg;
if (!(0 < val && val <= this.pagesCount)) { if (!(0 < val && val <= this.pagesCount)) {
this.eventBus.dispatch('pagechange', { arg = {
source: this, source: this,
updateInProgress: this.updateInProgress, updateInProgress: this.updateInProgress,
pageNumber: this._currentPageNumber, pageNumber: this._currentPageNumber,
previousPageNumber: val previousPageNumber: val
}); };
this.eventBus.dispatch('pagechanging', arg);
this.eventBus.dispatch('pagechange', arg);
return; return;
} }
this.eventBus.dispatch('pagechange', { arg = {
source: this, source: this,
updateInProgress: this.updateInProgress, updateInProgress: this.updateInProgress,
pageNumber: val, pageNumber: val,
previousPageNumber: this._currentPageNumber previousPageNumber: this._currentPageNumber
}); };
this.eventBus.dispatch('pagechanging', arg);
this._currentPageNumber = val; this._currentPageNumber = val;
this.eventBus.dispatch('pagechange', arg);
// Check if the caller is `PDFViewer_update`, to avoid breaking scrolling. // Check if the caller is `PDFViewer_update`, to avoid breaking scrolling.
if (this.updateInProgress) { if (this.updateInProgress) {
@ -403,11 +408,13 @@ var PDFViewer = (function pdfViewer() {
_setScaleDispatchEvent: function pdfViewer_setScaleDispatchEvent( _setScaleDispatchEvent: function pdfViewer_setScaleDispatchEvent(
newScale, newValue, preset) { newScale, newValue, preset) {
this.eventBus.dispatch('scalechange', { var arg = {
source: this, source: this,
scale: newScale, scale: newScale,
presetValue: preset ? newValue : undefined presetValue: preset ? newValue : undefined
}); };
this.eventBus.dispatch('scalechanging', arg);
this.eventBus.dispatch('scalechange', arg);
}, },
_setScaleUpdatePages: function pdfViewer_setScaleUpdatePages( _setScaleUpdatePages: function pdfViewer_setScaleUpdatePages(

Loading…
Cancel
Save