00:07 | <Hixie_> | abarth: yeah, if there is a CORS header it's clear you can do this |
00:07 | <Hixie_> | abarth: but i wouldn't want to encourage people to do that |
00:08 | <Hixie_> | ok, i gotta go. i'll think about it more. dunno what to do though. |
00:14 | <galant> | Hixie will my webpage be submited into Google's index? |
00:14 | <galant> | I submited it through https://www.google.com/webmasters/tools/submit-url?hl=en&mesd=eyJtdCI6IlJFUVVFU1RfUkVDRUlWRUQiLCJjdCI6MTM3NDAxOTk4MzA4MiwicHMiOltdfQ%3D%3D |
00:15 | <zewt> | Hixie where did I leave my keys |
00:15 | <galant> | oh nice it got submited instantly :) |
00:28 | <philandy> | Thanks Hixie_. Good luck with your bubble abarth. I'm reverting to letting the user view source for now. |
06:49 | <ondras> | hi there |
06:50 | <ondras> | can someone please explain the most fundamental differences between the whatwg promises and Promises/A+ ? |
12:02 | <galant> | what happens if I put webpage into webpage if I nest them |
12:02 | <galant> | how the webpages will be parsed into ram memory by the browser and how DOM will be made?it will have document.body.document? lol :) |
12:02 | <tomasf> | http://en.wikipedia.org/wiki/Big_Crunch |
12:02 | <ondras> | the same that happens when you google the word "google" |
12:03 | <ondras> | the internet will explode. |
12:03 | <galant> | haha |
12:03 | <jgraham> | ondras: Too much IT Crowd? |
12:03 | <ondras> | jgraham: :) |
12:03 | <ondras> | yo dawg |
12:03 | <ondras> | we heard u liek webpages. |
12:03 | <jgraham> | <link crossorigin=""><script>alert(document.getElementsByTagName[0].crossOrigin)</script> should alert("anonymous"), right? |
12:03 | <galant> | http://hasthelargehadroncolliderdestroyedtheworldyet.com/ |
12:03 | <galant> | so I am safe ^^ |
12:03 | <jgraham> | Ms2ger: ^ |
12:04 | <galant> | this only thing I fear |
12:04 | <galant> | -_- |
12:04 | <galant> | so tell me -_- |
12:04 | <galant> | or.. |
12:04 | <galant> | face the concequences (sry spelling) |
12:05 | <galant> | grr |
12:05 | <galant> | haha |
12:05 | <Ms2ger> | jgraham, mmm |
12:06 | <Ms2ger> | jgraham, see https://bugzilla.mozilla.org/show_bug.cgi?id=880997 https://www.w3.org/Bugs/Public/show_bug.cgi?id=19574 |
12:06 | Ms2ger | disappears for a while |
12:10 | <jgraham> | Ms2ger: Thanks |
12:55 | <galant> | who made xhtml |
12:57 | <galant> | I can't find xhtml author on all internet :D |
12:59 | <galant> | omg honestly |
12:59 | <galant> | I never imagined tim like this http://www.ted.com/talks/tim_berners_lee_on_the_next_web.html |
12:59 | <galant> | omg omg omg :D |
12:59 | <galant> | nice! |
12:59 | <galant> | I though he is strange dude ! :D heheh omg he is very nice guy |
13:00 | <galant> | he is like Steve Jobs cool guy |
13:02 | <galant> | what percent of webpages are written in flash around? |
13:06 | <SimonSapin> | galant: do you mean the xhtml specification? http://www.w3.org/TR/xhtml1/#acks |
13:14 | <galant> | ум |
13:14 | <galant> | I mean XHTML the language |
13:14 | <galant> | who invented it |
13:20 | <jgraham> | Ms2ger: You have some reviewing to do |
13:20 | <jgraham> | :) |
13:20 | <jgraham> | I think that's everything I can fix for now |
13:27 | <galant> | http://www.youtube.com/watch?v=6wkc4uCaLpw |
13:28 | <galant> | omg guys you remember this , nostalgia |
14:00 | <Ms2ger> | jgraham, yay. |
14:36 | <galant> | I droped ie support for my webpage and I end up having on disposal very nice tools |
14:36 | <galant> | not supported in ie |
14:36 | <galant> | like getELementsByCLassName |
14:36 | <galant> | http://caniuse.com/getelementsbyclassname |
14:36 | <galant> | what means if previous versions of browsers ffor mobile phones are not written on this site |
14:36 | <galant> | are they supported or no |
14:50 | <galant> | I have very strange problem for which I don't know why it happens, please help.. on my webpage I have a lot of canvas 2d drawing and css transitions, when I open the page for first time in browser tab and if I write the url in address bar the web page starts wit h canvasses already drawn mostly and elements in place, no transition no canvas drawing, they were drawn before.. why? this only happens if I open my webpage for first time in new browser tab a |
14:50 | <galant> | if I write the full url by hand not using previously saved urls |
15:18 | <Domenic_> | galant: i think stackoverflow is probably the best place for such questions. this is more for discussing in-progress web standards being created by the WHATWG. |
15:19 | <Domenic_> | galant: everyone seems very nice and so i doubt they're going to kick you out or anything, but just in terms of getting good and quick answers, i think stackoverflow is probably going to work better for you. |
15:25 | <galant> | ok sorry :S |
15:25 | <galant> | omg I am stuck in this |
15:26 | <galant> | for hours and I don't know what is going on :( |
15:52 | <MikeSmith> | Ms2ger: wanted to ask you about automation for the canvas tests |
15:53 | <MikeSmith> | I remember at one time you'd written a script to generate testharness.js-enabled versions of those tests |
15:53 | <MikeSmith> | or at least I thought you did that |
15:56 | <jgraham> | Yeah, pretty sure that exists somewhere |
16:29 | <Ms2ger> | MikeSmith, that sounds like something I'd do |
16:30 | <Ms2ger> | MikeSmith, the ones in the repo are technically testharness.js-enabled |
16:30 | <Ms2ger> | MikeSmith, I don't know if the async ones work reliably or at all, though |
18:15 | <rillian> | I have a question about iframe interaction with DocumentFragment |
18:18 | <rillian> | if the Firefox implementation, when an iframe isn't part of a document element tree |
18:18 | <rillian> | it has no contentWindow |
18:18 | <rillian> | so if I create an iframe, append it to a document |
18:19 | <rillian> | save a reference to its contentWindow |
18:19 | <rillian> | and then remove it from the document again |
18:19 | <rillian> | what should happen to the window object I kept a reference to? |
18:20 | <rillian> | what happens when I call constructor methods on it? |
18:26 | <jgraham> | If you have a reference to the window object it can't be GCd, so things will still work |
18:26 | <jgraham> | But it might not be very useful |
18:29 | <Hixie_> | the spec defines this, i think |
18:29 | <Hixie_> | When an iframe element is removed from a document, the user agent must discard the nested browsing context. |
18:32 | <rillian> | Hixie_: what happens to the reference the code is holding then? |
18:33 | <Hixie_> | "discard" just means that the strong reference from the UA to the Window is broken, it doesn't affect other references |
18:33 | <Hixie_> | it also means the Document is discarded |
18:33 | <Hixie_> | which stops running its tasks, etc |
18:33 | <Hixie_> | closes websockets |
18:33 | <rillian> | hrm. I don't know enough about any of this. |
18:33 | <Hixie_> | that kind of thing |
18:34 | <Hixie_> | search for "When an iframe element is removed from a document, the user agent must discard the nested browsing context" in the spec, and follow hyperlinks :-) |
18:34 | <rillian> | I've got a testcase in https://bug894104.bugzilla.mozilla.org/attachment.cgi?id=776009 |
18:35 | <rillian> | which calls TextTrackCue(...).GetCueAsHTML() on a detached iframe's window |
18:35 | <rillian> | that crashes on firefox (and chrome, I think) |
18:35 | <rillian> | because our implementation wants a document to root the DocumentFragment too |
18:36 | <rillian> | I'm trying to understand whether the TextTrackCue ctor should be unavailable, throw, or if GetCueAsHTML() should throw, or succeed. |
18:37 | <Hixie_> | seems like that should work? |
18:37 | <Hixie_> | the Document still exists |
18:37 | <Hixie_> | no? |
18:37 | <Hixie_> | i'm confused as to what's the problem here |
18:38 | <Hixie_> | i'm also confused as to what you're calling |
18:38 | <Hixie_> | why is the interface object callable? |
18:38 | <rillian> | what Document? does the iframe have a separate from the originally contained page? |
18:38 | <rillian> | why isn't it 'new frameWin.TextTrackCue()' you mean? |
18:38 | <Hixie_> | the Document that was in the iframe |
18:38 | <Hixie_> | yeah |
18:38 | <rillian> | I don't know |
18:39 | <Hixie_> | back in a bit, lunch |
18:39 | <rillian> | what's even more confusing is if I type that code into the console, the constructor isn't available |
19:11 | <jgraham> | Does anyone know anything about the tests in https://github.com/w3c/web-platform-tests/pull/7 ? |
19:12 | <jgraham> | They are webkit/blink tests for various parts of the Location API |
19:12 | <jgraham> | But they are in some rather non-interoperable format |
19:15 | <jgraham> | TabAtkins: You are a person. Specifically you are a person who seems good to review https://critic.hoppipolla.co.uk/r/25 Any chance of that happening? |
19:21 | <Ms2ger> | Michael[tm] Smith (wake up!) |
19:26 | <jgraham> | If you don't work on a review for a few dyas critic gets grumpy :) |
19:26 | <jgraham> | *days |
19:30 | <jgraham> | Makes a lot of sense in a situation where you don't have a huge backlog and no one interested in doing the work |
19:30 | <Ms2ger> | Yeah |
19:34 | <Hixie_> | abarth: yt? |
19:35 | <jgraham> | jsbell: There are a whole load of IndexedDB test submissions that need to be reviewed. Would you be a good person to do that, or can you suggest someone that would? |
19:36 | <Ms2ger> | sicking, maybe? |
20:08 | <gallant> | sry for few hours ago |
20:08 | <gallant> | I know this is not help channel i wil lnot ask for help here anymore :S |
20:08 | <gallant> | just wanted to say that and apologize.. |
20:11 | <Hixie_> | you can ask for help, it's no problem |
20:12 | <Hixie_> | Domenic_: was just saying that our answers might suck :-) |
20:12 | <Hixie_> | er, |
20:12 | <Hixie_> | "Domenic_ was just saying that our answers might suck", no colon |
20:22 | <gallant> | its ok Hixie_ I was annoying here |
20:22 | <gallant> | :) |
20:23 | <gallant> | I was in panic my webpage wasn't oppening like it should but that is just my problem not everyone else now everything is fine :) |
20:25 | <Hixie_> | the bar for "annoying" in this channel has been set pretty high |
20:28 | <Hixie_> | anyone got a spec that uses Promises yet? |
20:28 | <Hixie_> | annevk? |
20:28 | <jgraham> | sicking had the filesystem API. Not really a spec, but had some IDL at least |
20:30 | <sicking> | the IDL in that email doesn't use promises correctly though |
20:31 | <sicking> | "I" invented Promise<foo> syntax |
20:31 | <jgraham> | marcosc had http://web-alarms.sysapps.org/ but I don't know if that's right eight |
20:31 | <Ms2ger> | Of course not |
20:31 | <sicking> | which doesn't really exist |
20:31 | <jgraham> | *either |
20:31 | <Ms2ger> | Nobody uses IDL correctly |
20:31 | <jgraham> | Oh, I thought that syntax did exist |
20:31 | <jgraham> | it seems quite logical :) |
20:31 | <sicking> | also, WebIDL is really making things verbose :( |
20:31 | <jgraham> | Compared to what? |
20:31 | <Ms2ger> | Use JSIDL |
20:31 | <Ms2ger> | It'll fix everything and unicorns |
20:32 | <sicking> | it kind'a sucks that you have to put dictionaries in enums in separate syntax. Makes things much harder to read and makes the API look huge |
20:32 | <jgraham> | Yeah, I agree the dictionary thing isn't wonderful |
20:32 | <sicking> | that's why I in my filesystem proposal put a section at the end of "webidl crap that you don't really need to care about if you're a developer" |
20:33 | <Ms2ger> | What do you want for dictionaries, then? |
20:33 | <jgraham> | Anyway, I think the Promise<foo> thing is nice. Not sure why we wouldn't do that |
20:34 | <Hixie_> | what's the <foo> part? |
20:34 | <Hixie_> | but i actually meant the prose |
20:35 | <Ms2ger> | Type applications |
20:35 | <Hixie_> | i figured it was a type, i mean, what does it do |
20:35 | <Ms2ger> | Nothing much right now |
20:35 | <Hixie_> | ah ok |
20:36 | <Hixie_> | man, i don't understand the Promise spec at all |
20:37 | <Hixie_> | do i need to get a resolver, as a spec consumer of this api? |
20:37 | <Ms2ger> | They'll rewrite it a couple of times anyway |
20:39 | <Hixie_> | do i need to invoke the resolver's fulfill algorithm in a task, or can i invoke it willy nilly in asychronous prose? |
20:39 | <Hixie_> | looks like i can do it whenever, and it queues a task... |
20:41 | <Hixie_> | what is the difference between "resolve" and "fulfill"? |
20:42 | <Hixie_> | the domintro blocks for resolver are... unhelpful. :-) |
20:43 | <Hixie_> | "fulfill" is described as "Runs resolver's fulfill" :-) |
20:43 | <Hixie_> | interesting, you can reject with a value? |
20:43 | <Hixie_> | what value should i pass? null? |
20:47 | <jsbell> | jgraham: I can take a look at the test submissions |
20:47 | <Ms2ger> | Excellent |
20:48 | <Hixie_> | given a Promise, how do i do something when I get a value? .then()? |
20:48 | <Hixie_> | because .then() is defined as creating a new Promise, which makes no sense to me |
20:48 | <jsbell> | jgraham: I'll need links, what the output you want from my review, etc. i.e. I'm not sure what I'm volunteering for :) |
20:50 | <annevk> | Hixie_: hey, I'll read the backlog I guess |
20:50 | <annevk> | Hixie_: oh, I think Web Crypto drafts use it |
20:52 | <annevk> | Ms2ger: for dictionaries you want the JSIDL method({ prop1, prop2 }) syntax |
20:52 | <annevk> | Ms2ger: going to the Mozilla Summit? |
20:52 | <Ms2ger> | Yeah |
20:52 | <annevk> | Ms2ger: home country? |
20:52 | <Ms2ger> | Indeed so |
20:52 | <annevk> | Ms2ger: cool cool |
20:53 | <Ms2ger> | You'll be there? |
20:53 | annevk | will be there, if he can figure out the travel |
20:53 | <annevk> | Ms2ger: you old enough to drink beer? |
20:53 | <abarth> | Hixie_: you still looking for me? |
20:54 | <Ms2ger> | annevk, yeah, but I don't drink |
20:55 | <annevk> | Anyway, should be fun |
20:56 | <Hixie_> | abarth: see e-mail |
20:56 | <abarth> | k |
20:56 | <abarth> | "Making cross-origin <iframe seamless=""> (partly) usable" ? |
20:56 | <Hixie_> | abarth: yeah |
20:56 | abarth | will read in a bit |
20:56 | <Hixie_> | annevk: hopefully i understood the spec well enough |
20:56 | <Ms2ger> | It seems quite a few people will be decreasing their what is apparently called "Ms2ger number" there |
20:57 | <Hixie_> | annevk: you'll have to review my upcoming patch |
20:57 | <annevk> | Seems asking about frozen Date objects was the right thing to do |
20:57 | <Hixie_> | using promises didn't make this example as much better as i had hoped |
20:57 | <annevk> | Hixie_: no worries, I'm sure it'll all be tweaked a bit over time; heck, promises might even move into ES once TC39 has done all the work to get there |
21:03 | <Hixie_> | annevk: ok, check the latest diff |
21:04 | <gallant> | annevk, are you a girl ? :) |
21:04 | <gallant> | I have idea of you beign girl because your name anne :) |
21:04 | <gallant> | hehe |
21:05 | <gallant> | Hixie_, man Timothy Berners Lee is a cool man ! |
21:05 | <Ms2ger> | Hint: no |
21:06 | <gallant> | http://www.ted.com/talks/tim_berners_lee_on_the_next_web.html |
21:06 | <gallant> | I imagined him beign shy guy |
21:06 | <gallant> | he is cool iek Steve Jobs nice ! |
21:06 | <gallant> | didn't expected that first time i see him on this video |
21:08 | <annevk> | Hixie_: why not return Promise.every? |
21:08 | <Hixie_> | annevk: ? |
21:09 | <Hixie_> | annevk: how? |
21:09 | <annevk> | oh wait |
21:09 | <Hixie_> | i'd love to, but the api didn't seem to really make that possible |
21:09 | <Hixie_> | i'd love it if .then() could take a promise to just defer to or something |
21:10 | <Hixie_> | it seems like this pattern really doesn't work ideally with the current api |
21:10 | <annevk> | I'm pretty sure the desired new convention is ImageBitmap.create() |
21:10 | <Hixie_> | i'm tired of us changing what the Best Practice is every other week |
21:10 | <Hixie_> | it makes our platform a mess |
21:11 | <Hixie_> | it's better to be consistent with something that's 80% good than have fifteen different conventions |
21:11 | <Hixie_> | however good the last convention is |
21:11 | <Hixie_> | annevk: other than that, though, does that diff look ok? the prose, in particular |
21:11 | <annevk> | Well, putting new methods on the global object has been out for a long time |
21:12 | <annevk> | Hixie_: looks correct |
21:12 | <Hixie_> | cool |
21:12 | <Hixie_> | thanks |
21:13 | <annevk> | Hixie_: might want to change details at some point, e.g. reject with DOMException will prolly be what we end up with, but I guess that can wait |
21:13 | <annevk> | Hixie_: I'm also pretty sure nobody will implement this as method on the global object |
21:13 | <annevk> | I hope so anyway |
21:15 | <Hixie_> | a long method like createImageBitmap on the global object is not an issue at all |
21:46 | <Domenic_> | Hixie_: do this instead https://gist.github.com/domenic/6024832 |
21:47 | <annevk> | Domenic_: nice |
22:00 | <Hixie_> | Domenic_: oh _that's_ what resolve() is for? |
22:02 | <Domenic_> | Hixie_: haha yeah... scrolling through your above questions, we definitely need a "for spec writers" guide. |
22:02 | <Domenic_> | Relatedly, I think spec writers should be able to say much less... e.g. "return a fulfilled promise for X" or "fulfill promise with X" instead of talking about the associated resolver. |
22:03 | <Hixie_> | that code doesn't make it obvious that some of those callbacks are called synchronously and others aren't |
22:03 | <Hixie_> | so it isn't obvious that onload will be set before the function returns |
22:04 | <Domenic_> | the `PromiseInit` callback is guaranteed to be called synchronously. |
22:04 | <Domenic_> | it's not really a "callback" in the sense we're used to, it's more a scoping mechanism for getting access to the resolver. |
22:04 | <Hixie_> | yeah _i_ know that, but it isn't obviosuly in the code |
22:04 | <Hixie_> | can i call promise.resolve(promise) ? |
22:04 | <Hixie_> | er |
22:04 | <Hixie_> | can i call promise2.resolve(promise1) ? |
22:05 | <Domenic_> | no, you need to be able to vend promises without vending the ability to change their state |
22:05 | <Domenic_> | the other pattern besides new Promise(promiseInit) is to introduce another concept, the "deferred", which combines the resolver functionality and the promise functionality. The code because `var deferred = new Deferred(); doAsyncStuff(function () { deferred.resolve(...); }; return deferred.promise;` |
22:06 | <Domenic_> | The feeling is that introducing a new "deferred" concept is worse than using a function as a scoping mechanism. |
22:41 | <Hixie_> | Domenic_: yeah... that pattern is what i have here |
22:42 | <Hixie_> | oh wait, my code is all wrong anyway |
22:42 | <Hixie_> | since i'm calling .fulfill on the promise not the resolver |
22:42 | <Hixie_> | duh |
22:42 | <Hixie_> | so i can just call .resolve on the resolver |
22:42 | <Domenic_> | yeah. but to get access to it you need to do new Promise(function (resolver) { ... }) |
22:43 | <Hixie_> | right |
22:43 | <Domenic_> | and the ... is either "store resolver in a variable for use when i do all my stuff" or it's "do all my stuff" |
22:43 | <Hixie_> | right |
22:43 | <Hixie_> | the first is easier to follow |
22:43 | <Hixie_> | fixing code now... |
22:45 | <annevk> | http://html5.org/tools/web-apps-tracker?from=8065&to=8066 is empty |
22:46 | <Hixie_> | uh |
22:46 | <Hixie_> | weird |
22:46 | <Hixie_> | seems to work for me |
22:46 | <Hixie_> | problem must be on your end |
22:47 | <Hixie_> | seems to work as in works when i use svn directly |
22:48 | <Domenic_> | http://html5.org/tools/web-apps-tracker?from=8065&to= works interestingly |
22:50 | <annevk> | Yeah, the whole caching setup is broken |
22:50 | <annevk> | Fixed it, but not in any kind of long term way |