diff --git a/src/frontend/apps/e2e/__tests__/app-impress/doc-export.spec.ts b/src/frontend/apps/e2e/__tests__/app-impress/doc-export.spec.ts index ba2945eae5..226c1634d2 100644 --- a/src/frontend/apps/e2e/__tests__/app-impress/doc-export.spec.ts +++ b/src/frontend/apps/e2e/__tests__/app-impress/doc-export.spec.ts @@ -37,6 +37,11 @@ test.describe('Doc Export', () => { ), ).toBeVisible(); await expect(page.getByRole('combobox', { name: 'Format' })).toBeVisible(); + const formatSelectToggle = page.locator( + '.--docs--modal-export-content .c__select__inner__actions__open', + ); + await expect(formatSelectToggle).toHaveAttribute('aria-hidden', 'true'); + await expect(formatSelectToggle).toHaveAttribute('tabindex', '-1'); await expect( page.getByRole('button', { name: 'Close the download modal', diff --git a/src/frontend/apps/impress/src/features/docs/doc-export/components/ModalExport.tsx b/src/frontend/apps/impress/src/features/docs/doc-export/components/ModalExport.tsx index 780654ca0d..c988faf9d1 100644 --- a/src/frontend/apps/impress/src/features/docs/doc-export/components/ModalExport.tsx +++ b/src/frontend/apps/impress/src/features/docs/doc-export/components/ModalExport.tsx @@ -14,7 +14,13 @@ import { DocumentProps, pdf } from '@react-pdf/renderer'; import jsonemoji from 'emoji-datasource-apple' with { type: 'json' }; import i18next from 'i18next'; import JSZip from 'jszip'; -import { cloneElement, isValidElement, useState } from 'react'; +import { + cloneElement, + isValidElement, + useEffect, + useRef, + useState, +} from 'react'; import { useTranslation } from 'react-i18next'; import { css } from 'styled-components'; @@ -59,6 +65,16 @@ export const ModalExport = ({ onClose, doc }: ModalExportProps) => { ); const { untitledDocument } = useTrans(); const mediaUrl = useMediaUrl(); + const formatSelectRef = useRef(null); + + useEffect(() => { + const toggleButton = formatSelectRef.current?.querySelector( + '.c__select__inner__actions__open', + ); + + toggleButton?.setAttribute('aria-hidden', 'true'); + toggleButton?.setAttribute('tabindex', '-1'); + }); const formatOptions = [ { label: t('PDF'), value: DocDownloadFormat.PDF }, @@ -271,16 +287,18 @@ export const ModalExport = ({ onClose, doc }: ModalExportProps) => { 'Export your document to print or download in .docx, .odt, .pdf or .html(zip) format.', )} - + setFormat(options.target.value as DocDownloadFormat) + } + /> + {isExporting && (