diff --git a/.jules/palette.md b/.jules/palette.md index 9a12c9d..0d296c6 100644 --- a/.jules/palette.md +++ b/.jules/palette.md @@ -48,3 +48,7 @@ ## 2024-08-01 - 네이티브 브라우저 UI의 다크 모드 지원 강제 **학습:** CSS 미디어 쿼리(`@media (prefers-color-scheme: dark)`)를 통해 다크 모드를 지원하더라도, 브라우저의 네이티브 UI 요소(스크롤바, 기본 폼 컨트롤, 기본 백그라운드 등)는 테마 변경을 인식하지 못해 어두운 테마 환경에서 밝은 스크롤바가 표시되는 등 시각적 불일치를 초래합니다. **조치:** 항상 HTML 문서의 `` 영역에 `` 메타 태그를 명시적으로 추가하여 브라우저 수준에서 사용자의 시스템 테마(다크 모드 등)를 완전히 상속받아 일관성 있는 네이티브 UI를 렌더링하도록 보장하십시오. + +## 2024-08-01 - 빈 상태에서의 시각적 일관성 향상 +**학습:** 파일이나 디렉토리가 없는 빈 상태("이 디렉토리는 비어 있습니다.")를 표시할 때 텍스트만 렌더링하면, 다른 디렉토리나 파일 목록 항목들이 공통적으로 가지고 있는 아이콘 구조와 이질감이 생겨 시각적인 일관성이 떨어지고 텍스트가 눈에 잘 띄지 않을 수 있습니다. +**조치:** 빈 상태를 나타내는 요소에도 기존 목록과 일관된 flexbox 레이아웃(`dir-link`)과 장식용 아이콘(`` - 열린 폴더)을 추가하여 시각적 흐름과 일관성을 유지하십시오. diff --git a/src/main/kotlin/html4tree/main.kt b/src/main/kotlin/html4tree/main.kt index b455862..b4be098 100644 --- a/src/main/kotlin/html4tree/main.kt +++ b/src/main/kotlin/html4tree/main.kt @@ -259,7 +259,7 @@ fun process_dir(curr_dir: File, excludeSet: Set? = null, dirFiles: Array list-style-type: none; padding-left: 0; } - a.dir-link { + .dir-link { display: flex; align-items: flex-start; gap: 0.5rem; @@ -370,7 +370,7 @@ ${cssContent} } if(l.isEmpty()){ - l.append("""
  • 이 디렉토리는 비어 있습니다.
  • """) + l.append("""
  • """) l.append('\n') } diff --git a/src/test/kotlin/html4tree/MainTest.kt b/src/test/kotlin/html4tree/MainTest.kt index 1349471..531221a 100644 --- a/src/test/kotlin/html4tree/MainTest.kt +++ b/src/test/kotlin/html4tree/MainTest.kt @@ -332,8 +332,8 @@ class MainTest { assertFalse(htmlContent.contains("unsafe-inline")) assertFalse(htmlContent.contains("style=\"")) assertFalse(htmlContent.contains("nonce=\"")) - assertTrue(htmlContent.contains("a.dir-link")) - assertTrue(htmlContent.contains("class=\"dir-link\"")) + assertTrue(htmlContent.contains(".dir-link")) + assertTrue(htmlContent.contains("class=\"empty-dir dir-link\"") || htmlContent.contains("class=\"dir-link\"")) assertTrue(htmlContent.contains(".empty-dir")) assertTrue(htmlContent.contains("prefers-color-scheme: dark")) assertTrue(htmlContent.contains("font-family: system-ui, -apple-system, BlinkMacSystemFont, \"Segoe UI\", sans-serif;"))