15.1.2 Navigation

Hi-

Directional navigation seems a little confusing. Am I understanding it
correctly to say that nav-up, nav-down, nav-left, and nav-right depend on
the document order? Is there no other way to specify the order? If I
misunderstand this, forgive me.

I appreciate that this is a property inherited from CSS, but CSS had HTML as
its use case, which is a document format in which elements and text defined
at the beginning of the document most typically will be visually depicted at
the top of the page, and in which the document and location order of those
elements rarely changes. This is far from the case with SVG.

Consider:
<svg>
  <circle id="c1" focusable="true" cx="300" cy="500" ... />
  <rect id="r1" focusable="true" x="100" y="100" ... />
  <circle id="c2" focusable="true" cx="50" cy="50" ... />
</svg>

If the current focus were on Rectangle 'r1', and the user pressed the up
arrow key, triggering a nav-up event, the focus would shift to Circle 'c1',
which is earlier in the document order but "down" in the visual field. This
is compounded by the fact that often elements are repositioned dynamically,
making the authoring of a document that has consistent behavior regards
directional navigation via document order vs. visual location impossible.

This would be completely unintuitive to the user. I *strongly* suggest that
the SVG WG reconsider the use cases for this feature and its behavior. My
suggestion is that nav-[direction] operate on the visual location, not the
document order. I think that this should be the default, if not only,
attribute value.

I have use cases and demos if you are interested.


Regards-
-Doug

Received on Thursday, 11 November 2004 11:00:41 UTC