Skip to content

feat(dividers): a Hidden divider style keeps the section gaps without lines - #68

Merged
thepathless merged 2 commits into
thepathless:experimentalfrom
priard:feat/hidden-dividers
Oct 17, 2026
Merged

thepathless merged 2 commits into
thepathless:experimentalfrom
priard:feat/hidden-dividers

Conversation

@priard

@priard priard commented Oct 15, 2026 •

Copy link
Copy Markdown
Contributor

What and why

Plates, nested plates and split panels already show where one section of the dock ends and the next begins, so the divider lines only repeat that. This adds a Hidden divider style: no line, and the sections keep the ordinary gap between them.

Divider lines (top) and Hidden (bottom)

How

  • dividerStyle: "none", shown as "Hidden" among the Divider style options. Config parsing accepts it, RowDivider draws no line, and PresetThumb and the settings search know it. The length, height, width and opacity rows hide while it is chosen.
  • No holes. Kept at its normal width, a hidden divider left its slot plus two row gaps between the sections, wider than any gap between tiles. With Hidden (and no split) separatorWidth is -gapWidth: the divider leaves the Row (RowDivider only shows with width) and cancels its spacing in the geometry sums (slotHomeCenter, the row width, the fit's separatorWidthAt). The sections meet one ordinary gap apart.
  • The change in Dock.qml is in place: its line count does not change.

Verification

  • node --check of the model files and node --test tests/unit/*.test.mjs tests/unit/*.test.js (252 pass)
  • python3 -m unittest discover -s tests/unit -p 'test_*.py'
  • qmllint (no new error kinds)
  • security-grep.py, structure-check.py, shaders-in-sync.sh
  • ./tests/manifest-check.sh . and omarchy plugin validate .
  • ./tests/smoke-test.sh against a running dock
  • Live: lines vs Hidden on the dock (screenshot above); with Hidden the gap between sections equals the gap between tiles.

… lines

Plates, nested plates and split panels already show where one section
ends and the next begins, so the divider lines only repeat that. Hidden
draws no line but keeps each divider's slot, so the sections stay apart
by the same gap; the length, width, opacity and height rows go with it.
Hidden kept each divider slot at its full width, so between two sections
stood the slot plus two row gaps: a hole wider than any gap between
tiles. A hidden divider is now -gapWidth wide, which leaves the Row
(RowDivider shows only with width) and cancels its spacing in the
geometry sums (slotHomeCenter, the row width, the fit's ladder), so the
sections meet one ordinary gap apart.
priard added a commit to priard/omadock that referenced this pull request Oct 15, 2026
Hidden dividers, the lifted drag and group motion are open upstream; CLAUDE.md's open-PR list was from before v4.1.0.
@thepathless
thepathless merged commit 9ddab8f into thepathless:experimental Oct 17, 2026
6 checks passed
@thepathless

Copy link
Copy Markdown
Owner

Thank you @priard — merged into v4.7.0! The -gapWidth cancellation that makes Hidden sections meet exactly one gap apart (instead of slot + two row gaps) is the kind of geometry arithmetic this dock lives on, and keeping it line-neutral in Dock.qml under the ratchet made integration clean. Verified on experimental: 254 Node + 116 Python tests, qmllint 0 errors, structure-check PASSED.

priard added a commit to priard/omadock that referenced this pull request Oct 18, 2026
Upstream v4.7.0 ships the hidden dividers, the drag lift and the group
motion; the fork keeps its own version suffix on top.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants