Re: [whatwg/dom] Add OpaqueRange interface (PR #1404)

@annevk commented on this pull request.



> @@ -9981,6 +9988,96 @@ and {{Range/getBoundingClientRect()}} methods are defined in other specification
 [[CSSOM-VIEW]]
 
 
+<h3 id=interface-opaquerange>Interface {{OpaqueRange}}</h3>
+
+<pre class=idl>
+[Exposed=Window]
+interface OpaqueRange : AbstractRange {
+  undefined disconnect();
+  DOMRectList getClientRects();
+  DOMRect getBoundingClientRect();
+};
+</pre>
+
+<p>Objects implementing the {{OpaqueRange}} interface are known as {{OpaqueRange}} objects.
+{{OpaqueRange}} objects cannot be constructed directly; they are created by specifications defining

Yeah perhaps we need to go having an `OpaqueRangeController` (or `OpaqueRangeInternals`) directly if we offer a constructor. Basically an object that allows you to manipulate the internal values. Either using the revealing constructor pattern or doing something similar to `AbortController`. I was initially thinking that it might be sufficient if you can just indicate start and end and have the remainder fall out of it being live, but maybe not.

-- 
Reply to this email directly or view it on GitHub:
https://github.com/whatwg/dom/pull/1404#discussion_r3281660541
You are receiving this because you are subscribed to this thread.

Message ID: <whatwg/dom/pull/1404/review/4337481836@github.com>

Received on Thursday, 21 May 2026 13:51:04 UTC