Jelajahi Sumber

[beeswax][notebook] Scroll to error messages in long editors

Enrico Berti 10 tahun lalu
induk
melakukan
877de7d

+ 4 - 0
apps/beeswax/src/beeswax/templates/execute.mako

@@ -2086,6 +2086,10 @@ $(document).on('error.query', function () {
           }
         )
       );
+      codeMirror.scrollTo(null, codeMirror.charCoords({
+            line: selectedLine > 0 ? selectedLine - 1 : selectedLine,
+            ch: 0
+          }, "local").top - codeMirror.getScrollerElement().offsetHeight / 2 - 5);
       $(el).hide();
     }
   });

+ 4 - 1
desktop/core/src/desktop/static/desktop/js/ko.hue-bindings.js

@@ -1679,9 +1679,12 @@
           offset = Math.min(selectionRange.start.row, selectionRange.end.row);
         }
         if (newErrors.length > 0) {
-          newErrors.forEach(function (err) {
+          newErrors.forEach(function (err, cnt) {
             if (err.line !== null) {
               editor.addError(err.message, err.line + offset);
+              if (cnt == 0) {
+                editor.scrollToLine(err.line + offset, true, true, function () {});
+              }
             }
           });
         }