Github user mcgilman commented on a diff in the pull request:
https://github.com/apache/nifi/pull/2471#discussion_r169394276
--- Diff:
nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/js/nf/canvas/nf-canvas.js
---
@@ -996,34 +1030,42 @@
zoomed = true;
}
- // see if the scale has changed during this
zoom event,
- // we want to only transition when zooming
in/out as running
- // the transitions during pan events is
- var transition = d3.event.sourceEvent.type ===
'wheel' || d3.event.sourceEvent.type === 'mousewheel';
-
// refresh the canvas
refreshed = nfCanvas.View.refresh({
persist: false,
- transition: transition,
+ transition:
shouldTransition(d3.event.sourceEvent),
refreshComponents: false,
refreshBirdseye: false
});
})
- .on('zoomend', function () {
- // ensure the canvas was actually refreshed
- if (nfCommon.isDefinedAndNotNull(refreshed)) {
- nfGraph.updateVisibility();
-
- // refresh the birdseye
- refreshed.done(function () {
- nfBirdseye.refresh();
- });
+ .on('end', function () {
+ if (!isBirdseyeEvent(d3.event.sourceEvent)) {
+ // ensure the canvas was actually refreshed
+ if
(nfCommon.isDefinedAndNotNull(refreshed)) {
+ nfGraph.updateVisibility();
+
+ // refresh the birdseye
+ refreshed.done(function () {
+ nfBirdseye.refresh();
+ });
- // persist the users view
- nfCanvasUtils.persistUserView();
+ // persist the users view
+ nfCanvasUtils.persistUserView();
- // reset the refreshed deferred
- refreshed = null;
+ // reset the refreshed deferred
+ refreshed = null;
+ }
+
+ if (panning === false) {
+ // deselect as necessary if we are not
panning
+
nfCanvasUtils.getSelection().classed('selected', false);
+
+ // update URL deep linking params
+ nfCanvasUtils.setURLParameters();
+
+ // inform Angular app values have
changed
+ nfNgBridge.digest();
--- End diff --
Which part? The .digest() was necessary to address @andrewmlim comments.
---