Skip to content

Commit 44f1c45

Browse files
use resizeObserver helper
1 parent c30c6b1 commit 44f1c45

1 file changed

Lines changed: 9 additions & 4 deletions

File tree

packages/react-core/src/components/Truncate/Truncate.tsx

Lines changed: 9 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@ import * as React from 'react';
22
import styles from '@patternfly/react-styles/css/components/Truncate/truncate';
33
import { css } from '@patternfly/react-styles';
44
import { Tooltip, TooltipPosition } from '../Tooltip';
5+
import { getResizeObserver } from '../../helpers/resizeObserver';
56

67
export enum TruncatePosition {
78
start = 'start',
@@ -93,13 +94,17 @@ export const Truncate: React.FunctionComponent<TruncateProps> = ({
9394
if (textElement && parentElement && !observer.current) {
9495
const totalTextWidth = calculateTotalTextWidth(textElement, trailingNumChars, content);
9596
const textWidth = position === 'middle' ? totalTextWidth : textElement.scrollWidth;
96-
observer.current = new ResizeObserver(() => {
97-
const parentWidth = getActualWidth(parentElement);
9897

98+
const handleResize = () => {
99+
const parentWidth = getActualWidth(parentElement);
99100
setIsTruncated(textWidth >= parentWidth);
100-
});
101+
};
102+
103+
const observer = getResizeObserver(parentElement, handleResize);
101104

102-
observer.current.observe(parentElement);
105+
return () => {
106+
observer();
107+
};
103108
}
104109
}, [textElement, parentElement]);
105110

0 commit comments

Comments
 (0)