From 4646f96698b32feb7d9a3aeff158e20587b54c8d Mon Sep 17 00:00:00 2001 From: Mariusz Jurowicz Date: Tue, 3 Jul 2018 13:03:12 +0200 Subject: [PATCH] #7629 fix vertical jumping during maven download --- js/notebook/src/shared/style/beakerx.scss | 6 +++++ .../functionality/MvnLoggerWidget.java | 23 +++++++++++++++---- 2 files changed, 24 insertions(+), 5 deletions(-) diff --git a/js/notebook/src/shared/style/beakerx.scss b/js/notebook/src/shared/style/beakerx.scss index 9f433b6726..3a31a606eb 100644 --- a/js/notebook/src/shared/style/beakerx.scss +++ b/js/notebook/src/shared/style/beakerx.scss @@ -57,6 +57,12 @@ } } +.text-ellipsis * { + white-space: nowrap; + overflow: hidden; + text-overflow: ellipsis; +} + .bko-modal { position: absolute; left: 50%; diff --git a/kernel/base/src/main/java/com/twosigma/beakerx/kernel/magic/command/functionality/MvnLoggerWidget.java b/kernel/base/src/main/java/com/twosigma/beakerx/kernel/magic/command/functionality/MvnLoggerWidget.java index 31d513b92f..90e4e2a738 100644 --- a/kernel/base/src/main/java/com/twosigma/beakerx/kernel/magic/command/functionality/MvnLoggerWidget.java +++ b/kernel/base/src/main/java/com/twosigma/beakerx/kernel/magic/command/functionality/MvnLoggerWidget.java @@ -24,6 +24,7 @@ import java.util.regex.Matcher; import java.util.regex.Pattern; +import static java.util.Arrays.asList; import static org.apache.commons.io.FileUtils.byteCountToDisplaySize; public class MvnLoggerWidget { @@ -44,9 +45,11 @@ public MvnLoggerWidget(Message parentMessage) { @Override public void run() { if (jarNumbers > 0) { + String info = getInfo(currentLine); String sizeWithUnit = byteCountToDisplaySize(new Double(sizeInKb * 1000).longValue()); - String status = String.format("%d jar%s, %s downloaded at %s", jarNumbers, getPluralFormWhenNumberOfJarGreaterThanOne(), sizeWithUnit, speed); + String status = String.format("%d jar%s, %s downloaded at %s %s", jarNumbers, getPluralFormWhenNumberOfJarGreaterThanOne(), sizeWithUnit, speed, info); widget.setValue(status + "
" + formatCurrentLine()); + widget.setDomClasses(asList("text-ellipsis")); } } }, 0, PERIOD); @@ -79,10 +82,9 @@ private String calculateSpeed(String[] info) { } private String[] split(String line) { - Pattern pattern = Pattern.compile("\\((.*?)\\)"); - Matcher matcher = pattern.matcher(line); - if (matcher.find()) { - String infoWithBrackets = matcher.group(); + String infoWithBrackets = this.getInfo(line); + + if (infoWithBrackets != null) { return infoWithBrackets.replace("(", ""). replace(")", ""). split(" "); @@ -91,6 +93,17 @@ private String[] split(String line) { return new String[0]; } + private String getInfo(String line) { + Pattern pattern = Pattern.compile("\\((.*?)\\)"); + Matcher matcher = pattern.matcher(line); + if (matcher.find()) { + String infoWithBrackets = matcher.group(); + return infoWithBrackets; + + } + return null; + } + private double calculateJarSizeInKb(String[] info) { String unit = info[1]; if (unit.toLowerCase().equals("kb")) {