scrolling: centerOrFit with 'focus' when first or last column already focused. (#447)

This commit is contained in:
James Satterfield 2025-08-11 13:04:40 -05:00 committed by GitHub
parent 833af8e8c6
commit 984669ebb5
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

View File

@ -1082,9 +1082,11 @@ std::any CScrollingLayout::layoutMessage(SLayoutMessageHeader header, std::strin
case 'l': {
auto PREV = WDATA->column->workspace->prev(WDATA->column.lock());
if (!PREV) {
if (*PNOFALLBACK)
if (*PNOFALLBACK) {
centerOrFit(WDATA->column->workspace.lock(), WDATA->column.lock());
WDATA->column->workspace->recalculate();
break;
else
} else
PREV = WDATA->column->workspace->columns.back();
}
@ -1097,9 +1099,11 @@ std::any CScrollingLayout::layoutMessage(SLayoutMessageHeader header, std::strin
case 'r': {
auto NEXT = WDATA->column->workspace->next(WDATA->column.lock());
if (!NEXT) {
if (*PNOFALLBACK)
if (*PNOFALLBACK) {
centerOrFit(WDATA->column->workspace.lock(), WDATA->column.lock());
WDATA->column->workspace->recalculate();
break;
else
} else
NEXT = WDATA->column->workspace->columns.front();
}