Skip to content

Commit ce7f315

Browse files
authored
revert: revert accessbility (#195)
* Revert "Fix crash in useAccessibility (#193)" This reverts commit 60b63b2. * Revert "Accessible dropdown (#182)" This reverts commit 957e16f.
1 parent d08204b commit ce7f315

File tree

5 files changed

+5
-137
lines changed

5 files changed

+5
-137
lines changed

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -52,7 +52,7 @@
5252
"jquery": "^3.3.1",
5353
"less": "^3.11.1",
5454
"np": "^6.0.0",
55-
"rc-menu": "^9.2.1",
55+
"rc-menu": "^8.0.0-alpha.2",
5656
"rc-util": "^5.2.0",
5757
"react": "^16.11.0",
5858
"react-dom": "^16.0.0",

src/Dropdown.tsx

Lines changed: 2 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,6 @@ import type {
99
ActionType,
1010
} from 'rc-trigger/lib/interface';
1111
import Placements from './placements';
12-
import useAccessibility from './hooks/useAccessibility';
1312

1413
export interface DropdownProps
1514
extends Pick<
@@ -67,18 +66,6 @@ function Dropdown(props: DropdownProps, ref) {
6766
const triggerRef = React.useRef(null);
6867
React.useImperativeHandle(ref, () => triggerRef.current);
6968

70-
const menuRef = React.useRef(null);
71-
const menuClassName = `${prefixCls}-menu`;
72-
73-
const { returnFocus } = useAccessibility({
74-
visible: mergedVisible,
75-
setTriggerVisible,
76-
triggerRef,
77-
menuRef,
78-
menuClassName,
79-
onVisibleChange: props.onVisibleChange,
80-
});
81-
8269
const getOverlayElement = (): React.ReactElement => {
8370
const { overlay } = props;
8471
let overlayElement: React.ReactElement;
@@ -101,7 +88,6 @@ function Dropdown(props: DropdownProps, ref) {
10188
if (overlayProps.onClick) {
10289
overlayProps.onClick(e);
10390
}
104-
returnFocus();
10591
};
10692

10793
const onVisibleChange = (newVisible: boolean) => {
@@ -115,7 +101,7 @@ function Dropdown(props: DropdownProps, ref) {
115101
const getMenuElement = () => {
116102
const overlayElement = getOverlayElement();
117103
const extraOverlayProps = {
118-
prefixCls: menuClassName,
104+
prefixCls: `${prefixCls}-menu`,
119105
onClick,
120106
};
121107
if (typeof overlayElement.type === 'string') {
@@ -124,7 +110,7 @@ function Dropdown(props: DropdownProps, ref) {
124110
return (
125111
<>
126112
{arrow && <div className={`${prefixCls}-arrow`} />}
127-
<div ref={menuRef}>{React.cloneElement(overlayElement, extraOverlayProps)}</div>
113+
{React.cloneElement(overlayElement, extraOverlayProps)}
128114
</>
129115
);
130116
};

src/hooks/useAccessibility.ts

Lines changed: 0 additions & 79 deletions
This file was deleted.

tests/basic.test.js

Lines changed: 1 addition & 41 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,6 @@
11
/* eslint-disable react/button-has-type,react/no-find-dom-node,react/no-render-return-value,object-shorthand,func-names,max-len */
22
import React from 'react';
3-
import ReactDOM from 'react-dom';
4-
import { mount, shallow } from 'enzyme';
5-
import { act } from 'react-dom/test-utils';
3+
import { mount } from 'enzyme';
64
import Menu, { Divider, Item as MenuItem } from 'rc-menu';
75
import { spyElementPrototypes } from 'rc-util/lib/test/domHook';
86
import { getPopupDomNode, sleep } from './utils';
@@ -286,42 +284,4 @@ describe('dropdown', () => {
286284
getPopupDomNode(dropdown).firstElementChild.classList.contains('rc-dropdown-arrow'),
287285
).toBe(true);
288286
});
289-
290-
it('Keyboard navigation works', async () => {
291-
const overlay = (
292-
<Menu>
293-
<MenuItem key="1">
294-
<span className="my-menuitem">one</span>
295-
</MenuItem>
296-
<MenuItem key="2">two</MenuItem>
297-
</Menu>
298-
);
299-
const dropdown = mount(
300-
<Dropdown trigger={['click']} overlay={overlay} className="trigger-button">
301-
<button className="my-button">open</button>
302-
</Dropdown>,
303-
{ attachTo: document.body },
304-
);
305-
const trigger = dropdown.find('.my-button');
306-
307-
// Open menu
308-
trigger.simulate('click');
309-
await sleep(200);
310-
expect(getPopupDomNode(dropdown).classList.contains('rc-dropdown-hidden')).toBe(false);
311-
312-
// Close menu with Esc
313-
window.dispatchEvent(new KeyboardEvent('keydown', { keyCode: 27 })); // Esc
314-
await sleep(200);
315-
expect(document.activeElement.className).toContain('my-button');
316-
317-
// Open menu
318-
trigger.simulate('click');
319-
await sleep(200);
320-
expect(getPopupDomNode(dropdown).classList.contains('rc-dropdown-hidden')).toBe(false);
321-
322-
// Close menu with Tab
323-
window.dispatchEvent(new KeyboardEvent('keydown', { keyCode: 9 })); // Tab
324-
await sleep(200);
325-
expect(document.activeElement.className).toContain('my-button');
326-
});
327287
});

tsconfig.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,3 +22,4 @@
2222
"tslint-config-prettier"
2323
]
2424
}
25+

0 commit comments

Comments
 (0)