Skip to content

Commit 261b2df

Browse files
authored
Revert "[APM][A11y] Fix Waterfall Flyout not being accessible by keyboard" (elastic#229835)
Reverts elastic#229411
1 parent 2fb428a commit 261b2df

File tree

6 files changed

+12
-41
lines changed

6 files changed

+12
-41
lines changed

x-pack/solutions/observability/plugins/apm/ftr_e2e/cypress/e2e/service_overview/otel_edot_service_overview_and_transactions.cy.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -124,8 +124,8 @@ describe('Service Overview', () => {
124124

125125
cy.getByTestSubj('apmWaterfallButton').should('exist');
126126
cy.getByTestSubj('waterfall').should('exist');
127-
cy.getByTestSubj('accordionWaterfall').should('exist');
128-
cy.getByTestSubj('accordionWaterfall').click();
127+
cy.getByTestSubj('waterfallItem').should('exist');
128+
cy.getByTestSubj('waterfallItem').click();
129129
cy.contains('h4', 'Transaction details');
130130
cy.getByTestSubj('apmTransactionDetailLinkLink').should('exist');
131131
cy.getByTestSubj('apmTransactionDetailLinkLink').contains(

x-pack/solutions/observability/plugins/apm/ftr_e2e/cypress/e2e/service_overview/otel_service_overview_and_transactions.cy.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -140,8 +140,8 @@ describe('Service Overview', () => {
140140

141141
cy.getByTestSubj('apmWaterfallButton').should('exist');
142142
cy.getByTestSubj('waterfall').should('exist');
143-
cy.getByTestSubj('accordionWaterfall').should('exist');
144-
cy.getByTestSubj('accordionWaterfall').first().click();
143+
cy.getByTestSubj('waterfallItem').should('exist');
144+
cy.getByTestSubj('waterfallItem').first().click();
145145
cy.contains('h4', 'Transaction details');
146146
cy.getByTestSubj('apmTransactionDetailLinkLink').should('exist');
147147
cy.getByTestSubj('apmTransactionDetailLinkLink').contains('parent-synth');

x-pack/solutions/observability/plugins/apm/ftr_e2e/cypress/e2e/transaction_details/large_trace_in_waterfall/large_traces_in_waterfall.cy.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,7 @@ describe('Large Trace in waterfall', () => {
4343

4444
it('renders waterfall items', () => {
4545
// it renders a virtual list, so the number of items rendered is not the same as the number of items in the trace
46-
cy.getByTestSubj('accordionWaterfall').should('have.length.at.least', 39);
46+
cy.getByTestSubj('waterfallItem').should('have.length.at.least', 39);
4747
cy.getByTestSubj('waterfall').should('have.css', 'height').and('eq', '10011px');
4848
});
4949

@@ -73,7 +73,7 @@ describe('Large Trace in waterfall', () => {
7373

7474
it('renders waterfall items', () => {
7575
// it renders a virtual list, so the number of items rendered is not the same as the number of items in the trace
76-
cy.getByTestSubj('accordionWaterfall').should('have.length.at.least', 39);
76+
cy.getByTestSubj('waterfallItem').should('have.length.at.least', 39);
7777
cy.getByTestSubj('waterfall').should('have.css', 'height').and('eq', '10011px');
7878
});
7979

x-pack/solutions/observability/plugins/apm/public/components/app/transaction_details/waterfall_with_summary/waterfall_container/waterfall/accordion_waterfall.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -200,7 +200,7 @@ const WaterfallNode = React.memo((props: WaterfallNodeProps) => {
200200

201201
return (
202202
<EuiAccordion
203-
data-test-subj="accordionWaterfall"
203+
data-test-subj="waterfallItem"
204204
style={{ position: 'relative' }}
205205
buttonClassName={`button_${node.item.id}`}
206206
id={node.item.id}

x-pack/solutions/observability/plugins/apm/public/components/app/transaction_details/waterfall_with_summary/waterfall_container/waterfall/waterfall_item.tsx

Lines changed: 3 additions & 33 deletions
Original file line numberDiff line numberDiff line change
@@ -25,10 +25,7 @@ import { SyncBadge } from './badge/sync_badge';
2525
import { FailureBadge } from './failure_badge';
2626
import { OrphanItemTooltipIcon } from './orphan_item_tooltip_icon';
2727
import { SpanMissingDestinationTooltip } from './span_missing_destination_tooltip';
28-
import type {
29-
IWaterfallSpan,
30-
IWaterfallSpanOrTransaction,
31-
} from './waterfall_helpers/waterfall_helpers';
28+
import type { IWaterfallSpanOrTransaction } from './waterfall_helpers/waterfall_helpers';
3229

3330
type ItemType = 'transaction' | 'span' | 'error';
3431

@@ -260,43 +257,16 @@ export function WaterfallItem({
260257

261258
const waterfallItemFlyoutTab = 'metadata';
262259

263-
const itemName =
264-
item.docType === 'transaction'
265-
? item.doc.transaction.name
266-
: (item as IWaterfallSpan).doc.span.name;
267-
268260
return (
269261
<Container
270262
ref={waterfallItemRef}
271263
type={item.docType}
272264
timelineMargins={timelineMargins}
273265
isSelected={isSelected}
274266
hasToggle={hasToggle}
275-
data-test-subj="waterfallItem"
276-
onKeyDown={(e) => {
277-
if (onClick && (e.key === 'Enter' || e.key === ' ')) {
278-
// Ignore event if it comes from a link
279-
if (e.target instanceof HTMLAnchorElement) {
280-
return;
281-
}
282-
e.preventDefault(); // Prevent scroll if Space is pressed
283-
onClick(item.id);
284-
}
285-
}}
286-
tabIndex={onClick ? 0 : -1}
287-
role={onClick ? 'button' : undefined}
288-
aria-label={
289-
onClick
290-
? i18n.translate('xpack.apm.waterfall.openDetailsButton', {
291-
defaultMessage: 'View details for {name}',
292-
values: {
293-
name: itemName,
294-
},
295-
})
296-
: undefined
297-
}
298-
onClick={() => {
267+
onClick={(e: React.MouseEvent) => {
299268
if (onClick) {
269+
e.stopPropagation();
300270
onClick(waterfallItemFlyoutTab);
301271
}
302272
}}

x-pack/solutions/observability/plugins/apm/public/components/app/transaction_details/waterfall_with_summary/waterfall_container/waterfall_container.test.tsx

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,8 @@ describe('WaterfallContainer', () => {
2929
const { getAllByRole } = renderWithTheme(<Example />);
3030
const buttons = await waitFor(() => getAllByRole('button'));
3131
const parentItem = buttons[1];
32-
const childItem = buttons[3];
32+
const childItem = buttons[2];
33+
3334
await userEvent.click(parentItem);
3435

3536
expect(parentItem).toHaveAttribute('aria-expanded', 'false');

0 commit comments

Comments
 (0)