Skip to content

Commit a8873e9

Browse files
authored
fix(replay): fix buttons from being cutoff (#103522)
Updated the breadcrumb navigation to use StyledButtonBar, ensuring buttons are not cut off due to overflow.
1 parent 9e3ffda commit a8873e9

File tree

1 file changed

+45
-41
lines changed

1 file changed

+45
-41
lines changed

static/app/views/replays/detail/header/replayDetailsPageBreadcrumbs.tsx

Lines changed: 45 additions & 41 deletions
Original file line numberDiff line numberDiff line change
@@ -104,47 +104,45 @@ export default function ReplayDetailsPageBreadcrumbs({readerResult}: Props) {
104104
<Flex>
105105
<Flex align="center" gap="xs">
106106
{organization.features.includes('replay-playlist-view') && (
107-
<Flex>
108-
<ButtonBar merged gap="0">
109-
<LinkButton
110-
size="xs"
111-
icon={<IconPrevious />}
112-
disabled={!previousReplay}
113-
to={{
114-
pathname: previousReplay
115-
? makeReplaysPathname({
116-
path: `/${previousReplay.id}/`,
117-
organization,
118-
})
119-
: undefined,
120-
query: initialLocation.current.query,
121-
}}
122-
onClick={() =>
123-
trackAnalytics('replay.details-playlist-clicked', {
124-
direction: 'previous',
125-
organization,
126-
})
127-
}
128-
/>
129-
<LinkButton
130-
size="xs"
131-
icon={<IconNext />}
132-
disabled={!nextReplay}
133-
to={{
134-
pathname: nextReplay
135-
? makeReplaysPathname({path: `/${nextReplay.id}/`, organization})
136-
: undefined,
137-
query: initialLocation.current.query,
138-
}}
139-
onClick={() =>
140-
trackAnalytics('replay.details-playlist-clicked', {
141-
direction: 'next',
142-
organization,
143-
})
144-
}
145-
/>
146-
</ButtonBar>
147-
</Flex>
107+
<StyledButtonBar merged gap="0">
108+
<LinkButton
109+
size="xs"
110+
icon={<IconPrevious />}
111+
disabled={!previousReplay}
112+
to={{
113+
pathname: previousReplay
114+
? makeReplaysPathname({
115+
path: `/${previousReplay.id}/`,
116+
organization,
117+
})
118+
: undefined,
119+
query: initialLocation.current.query,
120+
}}
121+
onClick={() =>
122+
trackAnalytics('replay.details-playlist-clicked', {
123+
direction: 'previous',
124+
organization,
125+
})
126+
}
127+
/>
128+
<LinkButton
129+
size="xs"
130+
icon={<IconNext />}
131+
disabled={!nextReplay}
132+
to={{
133+
pathname: nextReplay
134+
? makeReplaysPathname({path: `/${nextReplay.id}/`, organization})
135+
: undefined,
136+
query: initialLocation.current.query,
137+
}}
138+
onClick={() =>
139+
trackAnalytics('replay.details-playlist-clicked', {
140+
direction: 'next',
141+
organization,
142+
})
143+
}
144+
/>
145+
</StyledButtonBar>
148146
)}
149147
<Flex
150148
align="center"
@@ -198,3 +196,9 @@ const StyledBreadcrumbs = styled(Breadcrumbs)`
198196
const ShortId = styled('div')`
199197
margin-left: 10px;
200198
`;
199+
200+
// Breadcrumbs have overflow: hidden, so we need to set the margin-top to 2px
201+
// to avoid the buttons from being cut off.
202+
const StyledButtonBar = styled(ButtonBar)`
203+
margin-top: 2px;
204+
`;

0 commit comments

Comments
 (0)