From 2e021b64d8215f56cd9f5c4afac15c844542f8a8 Mon Sep 17 00:00:00 2001 From: Brian Gough Date: Mon, 19 Jan 2015 14:36:20 +0000 Subject: [PATCH] remove per-page $watch on default page size in pdf viewer --- .../coffee/ide/pdfng/directives/pdfPage.coffee | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) diff --git a/services/web/public/coffee/ide/pdfng/directives/pdfPage.coffee b/services/web/public/coffee/ide/pdfng/directives/pdfPage.coffee index 5ad743c180..b481b66701 100644 --- a/services/web/public/coffee/ide/pdfng/directives/pdfPage.coffee +++ b/services/web/public/coffee/ide/pdfng/directives/pdfPage.coffee @@ -56,8 +56,16 @@ define [ # parent with scope.pages[i].element scope.page.element = element - if (!scope.page.sized && scope.defaultPageSize) - updatePageSize scope.defaultPageSize + if !scope.page.sized + if scope.defaultPageSize? + updatePageSize scope.defaultPageSize + else + # shouldn't get here - the default page size should now + # always be set before redraw is called + handler = scope.$watch 'defaultPageSize', (defaultPageSize) -> + return unless defaultPageSize? + updatePageSize defaultPageSize + handler() if scope.page.current # console.log 'we must scroll to this page', scope.page.pageNum, 'at position', scope.page.position @@ -65,10 +73,6 @@ define [ # this is the current page, we want to scroll it into view ctrl.setPdfPosition(scope.page, scope.page.position) - scope.$watch 'defaultPageSize', (defaultPageSize) -> - return unless defaultPageSize? - updatePageSize defaultPageSize - watchHandle = scope.$watch 'containerSize', (containerSize, oldVal) -> return unless containerSize? return unless scope.page.sized