mirror of
https://github.com/stablyai/orca.git
synced 2026-10-22 08:03:37 +00:00
fix(terminal): normalize padding before fit
This commit is contained in:
@@ -378,6 +378,31 @@ describe('applyTerminalAppearance theme assignment', () => {
|
||||
expect.objectContaining({ paddingX: 4, paddingY: 4 })
|
||||
)
|
||||
})
|
||||
|
||||
it('rounds imported half-pixel padding before fitting', () => {
|
||||
const pane = makePane(1)
|
||||
const manager = makeManager([pane])
|
||||
const settings = {
|
||||
...getDefaultSettings('/tmp'),
|
||||
terminalPaddingX: 1.5,
|
||||
terminalPaddingY: 2.5
|
||||
}
|
||||
|
||||
applyTerminalAppearance(
|
||||
manager,
|
||||
settings,
|
||||
true,
|
||||
new Map(),
|
||||
new Map(),
|
||||
'false',
|
||||
new Map(),
|
||||
new Map()
|
||||
)
|
||||
|
||||
expect(manager.setPaneStyleOptions).toHaveBeenCalledWith(
|
||||
expect.objectContaining({ paddingX: 2, paddingY: 3 })
|
||||
)
|
||||
})
|
||||
})
|
||||
|
||||
describe('publishTerminalViewAttributesAtAppStart', () => {
|
||||
|
||||
@@ -158,6 +158,9 @@ export function applyTerminalAppearance(
|
||||
settings.terminalLigatures,
|
||||
settings.terminalFontFamily
|
||||
)
|
||||
// FitAddon parses each CSS padding as an integer, so normalize imported half-pixels before styling and fitting.
|
||||
const paddingX = Math.round(settings.terminalPaddingX ?? 4)
|
||||
const paddingY = Math.round(settings.terminalPaddingY ?? 4)
|
||||
|
||||
// Why before the pane loop: FitAddon subtracts live .xterm padding, so the
|
||||
// CSS vars must be stamped before safeFit or a padding shrink leaves a stale grid.
|
||||
@@ -169,8 +172,8 @@ export function applyTerminalAppearance(
|
||||
opacityTransitionMs: paneStyles.opacityTransitionMs,
|
||||
dividerThicknessPx: paneStyles.dividerThicknessPx,
|
||||
focusFollowsMouse: paneStyles.focusFollowsMouse,
|
||||
paddingX: settings.terminalPaddingX ?? 4,
|
||||
paddingY: settings.terminalPaddingY ?? 4
|
||||
paddingX,
|
||||
paddingY
|
||||
})
|
||||
|
||||
for (const pane of manager.getPanes()) {
|
||||
|
||||
Reference in New Issue
Block a user