diff --git a/app/javascript/flavours/glitch/features/compose/components/dropdown_icon_button.jsx b/app/javascript/flavours/glitch/features/compose/components/dropdown_icon_button.jsx
index 0ced5a04ad..9774d4260e 100644
--- a/app/javascript/flavours/glitch/features/compose/components/dropdown_icon_button.jsx
+++ b/app/javascript/flavours/glitch/features/compose/components/dropdown_icon_button.jsx
@@ -5,7 +5,7 @@ import Overlay from 'react-overlays/Overlay';
import { IconButton } from 'flavours/glitch/components/icon_button';
-import DropdownMenu from './dropdown_menu';
+import { PrivacyDropdownMenu } from './privacy_dropdown_menu';
export const DropdownIconButton = ({ value, disabled, icon, onChange, iconComponent, title, options }) => {
const containerRef = useRef(null);
@@ -53,7 +53,7 @@ export const DropdownIconButton = ({ value, disabled, icon, onChange, iconCompon
{({ props, placement }) => (
-
{
- if (this.node && !this.node.contains(e.target)) {
- this.props.onClose();
- e.stopPropagation();
- }
- };
-
- handleKeyDown = e => {
- const { items } = this.props;
- const value = e.currentTarget.getAttribute('data-index');
- const index = items.findIndex(item => {
- return (item.value === value);
- });
- let element = null;
-
- switch(e.key) {
- case 'Escape':
- this.props.onClose();
- break;
- case 'Enter':
- this.handleClick(e);
- break;
- case 'ArrowDown':
- element = this.node.childNodes[index + 1] || this.node.firstChild;
- break;
- case 'ArrowUp':
- element = this.node.childNodes[index - 1] || this.node.lastChild;
- break;
- case 'Tab':
- if (e.shiftKey) {
- element = this.node.childNodes[index - 1] || this.node.lastChild;
- } else {
- element = this.node.childNodes[index + 1] || this.node.firstChild;
- }
- break;
- case 'Home':
- element = this.node.firstChild;
- break;
- case 'End':
- element = this.node.lastChild;
- break;
- }
-
- if (element) {
- element.focus();
- this.props.onChange(element.getAttribute('data-index'));
- e.preventDefault();
- e.stopPropagation();
- }
- };
-
- handleClick = e => {
- const value = e.currentTarget.getAttribute('data-index');
-
- e.preventDefault();
-
- this.props.onClose();
- this.props.onChange(value);
- };
-
- componentDidMount () {
- document.addEventListener('click', this.handleDocumentClick, { capture: true });
- document.addEventListener('touchend', this.handleDocumentClick, listenerOptions);
- if (this.focusedItem) this.focusedItem.focus({ preventScroll: true });
- }
-
- componentWillUnmount () {
- document.removeEventListener('click', this.handleDocumentClick, { capture: true });
- document.removeEventListener('touchend', this.handleDocumentClick, listenerOptions);
- }
-
- setRef = c => {
- this.node = c;
- };
-
- setFocusRef = c => {
- this.focusedItem = c;
- };
-
- render () {
- const { style, items, value } = this.props;
-
- return (
-
- {items.map(item => (
-
-
-
-
-
-
- {item.text}
- {item.meta}
-
-
- ))}
-
- );
- }
-
-}
-
-export default DropdownMenu;