openui / openui/open-ui

[focusgroupV2] Define coordinate topology for irregular grids

Open
#1,495 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

focusgroup
Dominant language
MDX
Stars
4.5k
Forks
226
Avg merge
2d 22h
Merged PRs (30d)
4

Description

The initial Focusgroup V2 grid model is rectangular and spanless. Unequal row lengths and effective rowspan or colspan values greater than one invalidate the grid.

<table role="grid" focusgroup="grid" aria-label="Templates">
  <tr>
    <td tabindex="0">Blank</td>
    <td tabindex="0">Report</td>
    <td tabindex="0">Invoice</td>
  </tr>
  <tr>
    <td tabindex="0">Add template…</td>
  </tr>
</table>

This keeps the initial model deterministic, but excludes partial rows, merged cells, and sparse grids.

One possible extension is to preserve gaps as implicit empty coordinates. These coordinates would participate in topology and column calculations without becoming focus destinations. This differs from collapsing or skipping the missing positions when assigning coordinates.

We need to define:

  1. Whether gaps remain implicit coordinates or are removed from the coordinate space.
  2. Whether movement encountering an empty coordinate stops or searches farther in the requested direction.
  3. How wrap and flow interact with empty coordinates.
  4. How spans occupy coordinates and affect block-axis column preservation.
  5. Which coordinate represents a spanning cell for memory and focusgroupstart.

Authored ARIA should continue to describe accessibility semantics rather than configure focus topology.

Related:

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with the Focusgroup V2 topology explainer and the review discussion on PR #1494, then compare the APG Grid and Table Properties guidance. Define decisions for gaps, movement, wrapping, flow, spans, and focus memory; done means the topology behavior is specified consistently.

Written by the indexing model from the issue text.

Assessment

Tech stack
html
Domain
accessibility, frontend
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Quiet
Clarity
Needs clarification
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.