09:50
<lgrahl>
annevk: o/ Can I store an "internal slot" on the realm?
09:51
<annevk>
lgrahl: settings object or global object please
09:52
<annevk>
lgrahl: at least, I think that's our strategy mostly
09:52
<annevk>
lgrahl: leaving the Realm to JavaScript
09:53
<lgrahl>
annevk: Fine by me. :) Do you have a link to a spec that makes use of this?
09:54
<annevk>
lgrahl: HTML does a lot of this 😃
10:11
<lgrahl>
annevk: I don't think I fully understand the difference between the current settings object and the environment settings object.
10:14
<annevk>
lgrahl: the former is an instance of the latter
10:14
<annevk>
iirc
10:16
<lgrahl>
annevk: So, can I say "Let the current settings object have a [[Foo]] internal slot." and then "Store x in the current settings object [[Foo]] internal slot."?
10:18
<annevk>
lgrahl: no, you'd have to modify the environment settings object (the class) and then you manipulate its state using some instance
10:19
<lgrahl>
annevk: "Let the environment settings object have a [[Foo]] internal slot." then?
10:21
<annevk>
lgrahl: more like "The environment settings object has a [[Foo]] internal slot."
10:21
<annevk>
lgrahl: https://ln.hixie.ch/?start=1140242962&count=1 might help
10:23
<lgrahl>
annevk: Phew, don't read the WebRTC spec then. ^.^ It's full of that.
10:24
<annevk>
That's too bad, hopefully they'll fix it one day
10:25
<annevk>
"Let" is really only used for initializing variables within an algorithm
10:26
<lgrahl>
Agree. But "The environment settings object has a [[Foo]] internal slot." is also kind of an implicit definition if it's in the middle of a spec.
10:29
<annevk>
lgrahl: ideally at some point you'd also add a note to the HTML Standard or some such saying environment settings objects are patched in this manner
10:29
<annevk>
lgrahl: you're right that we don't really have a good way of handling extensions to those objects though
10:30
<lgrahl>
annevk: So, I guess since it's not scoped it's probably a good idea to prefix it, for example: [[WebRTCPCFoo]]?
10:33
<annevk>
lgrahl: yeah, though also, typically these kind of extensions are stored on global objects (or document)
10:33
<lgrahl>
annevk: To elaborate: I want to register an intent (read: permission request, but jib really wants to avoid prompting, so this API should encourage to not prompt) and then, if granted at some point, an event should fire on all RTCPeerConnection instances of that realm.
10:35
<annevk>
lgrahl: hmm, shouldn't that be origin-based? if you create an instance in an <iframe> it wouldn't work?
10:36
<lgrahl>
annevk: Mhh... well, ideally, yes.
10:38
<lgrahl>
annevk: jib's idea for Firefox is that there's a toggle button like currently planned for the autoplay audio mute feature. But others should still be able to prompt.
10:39
<lgrahl>
So, I guess it should affect all windows of the same origin.
10:41
<lgrahl>
annevk: What would be the appropriate way to share an "internal slot" across same origin (and later, firing an event for all windows of the same origin)?
10:44
<annevk>
lgrahl: the permission store?
10:45
<annevk>
afaik that has most of the architecture
10:47
<lgrahl>
annevk: Yeah, that might work.
13:11
<Domenic>
annevk: apologies in advance for disappearing; I dropped that output review right before boarding a flight. Thanks so much for taking that on.
13:14
<annevk>
Domenic: heh, safe travels
15:05
<bkardell>
should any markup in html realistically become just Element? I didn't think so, but I want to be sure
15:07
<bkardell>
like, as in should it be plausble to put markup in the document which winds up where a ref to that element's .constructor is Element itself
15:20
<Ms2ger>
I'm not going to claim it's impossible, but I'd be surprised
15:28
<bkardell>
Ms2ger: I would have been yesterday too :)
15:29
<bkardell>
It seemed strange to me and probably like it shouldn't be but I wanted some advice from folks here about whether that seemed probably strange/bad too
15:46
<annevk>
bkardell: depending on where you are going with this https://github.com/whatwg/html/issues/4436#issuecomment-476632809 might be relevant
15:47
<annevk>
bkardell: but also, <!-- ... --> does not become an Element, but that's probably not what you mean
15:53
<bkardell>
https://codepen.io/bkardell/pen/EMJqYz
15:54
<bkardell>
I am seeing the constructor there as Element in FF, chrome and webkit
15:54
<bkardell>
that surprised me and I guess it causes a number of issues actually
15:56
<bkardell>
it feels weird that that is what is happening and I just wanted to see what you all thought... agree that is weird? IT's underspecified atm
15:57
<annevk>
bkardell: oh for MathML
15:57
<annevk>
bkardell: I think that's fine
15:57
<annevk>
bkardell: though maybe MathML should have something like MathMLElement for shared stuff
15:57
<annevk>
bkardell: e.g., this way it won't have .style I guess
15:57
<bkardell>
it means that currently you don't have .style or access to custom properties and so on
15:58
<bkardell>
yeah, this is where I was going
15:58
<annevk>
bkardell: okay, I agree that seems worth fixing
15:58
<annevk>
bkardell: it's mostly an issue with MathML
15:58
<bkardell>
exactly... just wanted to see if that made sense before I suggested going down that path
15:58
<annevk>
bkardell: some folks restarted doing some work on that, perhaps file an issue there?
15:58
<bkardell>
yeah, there is where I am
15:59
<bkardell>
that*
15:59
<annevk>
the alternative is to uplift stuff to Element
15:59
<annevk>
we've done that for className/id/slot
16:00
<bkardell>
thoughts?
16:00
<bkardell>
tbh, that caused me some confusion because I saw a lot on Element that I didn't think would be there
16:00
<bkardell>
it seemed strange to see all that but not .style, for example
16:01
<bkardell>
you tell me which way to pursue you think
16:01
<annevk>
I guess having MathElement or MathMLElement makes sense, to avoid putting too much on Element
16:02
<annevk>
and then some kind of HTMLElementOrSVGElementOrMathMLElement mixin
16:02
<annevk>
defined in HTML, for all the shared stuff
16:02
<annevk>
and then we only put on element what is truly globally useful
16:04
<bkardell>
ok
16:04
<annevk>
bkardell: thanks for potentially driving this, I know it's been bugging people
16:04
<bkardell>
let me start with posting to the math refresh group and then I expect we'll at some point have to do the HTMLElementOrSVGElementOrMathMLElement stuff
16:26
<annevk>
bkardell: could you post here if you've done so? I'd like to follow along
16:35
<bkardell>
https://github.com/mathml-refresh/mathml/issues/83
16:37
<annevk>
bkardell: fwiw, CSSOM should use that very long name HTML mixin too
16:38
<bkardell>
oh it is not implied, let me re-read
16:39
<bkardell>
updated - better?
16:39
<annevk>
Ta
16:40
<bkardell>
I guess I am trying to say there are at least 3 specs we need to get moving on here so we better get started :-p
16:40
<annevk>
Heh
16:51
<bkardell>
if you want to weigh in on the comment that came in already that might be good in steering?
17:05
<annevk>
Seems Frédéric got it covered
18:50
<bkardell>
hey wait... sorry, I am confused about something. So some stuff was moved up to element from HTMLElement and now element defines .innerHTML, but not .innerText?
18:55
<bkardell>
I was trying to find some issue in the gh but 'element' is hard to search for there and HTMLElement didn't seem to turn up something on this
19:41
<annevk>
bkardell: these are not necessarily principled decisions
19:42
<bkardell>
I'm just curious why not move innerText along with innerHTML/outerHTML?
19:42
<annevk>
bkardell: you could start with what you think makes sense and then see if it’s worth the effort to get there
19:43
<annevk>
bkardell: innerText is quite special and somewhat legacy
19:43
<bkardell>
ah... interesting
19:43
<bkardell>
textContent?
19:43
<annevk>
bkardell: we could move it perhaps, but it’s work
19:43
<annevk>
bkardell: that’s on Node
19:43
<bkardell>
yeah
19:44
<bkardell>
ok makes a little more sense now