refactor(tiles): _tileGridLimit measures the terminal area itself

_tileGridCapacityNow had one caller, _tileGridLimit, and only measured the
area (the grid section, or the single view the grid would replace) for it.
The measurement now sits in _tileGridLimit, whose doc comment says what is
measured.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
This commit is contained in:
Codeman maintainer
2026-10-07 09:37:03 +02:00
parent 0746cffe6d
commit c54867d9f0
+10 -13
View File
@@ -336,24 +336,21 @@ Object.assign(CodemanApp.prototype, {
btn.setAttribute('aria-label', title); btn.setAttribute('aria-label', title);
}, },
/** How many tiles the terminal area can hold right now (the grid section, or the single view it would replace). */ /**
_tileGridCapacityNow() { * How many tiles the grid takes here and now: what the terminal area fits
* (the grid section, or the single view it would replace), at most the cap
* (TILE_GRID_MAX), never less than one. The texts say which of the two
* binds, so a large monitor never reads "this window fits 6".
*/
_tileGridLimit() {
const T = window.CodemanTileGrid;
const max = T.TILE_GRID_MAX;
const el = this._tilesOwnTerminal() ? this._tileGridSection() : document.querySelector('.terminal-wrap'); const el = this._tilesOwnTerminal() ? this._tileGridSection() : document.querySelector('.terminal-wrap');
const rect = el?.getBoundingClientRect?.() || { width: 0, height: 0 }; const rect = el?.getBoundingClientRect?.() || { width: 0, height: 0 };
return window.CodemanTileGrid.tileGridCapacity({ const fits = T.tileGridCapacity({
width: rect.width || window.innerWidth, width: rect.width || window.innerWidth,
height: rect.height || window.innerHeight, height: rect.height || window.innerHeight,
}); });
},
/**
* How many tiles the grid takes here and now: what the window fits, at most
* the cap (TILE_GRID_MAX), never less than one. The texts say which of the
* two binds, so a large monitor never reads "this window fits 6".
*/
_tileGridLimit() {
const max = window.CodemanTileGrid.TILE_GRID_MAX;
const fits = this._tileGridCapacityNow();
const capacity = Math.max(1, Math.min(fits, max)); const capacity = Math.max(1, Math.min(fits, max));
const byCap = fits >= max; const byCap = fits >= max;
return { return {