mirror of
https://github.com/google/blockly.git
synced 2026-01-07 00:50:27 +01:00
fix: size text with computed styles even when hidden (#8572)
* fix: size text with computed styles even when hidden * refactor: remove unneeded try/catch.
This commit is contained in:
@@ -208,16 +208,14 @@ export function getTextWidth(textElement: SVGTextElement): number {
|
||||
}
|
||||
}
|
||||
|
||||
// Attempt to compute fetch the width of the SVG text element.
|
||||
try {
|
||||
width = textElement.getComputedTextLength();
|
||||
} catch (e) {
|
||||
// In other cases where we fail to get the computed text. Instead, use an
|
||||
// approximation and do not cache the result. At some later point in time
|
||||
// when the block is inserted into the visible DOM, this method will be
|
||||
// called again and, at that point in time, will not throw an exception.
|
||||
return textElement.textContent!.length * 8;
|
||||
}
|
||||
// Compute the width of the SVG text element.
|
||||
const style = window.getComputedStyle(textElement);
|
||||
width = getFastTextWidthWithSizeString(
|
||||
textElement,
|
||||
style.fontSize,
|
||||
style.fontWeight,
|
||||
style.fontFamily,
|
||||
);
|
||||
|
||||
// Cache the computed width and return.
|
||||
if (cacheWidths) {
|
||||
|
||||
Reference in New Issue
Block a user