Skip to content

Commit 2d1412b

Browse files
committed
Fix right padding when row too long
1 parent 32e9b55 commit 2d1412b

File tree

1 file changed

+8
-1
lines changed

1 file changed

+8
-1
lines changed

src/CliMenu.php

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -376,6 +376,13 @@ protected function drawMenuItem(MenuItemInterface $item, bool $selected = false)
376376
}
377377

378378
return array_map(function ($row) use ($invertedColour, $notInvertedColour, $borderColour) {
379+
380+
$rightPadding = $this->style->getRightHandPadding(mb_strlen(s::stripAnsiEscapeSequence($row)));
381+
382+
if ($rightPadding < 0) {
383+
$rightPadding = 0;
384+
}
385+
379386
return sprintf(
380387
"%s%s%s%s%s%s%s%s%s%s%s%s%s\n",
381388
str_repeat(' ', $this->style->getMargin()),
@@ -385,7 +392,7 @@ protected function drawMenuItem(MenuItemInterface $item, bool $selected = false)
385392
$invertedColour,
386393
str_repeat(' ', $this->style->getPadding()),
387394
$row,
388-
str_repeat(' ', $this->style->getRightHandPadding(mb_strlen(s::stripAnsiEscapeSequence($row)))),
395+
str_repeat(' ', $rightPadding),
389396
$notInvertedColour,
390397
$borderColour,
391398
str_repeat(' ', $this->style->getBorderRightWidth()),

0 commit comments

Comments
 (0)