fix(sw): 2026-10-21 SW design review and responsive header without More from 760px

User-approved design review (2026-10-21):
- SW Header: from 760px up nothing moves into More; the five menus stay with their
  titles (titles and values ellipsize), file name shrinks to 96px. Open next to the
  logo no longer blocks field shrinking above 760px (760/768 overflow fixed, also for
  configured `controls` headers). Dropdown yellow ring inside the button, black seam.
- Property Bar values as read-only red text; property popup "=" labels, read-only
  black values, per-entry hover with pointer.
- Home Menu recent files (3 rows, path + name caption, empty preview), Footer + slot
  guide off by default, Viewer file list without icons, Storybook widths 1920-760.
- Tests: old More expectations (integrated-improvement, keyboard-dismiss,
  footer-popup-viewer-refinement, storybook-cleanup-stage1) moved to the new rule;
  functional checks kept.
This commit is contained in:
shkim4 committed 2026-10-21 17:29:25 +09:00
1 parent a25d2b31c5
commit 2fc1b3e108
37 files changed
+447 -211

No files matched your search

+21 -7
View File
@@ -53,6 +53,9 @@
--hm-sw-recent-files-row-hover-color: var(--hm-sw-header-layer-row-hover-color);
--hm-sw-recent-files-preview-width: 310px;
--hm-sw-recent-files-preview-background: #62533d;
/* No preview (2026-10-21 design): the panel brown behind a red prohibition sign. */
--hm-sw-recent-files-preview-body-background: var(--hm-sw-recent-files-preview-background);
--hm-sw-recent-files-preview-none-color: #ff0000;
position: relative;
isolation: isolate;
@@ -241,7 +244,7 @@
padding: 1px 23px 0;
color: var(--hm-sw-home-menu-title-color);
font-size: var(--hm-sw-header-label-size);
font-weight: 400;
font-weight: 700; /* 2026-10-21 user request: group title Bold (was Figma 400). */
line-height: 14px;
letter-spacing: 0.02em;
white-space: nowrap;
@@ -319,10 +322,11 @@
pointer-events: none;
}
/* 18 x 18 icon slot at (31, 6); larger art is centered on it and may overflow (Figma assets carry shadows). */
/* 18 x 18 icon slot at (31, 4); larger art is centered on it and may overflow (Figma assets carry shadows).
2026-10-21 user decision: top 4px (was Figma 6px) so the icon no longer touches the bold label below it. */
.hm-sw-home-menu__icon {
position: absolute;
top: 6px;
top: 4px;
left: 31px;
display: grid;
place-items: center;
@@ -406,15 +410,17 @@
.hm-sw-recent-files__name,
.hm-sw-recent-files__path {
display: block;
overflow: hidden;
/* clip (not hidden): overflow-clip-margin only applies to clip, so the outline of the first glyph is not cut at the
left edge (2026-10-21 hover clipping report); the ellipsis and the text box are unchanged. */
overflow: clip;
overflow-clip-margin: var(--hm-sw-header-text-outline-room);
white-space: nowrap;
text-overflow: ellipsis;
letter-spacing: 0.04em;
}
.hm-sw-recent-files__name { color: var(--hm-sw-header-text-color); font-size: var(--hm-sw-header-font-size); font-weight: 700; line-height: 16px; text-shadow: var(--hm-sw-header-text-outline); }
.hm-sw-recent-files__name { color: var(--hm-sw-header-text-color); font-size: var(--hm-sw-header-font-size); font-weight: 700; line-height: 20px; text-shadow: var(--hm-sw-header-text-outline); }
/* Path Bold with its 12px black outline (2026-10-20 user request), like the file name above (700 + 14px outline). */
.hm-sw-recent-files__path { color: var(--hm-sw-recent-files-path-color); font-size: var(--hm-sw-header-label-size); font-weight: 700; line-height: 14px; opacity: 0.6; text-shadow: var(--hm-sw-header-label-outline); }
.hm-sw-recent-files__path { color: var(--hm-sw-recent-files-path-color); font-size: var(--hm-sw-header-label-size); font-weight: 700; line-height: 16px; opacity: 0.6; text-shadow: var(--hm-sw-header-label-outline); }
.hm-sw-recent-files__row:is(:hover, [data-hovered="true"]):not(:disabled) { background: var(--hm-sw-recent-files-row-hover-background); }
.hm-sw-recent-files__row:is(:hover, [data-hovered="true"]):not(:disabled) .hm-sw-recent-files__name { color: var(--hm-sw-recent-files-row-hover-color); }
.hm-sw-recent-files__empty { padding: 16px 45px; color: var(--hm-sw-recent-files-path-color); font-size: var(--hm-sw-header-label-size); opacity: 0.6; }
@@ -471,6 +477,14 @@
font-size: var(--hm-sw-header-font-size);
line-height: 18px;
letter-spacing: 0.02em;
/* 2026-10-21: path + file name on one line; a long path is cut at its start (…) so the file name stays visible.
Right-to-left only for the ellipsis side; the text is an isolated left-to-right span (dir="ltr"), centered. */
direction: rtl;
text-align: center;
}
.hm-sw-recent-files__preview-body { position: relative; width: 100%; height: 243px; overflow: hidden; border-radius: 0 0 4px 0; }
.hm-sw-recent-files__preview-body { position: relative; width: 100%; height: 243px; overflow: hidden; border-radius: 0 0 4px 0; background: var(--hm-sw-recent-files-preview-body-background); }
/* 2026-10-21 design: no image in the preview; the body shows the "no preview" prohibition sign, centered and sized to
the 243px body (no image file: inline SVG drawn with CSS strokes). */
.hm-sw-recent-files__preview-body { display: grid; place-items: center; }
.hm-sw-recent-files__preview-body > .hm-sw-recent-files__preview-none { display: block; width: 200px; height: 200px; fill: none; stroke: var(--hm-sw-recent-files-preview-none-color); stroke-width: 11; }
.hm-sw-recent-files__preview-body > :is(img, svg, canvas) { display: block; width: 100%; height: 100%; object-fit: cover; }