in src/devtools/views/Settings/SettingsContext.js [172:204]
function updateDisplayDensity(
displayDensity: DisplayDensity,
documentElements: DocumentElements
): void {
updateStyleHelper(
displayDensity,
'font-size-monospace-normal',
documentElements
);
updateStyleHelper(
displayDensity,
'font-size-monospace-large',
documentElements
);
updateStyleHelper(
displayDensity,
'font-size-monospace-small',
documentElements
);
updateStyleHelper(displayDensity, 'font-size-sans-normal', documentElements);
updateStyleHelper(displayDensity, 'font-size-sans-large', documentElements);
updateStyleHelper(displayDensity, 'font-size-sans-small', documentElements);
updateStyleHelper(displayDensity, 'line-height-data', documentElements);
// Sizes and paddings/margins are all rem-based,
// so update the root font-size as well when the display preference changes.
const computedStyle = getComputedStyle((document.body: any));
const fontSize = computedStyle.getPropertyValue(
`--${displayDensity}-root-font-size`
);
const root = ((document.querySelector(':root'): any): HTMLElement);
root.style.fontSize = fontSize;
}