| 00:07 | <reggna> | Also interesting: Removing the src attribute will reset an img, but won't reset a video. |
| 00:08 | <reggna> | currentSrc doesn't change. |
| 07:53 | <annevk> | Domenic: "browsing context environment settings object" introduced in https://github.com/whatwg/html/commit/cf0355d7e0e229b98f7fbd51b8c7608010c787f5 should really be "window environment settings object", right? |
| 07:54 | <annevk> | Domenic: it also seems that at various points we invoke "set up a browsing context environment settings object" before we've created a document |
| 07:54 | <annevk> | Domenic: which results in null pointer exceptions |
| 07:55 | <Domenic> | annevk: seems better, but can't really look today I'm afraid; happy to follow up more tomorrow. |
| 07:56 | <annevk> | Domenic: just wanted to quickly check, safe travels |
| 08:04 | <foolip> | reggna: for media elements, if you really want to unload it, you should set srcObject to null, remove the src attribute, all <source> children and then call load() |
| 08:05 | <foolip> | reggna: actually no, don't need to call load(), setting srcObject will implicitly do that (the other two things won't though) |
| 08:36 | <annevk> | Domenic: if you're not in the air, can https://www.w3.org/Bugs/Public/show_bug.cgi?id=28920 be closed? |
| 08:52 | <Domenic> | I recall that still needing investigation but happy to trust your judgement |
| 08:52 | <annevk> | I'll leave it then, not a 100% sure |
| 12:25 | <ondras> | hm, is this supposed to work? |
| 12:25 | <ondras> | https://jsfiddle.net/b1hdjzwz/1/ |
| 12:25 | <ondras> | firefox is not applying the rotation |
| 12:25 | <ondras> | calc inside a transform? 45 * 1deg inside of a calc? |
| 12:26 | <ondras> | what exactly is incorrect? |
| 12:32 | <topaxi> | it's not supported by ff yet |
| 12:32 | <topaxi> | but it should work (afaik) |
| 12:32 | <ondras> | topaxi: and what exactly is the problematic feature? calc()ing degrees or calc()ing transforms? |
| 12:33 | <topaxi> | calc in some transforms |
| 12:33 | <ondras> | ok |
| 12:33 | <ondras> | would an indirection (custom prop) fix this? |
| 12:33 | <ondras> | https://jsfiddle.net/b1hdjzwz/2/ |
| 12:34 | <ondras> | no :/ |
| 12:35 | <topaxi> | oh maybe it is a problem with some units, not the transforms |
| 12:35 | <topaxi> | https://bugzilla.mozilla.org/show_bug.cgi?id=956573 |
| 12:38 | <ondras> | that looks exactly like my case |
| 12:38 | <ondras> | topaxi: okay, thanks for the link |
| 12:39 | <topaxi> | transforms are affected too, even if the unit doesn't matter: https://bugzilla.mozilla.org/show_bug.cgi?id=1308785 |
| 12:39 | <topaxi> | so i guess its both |
| 12:43 | <nox> | Fun times, I just filed https://bugzilla.mozilla.org/show_bug.cgi?id=956573 too. |
| 12:43 | <nox> | Err, https://bugzilla.mozilla.org/show_bug.cgi?id=1363350 |
| 12:44 | <ondras> | :) |
| 13:20 | <reggna> | 10:04:44 < foolip> reggna: for media elements, if you really want to unload it, you should set srcObject to null, remove the src attribute, all <source> children |
| 13:21 | <foolip> | reggna: yes? :) |
| 13:22 | <reggna> | foolip: The only reason that "unloads" it, is because setting srcObject to null will be interpreted as a relative URL so the WebMediaPlayer will actually get a new load call with http(s)://domain/null |
| 13:22 | <reggna> | Oh, no. Hmm. |
| 13:22 | <reggna> | Now it actually worked. |
| 13:23 | <foolip> | reggna: that sounds weird, srcObject is an object, not a URL |
| 13:23 | <foolip> | reggna: did you set video.src = null by any chance? |
| 13:25 | <reggna> | Last time I did, and then I set srcObject to null as well and that just reloaded the video. |
| 13:26 | <reggna> | This time I didn't, and it just reloaded the video with the currentSrc. |
| 13:26 | <foolip> | reggna: what resource was loaded before you did the thing? was it from currentSrc, src, or a source element? |
| 13:26 | <foolip> | s/currentSrc/srcObject/ |
| 13:26 | <reggna> | foolip: Source element. |
| 13:26 | <foolip> | ok, so then you'd have to remove the source elements as well |
| 13:27 | <foolip> | or, I dunno, just remove the video element from the DOM and start with a new one :) |
| 13:27 | <reggna> | Yes, and you have to do that before setting srcObject to null. |
| 13:27 | <foolip> | the order shouldn't matter, if it does there's a bug somewhere |
| 13:27 | <foolip> | as long as you do all the things before returning back to the event loop, that is |
| 13:27 | <reggna> | Well, no, the order does matter. |
| 13:28 | <reggna> | If you set srcObject to null while it still has source elements, it will just reload one of them. |
| 13:28 | <reggna> | So you have to remove the source elements first (and remove src if you have one) and then set srcObject to null. |
| 13:28 | <foolip> | even if you remove the source element right after setting srcObject to null? |
| 13:29 | <foolip> | that would mean that a new resource is selected synchronously in the srcObject setter, which isn't impossible, but then a bug |
| 13:30 | <reggna> | I was just trying in devtools, but no, it shouldn't be synchronous (at least it wasn't a few years ago when I actually knew this code). |
| 13:30 | <foolip> | ah, well in devtools there will be time between the calls, that would explain it |
| 14:27 | <annevk> | Sigh, improving navigation and lifetime of objects is such a time sink |
| 14:28 | <annevk> | So I wanted to make "create a new browsing context" a little better by making the creator argument explicit |
| 14:28 | <annevk> | Not even something ambitious like allocating a unit of related browsing contexts or something like that, just adding a creator argument |
| 14:29 | <annevk> | Going through the various callers I find myself cleaning up frame/iframe algorithms that really need more consolidation |
| 14:29 | <annevk> | I encounter the broken state of <embed> and <object> |
| 14:30 | <annevk> | I remove the bits from "creator browsing context" that are no longer needed and look into what it would take to remove the remaining bits, since they don't make much sense |
| 14:30 | <annevk> | So now I'm writing tests for base URL handling in XMLHttpRequest response Document objects |
| 14:31 | <annevk> | And to do this properly that's only the start. I need to write tests for base URL handling of all kinds of Document objects. Then rewrite how base URLs work in HTML. And maybe then I can get back to "create a new browsing context" and get sucked into consolidating frame/iframe again |
| 15:11 | <foolip> | annevk: sounds like you're going depth first :) |
| 15:11 | <foolip> | I keep doing that as well, so hard to resist |
| 16:22 | <annevk> | foolip: seems hard to fix it otherwise |
| 16:22 | <tobie> | JakeA: just DMed you |
| 16:22 | <annevk> | foolip: cannot improve the broken higher layer if the fundamentals are all wrong |
| 16:23 | <annevk> | foolip: I do try to ignore the iframe and embed stuff though |
| 16:23 | <annevk> | foolip: although it's hard |
| 16:49 | <TabAtkins> | Just in case anyone is around who can tell me how bad a thing I just did: I came in today to my computer swapping like crazy. top shows an objfs process using up 87% of RAM. Couldn't figure out what's doing it, so I just killed the process. |
| 16:49 | <TabAtkins> | (The meta question of why my computer was swapping like crazy when it still had half a gig of ram available will be left to the software engineering segment of your syllabus.) |
| 16:50 | <TabAtkins> | None of my programs seem to have fallen over yet, so...? |
| 16:52 | jgraham | doesn't even know what objfs is |
| 16:53 | <jgraham> | Unless you are running Solaris |
| 16:53 | jgraham | wonders if this was the intended channel |
| 16:54 | <TabAtkins> | I had no better channel to ask about it. |
| 16:55 | <jgraham> | Ah well since I couldn't work out what objfs was I wondered if it was some Google thing |
| 16:55 | <jgraham> | If search goes down, we'll blame you :) |
| 16:55 | <TabAtkins> | And no, a modded Ubuntu. So The terminology could be reinforced with a new figure in the spec, showing the keyframes, the frames, and the steps as different parts of the timing function graph. |
| 16:55 | <TabAtkins> | lolwut |
| 16:55 | <TabAtkins> | sorry, copypaste fail |
| 16:56 | <TabAtkins> | meant to be a ¯\_(ツ)_/¯ |
| 18:28 | <nox> | TabAtkins: Just a link to the decision without any further explanation would be enough, I'm just being curious at that point, and I assume this was already bikeshedded to the infinite so I wouldn't mind. |
| 18:28 | <TabAtkins> | I'd have to hunt down the meeting minutes. |
| 18:28 | <TabAtkins> | But I can explain the reasoning easily. |
| 18:29 | <TabAtkins> | The 3-value syntax makes <position> *way* harder to intermix with other <length>s, but it's very rarely used (and quite weird). |
| 18:32 | <nox> | Are there that many <position>s followed by <length>s? |
| 18:45 | <TabAtkins> | There's effectively zero today, because you *can't* produce the grammar unambiguously. |
| 18:45 | <TabAtkins> | There are places we'd *like* to have such a thing. |
| 19:31 | <tobie> | So back at doing some WebIDL work (finally). |
| 19:32 | <tobie> | I'm trying to finish the [Default] toJSON() work and struggling with consequential interfaces. |
| 19:33 | <tobie> | Anyone familiar with using a limited version of those that would be more similar to mixins? |
| 19:33 | <tobie> | That is, B and B's inherited interfaces in `A implements B;` |