소스 검색

[jb] GH-1721 HUE-9419 curvedArrow issues when Job Dashboard has horizontal Scrollbar (asnaik) (#1722)

Akhil S Naik 4 년 전
부모
커밋
2eaa4dd509

파일 크기가 너무 크기때문에 변경 상태를 표시하지 않습니다.
+ 0 - 0
apps/jobbrowser/src/jobbrowser/static/jobbrowser/css/jobbrowser-embeddable.css


+ 4 - 0
apps/jobbrowser/src/jobbrowser/static/jobbrowser/less/jobbrowser-embeddable.less

@@ -395,4 +395,8 @@
     display: inline-block;
     float: initial;
   }
+
+  #workflow-page-graph {
+    position: relative;
+  }
 }

+ 4 - 18
apps/jobbrowser/src/jobbrowser/templates/job_browser.mako

@@ -3420,7 +3420,9 @@ ${ commonheader("Job Browser", "jobbrowser", user, request) | n,unicode }
         top: 0,
         left: 0
       }
-
+      self.redrawOnResize = function(){
+        huePubSub.publish('graph.draw.arrows');
+      }
       self.initialArrowsDrawingCount = 0;
       self.initialArrowsDrawing = function() {
         if (self.initialArrowsDrawingCount < 20) {
@@ -3438,21 +3440,6 @@ ${ commonheader("Job Browser", "jobbrowser", user, request) | n,unicode }
         }
       }
 
-      self.updateArrowsInterval = -1;
-      self.updateArrows = function() {
-        if ($('canvas').length > 0 && $('canvas').position().top !== self.lastArrowsPosition.top && $('canvas').position().left !== self.lastArrowsPosition.left) {
-          self.lastArrowsPosition = $('canvas').position();
-        }
-        if ($('#workflow-page-graph${ SUFFIX }').is(':visible')){
-          if ($('canvas').length === 0){
-            huePubSub.publish('graph.draw.arrows');
-          }
-        }
-        else {
-          $('canvas').remove();
-        }
-      }
-
       self.updateWorkflowGraph = function() {
         huePubSub.publish('graph.stop.refresh.view');
 
@@ -3478,9 +3465,8 @@ ${ commonheader("Job Browser", "jobbrowser", user, request) | n,unicode }
                 response: response,
                 callback: function (r) {
                   $('#workflow-page-graph${ SUFFIX }').html(r);
-                  window.clearInterval(self.updateArrowsInterval);
                   self.initialArrowsDrawing();
-                  self.updateArrowsInterval = window.setInterval(self.updateArrows, 100, 'jobbrowser');
+                  $(window).on('resize',self.redrawOnResize);
                 }
               });
             }

+ 6 - 0
apps/oozie/src/oozie/static/oozie/js/workflow-editor.ko.js

@@ -1287,6 +1287,12 @@ var WorkflowEditorViewModel = function (layout_json, workflow_json, credentials_
           heightCorrection = $workflowWidgets.scrollTop();
           widthCorrection = $workflowWidgets.scrollLeft();
         }
+       var $jobBrowserGraphTab = $('#workflow-page-graph');
+        if ($jobBrowserGraphTab.length > 0) {
+          $painter = $jobBrowserGraphTab;
+          heightCorrection = $jobBrowserGraphTab.scrollTop();
+          widthCorrection = $jobBrowserGraphTab.scrollLeft();
+        }
 
         var _fromCenter = {
           x: _from.position().left + widthCorrection + _from.outerWidth() / 2,

이 변경점에서 너무 많은 파일들이 변경되어 몇몇 파일들은 표시되지 않았습니다.