00:08 | <Hixie> | i love that one of leif's arguments for making border=1 valid was "93% of table elements in the wild have the border attribute set" |
00:08 | <Hixie> | nevermind that most have it set to 0... |
00:15 | <othermaciej> | does explicit border=0 have any effect? |
00:18 | <Hixie> | not in most browsers |
00:53 | <Hixie> | othermaciej: so what it decided if i should apply http://www.w3.org/Bugs/Public/show_bug.cgi?id=10066#c37 ? |
00:53 | <Hixie> | s/what/was/ |
00:53 | <othermaciej> | Hixie: if no one complains by tomorrow AM then I'll say the coast is clear |
00:53 | <Hixie> | oh it's by tomorrow, ok |
00:53 | <othermaciej> | (so far no objections afaict) |
00:53 | <Hixie> | i thought it was today |
00:54 | <Hixie> | ok well there are two open WGDecision bugs i haven't applied, that one and the one i just mailed you about |
00:54 | <Hixie> | other than that i'm done with applying decisions, i believe |
01:02 | <othermaciej> | that's good |
01:05 | <othermaciej> | Hixie: ok; I flagged your mail on 131 |
01:05 | <othermaciej> | Hixie: I think other than those two bugs, there are only three issues pending action (31/80 decision, and 152 survey or whatever other resolution comes about) |
01:06 | <Hixie> | before the arbitrary LC publication, anyway :-) |
04:41 | <heycam> | where is application/x-www-form-urlencoded defined? |
06:02 | <Hixie> | heycam: defined in what sense? |
06:03 | <heycam> | defined as in if you have this input dictionary of values, how do you turn it into a string of characters/bytes |
06:03 | <heycam> | s/values/key-value pairs/ |
06:03 | <Hixie> | the encoding algorithm is defined here: http://www.whatwg.org/specs/web-apps/current-work/complete.html#application/x-www-form-urlencoded-encoding-algorithm |
06:04 | <heycam> | Hixie, great, thanks. I didn't find that before for some reason, looking in the forms section. |
06:04 | <heycam> | although I see it's only a couple of page downs from where I was reading, so don't know why I missed it :) |
06:05 | <Hixie> | or just search for "application/x-www-form-urlencoded" in the spec, there's only 16 hits :-) |
09:46 | <hsivonen> | can someone explain to me what profiles "profiles was feedback from the TV industry at TPAC 2010 HTML WG F2F" is referring to in http://www.w3.org/2011/04/07-html-a11y-minutes.html ? |
09:47 | <hsivonen> | on the face of things, "profiles" and "TV industry" in one sentence looks like something that's not One Webby |
09:47 | <Hixie> | it's almost certainly what you're interpreting it as |
09:47 | <Hixie> | (the tv industry doesn't understand "one web") |
09:51 | <gsnedders> | AryehGregor: I'm basically never the right person from Opera for any CSS WG stuff :) |
09:52 | <benschwarz> | Hixie: heyp |
09:52 | <benschwarz> | heyo |
09:52 | <othermaciej> | hsivonen: I remember there being some TV people at TPAC, but I don't recall them asking for "profiles" |
09:52 | <Hixie> | benschwarz: hey, sup |
09:52 | <benschwarz> | Hixie, just home from work |
09:52 | <othermaciej> | but sometimes the a11y telecon minutes are confused |
09:53 | <benschwarz> | Hixie, are you based in SF / mountain view? |
09:53 | <Hixie> | yes |
09:53 | <benschwarz> | Hixie, I'll be in SF in 2 weeks |
09:54 | <benschwarz> | also, any thoughts on http://www.w3.org/Bugs/Public/show_bug.cgi?id=12491 ? |
09:54 | <Hixie> | if you're up for coming up to mountain view, i'd be happy to invite you to lunch at google when you're here - drop me a line with dates that would work for you (i don't have my calendar right now) |
09:54 | <Hixie> | that bug seems reasonable |
09:54 | <hsivonen> | "<oedipus> plus 1 to judy -- W3C process different from "WG process" set up by chairs, but they are following cookie-cutter process which is detrimental to development of spec" |
09:55 | <benschwarz> | Hixie, I was planning to organise a lunch with some heads in SF |
09:55 | <hsivonen> | so who, these days, is thinking that the HTML WG Decision Process is good for the development of the spec? |
09:55 | <benschwarz> | KuraFire, paul_irish and some others…\ |
09:56 | <Hixie> | cool |
09:56 | <Hixie> | hsivonen: nobody being happy is not a good indicator of badness in this kind of thing |
09:56 | <Hixie> | hsivonen: (but having said that, i do think it's bad :-) ) |
09:57 | <benschwarz> | Hixie, I'll email a group when I've got my bizness together ;) |
09:57 | <Hixie> | cool |
09:57 | <benschwarz> | I was thinking saturday the 30th of April |
10:00 | <jgraham> | hsivonen: Presumably a majority of the chairs think it is good |
10:00 | <jgraham> | Although it is possible that they all beleive it is bad but think that the others both think it is good I suppose |
10:02 | <Hixie> | oh wow, it's late |
10:02 | <Hixie> | nn |
10:02 | <jgraham> | gn |
10:02 | <othermaciej> | politics is the art of the possible |
10:04 | <jgraham> | Which is another way of saying you think it is the best possible process |
10:04 | <jgraham> | Presumably |
10:05 | <Hixie> | politics shouldn't (and needn't) be a factor here, fwiw. |
10:09 | <Lachy> | The ridiculous HTMLWG process is one of the major reason I've reduced my involvement in that disfunctional group. |
10:09 | <jgraham> | It's not really clear that can be true unless you are using a different definition of politics |
10:12 | <jgraham> | (in particular, even if you use a data-driven process, which is good, the weighting applied to different bits of data is basically a political decision) |
10:13 | <othermaciej> | any process that involves more than one human is a form of politics |
10:14 | <jgraham> | I think that is a broader definition of "politics" than most people would use |
10:16 | <othermaciej> | that was meant to be a non-tautological assertion, not a definition |
10:16 | <MikeSmith> | jgraham: yeah, because many people want claim that what they are involved in is not political in any way |
10:16 | <MikeSmith> | ceding decision-making authority to somebody else is political decision |
10:16 | <othermaciej> | though Wikipedia's one-liner, "Politics is a process by which groups of people make collective decisions", seems pretty broad and about what I had in mind |
10:24 | <jgraham> | othermaciej: Ah, if you had narrowed the scope to "decision making process" that might be more reasonable |
10:25 | <othermaciej> | I'm trying to think of interactions that involve more than one person which do not involve making any decisions, or even any attempts to influence decisions |
10:26 | <othermaciej> | I suppose if one person murders another in their sleep, solely for the thrill of it |
10:28 | <zcorpan> | doooods! microsoft weren't first! google came up with 'native html5'! here's proof: http://www.html5rocks.com/tutorials/dnd/basics/ |
13:14 | <Ms2ger> | /.: "Maqetta: Open Source HTML5 Editor From IBM" (http://rly.cc/7MXVe) |
13:15 | <dhx1> | Ms2ger: native support right? |
13:17 | <asmodai> | eh, 6.0 FF nightlies. 5 is being skipped? :P |
13:17 | <hsivonen> | asmodai: 5 is in the Aurora channel |
13:18 | <hsivonen> | asmodai: the 5 train has left central already |
13:18 | <hsivonen> | Ms2ger: I wonder if that tool has any connection to Rich S's <canvas> accessibility concerns |
13:19 | <asmodai> | wait, wait, aurora channel? :| |
13:19 | asmodai | looks around |
13:19 | <hsivonen> | asmodai: http://blog.mozilla.com/blog/2011/04/13/new-channels-for-firefox-rapid-releases/ |
13:20 | <asmodai> | yeah, was looking at the channel page at the moment |
13:25 | <erlehmann> | they just want to blow up version numbers |
13:26 | <asmodai> | mmm |
13:26 | <erlehmann> | on slashdot, in the IE10 thread, one message stuck me as particularly insightful: “ten? my browser version goes up to eleven!” |
13:26 | <asmodai> | aurora doesn't seem to jive with -no-remote anymore :S |
13:26 | <Ms2ger> | More like, nobody cares about version numbers, so we just picked the easiest one |
13:26 | <asmodai> | Mmm, but most likely I'm doing it wrong again *tries again* |
13:27 | <asmodai> | ah there we go |
13:31 | <GlitchMr> | erlehmann: I think it's Google Chrome |
13:31 | <asmodai> | Mmm, but can't run aurora and nightly together though. |
13:31 | <asmodai> | Despite different installation locations and different profiles. |
13:32 | <wilhelm> | 5 is being skipped again? :P |
13:32 | <erlehmann> | GlitchMr, :> |
13:32 | <hsivonen> | erlehmann: Opera had better stop tweaking minor version to stay ahead of Chrome |
13:32 | <hdhoang> | the new fx codename scheme is neat |
13:33 | <hsivonen> | GlitchMr: Opera is the one that goes to 11. Chrome's stable release is still at 10. |
13:33 | <asmodai> | wilhelm: aurora is 5 |
13:33 | <GlitchMr> | Oh, right |
13:33 | <GlitchMr> | lol |
13:33 | <GlitchMr> | For me it's just 9.80 |
13:33 | <hdhoang> | WebKit over five hundred |
13:34 | <hsivonen> | hdhoang: yet, Apple ships Safari as 5. They are missing a hundredfold win here. |
13:34 | <GlitchMr> | If user agent says me it's Opera/9.80, it must be it... (I'm kinda confused on browsers user agents) |
13:34 | <wilhelm> | GlitchMr: Yes, thanks to broken browser sniffing scripts, 10 < 9. |
13:35 | <gsnedders> | hsivonen: So there's now moz-central, aurora, beta, and final? |
13:35 | <GlitchMr> | I don't use those |
13:35 | <hsivonen> | gsnedders: yes |
13:35 | <erlehmann> | Opera 9.80 is the eternal version. |
13:35 | <hsivonen> | gsnedders: except the beta channel will take 6 weeks to appear |
13:36 | <asmodai> | I wonder what aurora and nightly are sharing together now that you cannot run them at the same time. |
13:36 | <gsnedders> | So what's the flow from moz-central to Aurora? |
13:36 | <GlitchMr> | All I do is checking by proper header if browser accepts xhtml+xml header and send it if it supports. |
13:36 | <hsivonen> | gsnedders: every 6 weeks |
13:37 | <hsivonen> | gsnedders: the first ever move from central to aurora happened on Tuesday this week |
13:37 | <gsnedders> | hsivonen: So for something to ship you have possibly just under six weeks m-c to Aurora, six weeks to Beta, then six weeks to Final? So everything has a 12–18 week lead time? |
13:37 | <gsnedders> | Compared with Chrome's 6–12 week lead time? |
13:37 | <hsivonen> | gsnedders: in six weeks, current aurora becomes beta and a new aurora begins with what's in central |
13:38 | <gsnedders> | hsivonen: Right, yeah. But to get from central to final takes 12–18 weeks, if I understand correctly? |
13:38 | <hsivonen> | gsnedders: yeah |
13:39 | <GlitchMr> | If my document validates to XHTML5, it's probably good :P |
13:39 | gsnedders | finds the difference (by having another stage) between Fx and Ch interesting |
13:40 | <GlitchMr> | It's not like HTML5 is cure for all problems. I just use it for semantic elements and placeholder="". |
13:40 | jgraham | wonders if anyone has got mozilla-trunk from the ubuntu ppa |
13:40 | <hsivonen> | gsnedders: does Chrome actually land new features on dev? I thought dev and aurora were analogous. |
13:40 | <gsnedders> | hsivonen: I thought they did |
13:41 | <jgraham> | I see the package listed as providing firefox-6 on the webpage |
13:41 | <jgraham> | But it isn't there in synaptic after I reload |
13:44 | <jgraham> | Oooh it works today |
13:44 | <gsnedders> | hsivonen: Oh, they do have a channel above dev, my bad |
13:44 | <GlitchMr> | All those <canvas>es are abstract for me. It might look cool in all those JS demos, but I don't have reason to use it for serious page. |
13:45 | <erlehmann> | serious <canvas> is serious element |
13:46 | <gsnedders> | jgraham: It doesn't allow you to have central and fx4 installed at once though |
13:46 | <jgraham> | gsnedders: Firefox 4 is so old hat |
13:50 | jgraham | now has verion 6.0~a1~hg{stuff} of the Firefox-4.0 package installed |
13:52 | <jgraham> | (which makes loads of sense. obviously.) |
13:59 | <zcorpan> | erlehmann: This is the Internet. And it is serious business. |
14:01 | <erlehmann> | zcorpan, it is. i'm in my bet, chatting on IRC instead of going to the internet conference half an hour away. |
14:01 | <erlehmann> | bed |
14:02 | <erlehmann> | such is life in the internets :> |
14:03 | <aho> | i use canvas for games |
14:03 | <aho> | wasting time is serious business (on the internet) :> |
14:37 | <zcorpan> | are we publishing LC on april 22? or may 22? |
14:45 | <jgraham> | zcorpan: othermaciej said about a month so I guess May 22nd |
15:08 | <zcorpan> | so what is the april 22 date? |
15:08 | <jgraham> | Which April 22nd date? |
15:09 | <jcranmer> | the April 22 date is the day that April 22 falls on |
15:09 | <jcranmer> | usually |
15:11 | <zcorpan> | <http://www.w3.org/mid/E3EACD022300B94D88613639CF4E25F81A1E7330⊙Trcmc> |
15:11 | <zcorpan> | so we're aming for last call on may 24 |
15:13 | <zcorpan> | april 22 is when all decisions need to be implemented |
15:35 | <jgraham> | lol at bug 12500 |
15:36 | <zcorpan> | url? |
15:37 | <zcorpan> | <http://www.w3.org/mid/bug-12500-2486⊙hwwo/Bugs/Public/> |
15:37 | <zcorpan> | heh |
15:39 | <zcorpan> | annevk: you're not supposed to be reading specs while on vacation. you're not supposed to be reading this, either. |
16:04 | jwalden | is curious about that Peruvian beer |
16:04 | <jwalden> | probably no Guinness, tho |
16:58 | <AryehGregor> | gsnedders, too bad, you were the only CSSWG member from Opera that I know. |
16:58 | <TabAtkins> | Hot damn, this is a beautiful abuse of gradients: http://leaverou.me/css3patterns/ |
17:03 | <AryehGregor> | TabAtkins, that's a pretty cool hack. |
17:08 | <wilhelm> | Oh, fun. registerProtocolHandler("mail.google.com", "http://evilsite.com/%s", "Friendly Innocent Site") seems to be valid. |
17:09 | <AryehGregor> | For when the user types "mail.google.com" without the "http(s)://" prefix, you mean? |
17:09 | <AryehGregor> | That's a nasty attack. |
17:09 | <wilhelm> | Yes, or follows a link. |
17:10 | <TabAtkins> | They still need to also put a colon in, right? Like "mail.google.com:page"? |
17:10 | <AryehGregor> | Easy fix: don't allow registerProtocolHandler() to register a name with a dot, and only let it handle things if the user types a colon after the protocol. |
17:10 | <TabAtkins> | Still definitely non-obvious, of course. |
17:10 | <AryehGregor> | (the latter to prevent issues with users just typing a one-word search term) |
17:11 | <wilhelm> | TabAtkins: Yes. But a link saying mail.google.com:/mail looks completely innocent. |
17:11 | <AryehGregor> | Oh, well, that's not much of an attack. |
17:11 | <AryehGregor> | I thought you were saying it would work if the user just typed "mail.google.com". |
17:11 | <AryehGregor> | Into the URL bar. |
17:12 | <AryehGregor> | If you have to get them to allow the site to register a protocol handler, *and* then to follow links that may or may not look legitimate to them, that's really not much of an attack surface. |
17:12 | <AryehGregor> | If you can register the protocol handler to start with, they're already viewing your malicious site, so enabling phishing isn't a huge issue here. |
17:13 | <TabAtkins> | I'd think that the link wilhelm provides looks pretty legit to basically everyone. |
17:13 | <TabAtkins> | AryehGregor: Not necessarily true. <iframe> hack in an ad-based attack, maybe? |
17:13 | <wilhelm> | It's a quite complicated attack vector, yes. |
17:13 | <AryehGregor> | I think that basically everyone doesn't look at URLs, and that the ones that do wouldn't be any more confused by "mail.google.com:/mail" than "http://mail.google.foo.com". |
17:14 | <AryehGregor> | TabAtkins, they're still viewing your malicious site. If the <iframe> isn't sandboxed, they can navigate the parent frame, no? |
17:14 | <wilhelm> | “mail.google.com:” seems to be enough. |
17:14 | <AryehGregor> | With the colon. So not a big deal at all. |
17:15 | <Philip`> | "mail.google.com:80" ? |
17:15 | <AryehGregor> | Schemes are apparently allowed to contain dots. |
17:15 | <wilhelm> | Philip`: Oh, that's ugly. That would trick me. |
17:15 | <AryehGregor> | But I don't think it would be a big deal if we banned dots from schemes for registerProtocolHandler(), unless people actually use them. |
17:15 | <Philip`> | "localhost:80" |
17:16 | <AryehGregor> | Philip`, I thought of that. In current Chrome, that wouldn't even display differently from http://mail.google.com:80/, right? |
17:16 | <AryehGregor> | Either in the URL bar or in the hover-over. |
17:16 | <AryehGregor> | Philip`, ouch. |
17:16 | <wilhelm> | http://tools.ietf.org/html/rfc3986#section-3.1 says dots are allowed. I'm not sure that's a great idea. |
17:16 | <Philip`> | People seem to put a lot of effort into avoiding IDNs that look a lot like ASCII domain names to avoid phishing, so it seems bad if you can put domain names anywhere else in the URL |
17:16 | <Philip`> | rather than saying it's "not much of an attack" |
17:16 | <AryehGregor> | There are some TLDs that resolve to websites too, like "to". |
17:16 | <wilhelm> | Disallowing dots won't help localhost:80. Hrm. |
17:17 | <AryehGregor> | Although Chrome seems to refuse to connect to "http://to/", it wants "http://to./". |
17:17 | <AryehGregor> | Disallow dots and special-case localhost. |
17:17 | <AryehGregor> | Philip`, I'm not saying that we shouldn't do something about it, but it's not a very severe attack. |
17:17 | <AryehGregor> | Initially I thought it was extremely bad. |
17:17 | <AryehGregor> | But it seems not. |
17:18 | <Philip`> | "anyserveronlocalnetwork:80" |
17:18 | <AryehGregor> | Okay, but that's already a very specialized attack right there. |
17:18 | <AryehGregor> | And I don't see what to do about it. |
17:18 | <wilhelm> | “192.168.1.1:80” |
17:20 | <AryehGregor> | wilhelm, dots. |
17:20 | <AryehGregor> | Don't allow dots. |
17:20 | <Philip`> | "[::1]:80" |
17:20 | <AryehGregor> | Brackets and colons aren't even allowed in schems. |
17:20 | <AryehGregor> | schemes. |
17:20 | <Philip`> | Alas |
17:20 | <AryehGregor> | It has to be [a-z][a-z+\-.]*. |
17:21 | <Philip`> | (That scheme doesn't have a colon, actually) |
17:21 | <AryehGregor> | Oh, it's just "[". |
17:21 | <AryehGregor> | I'm pretty sure that's not a valid URL regardless. |
17:21 | <wilhelm> | AryehGregor: That's what I was thinking too. |
17:21 | <AryehGregor> | Don't allow dots or "localhost", and don't allow invalid schemes per the RFC, and you should be fine. |
17:21 | <AryehGregor> | Does anyone use schemes with dots or minus signs? I've seen "svn+ssh". |
17:22 | <AryehGregor> | (for plus signs) |
17:22 | <wilhelm> | xmlrpc.beep, soap.beep, iris.beep are IANA-registered schemes using the dot. But I suppose that's not particularly useful for web browsers. |
17:22 | <AryehGregor> | "z39.50r" |
17:22 | <AryehGregor> | http://ftp.ics.uci.edu/pub/ietf/uri/rfc2056.txt |
17:22 | <wilhelm> | Oh, that one too. |
17:22 | <Philip`> | Hmm, digits aren't allowed? |
17:23 | <AryehGregor> | Oh, they are. |
17:23 | <AryehGregor> | I misremembered. |
17:23 | <AryehGregor> | Although not as the first character. |
17:23 | <AryehGregor> | http://labs.apache.org/webarch/uri/rfc/rfc3986.html#scheme |
17:23 | <wilhelm> | Yes, they are. |
17:23 | <AryehGregor> | [a-z][a-z0-9+\-.]* |
17:23 | Philip` | had just got to "ut2004" in the list |
17:23 | <Philip`> | "view-source:" |
17:28 | <frrrances> | quit |
17:28 | <AryehGregor> | gsnedders, so did you forward it to someone who can give an answer or what? |
17:29 | <AryehGregor> | Since I have WebKit on my side, I'm pretty sure that agreement by either Microsoft or Mozilla would be enough, but agreement by Opera couldn't hurt. |
17:29 | <AryehGregor> | (I'm pretty sure everyone will agree with me, but if not, then I'd be interested to hear what they have to say) |
17:30 | <TabAtkins> | I assume I'm off the hook, since Niwa and Hyatt already said no? |
17:30 | <AryehGregor> | TabAtkins, yes, I'm fine on WebKit. |
17:31 | <AryehGregor> | smaug____, since you asked before, I specced insertNode() yesterday: <http://html5.org/specs/dom-range.html#dom-range-insertnode> I have to review the test results a little more before I'll call the spec final, but I'm pretty sure it won't need substantial revision. |
17:32 | <AryehGregor> | smaug____, also, since you're here, would you happen to have any feedback on this? I don't know if you're the right person to ask, but figure I might as well. http://lists.w3.org/Archives/Public/www-style/2011Apr/0484.html |
17:33 | <smaug____> | AryehGregor: actually I'm trying to not be here today. I should recover from jetlag |
17:33 | <AryehGregor> | smaug____, ah, okay. Good luck at that. :) |
17:34 | <AryehGregor> | It's not urgent at all, I'm just being impatient. :) |
17:41 | <smaug____> | AryehGregor: so is it specified somewhere else in your spec what happens to the end offset |
17:41 | <AryehGregor> | smaug____, it just follows the regular range mutation rules. |
17:41 | <smaug____> | AryehGregor: especially when start and end offset are the smae |
17:41 | <smaug____> | er, same |
17:41 | <smaug____> | I mean, if the range is collapsed and you do insertNode |
17:41 | AryehGregor | looks |
17:42 | <smaug____> | AryehGregor: ok, I assume the mutation rules handle that correctly that neither of the offsets change |
17:42 | <AryehGregor> | smaug____, from the rules at <http://html5.org/specs/dom-range.html#range-behavior-under-document-mutation>: if the range is collapsed in an Element/Document/DocumentFragment, then the offset of the range doesn't change, so the node winds up outside the selection. |
17:42 | <smaug____> | ok |
17:42 | <AryehGregor> | If it's in a comment node, it will stay in the comment node, which will wind up after the node. |
17:42 | <smaug____> | that is compatible with DOM 2 Range |
17:43 | <AryehGregor> | If it's a text node, it will be split and wind up at the end of the first node, so before the new node. |
17:43 | <AryehGregor> | In no case will it contain the new node. |
17:43 | <AryehGregor> | However, this is one of the things that I was planning on looking at more closely today. |
17:43 | <AryehGregor> | I might decide to change that part, depending on my analysis of how current browsers behave and what makes sense. |
17:43 | <AryehGregor> | Since if the range isn't collapsed, then in most cases it will wind up containing the new node. |
17:43 | <smaug____> | AryehGregor: webkit does against DOM 2 Range |
17:44 | <smaug____> | Gecko does what DOM 2 Range says |
17:44 | <AryehGregor> | Well, new specs are allowed to contradict older ones, right? Especially if we don't have interop on the original spec. |
17:44 | <smaug____> | acid3 allows both behaviors |
17:44 | <AryehGregor> | Anyway, I'll let you know what I decide. Of course, it's subject to people actually being willing to implement it. |
17:44 | <smaug____> | I wouldn't want to special case mutation handling for one case |
17:45 | <smaug____> | consistency is a good thing |
17:45 | <AryehGregor> | We already have special cases for deleteContents() and extractContents(). |
17:45 | <AryehGregor> | And whoa, my tests became insanely faster when I passed info to iframes by setting a variable on the iframe's window instead of passing info in the hash. |
17:46 | <AryehGregor> | No navigation required. Now it's like 13 seconds in Chrome instead of a minute. |
17:46 | <AryehGregor> | Also, we have a special case for splitText(). |
17:46 | <AryehGregor> | I'd say that it makes the author-visible behavior sensible if we can allow an invariant like "after insertNode(), the new node will always be contained in the range". |
17:46 | <AryehGregor> | But we can't actually do that unless we split comments, which seems unreasonable. |
17:47 | <AryehGregor> | (and no browser does it) |
17:47 | <AryehGregor> | s/sensible/simpler/ |
17:47 | <AryehGregor> | So I'm inclined to say no special case right now, since we can't make really useful guarantees anyway. |
17:47 | <AryehGregor> | The start of the range will always have to fall before the new node in some cases and after in others, and so will the end. |
17:48 | <AryehGregor> | Because of comments. |
17:48 | <smaug____> | I need to look at what special cases you mean with delete/extractContents and splitText |
17:48 | <smaug____> | I'll |
17:48 | <AryehGregor> | delete/extractContents() guarantee that the range will be collapsed afterwards. |
17:49 | <AryehGregor> | That's only possible by special-casing, because you might have something like <b>foo[</b>]bar where nothing is actually deleted but the selection isn't collapsed, for instance. |
17:50 | <AryehGregor> | Gecko currently implements no special case for splitText(), but WebKit does, and I've specced it because it makes a lot of sense. In particular, I'd need to add at least one extra special case to execCommand() if splitText() didn't have the special case, so I figured it made the most sense to make the special case more generally applicable. |
17:50 | <smaug____> | what is the special case for splitText ? |
17:51 | <AryehGregor> | smaug____, if you have something like foo[bar]baz as one text node, and you called splitText(4), then without special cases it would become foo[b] arbaz (space denoting text node break). |
17:52 | <AryehGregor> | The special case is it becomes foo[b ar]baz instead, i.e., the endpoint gets moved to the new node if appropriate instead of being clamped. |
17:52 | <AryehGregor> | It's the first item here: <http://html5.org/specs/dom-range.html#range-behavior-under-document-mutation> |
17:53 | <AryehGregor> | There's one other special case I'm contemplating but haven't yet specced: if you have {foo} (range endpoints lying in the parent element, not in the text node) and split the node, you current get {fo } o, but {fo o} would make more sense. Not sure if it merits a special case, though, so I won't spec it unless I can come up with a solid justification for it. |
17:54 | <AryehGregor> | E.g., cases where execCommand() would have to special-case if I didn't special-case in splitText(). |
17:54 | <AryehGregor> | (roc agreed with the current spec's special case for splitText(), BTW) |
17:55 | <AryehGregor> | Oh, right. There are also different special cases for splitText() when the text node has a null parent. I could probably get rid of those, since that case is somewhat pathological anyway. |
17:55 | <smaug____> | hmm, need to test how that splittext special case works with mutation events |
17:56 | <AryehGregor> | Yeah, I'm totally ignoring mutation events right now. |
17:56 | <AryehGregor> | I'm hoping they'll go away, but even if they don't, we don't have a spec for them, so it's hard for me to spec anything about them. |
17:56 | <smaug____> | basically, at which point is the special case handled |
17:56 | <AryehGregor> | Since you can have mutation events firing in the middle of splitText() execution, right? |
17:56 | <AryehGregor> | That'll mess things up, yeah. |
17:56 | <smaug____> | right |
17:57 | <AryehGregor> | So I really need to write what to do right after the new node is inserted, and what to do right after the old node's data is truncated. |
17:57 | <AryehGregor> | Separately. |
17:57 | <AryehGregor> | As I said, I'll ignore it for now, but let me update the spec with an XXX to make it clearer. |
17:57 | <smaug____> | ok |
17:58 | <AryehGregor> | Thanks for the feedback. |
17:58 | <smaug____> | atm gecko range implementation doesn't have, IIRC, any dom mutation related special cases |
17:58 | <smaug____> | since it just uses internal mutation observer API |
17:59 | <AryehGregor> | Right, so I've been told. |
17:59 | <smaug____> | so when dom is mutated, range doesn't know what actually changed the dom |
17:59 | <AryehGregor> | Do mutation events fire on data changes, or do you use some other technique for that? |
17:59 | <smaug____> | mutation events happen after mutation observer API methods are called |
17:59 | <smaug____> | in general |
18:00 | <smaug____> | though things like splitTExt causes several dom mutations |
18:00 | <smaug____> | removing text data, and creating a new node with same data as what was removed... |
18:00 | <AryehGregor> | Ah, there's a DOMCharacterDataModified event. |
18:01 | <AryehGregor> | It's the insert that triggers the event, not the create, right? You can't detect the actual create? |
18:01 | <AryehGregor> | Or the change of the data on the newly-created node. |
18:01 | <AryehGregor> | Since it's not in a tree that you can have attached event handlers to. |
18:01 | <smaug____> | mutation events and range are still pretty bad combination, I admit. it is easy to crash webkit and there is at least a case when gecko goes to endless loop |
18:02 | <smaug____> | AryehGregor: right, insert triggers an event |
18:08 | <wilhelm> | Good. The mail.google.com:80 trick doesn't work in either Firefox or my internal Opera build. That's treated as hostname:port. (mail.google.com:/ isn't, though.) |
18:12 | <AryehGregor> | Would be good to spec that. |
18:16 | <funkie> | fml i suck |
18:16 | <funkie> | at html logic |
18:16 | <funkie> | so i have this website |
18:16 | <funkie> | its all done mostly |
18:17 | <funkie> | and I want to add a bade |
18:17 | <funkie> | badge that stays on the bottom left of the screen |
18:17 | <funkie> | and when hovered shows something |
18:17 | <funkie> | a tooltiop |
18:17 | <funkie> | the tooltip is done |
18:17 | <funkie> | but I can't get the image to go there :( |
18:17 | <funkie> | halp |
18:17 | <aho> | try #css or something |
18:17 | <AryehGregor> | Try #css. |
18:17 | <aho> | heh |
18:17 | <bfrohs> | funkie: position:fixed;bottom:0;left:0; |
18:17 | <AryehGregor> | You most likely want position: fixed. |
18:18 | <AryehGregor> | Works in all recent browsers, but I don't know about IE6. |
18:19 | <AryehGregor> | Man, browsers' misimplementation of DOMExceptions really creates loads of distracting failures. |
18:20 | <funkie> | doesn't work |
18:20 | <funkie> | :( |
18:20 | <AryehGregor> | funkie, post a link to the page so people can debug it, if possible. |
18:21 | <AryehGregor> | Actually, I have a CSS question. What's some CSS to make a table fixed-layout, so it doesn't take forever to render if it's huge? That will actually work in all the most recent browsers, obviously I mean. |
18:21 | <funkie> | okok |
18:21 | <TabAtkins> | table-layout:fixed |
18:21 | <TabAtkins> | Bases the rendering on only the first row, iirc. |
18:22 | <AryehGregor> | Is that actually supported in all browsers? |
18:22 | <TabAtkins> | Yes. |
18:22 | <AryehGregor> | I thought no one supported it in practice. |
18:22 | <AryehGregor> | Hmm. |
18:22 | AryehGregor | tests |
18:22 | <TabAtkins> | I've used it for years. |
18:22 | <AryehGregor> | If I specify percentage widths or such with that, will they actually be interpreted strictly instead of as guidelines? |
18:23 | <TabAtkins> | Dunno about that. Table layout is voodoo at the best of times. |
18:23 | <bfrohs> | AryehGregor: I believe so, yes |
18:23 | <funkie> | ok |
18:23 | <funkie> | nerd-migs |
18:23 | <funkie> | migos |
18:25 | <AryehGregor> | TabAtkins, I'm noticing no difference between the two tables here: http://software.hixie.ch/utilities/js/live-dom-viewer/saved/930 |
18:26 | <funkie> | www.pezbanana.com/aquarella/ |
18:30 | <TabAtkins> | AryehGregor: Hrm. |
18:32 | <bfrohs> | AryehGregor: Add width:500px; to each table |
18:32 | <bfrohs> | You'll notice the difference then |
18:33 | <AryehGregor> | I'm mainly aiming to speed up table layout here. |
18:33 | <AryehGregor> | Because a lot of the time it takes my huge tests to run in jgraham's framework is just table layout time. |
18:33 | <AryehGregor> | As far as I can observe -- it displays the results, but then keeps using 100% CPU for a number of seconds, then reflows the whole thing. |
18:34 | <AryehGregor> | Maybe I should use a different display value? |
18:34 | <Philip`> | Can you just split the table after every ~100 rows (and add a new row of headings)? |
18:34 | <bfrohs> | AryehGregor: If you set a width on the table, the layout time is greatly reduced by using fixed table layout |
18:34 | <TabAtkins> | Oh yeah! 'auto' width tables automatically use the 'auto' layout algorithm, regardless fo what you specify. |
18:34 | <AryehGregor> | Philip`, that would only help if the table layout algorithm is worse than linear, which I'm not sure it is (is it?). |
18:34 | <AryehGregor> | Oh. |
18:34 | <TabAtkins> | AryehGregor: Yes, it is. |
18:34 | <AryehGregor> | So width: 100% will work? |
18:34 | <TabAtkins> | (worse than linear, that is) |
18:34 | <bfrohs> | AryehGregor: Yup |
18:34 | <TabAtkins> | Possibly? |
18:35 | AryehGregor | will try that in a second |
18:35 | <TabAtkins> | Answer: yes. |
18:35 | <funkie> | ok, here's the web in case you guys wanna check it out |
18:36 | <funkie> | www.pezbanana.com/aquarella |
18:36 | <funkie> | que ribbon doesn't show at all when set to position: fixed; |
18:36 | <funkie> | :/ |
18:36 | <bfrohs> | funkie: You have width and height set to 0 |
18:37 | <bfrohs> | funkie: Well, that's what it's computing to |
18:37 | <AryehGregor> | Why doesn't someone specify what exceptions are actually supposed to look like? Ugh. |
18:37 | <AryehGregor> | Like WebKit adds a "stack" string member, Gecko adds "lineNumber" and "fileName" . . . |
18:38 | <AryehGregor> | At least for some exceptions. |
18:40 | <AryehGregor> | Oh, Gecko does stack too. |
18:40 | <funkie> | oh |
18:40 | <funkie> | awesome, thanks a shitton |
18:40 | <funkie> | bfrohs |
18:40 | <funkie> | :D |
18:41 | <AryehGregor> | Formatted differently from WebKit, naturally. |
18:41 | <bfrohs> | funkie: np. Consider using Chrome or installing Firebug for Firefox--will allow you to right-click > inspect elements to find detailed information :) |
18:41 | <funkie> | thx |
18:41 | <funkie> | using coda to hand code stuff |
18:41 | <funkie> | my code is a mess |
18:41 | <funkie> | but I'm still learning T_T |
18:48 | <AryehGregor> | vim users: does anyone know how to tell vim to automatically adopt the tab convention of the file you're editing? |
18:48 | <AryehGregor> | E.g., look at the first X lines and try to figure out if it's tabs or spaces, and if spaces how many? |
18:48 | <AryehGregor> | Because I wind up leaving tabs littered in space-indented files if I'm not careful, and it's annoying. |
18:52 | <TabAtkins> | Hixie: You said that most tables that specify @border in the wild use border=0? |
18:54 | <AryehGregor> | TabAtkins, looks like table-layout: fixed plus width: 100% works for Chrome and IE9, but not Opera or Firefox. |
18:54 | <AryehGregor> | Oh well, it's an improvement. |
18:55 | <bfrohs> | AryehGregor: Using 3.6? Because it works in 4.0 for me. |
18:55 | <bfrohs> | (in firefox) |
18:55 | <AryehGregor> | bfrohs, using 4.0. |
18:55 | <bfrohs> | OS? |
18:55 | <AryehGregor> | Okay, let me try a simpler test case. |
18:55 | <AryehGregor> | Ubuntu, but I really doubt OS matters here. |
18:55 | <bfrohs> | Same here, so very weird |
18:55 | <TabAtkins> | Works for me in FF 3.6 on Linux. |
18:56 | <Philip`> | TabAtkins: I see border=0 about 10x as often as border=1 |
18:56 | <Philip`> | TabAtkins: and that 10x more than border=2 |
18:56 | <AryehGregor> | Hmm. |
18:56 | <TabAtkins> | Cool, thanks Philip`. |
18:57 | <bfrohs> | AryehGregor: Wait, are you saying table-layout:fixed; doesn't affect the final layout? Or that it doesn't solve the layout time? |
18:57 | <TabAtkins> | AryehGregor: I'm just taking your livedomviewer and adding a "<style>table { width:100%; }</style>" to it. I get a clear behavior difference. |
18:57 | <AryehGregor> | The behavior is different, but doesn't seem to be what I want unless I give explicit cell widths. |
18:57 | <AryehGregor> | As I'm reading the spec, any available horizontal space should be divided up equally among columns whose first cell has width: auto. |
18:58 | <Philip`> | TabAtkins: http://philip.html5.org/data/table-border-pages.txt |
18:58 | <AryehGregor> | But width: auto on any of the first row's cells seems to still make the column widths depend on cell contents after the first row. |
18:58 | <TabAtkins> | The spec algo is a fiction. |
18:58 | <AryehGregor> | One sec. |
18:58 | <TabAtkins> | Just set % widths on the cells. |
18:59 | <jamesr> | TabAtkins: what's supposed to happen if you have <div style="display:none"><iframe src"..."></iframe></div> ? |
18:59 | <TabAtkins> | jamesr: In terms of loading behavior for the iframe? |
18:59 | <jamesr> | in terms of layout inside the iframe |
18:59 | <TabAtkins> | Oh, the iframe is display:none, so it doesn't lay out. |
19:00 | <TabAtkins> | It should be like setting "window { display:none; }", if that was actually a thing you could do. |
19:00 | <jamesr> | so every computed layout size is 0 inside of it? ok |
19:00 | <TabAtkins> | Well, that's undefined. But 0 is a good answer. |
19:00 | <jamesr> | ok |
19:01 | <jamesr> | guess we gotta figure out how to do that now that we load the iframe |
19:01 | <jamesr> | pretend it's display:none on the inside without actually returning 'none' for getters to style.display |
19:02 | <AryehGregor> | http://software.hixie.ch/utilities/js/live-dom-viewer/saved/931 |
19:02 | <AryehGregor> | It looks like it's enough to specify explicit widths on all but one cell. |
19:02 | <AryehGregor> | The last will then be flexible. |
19:03 | <AryehGregor> | Ugh, my real-world case is still broken in Firefox 4.0. |
19:03 | AryehGregor | investigates |
19:04 | <AryehGregor> | Oh, maybe it's just not picking up the updated CSS file for some reason . . . ? |
19:04 | <AryehGregor> | Yeah, weird . . . |
19:04 | <AryehGregor> | Now it works. |
19:05 | <AryehGregor> | Dunno why it didn't fetch the file properly before. |
19:05 | <AryehGregor> | It did when I ran in Firebug. |
19:05 | <AryehGregor> | Ack, now it broke again?! |
19:05 | <AryehGregor> | No, not anymore. |
19:05 | <AryehGregor> | Okay, Firefox is still slow, but at least Chrome seems faster. |
19:06 | <TabAtkins> | Philip`: I just... I just don't understand what kind of confusion would cause someone to write border="width=95%". |
19:07 | <mpilgrim> | that's quite stunning |
19:07 | <Philip`> | They probably write something more like <table border= width=95%> |
19:08 | <Philip`> | which used to have some border value that got deleted |
19:08 | <TabAtkins> | Ah, that would make sense. |
19:08 | <AryehGregor> | That parses the same as border="width=95%"? I'd have thought it would be border="" width=95% or something. |
19:08 | <AryehGregor> | (Welcome to text/html, I guess.) |
19:08 | <mpilgrim> | tables would be cooler if you could use unicode characters to draw the border you want, inside the border attribute |
19:09 | <TabAtkins> | ASCII is sufficient for all layout purposes. |
19:09 | <mpilgrim> | works for the IETF |
19:10 | <Philip`> | AryehGregor: Whitespace is optional around the = |
19:10 | <AryehGregor> | Fascinating. |
19:10 | <TabAtkins> | I... didn't know that. |
19:11 | <TabAtkins> | So <table border =^^=> parses as <table border="^^=">? |
19:11 | <Philip`> | http://www.whatwg.org/specs/web-apps/current-work/multipage/syntax.html#unquoted |
19:11 | <Philip`> | "The attribute name, followed by zero or more space characters, followed by a single U+003D EQUALS SIGN character, followed by zero or more space characters, followed by the attribute value" |
19:12 | <TabAtkins> | Hm, I'd have to actually go look at the parsing algo to tell how my example is parsed, since it contains an =. |
19:12 | <Philip`> | It's what you said |
19:12 | <bfrohs> | "attribute value ... must not contain ... equals sign" |
19:12 | <Philip`> | http://www.whatwg.org/specs/web-apps/current-work/multipage/tokenization.html#attribute-value-(unquoted)-state |
19:12 | <TabAtkins> | Oh, the "no = in the attr value" is just an author conformance? |
19:13 | <Philip`> | Only whitespace and '>' break out of it |
19:13 | <Philip`> | (and EOF) |
19:13 | <TabAtkins> | Ah, yup. |
19:13 | <Philip`> | Yeah, that whole section is just author conformance |
19:13 | <mpilgrim> | pfft, authors |
19:14 | <AryehGregor> | What's the easiest way to add a new style rule to the document? Just appending a style element, or is there some nicer way to do it via CSSOM? |
19:14 | <Philip`> | If authors want to write <table border =^^=>, who are we to deny them? |
19:14 | <Ms2ger> | AryehGregor, "nicer way to do it via CSSOM"? |
19:14 | <Ms2ger> | AryehGregor, you must be new here |
19:14 | <AryehGregor> | Heh. |
19:15 | <Philip`> | document.body.innerHTML += '<style>...</style>'; |
19:15 | <Ms2ger> | innerHTML += is evil |
19:16 | Philip` | shrugs |
19:16 | <Philip`> | HTML is evil |
19:16 | <aho> | well, it's the slowest thing you can possibly do |
19:16 | <TabAtkins> | Just make an HTMLStyleElement or whatever, set textContent, and append it. |
19:16 | <Ms2ger> | No, HTML is ugly, there's a subtle difference |
19:18 | <Philip`> | Emperor Palpatine was evil, and he was ugly |
19:18 | <Philip`> | There's not really any difference |
19:18 | <AryehGregor> | Philip`, innerHTML += will do fun things like reset the state of all the <video>s on the page, won't it? |
19:18 | <Philip`> | AryehGregor: Sure |
19:19 | <Ms2ger> | /.: Rivals Mock Microsoft's 'Native HTML5' Claims (http://rly.cc/E8bj) |
19:19 | <Ms2ger> | Oh no! |
19:20 | <Philip`> | (That link doesn't work) |
19:20 | <mpilgrim> | TabAtkins: this may be relevant to your interests http://www.mozdev.org/pipermail/greasemonkey/2005-July/003696.html |
19:20 | <Ms2ger> | http://rly.cc/E8bjy |
19:20 | <mpilgrim> | and ensuing discussion |
19:21 | <mpilgrim> | these days you should probably use document.head, if it exists |
19:22 | <mpilgrim> | it's a surprisingly tricky question |
19:22 | <TabAtkins> | AryehGregor: And kill event handlers, etc. You're throwing away and reparsing the entire page. |
19:23 | <mpilgrim> | holy shit, slashdot still exists! |
19:23 | <Ms2ger> | mpilgrim, no kidding! |
19:23 | <AryehGregor> | Ugh, I just want to not use table layout here. |
19:24 | <mpilgrim> | i always assume things stop existing once i stop looking at them |
19:24 | <mpilgrim> | like the HTML working group |
19:24 | <mpilgrim> | and we see how well that worked out |
19:25 | <AryehGregor> | mpilgrim, are you surprised whenever you figure out the sun rose in the morning? |
19:25 | <mpilgrim> | presentational attributes, shelley doing the whatwg weekly, cats living with dogs |
19:25 | <mpilgrim> | AryehGregor: i try not to go outside, it ruins my complexion |
19:26 | <AryehGregor> | The yellow face, it burns us? |
19:27 | <mpilgrim> | wow, i can not think of two people who deserve each other more than Dean Hachamovitch and Asa Dotzler |
19:28 | <mpilgrim> | i haven't been this entertained by trolls since Dave Winer learned that JSON was not XML |
19:30 | <TabAtkins> | mpilgrim: http://scripting.com/2006/12/20.html Heh, funny. |
19:30 | <mpilgrim> | oh, you thought I was kidding? |
19:30 | <AryehGregor> | If a resource is served with no caching headers, does that mean UAs are allowed to cache it at all? |
19:31 | <TabAtkins> | mpilgrim: No, I just hadn't seen that before. |
19:33 | <mpilgrim> | AryehGregor: http://www.w3.org/Protocols/rfc2616/rfc2616-sec13.html#sec13.4 |
19:33 | <mpilgrim> | "A response received with a status code of 200, 203, 206, 300, 301 or 410 MAY be stored by a cache and used in reply to a subsequent request, subject to the expiration mechanism, unless a cache-control directive prohibits caching." |
19:33 | <AryehGregor> | mpilgrim, k, thanks. |
19:34 | <mpilgrim> | in practice, i don't think it will be cached very long |
19:34 | <AryehGregor> | It seems to be cached long enough to be annoying, for Firefox and Opera. |
19:34 | <AryehGregor> | I'll reconfigure the web server. |
19:36 | <mpilgrim> | lol https://bug649408.bugzilla.mozilla.org/attachment.cgi?id=525702 |
19:39 | <Ms2ger> | Yay, blink tags! |
19:39 | <tw2113> | long live the blink! |
19:41 | <TabAtkins> | @keyframes blink { 0% { opacity: 1; } 75% { opacity: 1; } 75.1% { opacity: 0; } 100% { opacity: 0; } } blink { animation: blink 1s infinite; } |
19:43 | <Peter`> | Be careful, one day that might end up in css reset sheets :-p |
19:44 | nimbupani | adds to html5boilerplate |
19:44 | <paul_irish> | +1 |
19:48 | <Philip`> | "75.1%" - that looks like an ugly hack - isn't there a way to do two separate keyframes in/out of a single instant? |
19:48 | <TabAtkins> | Nope. |
19:48 | <Philip`> | How silly |
19:50 | <TabAtkins> | Assuming that the steps() timing function is supported, you do it with that. But otherwise, sharp transitions require that sort of hack. |
19:50 | <TabAtkins> | The problem is that another design choice (allowing folding of similar keyframes together) required out-of-order keyframes to be allowed. Once you have that, you can't tell definitely that two keyframes at the same time represent a "before" and "after". |
19:51 | <TabAtkins> | (I really should have written my animation as just "0%,75% { opacity: 1; } 75.1%,100% { opacity: 0; }".) |
20:07 | <jgraham> | Persoanally I think we should all promote "Naked HTML5" |
20:08 | <jgraham> | Which, depending on your point of view is either just when you say "HTML5" and don't actually mean "CSS", or a special style of coding where you don't wear clothes |
20:08 | <jgraham> | and get a little badge to put on the site that says "I supposrt naked HTML5" |
20:09 | <jgraham> | AryehGregor: Why are you trying to add style rules dynamically? |
20:09 | <jgraham> | If this is for testharness.js, you could just edit the stylesheet |
20:09 | <AryehGregor> | jgraham, dynamically? |
20:10 | <AryehGregor> | jgraham, testharness.js was adding inline "display: none" to thousands of rows when you unchecked one of the boxes. This is rather slow on big tables. |
20:10 | <jgraham> | Weren't you asking how to add stylesheets to the page? |
20:10 | <AryehGregor> | jgraham, I committed some changes already, take a look and see if you like them. |
20:10 | <AryehGregor> | I just added some style elements, seems to work fine. |
20:10 | <jgraham> | OK |
20:11 | <jgraham> | Also, are you sure that it is table layout that takes a long time, not just building a table thousands of rows long? |
20:11 | <AryehGregor> | jgraham, not totally sure, no. |
20:11 | <AryehGregor> | Well, actually I'm sure it's layout. |
20:11 | <jgraham> | Also also, I really wish there was a proper review system for hg |
20:11 | <AryehGregor> | At least in Firefox. |
20:11 | <AryehGregor> | Because it's really slow to check or uncheck the boxes. |
20:12 | <AryehGregor> | I don't see how that could be anything but layout. |
20:12 | <AryehGregor> | While we're talking, do you know of any way to add a doctype to an existing document that has no doctype, in Opera? |
20:12 | <AryehGregor> | insertNode() seems to throw an exception. |
20:13 | <jgraham> | I have no idea |
20:13 | <AryehGregor> | NOT_SUPPORTED_ERR. |
20:13 | <AryehGregor> | Oh well. |
20:13 | <jgraham> | I would have to test or read the code :) |
20:13 | <jgraham> | (and I wouldn't trust my ability to read the code) |
20:13 | <AryehGregor> | I'd really like to not have to re-navigate my iframe whenever the doctype gets blown up. |
20:15 | <AryehGregor> | Alternatively, does anyone know if it's possible to directly set the contentDocument of an iframe, to some Document object I have, instead of having to give a URL? |
20:18 | <AryehGregor> | Whoa, WTF, Opera allows moving a doctype to illegal positions in the DOM. |
20:18 | <AryehGregor> | Like as the child of an Element. |
20:18 | AryehGregor | works around it |
20:20 | <TabAtkins> | Hixie: Do you remember you and I discussing some improvement to Error objects a few months ago? |
20:20 | <TabAtkins> | (Arun has some notes about an idea of mine, but I don't remember having any such idea.) |
20:57 | <gsnedders> | AryehGregor: There's plenty of other Opera people on the list |
20:57 | <AryehGregor> | gsnedders, none that I knew. |
20:57 | <AryehGregor> | At least I don't think I saw any. |
20:57 | <gsnedders> | Maybe not, but probably around half the layout group are. |
21:00 | <AryehGregor> | Then I guess they can answer? |
21:04 | <GPHemsley> | Hixie: typo "environements" around line 104722 |
21:04 | <gsnedders> | AryehGregor: Pretty much |
21:17 | <Hixie> | GPHemsley: thanks |
21:17 | <Hixie> | TabAtkins: i do not |
21:26 | <AryehGregor> | jgraham, is there some specific reason that there's no assert_not_equals()? |
21:40 | <Hixie> | this native html5 thing really is quite amusing |
21:42 | <zcorpan> | "Basically browsers are limited in what they can do with Java, so to execute complex script without bogging down you need plugins, such as the Adobe Flash plugin." http://html5.tmcnet.com/topics/html5/articles/164722-microsoft-decides-support-html-5-let-games-beg.htm |
21:43 | <Hixie> | it's like microsoft don't know how to compete without criticising the competition |
21:45 | <AryehGregor> | Sheesh, insertNode() took a lot longer than I expected. |
21:45 | <AryehGregor> | Mostly writing the tests . . . |
21:45 | <othermaciej> | their promotional posts for IE do seem to focus a lot on why the competition is supposedly bad |
21:45 | <AryehGregor> | Now I get to do surroundContents()! |
21:46 | <Hixie> | AryehGregor: you have no idea how much i am enjoying not having to do the work you're doing :-) |
21:46 | <AryehGregor> | Hixie, well, I'm happy doing it, so that's two of us. :) |
21:47 | <Hixie> | :-) |
22:00 | <TabAtkins> | AryehGregor: Regarding the @border=1 survey, would I be accurately summarizing one of your arguments as "@border=1 serves as a signal to non-CSS UAs that the table is non-presentational"? |
22:00 | <AryehGregor> | TabAtkins, yes. |
22:00 | <TabAtkins> | kk. Any particular reason the existing signal defined for that purpose (the presence or absence of @aria-role=presentation) is insufficient? |
22:01 | <TabAtkins> | Particularly given the current state of affairs, where presentational tables are okay if tagged in that way? |
22:01 | <Hixie> | only in the w3c copy of the spec :-P |
22:02 | <TabAtkins> | Well, yeah, but we're arguing about an HTMLWG decision, so the w3c copy is somewhat relevant. |
22:02 | <Hixie> | (since the rationale for that made absolutely no sense) |
22:02 | <Hixie> | fair enough |
22:03 | <Hixie> | the way the spec currently defines border=1 is that it is an explicit indicator that the table is not a layout table |
22:03 | <AryehGregor> | TabAtkins, that's a way to determine that the table *is* presentational, not that it's *not* presentational. |
22:03 | <Hixie> | frankly if you want to argue a decision i'd concentrate more on the tables-for-layout one, the case against that one is much stronger |
22:03 | <AryehGregor> | If you just write <table>, UAs can't safely assume it's non-presentational. |
22:04 | <TabAtkins> | Hixie: Yeah, I will, I'm just annoyed that a paragraph from my objection was misinterpreted in the decision. I'm debating about whether or not to respond to Lief seriously here. It's probably a bad idea. |
22:04 | <TabAtkins> | I think I'll instead just point out that he has no idea what he's talking about, and he should read the Rendering section again. |
22:04 | <Hixie> | dude the chairs have ignored entire e-mails of feedback, at least if they misinterpreted your paragraph that means they read it |
22:07 | <TabAtkins> | Given that Maciej authored the decision email, I have a (possibly mistaken?) hope that he'll respond reasonably. |
22:08 | <Hixie> | another decision i'm worried about is the weird one about focus rings |
22:08 | <Hixie> | i don't even understand that decision though |
22:08 | <Hixie> | so it's harder to know how to argue against it |
22:16 | <Hixie> | anyone know of a good online tool for drawing state transition graphs? |
22:17 | <Hixie> | doesn't have to have good exporting facilities |
22:17 | <Hixie> | i'm just trying to sketch something out and ascii art isn't cutting it |
22:17 | <TabAtkins> | SVG? |
22:18 | <TabAtkins> | Omnigraffle is offline, but is supposed to be really good. |
22:21 | <Hixie> | something like omnigraffle would work |
22:22 | <Hixie> | gliffy.com will do |
22:22 | <Hixie> | though it's not automatically placing the nodes as i had hoped |
22:24 | <Hixie> | PS. I hate how Flash steals keyboard focus |
22:24 | <AryehGregor> | I hate that too. |
22:24 | <Philip`> | Hixie: Maybe draw it with pencil and paper? |
22:25 | Philip` | usually finds that easier than drawing anything on a computer |
22:27 | <AryehGregor> | Did I seriously forget to specify that extractContents() et al. need to throw if the context object is detached? |
22:27 | <AryehGregor> | Feh. |
22:27 | <AryehGregor> | (the whole idea of being detached is ridiculous anyway) |
22:27 | <AryehGregor> | Oh, no, wait, I didn't. |
22:28 | <AryehGregor> | I'm just testing it differently. |
22:28 | <AryehGregor> | k, all is well. |
22:30 | <jgraham> | AryehGregor: No specific reason. Please add if you need it |
22:30 | <AryehGregor> | jgraham, k. |
22:31 | <AryehGregor> | How sneaky. Someone evaded my "spec inbox" filter by sending to w3c.org instead of w3.org. |
22:32 | <AryehGregor> | I suppose www.org would have been too confusing. |
22:32 | <AryehGregor> | Although they do own it. |
22:33 | <jgraham> | AryehGregor: For bonus points make it correct in the corner case where assert_equals is wrong |
22:34 | <AryehGregor> | What case is that? |
22:34 | <jgraham> | (hint: javascript has two zero values) |
22:35 | <jgraham> | (I will fix assert_equals at some point) |
22:38 | <AryehGregor> | I already worked around that in format_value(). |
22:38 | <AryehGregor> | It's roughly one line. |
22:38 | <AryehGregor> | So, it looks like IE is aiming to advertise itself as 10.0 in its UA string, not 9.8 or anything. Wonder how well that will go. |
22:39 | <TabAtkins> | I suspect they'll flinch when release time rolls around. |
22:44 | <jgraham> | AryehGregor: It also needs to be right in the assertions of course |
22:44 | <AryehGregor> | What do you mean? |
22:44 | <AryehGregor> | TabAtkins, or they'll just add all major affected sites to their compatibility list. |
22:44 | <jgraham> | like if (expected === 0) {assert(1/expected === 1/actual)} |
22:45 | <jgraham> | Because +0 === -0 |
22:45 | <TabAtkins> | AryehGregor: Sure, that's possible. |
22:45 | <jgraham> | But 1/+0 !== 1/-0 |
22:46 | <AryehGregor> | Why would anyone assert that? |
22:46 | <AryehGregor> | I mean, maybe in theory, but doesn't seem likely in practice, right? |
22:46 | <jgraham> | The point is that you might assert_equals(-0, 0), which should be false |
22:47 | <jgraham> | It seems unlikely in practice indeed |
22:47 | <jgraham> | That's why I said "corner case" |
22:48 | <AryehGregor> | It came up in my reflection tests in some capacity or other. |
22:48 | <jgraham> | But it would be nice to match the ES5 SameValue algorithm exactly |
22:48 | <AryehGregor> | Well, not exactly. |
22:48 | <AryehGregor> | Anyway, yeah. |
23:15 | <AryehGregor> | It appears your aim is to perpetuate the confusion about what HTML5 |
23:16 | <AryehGregor> | is, not for the good of anybody. |
23:16 | <AryehGregor> | Must say, you are doing a damned fine job. |
23:16 | <AryehGregor> | Surely that sort of comment violates the discussion policy. |
23:16 | <AryehGregor> | Or guidelines, whatever. |
23:18 | <Hixie> | AryehGregor: it certainly would be sufficient for a one-week ban if someone spoke to someone else in that manner on the whatwg list |
23:20 | <TabAtkins> | AryehGregor: Ping the chairs with the email? |
23:21 | <AryehGregor> | I considered it. |
23:21 | <AryehGregor> | Shrug. |
23:21 | <AryehGregor> | Maybe next time. |
23:21 | <AryehGregor> | It's at least the second like that I've seen in the last couple of days. |
23:21 | <Philip`> | Or just ignore it, because it's probably no less harmless than things people have said here |
23:24 | <AryehGregor> | Probably. |
23:35 | <AryehGregor> | Have any browsers considered just not serving Accept: headers anymore? They're a colossal waste of bytes, after all. |
23:36 | <othermaciej> | I think there are at least some sites that would break if you serve no Accept header at all |
23:38 | <jgraham> | Possibly some of the other Accept.+ headers are not needed though |
23:39 | <AryehGregor> | othermaciej, what if you serve */*? |
23:39 | <othermaciej> | AryehGregor: sadly, that breaks some sites too |
23:39 | <AryehGregor> | If it's totally useless for long enough, maybe people would stop using it eventually and then it could be dropped. |
23:39 | <AryehGregor> | Oh well. |
23:40 | <othermaciej> | there are servers that look for specific entries, even if you also have */* |
23:41 | <othermaciej> | we send: "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8" |
23:41 | <othermaciej> | I think this is minimized for Web compatibility |
23:41 | <othermaciej> | some sites serve you bad content if you don't explicitly claim to support XHTML, or XML |
23:42 | <othermaciej> | note that for most sub resources, though, we serve "Accept: */*" |
23:43 | <othermaciej> | (I think it used to be necessary to mention PNG, but I think not any more) |
23:43 | <othermaciej> | Accept-Language and Accept-Encoding are also required by compatibility |
23:44 | <othermaciej> | wow, I don't think I've ever seen Google serve Flash on their homepage before |
23:44 | <Hixie> | didn't we serve flash for the pacman thing? |
23:45 | <Hixie> | and we've had youtube videos on there before |
23:45 | <othermaciej> | no, that was all done with real Web technology |
23:45 | <othermaciej> | and if you have plugins disabled, you just get a link to a search query |
23:46 | <othermaciej> | (presumably likewise for any case of "no Flash") |
23:47 | <othermaciej> | I may have missed previous cases of Flash YouTube videos |
23:50 | <Hixie> | i'm pretty sure the audio for pacman was flash |
23:52 | <othermaciej> | that's possible, I did not investigate beyond finding it was made out of divs |