From 1f84e6aa18fcde7343106c6bc7f0b253fc21582e Mon Sep 17 00:00:00 2001 From: unknown Date: Wed, 26 Aug 2026 17:32:26 +0800 Subject: [PATCH] =?UTF-8?q?=E8=BF=9B=E8=A1=8C=E4=BA=86=E4=B8=80=E4=BA=9B?= =?UTF-8?q?=E5=B0=8F=E4=BF=AE=E5=A4=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- assets/css/frontend/pages/submit.css | 5 +++++ assets/js/front-submit-editor.js | 6 +++--- tests/widget-system/post-editor-reference-contract.test.cjs | 3 +++ 3 files changed, 11 insertions(+), 3 deletions(-) diff --git a/assets/css/frontend/pages/submit.css b/assets/css/frontend/pages/submit.css index 2c7ea2d4..50914a79 100644 --- a/assets/css/frontend/pages/submit.css +++ b/assets/css/frontend/pages/submit.css @@ -149,6 +149,11 @@ box-shadow: 0 18px 60px rgba(0, 0, 0, 0.2); } +.aksrt-editor-media__dialog:focus { + outline: 0; + box-shadow: 0 18px 60px rgba(0, 0, 0, 0.2); +} + .aksrt-editor-media__close { position: absolute; z-index: 2; diff --git a/assets/js/front-submit-editor.js b/assets/js/front-submit-editor.js index 4e97232e..69a469bd 100644 --- a/assets/js/front-submit-editor.js +++ b/assets/js/front-submit-editor.js @@ -110,7 +110,7 @@ root.innerHTML = '' + - '
' + + '
' + '' + '

' + @@ -268,9 +268,9 @@ }; activeModal = { root: root, onKeydown: onKeydown }; document.addEventListener('keydown', onKeydown); - var focusTarget = root.querySelector('[data-editor-media-tab].is-active'); + var focusTarget = root.querySelector('.aksrt-editor-media__dialog'); if (focusTarget) { - focusTarget.focus(); + focusTarget.focus({ preventScroll: true }); } } diff --git a/tests/widget-system/post-editor-reference-contract.test.cjs b/tests/widget-system/post-editor-reference-contract.test.cjs index c9d935fd..c2d687f5 100644 --- a/tests/widget-system/post-editor-reference-contract.test.cjs +++ b/tests/widget-system/post-editor-reference-contract.test.cjs @@ -65,6 +65,9 @@ test('front submit image and visibility actions live in the TinyMCE toolbar', () assert.match(editor, /type:\s*'menubutton'/); assert.match(editor, /data-editor-media-tab="upload"/); assert.match(editor, /data-editor-media-tab="external"/); + assert.match(editor, /class="aksrt-editor-media__dialog" tabindex="-1"/); + assert.match(editor, /querySelector\('\.aksrt-editor-media__dialog'\)/); + assert.doesNotMatch(editor, /focusTarget\s*=\s*root\.querySelector\('\[data-editor-media-tab\]\.is-active'\)/); assert.match(editor, /\(cfg\.uploads \|\| \{\}\)\.image/); assert.match(page, /'canUploadImage'\s*=>\s*!empty\(\$ctx\['can_upload_img'\]\)/); assert.doesNotMatch(main, /newposts-editor-tools|data-insert-shortcode|data-insert-upload-image/);