Sfoglia il codice sorgente

HUE-5544 [editor] Improve reliability of the log panel resizer

Enrico Berti 9 anni fa
parent
commit
28da8e3

+ 5 - 2
desktop/core/src/desktop/static/desktop/js/ko.hue-bindings.js

@@ -1897,11 +1897,14 @@
         $resizer = $(element),
         $parent = $resizer.parents(options.parent),
         $target = $parent.find(options.target),
+        $mainScrollable = $(options.mainScrollable),
         onStart = options.onStart,
         onResize = options.onResize;
 
       var initialHeight = $.totalStorage('hue.editor.logs.size') || 80;
-      $target.css("height", initialHeight + "px");
+      window.setTimeout(function () {
+        $target.css("height", initialHeight + "px");
+      }, 0);
 
       var initialOffset = null;
       $resizer.draggable({
@@ -1915,7 +1918,7 @@
           }
         },
         drag: function (event, ui) {
-          var currentHeight = (ui.offset.top - initialOffset) + initialHeight;
+          var currentHeight = (ui.offset.top + $mainScrollable.scrollTop() - initialOffset) + initialHeight;
           $.totalStorage('hue.editor.logs.size', currentHeight);
           $target.css("height", currentHeight + "px");
           ui.offset.top = 0;

+ 1 - 1
desktop/libs/notebook/src/notebook/templates/editor_components.mako

@@ -1220,7 +1220,7 @@ ${ hueIcons.symbols() }
       <pre data-bind="visible: result.logs().length == 0" class="logs logs-bigger">${ _('No logs available at this moment.') }</pre>
       <pre data-bind="visible: result.logs().length > 0, text: result.logs, logScroller: result.logs, logScrollerVisibilityEvent: showLogs, niceScroll" class="logs logs-bigger logs-populated"></pre>
     </div>
-    <div class="snippet-log-resizer" data-bind="visible: result.logs().length > 0, logResizer: {parent: '.snippet-log-container', target: '.logs-populated', onStart: hideFixedHeaders, onResize: function(){ hideFixedHeaders(); redrawFixedHeaders(500); }}">
+    <div class="snippet-log-resizer" data-bind="visible: result.logs().length > 0, logResizer: {parent: '.snippet-log-container', target: '.logs-populated', mainScrollable: MAIN_SCROLLABLE, onStart: hideFixedHeaders, onResize: function(){ hideFixedHeaders(); redrawFixedHeaders(500); }}">
       <i class="fa fa-ellipsis-h"></i>
     </div>
   </div>