@jsenv/navi 0.29.76 → 0.29.77

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.
@@ -30255,6 +30255,11 @@ const css$X = /* css */`
30255
30255
  outline-offset: 0;
30256
30256
  box-shadow: var(--dialog-box-shadow);
30257
30257
 
30258
+ /* A gesture landing on the dialog belongs to the dialog: what it cannot
30259
+ scroll (a short body, an axis with nowhere to go) must not travel to
30260
+ whatever is behind. */
30261
+ overscroll-behavior: none;
30262
+
30258
30263
  /* Docking answers a different question than --dialog-max-width: a sheet
30259
30264
  spans its container's full width, flush against the two side edges —
30260
30265
  that shape IS the mode — while the caller's ceiling was an answer about
@@ -31125,7 +31130,11 @@ const useDialogProps = props => {
31125
31130
  }));
31126
31131
  }
31127
31132
  if (scrollCapture) {
31128
- addCleanup(trapScrollInside(dialogEl));
31133
+ // A modal dialog always has its own ::backdrop; the custom renderer has
31134
+ // the backdrop element when it renders one.
31135
+ addCleanup(trapScrollInside(dialogEl, {
31136
+ backdrop: isModal || backdropEl
31137
+ }));
31129
31138
  } else if (!isModal) {
31130
31139
  // A local dialog is confined to its positioned ancestor, and so is its
31131
31140
  // backdrop (inset: 0 covers the scrollport, not the scrolled content):
@@ -32662,7 +32671,9 @@ const usePopoverProps = props => {
32662
32671
  // here.
32663
32672
  };
32664
32673
  if (scrollCapture) {
32665
- addCleanup(trapScrollInside(popoverEl));
32674
+ addCleanup(trapScrollInside(popoverEl, {
32675
+ backdrop: backdropEl
32676
+ }));
32666
32677
  }
32667
32678
  if (focusCapture) {
32668
32679
  addCleanup(trapFocusInside(popoverEl, {