feat(settings): fold the notification and sound sections on the General tab
Settings → General opened with every knob of both notification sections on screen — a permission card, a delivery gate, six event switches, a volume slider and five tone pickers — which is more page than anyone can scan to reach the sections below them. Both now arrive folded whatever their master switch says, and `SettingsSection` grew the disclosure grammar the appearance tab's custom-style block already uses: a chevron on the heading, and a hairline under it once open. The whole heading row folds it, not just the title. The button still has to sit inside the `h2` — `role=button` flattens its descendants, which would drop the section out of the page's heading list — so it stretches its hit area, and its focus ring, across the row with `before:inset-0`, and the control beside it is positioned to stay above that overlay. Hover is painted from the trigger rather than from the row, so pointing at the master switch leaves the row plain: clicking there folds nothing. Turning a section on unfolds it in the same gesture, since asking for the feature is asking to see it; arriving at the tab never does. A master switch that gates every child leaves nothing to disclose, so the section falls back to the plain heading line it already was rather than offering a chevron that opens onto an empty box — and the wrapper stays mounted across that change, because rebuilding the header drops keyboard focus from the switch mid-toggle. The desktop section also stops claiming its delivering identity from the backend until it is actually unfolded, which is what its own comment always said it did.
X
xintaofei committed
8f8acc5e1c31d57f3c82abfc4b3aae069bbc3878
Parent: 93892a0