From d8e07731e025734923e29304ee0c0ab70667ed36 Mon Sep 17 00:00:00 2001 From: Brian Gough Date: Fri, 28 Nov 2014 15:08:24 +0000 Subject: [PATCH] clean up unnecessary redraws --- services/web/public/coffee/ide/pdfng/directives/pdfJs.coffee | 4 ++-- .../web/public/coffee/ide/pdfng/directives/pdfPage.coffee | 5 +++++ .../web/public/coffee/ide/pdfng/directives/pdfViewer.coffee | 3 ++- 3 files changed, 9 insertions(+), 3 deletions(-) diff --git a/services/web/public/coffee/ide/pdfng/directives/pdfJs.coffee b/services/web/public/coffee/ide/pdfng/directives/pdfJs.coffee index 9e1b6c4a44..872d68fa5e 100644 --- a/services/web/public/coffee/ide/pdfng/directives/pdfJs.coffee +++ b/services/web/public/coffee/ide/pdfng/directives/pdfJs.coffee @@ -50,8 +50,8 @@ define [ # pdfListView.listView.pageHeightOffset = 20 scope.loading = false - scope.pleaseJumpTo = {} - scope.scale = {} + scope.pleaseJumpTo = null + scope.scale = null initializedPosition = false initializePosition = () -> return if initializedPosition diff --git a/services/web/public/coffee/ide/pdfng/directives/pdfPage.coffee b/services/web/public/coffee/ide/pdfng/directives/pdfPage.coffee index 8215de26a4..fcfad6b9c0 100644 --- a/services/web/public/coffee/ide/pdfng/directives/pdfPage.coffee +++ b/services/web/public/coffee/ide/pdfng/directives/pdfPage.coffee @@ -83,6 +83,8 @@ app.directive 'pdfPage', ['$timeout', 'pdfHighlights', ($timeout, pdfHighlights) }) scope.$watch 'highlights', (highlights, oldVal) -> + return unless highlights? + return unless highlights.length > 0 console.log 'got highlight watch in pdfPage', scope.page pageHighlights = (h for h in highlights when h.page == scope.page.pageNum) return unless pageHighlights.length @@ -95,5 +97,8 @@ app.directive 'pdfPage', ['$timeout', 'pdfHighlights', ($timeout, pdfHighlights) highlightsLayer.clearHighlights() , 1000 + scope.$on "$destroy", () -> + console.log 'in destroy handler, TODO need to clean up timeout/highlights' + } ] diff --git a/services/web/public/coffee/ide/pdfng/directives/pdfViewer.coffee b/services/web/public/coffee/ide/pdfng/directives/pdfViewer.coffee index 31cfc317fb..556e1c7d47 100644 --- a/services/web/public/coffee/ide/pdfng/directives/pdfViewer.coffee +++ b/services/web/public/coffee/ide/pdfng/directives/pdfViewer.coffee @@ -251,7 +251,8 @@ app.directive 'pdfViewer', ['$q', '$timeout', ($q, $timeout) -> console.log 'loading pdf', newVal, oldVal return unless newVal? ctrl.load() - doRescale scope.scale + # trigger a redraw + scope.scale = angular.copy (scope.scale) scope.$watch 'scale', (newVal, oldVal) -> # no need to set scale when initialising, done in pdfSrc