From 716762606e5968a587d29eea05cd7a7fa33f9578 Mon Sep 17 00:00:00 2001 From: Sergey Tarnavskiy Date: Thu, 14 Jun 2018 16:02:03 +0300 Subject: [PATCH] fixed issues in updating digital-value with progress-bar-animation --- ui/src/app/widget/lib/CanvasDigitalGauge.js | 12 ++++++++---- ui/src/app/widget/lib/canvas-digital-gauge.js | 5 +++++ 2 files changed, 13 insertions(+), 4 deletions(-) diff --git a/ui/src/app/widget/lib/CanvasDigitalGauge.js b/ui/src/app/widget/lib/CanvasDigitalGauge.js index 0166e913c1..ee8b0ed559 100644 --- a/ui/src/app/widget/lib/CanvasDigitalGauge.js +++ b/ui/src/app/widget/lib/CanvasDigitalGauge.js @@ -204,8 +204,13 @@ export default class CanvasDigitalGauge extends canvasGauges.BaseGauge { } var valueChanged = false; - - if (!this.elementValueClone.initialized || this.elementValueClone.renderedValue !== this.value || (options.showTimestamp && this.elementValueClone.renderedTimestamp !== this.timestamp)) { + if (!this.elementValueClone.initialized || angular.isDefined(this._value) && this.elementValueClone.renderedValue !== this._value || (options.showTimestamp && this.elementValueClone.renderedTimestamp !== this.timestamp)) { + if (angular.isDefined(this._value)) { + this.elementValueClone.renderedValue = this._value; + } + if (angular.isUndefined(this.elementValueClone.renderedValue)) { + this.elementValueClone.renderedValue = options.minValue; + } let context = this.contextValueClone; // clear the cache context.clearRect(x, y, w, h); @@ -214,7 +219,7 @@ export default class CanvasDigitalGauge extends canvasGauges.BaseGauge { context.drawImage(canvas.elementClone, x, y, w, h); context.save(); - drawDigitalValue(context, options, this.value); + drawDigitalValue(context, options, this.elementValueClone.renderedValue); if (options.showTimestamp) { drawDigitalLabel(context, options); @@ -222,7 +227,6 @@ export default class CanvasDigitalGauge extends canvasGauges.BaseGauge { } this.elementValueClone.initialized = true; - this.elementValueClone.renderedValue = this.value; valueChanged = true; } diff --git a/ui/src/app/widget/lib/canvas-digital-gauge.js b/ui/src/app/widget/lib/canvas-digital-gauge.js index 8e6db0468e..283a42676b 100644 --- a/ui/src/app/widget/lib/canvas-digital-gauge.js +++ b/ui/src/app/widget/lib/canvas-digital-gauge.js @@ -70,6 +70,10 @@ export default class TbCanvasDigitalGauge { (settings.title && settings.title.length > 0 ? settings.title : dataKey.label) : ''); + if (!this.localSettings.unitTitle && this.localSettings.showTimestamp) { + this.localSettings.unitTitle = ' '; + } + this.localSettings.titleFont = {}; var settingsTitleFont = settings.titleFont; if (!settingsTitleFont) { @@ -206,6 +210,7 @@ export default class TbCanvasDigitalGauge { var value = tvPair[1]; if(value !== this.gauge.value) { this.gauge.value = value; + this.gauge._value = value; } else if (this.localSettings.showTimestamp && this.gauge.timestamp != timestamp) { this.gauge.timestamp = timestamp; }