관리자 검색창 한글 IME 조합 검색 및 모바일 가로 트랙 세로 스크롤 문제 수정

- IME 조합 중에도 검색되는 공통 컴포저블 useImeSearchInput 추가
- 글/멤버/미디어/설정/태그 필터/미디어 모달 검색 IME 조합 대응
- 홈 추천글·페이지 섹션 가로 트랙 touch-action pan-x 제거로 모바일 세로 스크롤 복구
- v1.10.29

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
2026-07-03 17:03:31 +09:00
parent 58fbae5a03
commit b669d34e83
13 changed files with 169 additions and 12 deletions

View File

@@ -592,7 +592,11 @@ const bindCarouselDragDocumentEvents = () => {
* @returns {void}
*/
const startCarouselDrag = (event, key) => {
if (event.pointerType === 'mouse' && event.button !== 0) {
// 터치/펜은 브라우저 네이티브 가로 스크롤에 맡겨 세로(페이지) 스크롤이 막히지 않게 한다.
if (event.pointerType !== 'mouse') {
return
}
if (event.button !== 0) {
return
}
@@ -767,7 +771,7 @@ watch([latestPosts, hasHomeInfeedAd], () => {
</div>
<div
ref="featuredTrackRef"
class="featured-posts-track mt-4 flex cursor-grab select-none snap-x snap-mandatory gap-6 overflow-x-auto overscroll-x-contain scroll-smooth pb-1 touch-pan-x active:cursor-grabbing [-webkit-overflow-scrolling:touch] [--slides:1.4] sm:[--slides:1.6] lg:[--slides:2.6] [-ms-overflow-style:none] [scrollbar-width:none] [&_*]:select-none [&_img]:pointer-events-none [&_img]:select-none [&::-webkit-scrollbar]:hidden"
class="featured-posts-track mt-4 flex cursor-grab select-none snap-x snap-mandatory gap-6 overflow-x-auto overscroll-x-contain scroll-smooth pb-1 active:cursor-grabbing [-webkit-overflow-scrolling:touch] [--slides:1.4] sm:[--slides:1.6] lg:[--slides:2.6] [-ms-overflow-style:none] [scrollbar-width:none] [&_*]:select-none [&_img]:pointer-events-none [&_img]:select-none [&::-webkit-scrollbar]:hidden"
@pointerdown="startCarouselDrag($event, 'featured')"
@click.capture="preventCarouselClickAfterDrag"
@dragstart="preventNativeCarouselDrag"
@@ -841,7 +845,7 @@ watch([latestPosts, hasHomeInfeedAd], () => {
</div>
<div
:ref="(el) => setPageShelfTrackRef(shelf.id, el)"
class="home-pages-section__rail -mt-2 flex w-full max-w-full cursor-grab select-none snap-x snap-mandatory gap-4 overflow-x-auto overscroll-x-contain scroll-smooth pb-3 pt-6 touch-pan-x active:cursor-grabbing [-webkit-overflow-scrolling:touch] [scrollbar-width:none] [&_*]:select-none [&_img]:pointer-events-none [&_img]:select-none [&::-webkit-scrollbar]:hidden"
class="home-pages-section__rail -mt-2 flex w-full max-w-full cursor-grab select-none snap-x snap-mandatory gap-4 overflow-x-auto overscroll-x-contain scroll-smooth pb-3 pt-6 active:cursor-grabbing [-webkit-overflow-scrolling:touch] [scrollbar-width:none] [&_*]:select-none [&_img]:pointer-events-none [&_img]:select-none [&::-webkit-scrollbar]:hidden"
@scroll.passive="updatePageShelfScrollEdges(shelf.id, $event.currentTarget)"
@pointerdown="startCarouselDrag($event, shelf.id)"
@click.capture="preventCarouselClickAfterDrag"