@jsenv/navi 0.29.50 → 0.29.51

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -94,6 +94,8 @@ are read before the box moves:
94
94
  scrolls sideways inside a page still scrolls sideways.
95
95
  3. **Another travelling box in between.** The innermost one takes the axes it
96
96
  walks, and leaves the ones it does not to whoever is above it.
97
+ 4. **A surface in the top layer in between.** Nothing above it gets the gesture
98
+ at all — see [A surface in the top layer](#a-surface-in-the-top-layer).
97
99
 
98
100
  ### Boxes inside boxes
99
101
 
@@ -115,6 +117,21 @@ last slide does not hand the gesture over mid-drag: it leans on its wall, the wa
115
117
  it does when it is alone. Travelling the box around it means starting the gesture
116
118
  outside it.
117
119
 
120
+ ### A surface in the top layer
121
+
122
+ A popover, a modal `<dialog>`, an element gone fullscreen: it is written inside
123
+ whatever opened it — a slide, a page that travels — and the browser paints it
124
+ over the whole screen. The DOM says "inside", the eye says "on top of", and the
125
+ gesture belongs to what the eye sees: a drag across a full-screen dialog opened
126
+ from a slide is not a drag on the slides, and nothing about it should reach
127
+ them.
128
+
129
+ So every walk up from the pointer stops there. The boxes above the surface get
130
+ no axis, and a scroller above it gets nothing either — it is painted behind the
131
+ surface, and behind is not under the finger. `showModal()` does not do this on
132
+ its own: the rest of the document is made inert, but the press still bubbles out
133
+ of the (not inert) dialog to a listener that sits above it.
134
+
118
135
  ### The browser also wants to answer the gesture
119
136
 
120
137
  A gesture that is already answered — something is being dragged — must not be
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@jsenv/navi",
3
- "version": "0.29.50",
3
+ "version": "0.29.51",
4
4
  "type": "module",
5
5
  "description": "Library of components including navigation to create frontend applications",
6
6
  "repository": {