Skip to content

Commit 9395dd5

Browse files
authored
fix(ClipboardCopy): update main content on children change when expanded (#10015)
1 parent c856b07 commit 9395dd5

File tree

1 file changed

+4
-3
lines changed

1 file changed

+4
-3
lines changed

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

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -120,7 +120,8 @@ class ClipboardCopy extends React.Component<ClipboardCopyProps, ClipboardCopySta
120120
// eslint-disable-next-line @typescript-eslint/no-unused-vars
121121
componentDidUpdate = (prevProps: ClipboardCopyProps, prevState: ClipboardCopyState) => {
122122
if (prevProps.children !== this.props.children) {
123-
this.setState({ text: this.props.children as string });
123+
const newText = this.props.children as string;
124+
this.setState({ text: newText, textWhenExpanded: newText });
124125
}
125126
};
126127

@@ -252,7 +253,7 @@ class ClipboardCopy extends React.Component<ClipboardCopyProps, ClipboardCopySta
252253
<TextInput
253254
readOnlyVariant={isReadOnly || this.state.expanded ? 'default' : undefined}
254255
onChange={this.updateText}
255-
value={this.state.text}
256+
value={this.state.expanded ? this.state.textWhenExpanded : this.state.text}
256257
id={`text-input-${id}`}
257258
aria-label={textAriaLabel}
258259
{...(isCode && { dir: 'ltr' })}
@@ -266,7 +267,7 @@ class ClipboardCopy extends React.Component<ClipboardCopyProps, ClipboardCopySta
266267
textId={`text-input-${id}`}
267268
aria-label={hoverTip}
268269
onClick={(event: any) => {
269-
onCopy(event, this.state.text);
270+
onCopy(event, this.state.expanded ? this.state.textWhenExpanded : this.state.text);
270271
this.setState({ copied: true });
271272
}}
272273
onTooltipHidden={() => this.setState({ copied: false })}

0 commit comments

Comments
 (0)