02:36 | <roc> | TabAtkins: thanks for reminding me about http://code.google.com/p/chromium/issues/detail?id=73609, please push on it :-) |
05:58 | <annevk> | gsnedders, you are in Oslo right? |
05:58 | <annevk> | gsnedders, you can help me set up Ms2ger-style Anolis :) |
05:58 | <annevk> | and then everything will be awesome |
06:21 | <annevk> | AryehGregor, so additional references is a lot of work for little benefit, but linking "IDL attribute" throughout the draft is useful? |
06:22 | annevk | shrugs |
06:26 | <zcorpan> | maybe the IDL boxes should have a label saying "IDL" to make it more discoverable what IDL attribute means |
06:26 | <zcorpan> | is there a bug asking for linkification of IDL attribute? |
06:26 | <zcorpan> | there is |
06:38 | <boblet> | zcorpan: re: the blockquote/footer bug you commented on, why don’t you think using footer for attribution is correct? The defn for footer states “The footer element represents a footer for its nearest ancestor sectioning content or sectioning root element”. Blockquote is a sectioning root element… |
06:39 | <zcorpan> | boblet: blockquote says its content is quoted from another source |
06:40 | <zcorpan> | boblet: it doesn't make an exception for footer |
06:40 | <zewt> | quotostrophy |
06:40 | <zcorpan> | boblet: what do you do if what you're quoting has a footer? |
06:41 | <annevk> | boblet, the source has to be in a paragraph around the <blockquote> |
06:41 | <annevk> | boblet, the spec says so, even |
06:41 | <boblet> | …add two footers? |
06:42 | <boblet> | damn looks like I should have got more ppl to give feedback bf publishing :/ |
06:42 | <zcorpan> | what if you don't want to provide your own citation and want to quote a footer? |
06:44 | <zcorpan> | hmm css should allow the "thin" etc keywords in margins and paddings |
06:45 | <zcorpan> | TabAtkins: ^ |
06:45 | <zcorpan> | consider the css i just wrote: .idl { position:relative } |
06:45 | <zcorpan> | .idl::before { content:'IDL'; font:bold small sans-serif; padding:.5em; background:white; position:absolute; top:0; margin:-1px 0 0 -4em; width:1.5em; border:thin solid; border-radius:0 0 0 .5em } |
06:45 | <boblet> | annevk: can you point me to where the spec says that? |
06:46 | <zcorpan> | i use margin:-1px to make it line up with the border, but the border is thin, not 1px |
06:46 | <zcorpan> | or is thin defined to be 1px? |
06:46 | <annevk> | boblet, maybe that text got removed |
06:48 | <boblet> | kk. well that sux. using footer was a really nice way of tying citation and quote together. any suggestions other than <blockquote>…</blockquote><p>— citation</p>? |
06:48 | <annevk> | boblet, first example still uses that pattern though |
06:49 | <annevk> | boblet, not really... we might have a dedicated <credit> element at some point |
06:49 | <annevk> | but whether that's really needed is dubious |
06:49 | <boblet> | there’s no way to link a citation to a <blockquote> or <q> other than proximity then? I haz a sad |
06:50 | <zcorpan> | i think hsivonen has argued that the citation should just go in the blockquote element without special markup |
06:50 | <annevk> | just markup man |
06:50 | <annevk> | don't get worked up over it ;) |
06:51 | <boblet> | annevk: hold on, am I in the wrong place? :p |
06:51 | <annevk> | now, APIs... |
06:51 | <zcorpan> | boblet: try the forums! |
06:52 | <boblet> | zcorpan: that’s what I’ve done traditionally, so using footer seemed like a better way of doing that |
06:53 | <woef> | Hmmm, do you guys answer to conceptual css questions, or are you just hardcore htmlheads? :) |
06:53 | <boblet> | ( ^ re: hsivonen’s suggestion |
06:53 | <zcorpan> | boblet: how is it better? |
06:53 | <boblet> | woef: ask and see ;) |
06:54 | <Onderhond> | Can anyone tell me how and why certain styling restrictions are set on specific html elements. |
06:54 | <boblet> | footer and header are basically metadata containers associated with content |
06:54 | <Onderhond> | Like, why is there no margin on a tr |
06:55 | <Onderhond> | (though there is something called "border-spacing" |
06:55 | <boblet> | zcorpan: also using footer makes the separation between quoted content and the citation metadata explicit (or at least I thought so) |
06:57 | <boblet> | …at least more explicit than just having the citation in the last <p> of the blockquote |
06:58 | <zcorpan> | boblet: since it's possible to quote footers, it's not really more explicit than p |
06:59 | <annevk> | Onderhond, from a CSS standpoint it's a different display type |
06:59 | <annevk> | Onderhond, it's a table row |
06:59 | <annevk> | Onderhond, not a block-level element |
06:59 | <Onderhond> | Yeah, I figured as much. |
07:00 | <annevk> | Onderhond, and they are a little different from ordinary elements |
07:00 | <Onderhond> | But is that reason enough to invent a new property doing exactly the same thing? :) |
07:01 | <Onderhond> | Or am I missing some subtle nuances between border-spacing and margin? |
07:01 | <zcorpan> | if you want margin on tr, you can make it display:block |
07:01 | <Onderhond> | zcorpan: I know, but then I lose the tr/td behavior. |
07:01 | <zcorpan> | it'll ruin the table, but you can set margins |
07:02 | <Onderhond> | It's not so much a practical issue. |
07:02 | <Onderhond> | I'm just wondering why certain restrictions are set. |
07:02 | <zcorpan> | to make it implementable, i guess |
07:02 | <Onderhond> | Most restrictions sound quite reasonable at first, but you always come across certain situations where they are a pain in the ass. |
07:02 | <boblet> | zcorpan: I understand what you’re saying, but that still sucks. It’s pretty common for blockquotes to be called out with indentation, different background color, different type treatment etc. if the citation content is outside the blockquote it’s annoying to style that |
07:03 | <zcorpan> | boblet: use a class |
07:03 | <Onderhond> | And from a layman's point of view, programming a restriction seems like more work than allowing an existing property to do its thing :) |
07:03 | <Onderhond> | And it sounds like even more work to invent a new one to do exactly the same thing as another. |
07:03 | <zcorpan> | boblet: oh wait i thought you were talking about hsivonen suggestion |
07:03 | <zcorpan> | boblet: yeah i agree having citation outside blockquote sucks for styling |
07:03 | <Onderhond> | block/inline don't have different properties for left/right margins either. And they're quite different display types too. |
07:03 | <zcorpan> | boblet: but it's what the spec says currently |
07:03 | <annevk> | Onderhond, but border-spacing does not do the exact same thing |
07:04 | <annevk> | also, it's way late to change any of this... |
07:04 | <Onderhond> | annevk: sure sure :) |
07:05 | <Onderhond> | It just surprises me sometimes to find restrictions that only seem to make things harder. |
07:05 | <Onderhond> | But maybe that's only from a user's perspective. |
07:06 | <boblet> | zcorpan: hsivonen’s idea (and my pre-HTML5 pattern) to add citation as blockquote content would go against current spec too tho, no? as much as using footer… |
07:06 | <zcorpan> | boblet: yes |
07:06 | <Onderhond> | annevk: it's a bit like restricting divs from being used in a h1 (hx) element. |
07:07 | <Onderhond> | Sounds logical in most situations. |
07:07 | <annevk> | well, there is certainly quite some stuff over engineered |
07:07 | <annevk> | but then it got implemented, shipped, and widely used |
07:08 | <Onderhond> | A same thing almost happened to the footer-element. Glad that got corrected. |
07:08 | <annevk> | at which point you're stuck |
07:08 | <Onderhond> | I'm all for best practises, not so much for restrictions. |
07:08 | <zcorpan> | i guess border-spacing is the way it is to match html's cellspacing |
07:09 | <zcorpan> | and cellspacing predated css margin |
07:09 | <annevk> | it's better now, more people are involved, and pragmatism typically wins from over engineering |
07:09 | <boblet> | pity that figcaption is not caption, or that there’s not some general captioning element that’d be usable here |
07:09 | <annevk> | you mean <legend>? |
07:09 | <boblet> | … or attribute flag or something |
07:09 | <annevk> | still not sure why we gave in on that |
07:10 | <boblet> | annevk: gave in on what? |
07:10 | <zcorpan> | <legend> was a PITA to use with figure, to be fair |
07:10 | <Onderhond> | http://onderhond.com/temp/product-lines.png -> this was the practical problem btw |
07:10 | <boblet> | aah, I remember now |
07:10 | <Onderhond> | I okay'd the design, but got stuck implementing it. Seems rather silly for such a trivial thing :) |
07:11 | <Onderhond> | Still no way to make it work fine in IE6-7 |
07:11 | <zcorpan> | Onderhond: border:double? |
07:11 | <Onderhond> | zcorpan: try it with a gradient background :) |
07:12 | <zcorpan> | make the background transparent at the top |
07:12 | <Onderhond> | Anyway, it works quite fine with border-spacing, just not in older browsers. |
07:18 | <boblet> | zcorpan: would an attribution element that went inside blockquote need to be unique? or is it theoretically possible that eg footer could be permitted for attrib. in addition to being blockquotable content? I get the feeling that such special-casing would be bad. but… :) |
07:19 | <zcorpan> | boblet: it's theoretically possible, sure, we can make the spec say anything we want |
07:19 | <boblet> | will do some research for pre-HTML5 blockquote citations and see if there are any patterns, then think about reopening that bug if I’ve got an argument stronger than “awww man” ;) |
07:19 | <zewt> | more quotostrophies |
07:20 | <boblet> | zewt: what’s wrong with a good quotostrophy now and then? |
07:20 | <zcorpan> | boblet: imo the best reason to put attribution in blockquote is ease of styling, but that hasn't convinced Hixie so far |
07:20 | <boblet> | zcorpan: maybe some pre-HTML5 patterns will help |
07:21 | <boblet> | while I’m here anything else I messed up in http://html5doctor.com/blockquote-q-cite/ ? :/ |
07:21 | <zcorpan> | boblet: maybe we could add a feature to css similar to display:run-in but the next sibling instead of previous sibling |
07:22 | <zcorpan> | except that display:run-in is a PITA as well |
07:23 | <zcorpan> | maybe XBL or css templates or so would make it possible to put attributions inside the blockquotes on the styling layer |
07:24 | <zcorpan> | boblet: imo cite="" is completely useless and should be dropped from the spec |
07:25 | <zcorpan> | i also think <q> is fairly useless :) |
07:25 | <boblet> | zcorpan: agree on both counts. altho the benefit of @cite increases if there’s no way to link attribution explicitly with a block quote |
07:26 | <zcorpan> | use case for having a link? |
07:26 | <boblet> | <q> does have some multilingual benefits |
07:26 | <boblet> | to get more context for the quote |
07:27 | <boblet> | also to prove you’re not misquoting |
07:27 | <zcorpan> | i mean link as in "no way to link attribution explicitly with a block quote" |
07:27 | <zcorpan> | for more context for the quote there's <a href> |
07:29 | <hsivonen> | roc: Have you seen Swiffy's use of SVG fonts yet? |
07:29 | <hsivonen> | http://swiffy.googlelabs.com/gallery/example1.html is correctly fontified in WebKit but not in Gecko |
07:30 | hsivonen | expects bug title "Implement SVG fonts in order to render Chrome ads properly" |
07:31 | <roc> | ironically we have a new approach to SVG fonts being discussed in www-font that a lot of people like |
07:32 | <roc> | I would rather submit a JS SFNT generator as a Swiffy patch than support SVG fonts as specced today |
07:32 | <hsivonen> | is SFNT a TrueType table name? |
07:33 | <roc> | it's the generic name for the Truetype container format |
07:33 | <boblet> | zcorpan: aah. easier to generate usable quotes database, eg correctly attributed quote of the day site, specialist bibliographic use in-site or across a discipline etc |
07:33 | <hsivonen> | roc: let's hope they make swiffy open source and accept patches |
07:34 | <zcorpan> | boblet: if it's your own content you want to annotate for easy scraping, html has extension points for such things |
07:35 | <zcorpan> | boblet: you don't need the spec's semantic wand to do that |
07:35 | <zcorpan> | boblet: if it's someone else's arbitrary content, you can't trust them to use <cite> correctly anyway |
07:36 | <hsivonen> | roc: this proposal? http://lists.w3.org/Archives/Public/www-font/2011AprJun/0144.html |
07:37 | <roc> | oh, it's not open source already?> |
07:37 | <roc> | bad Google |
07:37 | <hsivonen> | roc: not already. the FAQ says they don't even know if it will be |
07:37 | <roc> | hsivonen: yeah |
07:38 | <zcorpan> | i love that v.nu warns for cite="" :) |
07:38 | <hsivonen> | zcorpan: there's a bug about that, though :-( |
07:38 | <hsivonen> | I wonder how many Flash to WebKit converters there are by now |
07:39 | <hsivonen> | I can think of 4 off the top of my head |
07:39 | <zcorpan> | hsivonen: pointer? |
07:40 | <hsivonen> | zcorpan: wow. I don't find the bug. |
07:40 | <hsivonen> | maybe it was an email then |
07:40 | <boblet> | zcorpan: true, but better chance of it if there’s an established pattern. eg Google offering quotes as a subtype of search results. including page is good, but also including source info when available is better. I suspect in academic situations it would be more common to get decent info if there was a pattern for it too |
07:41 | <hsivonen> | zcorpan: ok, can't find the bug, can't fix the bug ;-) |
07:41 | <zcorpan> | heh |
07:41 | <hsivonen> | zcorpan: the basic idea was that it shouldn't warn since cite is part of microdata |
07:42 | <zcorpan> | it is? oh yeah it is |
07:42 | <zcorpan> | i guess that's fair enough |
07:42 | <hsivonen> | I'm not convinced that making it part of microdata was a good idea |
07:42 | <hsivonen> | anyway, the warning is factually correct until browsers support microdata |
07:43 | <zcorpan> | seems ok to use <link> for the microdata use case if you want an invisible link |
07:44 | <annevk> | are we not going to support <blockquote cite> eventually? :/ |
07:44 | <zcorpan> | are we? |
07:44 | <hsivonen> | is Smokescreen still being developed? |
07:44 | annevk | was hoping that <blockquote> / <q> would get some XBL love |
07:44 | <hsivonen> | what about Gordon? |
07:44 | <hsivonen> | smokescreen.us looks like there hasn't been action since May 2010 |
07:45 | <zcorpan> | annevk: wouldn't it just give two links for people who follow the Doctor's advice and use both cite="" and <a href>? |
07:45 | <hsivonen> | the last commit to Gordon is over a year old |
07:45 | <boblet> | hsivonen: btw do you still think attribution inside <blockquote> (as content) is a good idea? (heard from zcorpan that you did at some stage) |
07:46 | <zcorpan> | boblet: (using both cite="" and <a href> gives browsers an incentive not to support cite="") |
07:46 | <hsivonen> | boblet: yes |
07:46 | <boblet> | zcorpan: if there’s a way to have that link moved out of @cite and into … something I’d be all for dropping @cite |
07:46 | <hsivonen> | boblet: assuming you want the attribution to be part of the indented block |
07:47 | <boblet> | hsivonen: what’s your view on using footer to wrap that attribution rather than say <p> |
07:48 | <hsivonen> | boblet: a footer might confuse JAWS when browsers get around to mapping <footer> to the JAWS page navigation |
07:48 | <hsivonen> | (not sure if Firefox already does that) |
07:50 | <boblet> | in what way? it’d be contained to the blockquote though, no? |
07:53 | <hsivonen> | boblet: if you want <footer> in <blockquote> to have special implementation requirements, why not mint some kind of <attribution> element instead while we are at it? |
07:53 | <hsivonen> | boblet: I think making <footer> special in a <blockquote> would be the wrong way |
07:53 | <annevk> | zcorpan, I'd expect to only show cite="" in a tooltip kind of way, but yeah, I guess initially it would |
07:54 | <annevk> | zcorpan, maybe it's not worth it though and we should drop cite="" |
07:54 | <hsivonen> | I wish we just nuked cite="" as a failure like longdesc="" |
07:54 | <annevk> | I used a little script to make cite="" function on my site |
07:55 | <annevk> | but yeah, it's not ideal |
07:55 | <annevk> | not really looking forward to retroactively fixing all my content |
07:55 | <hsivonen> | annevk: if the argument is a private script, you are in the post hoc rationalization land |
07:55 | <boblet> | hsivonen: wouldn’t be opposed to <attribution>, but rather than making <footer> special, what I’m suggesting is only that “The footer element represents a footer for its nearest ancestor sectioning content or sectioning root element” beats “The blockquote element represents a section that is quoted from another source” |
07:55 | <zcorpan> | annevk: showing it in a tooltip seems pretty useless |
07:56 | <hsivonen> | boblet: oh, good point about sectioning roots |
07:56 | <boblet> | eg. “The blockquote element represents a section that is quoted from another source, optionally with attribution in a footer element” |
07:56 | <hsivonen> | boblet: I guess this comes back to whether HTML5 sections are truly implementable in browsers |
07:56 | <boblet> | no implementer implications |
07:56 | <hsivonen> | for accessibility and selectors |
07:57 | <annevk> | zcorpan, not the normal kind of tooltip |
07:57 | <boblet> | I prolly misunderstand what’s involved for implementors tho |
07:57 | <hsivonen> | boblet: well, you probably should add some implementor implications to avoid making footer in blockquote have the same navigational semantics in AT as footer in body |
07:57 | <annevk> | hsivonen, oh yeah |
07:57 | <annevk> | hsivonen, would still suck to have to rewrite all <blockquote cite> / <q cite> stuff though |
07:58 | <annevk> | or I could leave it invalid... |
07:58 | <hsivonen> | annevk: I think you are implicitly arguing against every obsoleting anything :-) |
07:59 | <boblet> | hsivonen: but that should be a given for sectioning roots excepting body no? |
08:00 | <boblet> | but yeah my basic mental model is header and footer are metadata containers for that section’s content, so it makes sense that footer in blockquote would be potentially usable for blockquote metadata |
08:00 | boblet | hmm, will email about this before rewriting article I think :/ |
08:02 | <zcorpan> | google+ eh? |
08:02 | <zcorpan> | what a stupid name |
08:02 | <zewt> | trying to compensate for the google- of the hideous black bar |
08:02 | <hsivonen> | boblet: well, the relationship of <footer> and role=contentinfo could use some more explicit language about implementation requirements |
08:03 | <hsivonen> | where by "explicit language" I don't mean cursing |
08:03 | <boblet> | :) true |
08:03 | <annevk> | hsivonen, nah, just the stuff I use :p |
08:04 | <zcorpan> | hsivonen: cursing would be pretty funny |
08:29 | <boblet> | zcorpan: I thought we had the forum(/mailing list/bug reporting tools…) for that? :| |
08:31 | <boblet> | so, in a knife fight between <style scoped> and <figcaption> as figure:first-child, who wins? would be nice to add <style scoped> but still have <figcaption> above <figure> content… |
08:36 | <zcorpan> | boblet: <style scoped> is allowed only as first child |
08:36 | <zcorpan> | boblet: <figcaption> is allowed as either first child or last child |
08:36 | <zcorpan> | can't have both being first child :) |
08:37 | <zcorpan> | but you could argue that this is a spec bug |
08:37 | <zcorpan> | and file a bug |
08:37 | <boblet> | zcorpan: they both die! noo! police are called, girls cry… |
08:37 | <boblet> | moving style to a wrapper div, but will add that to the list |
08:48 | <boblet> | style scoped was implemented in something recently, right? WebKit nightlies? |
08:49 | <Ms2ger> | Oh? |
08:50 | <boblet> | thought I saw that in Twitter, but can’t find evidence. progress on the WebKit bug: https://bugs.webkit.org/show_bug.cgi?id=49142 but can{t check due to Saf5.1 (boo) |
09:04 | <linclark> | the IRC logs for this channel used to be available at http://krijnhoetmer.nl/irc-logs/whatwg/20100424 |
09:04 | <linclark> | but haven't been able to access that site for the past two days |
09:04 | <linclark> | is there anywhere that has backup IRC logs? |
09:08 | <annevk> | linclark, no, nobody has set something up |
09:09 | <linclark> | annevk: do you know what's up with the log site? |
09:09 | <linclark> | I think I accessed it just last week or the week before |
09:09 | <annevk> | krijn's computer is breaking down |
09:09 | <krijn> | It's not |
09:09 | <annevk> | it's Windows plus some ancient IRC client plus PHP |
09:10 | <krijn> | Network cable issues now |
09:10 | <annevk> | oh |
09:10 | <krijn> | Will (try to) fix it Saturday |
09:10 | <annevk> | if only DreamHost allowed IRC clients to run |
09:10 | <krijn> | Yeah, or IRCCloud had logs available as text |
09:11 | <annevk> | do they have public logs? |
09:11 | <krijn> | Don't know |
09:11 | <krijn> | But would solve the problem :) |
09:11 | <annevk> | guess I should accept my invite so I won't lose out on info until Saturday! |
09:11 | <krijn> | If someone can keep the logs of this week, I'll add them when my server is back online |
09:14 | <sst_> | hi there, can i use aside also for a section or is it only for page? |
09:14 | annevk-cloud | creates some wind |
09:15 | annevk-cloud | wins |
09:17 | <hsivonen> | this draft is awesome: http://dev.w3.org/2009/dap/design-patterns/ |
09:19 | <annevk> | hopefully they elaborate a bit more |
09:19 | <annevk> | API design principles could certainly be nice |
09:30 | <gsnedders> | annevk: I am in Oslo. So I guess I can… |
09:31 | <annevk> | glad you're so excited about it :) |
09:34 | <gsnedders> | annevk: When you getting here? |
09:35 | <annevk> | 5PM at the office, more or less |
09:36 | <gsnedders> | annevk: I'm sitting around Core-Systems, FWIW. |
09:46 | <hsivonen> | A Microsoft blog post said that they deliver updates for 5 browsers |
09:46 | <hsivonen> | what's the 5th? Windows Phone edition of IE? |
09:47 | hsivonen | counts 6, 7, 8 and 9 as four |
11:11 | <annevk-cloud> | looks like this actually works, but if nobody says anything while I'm gone it's not very useful... |
11:12 | <Ms2ger> | :) |
11:50 | <annevk-cloud> | Also works on the phone... |
12:39 | <AnselmBradford> | Does anyone know why the "accept" attribute on the form element is not listed in the obsolete section of the latest spec? |
12:40 | <Ms2ger> | Nobody implements it? |
12:41 | <zcorpan> | AnselmBradford: file a bug |
12:41 | <AnselmBradford> | but it's listed as an attribute in the 4.01 spec? Shouldn't it still be labelled obsolete even if nobody implemented it |
12:41 | <zcorpan> | yes |
12:41 | <Ms2ger> | Meh, I don't care about HTML4 |
12:42 | <zcorpan> | opera actually implemented it, found compat problems and then it was removed from html5 (and opera) |
12:42 | <zcorpan> | iirc |
12:42 | <Ms2ger> | Heh |
12:42 | <AnselmBradford> | ok, filing a bug on it... |
12:49 | <AnselmBradford> | hmm... "An error occured while submitting your comment. Please let ian⊙hc know." that happen often? |
12:49 | <zcorpan> | has happened before, but it usually works |
12:49 | <zcorpan> | Hixie: ^ |
12:58 | <zcorpan> | AnselmBradford: seems the bug went through anyway |
12:59 | <AnselmBradford> | yeah it was my problem ... behind a proxy I need to log into and my login time expired ;-P |
13:00 | <zcorpan> | ah |
13:29 | <matjas_> | any particular reason why autofocus shouldn’t be allowed for elements having @contenteditable? |
13:30 | <matjas> | it’s still possible through JS and I don’t really see the problem with it |
13:31 | <zcorpan> | matjas: lots of form features aren't available on contenteditable |
13:31 | <zcorpan> | matjas: e.g. you can't submit it |
13:32 | <matjas> | is that why autofocus isn’t allowed? |
13:32 | <zcorpan> | i think so. i don't recall anybody asking for autofocus specifically before |
13:34 | <zcorpan> | most form features would make sense to support for contenteditable, but it's doable with script, contenteditable interop is still bad, and baby steps... |
13:35 | matjas | was wondering if this is worth filing a bug over |
13:35 | <matjas> | interop issues may be a good reason not to |
13:36 | <zcorpan> | thankfully AryehGregor is working on fixing the interop part |
13:37 | <matjas> | AryehGregor++ |
14:24 | <hsivonen> | https://twitter.com/#!/DublinCore/status/86079161923407873 |
15:10 | <AryehGregor> | Hmm. So if a command is unrecognized, should queryCommandState() and so on throw, or just return something noncommittal? |
15:10 | <AryehGregor> | I guess throwing makes more sense. |
15:12 | <gsnedders> | Throwing makes a lot more sense, IMO |
15:15 | <AryehGregor> | It's what IE and Gecko do, but not WebKit or Opera. |
15:15 | AryehGregor | switches the spec to IE/Gecko |
15:16 | <MikeSmith> | hsivonen: interesting discussion on the webkit-dev list about whether they should replace libxml2 dependency with their own XML parser |
15:16 | <MikeSmith> | or replace it with expat |
15:26 | <Philip`> | Isn't parsing XML already a solved problem, and not one that needs to be started again from scratch? |
15:27 | <gsnedders> | Does Gecko have its own XML parser? |
15:28 | <AryehGregor> | How about requesting state or value or something where that makes no sense, like document.queryCommandValue("bold")? I'd be inclined to say that should throw too. |
15:28 | AryehGregor | tests what browsers do |
15:29 | <AryehGregor> | Hmm, it seems like everyone just returns a useless value. |
15:29 | <karlcow> | abarth: you might be interested by the discussion in http://bugs.python.org/issue2193 specifically the messages starting on June 29 |
15:30 | <abarth> | k |
15:30 | <AryehGregor> | Mostly . . . Gecko is actually inconsistent here. |
15:30 | <karlcow> | "So, the document doesn't tell servers how to parse cookies, only how to generate them." |
15:33 | <abarth> | karlcow: i don't fully understand the patch, but the discussion seems reasonable |
15:33 | <abarth> | karlcow: they're generating cookies in the well-behaved profile, which is the right thing to do |
15:42 | <Ms2ger> | gsnedders, expat, IIRC |
15:50 | gsnedders | wonders how the perf of browser's parsers compares |
15:53 | <hsivonen> | gsnedders: Gecko uses a very lightly patched expat |
15:57 | <annevk> | http://dglazkov.github.com/component-model/dom.html interesting |
15:58 | <Ms2ger> | String? |
15:58 | <annevk> | prolly WebKit-internal name |
16:28 | <jcranmer> | "No-one can expect an implementation that predates a REC to conform to the REC." |
16:28 | <jcranmer> | <3 |
16:30 | <gsnedders> | Woah. Radical. |
16:39 | <David_Bradbury> | Is it possible in canvas to do higher-order bezier curves? (More than 2 control points) |
16:42 | <annevk> | teehee |
16:43 | <annevk> | 2011 is the year CSS drafts will have links to editor's drafts |
16:43 | <bga_> | David_Bradbury you can split your higher-order curve to bezier splines |
16:43 | <Ms2ger> | annevk++ |
16:43 | <Philip`> | David_Bradbury: The API only supports quadratic and cubic, so you'd have to do anything else manually (which probably shouldn't be too hard) |
16:45 | <Ms2ger> | And tantek++ for good measure |
16:45 | <David_Bradbury> | Fair enough, I was just curious if this was possible :) |
16:45 | <bga_> | David_Bradbury http://en.wikipedia.org/wiki/Spline_interpolation |
16:45 | <Philip`> | e.g. http://philip.html5.org/demos/canvas/bezier-approx.html does cubic ones manually |
16:46 | <David_Bradbury> | Thanks bga_ & Philip` :) |
16:48 | <TabAtkins_> | annevk: I always had links to EDs in my specs. It just wasn't part of the template. |
16:49 | <annevk> | yes but Bert took them out |
16:49 | <David_Bradbury> | Also, Philip` - You may want to set your lineCap to 'butt' to make sure the example isn't detecting extra points :) |
16:49 | <TabAtkins_> | wait, what? |
16:49 | TabAtkins_ | goes to look. |
16:49 | <annevk> | compare the editor's draft of CSSOM View and its TR/ draft |
16:49 | <TabAtkins_> | Check out http://www.w3.org/TR/css3-images/ though. |
16:49 | <annevk> | he technically is allowed to do that |
16:49 | <TabAtkins_> | Still has the ED link. |
16:49 | <annevk> | sweet |
16:49 | <Ms2ger> | lists doesn't |
16:50 | <annevk> | so then it was just an oversight on his part |
16:50 | <TabAtkins_> | Ms2ger: That's because I use a slightly different template on Lists, because I'm inconsistent. |
16:51 | TabAtkins_ | needs to update his specs to the Module Template. |
16:51 | <Ms2ger> | Also, still merge markers in lists ED |
16:51 | TabAtkins_ | also needs to send an update to Lists that removes the merge markers. |
17:10 | <David_Bradbury> | Also, out of curiosity - Are there any future plans for other types of gradients other than linear/radial thus far? |
17:14 | <Philip`> | David_Bradbury: No |
17:14 | <Philip`> | (I don't think anyone has ever asked for any) |
17:15 | <David_Bradbury> | Interesting |
17:16 | <David_Bradbury> | I think quadratic/bezier/cubic gradients would be useful |
17:18 | <Philip`> | I'm not sure what you mean by that |
17:19 | <MikeSmith> | annevk: why did Bert take those links out? |
17:19 | <Ms2ger> | Didn't like them, I guess |
17:19 | <MikeSmith> | hmm |
17:20 | <annevk> | Ms2ger, what the hell is --filter? |
17:20 | <MikeSmith> | not a terrifically compelling reason |
17:20 | <annevk> | Ms2ger, Anolis does not know about this Makefile thingiebingie |
17:20 | <Ms2ger> | Did you get my fork? |
17:20 | <annevk> | Ms2ger, also, the problem with make not finding lxml (my original problem) was apparently the first line of the anolis script finding the wrong Python |
17:21 | <annevk> | Ms2ger, yes |
17:21 | <annevk> | Ms2ger, straight from bitbucket.org |
17:21 | <annevk> | just now |
17:22 | <annevk> | macports actually has html5lib btw |
17:22 | <annevk> | pretty neat |
17:22 | <Ms2ger> | https://bitbucket.org/ms2ger/anolis/src/9863b9049451/anolis#cl-105 |
17:23 | <Ms2ger> | Could you try setting ANOLIS to an absolute path in the Makefile? |
17:23 | <David_Bradbury> | Philip`: Have you ever worked with Adobe Illustrator? |
17:24 | <David_Bradbury> | With bezier/quad/cubic gradients you can do things like - http://www.khulsey.com/adobe_illustrator_gradient_mesh.html |
17:25 | <David_Bradbury> | I know Silverlight has support for it |
17:25 | <David_Bradbury> | Don't think SVG does |
17:26 | <annevk> | Ms2ger, same problem, gonna eat now :) |
17:26 | <Ms2ger> | Ok, see you |
17:28 | <David_Bradbury> | Looks like SVG has a variation on bezier gradients called mesh gradients (like Illustrator) |
17:30 | <Philip`> | David_Bradbury: Hmm, looks like it'd be a bit tricky to make a usable API for that |
17:35 | <David_Bradbury> | I'd imagine something such as - createQuadraticGradient(x0, y0, x1, y1, cpx1, cpy1, cpx2, cpy2 ...) with the start and end points defined at the beginning |
17:36 | <David_Bradbury> | the a variable number of arguments at the end for each point |
17:36 | <David_Bradbury> | control point* |
17:41 | <Philip`> | http://www.khulsey.com/illustrator_gradient_mesh2.jpeg seems to show each gradient made of 12 cubic Béziers, so you'd need 96 arguments to the function |
17:42 | <David_Bradbury> | Philip`: Another option would be to be creatMeshGradient(x0,y0,x1,y1); |
17:42 | <Ms2ger> | Sounds like WebGL |
17:42 | <David_Bradbury> | Then create mesh points |
17:43 | <David_Bradbury> | just like how there are color stops |
17:43 | <David_Bradbury> | createMeshGradient* |
17:43 | <Philip`> | Seems like a lot of complexity for a rarely-used feature, so I'd probably be happier to tell people to implement it themselves (using createImageData and patterns, or whatever) instead of trying to test and debug half a dozen different browser implementations of it :-) |
17:43 | <David_Bradbury> | So it may end up looking like |
17:44 | <David_Bradbury> | var foo = context.createMeshGradient(x0,y0,x1,y1); |
17:44 | <David_Bradbury> | foo.addMeshStop(x1, y1, x2, y2) |
17:44 | <David_Bradbury> | True |
17:45 | <David_Bradbury> | But I don't know if createImageData is fast enough for those sort of calculations |
17:46 | <David_Bradbury> | more accurately - foo.addMeshStop(cpx1, cpy1, cpx2, cpy2) |
17:48 | <Philip`> | Maybe best to wait until people have implemented it in JS and found it to be useful except for being too slow, before trying to add complexity to the browser implementations |
17:52 | <MikeSmith> | Philip`: clearly you don't understand how things really work |
17:54 | <MikeSmith> | if browsers don't implement a11y proposal X, then the hammer of government regulation will come down on browsers |
17:54 | <MikeSmith> | ? |
17:55 | <Ms2ger> | Is that the government with a fork of HTML? |
17:55 | <MikeSmith> | you all remember of course the many times that has happened in the past |
17:56 | <Philip`> | What if cyberterrorists fork HTML? |
17:56 | <Ms2ger> | What's that, the past? |
17:56 | <David_Bradbury> | The government told me that the past didn't happen. I could have sworn it did, but I trust them |
17:57 | <TabAtkins> | David_Bradbury: Potentially, but any plans are deferred to Image Values 4. |
17:58 | <TabAtkins> | For example, conic gradients are a possibility. |
17:58 | <Ms2ger> | We have always been at war with a11^W Eurasia |
18:00 | <David_Bradbury> | TabAtkins: I think having a discussion about it would be good to have |
18:00 | <TabAtkins> | You can start a discussion, just be aware that the feedback will just go into my "look at later" folder. |
18:01 | <David_Bradbury> | I don't mind that at all |
18:01 | <David_Bradbury> | I haven't started one before, I just email help⊙wo, yes? |
18:02 | <TabAtkins> | For general whatwg email, email whatwg⊙wo Gradient discussions are probably best done on the CSSWG list, though, which is www-style⊙wo |
18:02 | <TabAtkins> | Unless you're explicitly discussing canvas gradients, but they should match up with what CSS does anyway. |
18:03 | <bga_> | David_Bradbury just implement this feature, land your patch to webkit as webkitCreateMeshGradient |
18:03 | <David_Bradbury> | The thing with CSS though is that it doesn't really define regions at all |
18:03 | <bga_> | as i see - draw algo is easy |
18:03 | <TabAtkins> | Ah, mesh gradients. The CSSWG is explicitly letting SVG handle that. |
18:03 | <David_Bradbury> | Hah, that's always an option. I'll just patch webkit and gecko without talking to anyone :p |
18:04 | <TabAtkins> | Because defining them properly requires enough syntax that CSS isn't really well-suited. |
18:04 | <David_Bradbury> | Yeah, I was looking to implement that into canvas |
18:05 | <David_Bradbury> | either as bezier/cubic/curved gradients |
18:05 | <David_Bradbury> | or meshed |
18:05 | <TabAtkins> | In that case, I recommend first starting discussion with the SVGWG (www-svg⊙wo) so we can get mesh gradients nailed down. That way <canvas> can just ape the SVG model. |
18:05 | <David_Bradbury> | which are basically different implementations of the same thing |
18:05 | <David_Bradbury> | Fair enough |
18:15 | <bga_> | btw TabAtkins is it possible to support canvas w/o alpha channel as in Flash. no overhead to fill pixelData[i*4 + 3] = 255 before putImageData, no overhead to blend colors, directdraw overlay mode will be ideal for perfomance :) |
18:16 | <TabAtkins> | bga_: Theoretically possible? Yes. Possible right now? No. |
18:16 | <Philip`> | Mozilla has a moz-opaque attribute which I think disables blending when compositing the canvas onto the page |
18:18 | <bga_> | good |
18:18 | <bga_> | will test perfomance |
18:18 | <David_Bradbury> | Hmm |
18:19 | <David_Bradbury> | Looks like the w3 "may include more types of gradient elements" for SVG |
18:19 | <David_Bradbury> | How far along is SVG 2.0? |
18:19 | <TabAtkins> | As a member of the SVGWG, I dunno. |
18:19 | <TabAtkins> | (I'm a recent join.) |
18:20 | <TabAtkins> | Just email the SVGWG announcing your intentions and asking about progress. |
18:20 | <David_Bradbury> | Fair enough |
19:50 | <timeless> | hello world |
19:51 | <timeless> | i'm looking for something which talks about goals like trying to do things for the 80% * (actual percentage may be different) |
19:58 | <karlcow> | http://tools.ietf.org/wg/httpbis/agenda?item=agenda81.html |
19:59 | <Ms2ger> | Hah, httpbis |
19:59 | <timeless> | Ms2ger: maybe you know? :) |
20:00 | <Ms2ger> | Nope |
20:03 | <timeless> | gah, to get outlook to let me reply to html mail w/ plain text, i'd need http://www.emailaddressmanager.com/outlook-bells.html |
20:04 | <Ms2ger> | Gah, outlook |
20:04 | <timeless> | i'm contemplating trying thunderbird+lightning |
20:04 | <timeless> | i do *not* look forward to its headaches |
20:12 | <AryehGregor> | If I'm reading WebIDL correctly, specs have to say what do if optional arguments aren't provided, right? They're not magically treated the same as undefined or anything? |
20:13 | <Ms2ger> | What's "undefined" in C++? |
20:13 | <AryehGregor> | Fortunately, I only care about the ECMAScript binding. |
20:13 | <timeless> | ms2ger: eh? |
20:14 | <timeless> | int x; |
20:14 | <timeless> | the value of x is undefined |
20:14 | <timeless> | you don't really want to do that :) |
20:16 | <AryehGregor> | Heh. Not what he meant, though. |
20:16 | <timeless> | it doesn't exist |
20:16 | <timeless> | if he meant in XPCOM/SpiderMonkey land, that might be different |
20:17 | <timeless> | JSVAL_TYPE_UNDEFINED |
20:17 | <AryehGregor> | He was trying to point out that WebIDL can't magically make unspecified arguments undefined, and specs have to say what to do explicitly, because the JS concept of "undefined" doesn't exist in non-ECMAScript bindings of WebIDL, and WebIDL is theoretically language-neutral. |
20:18 | <timeless> | ah |
20:18 | <timeless> | well, |
20:18 | <timeless> | with xpcom land and js in general you can ask how many arguments your function was given |
20:19 | <AryehGregor> | We're talking spec-land, not JS-land. |
20:19 | <timeless> | webidl could provide that for an overloaded function a hidden argument is included indicating the number of arguments actually provided by the caller |
20:19 | <timeless> | and that all other ones can actually be <garbage> (or 0) and that the callee should only honor those up through that hidden argument count |
20:20 | <timeless> | such a specification wouldn't be too hard |
20:20 | <timeless> | and implementations aren't that hard either |
20:20 | <timeless> | that's more or less how it actually works in gecko |
20:21 | <AryehGregor> | The callee is already allowed to know how many arguments it's passed in WebIDL. The callee is a function implemented in native browser code, typically. |
20:21 | <AryehGregor> | My question was, as a specification writer using WebIDL, do I have to explicitly say in the spec what happens if an optional argument is omitted, or does WebIDL already have some default action in that case? |
20:22 | <AryehGregor> | It looks like I have to specify, so specify I will. |
20:26 | <Philip`> | What could it possibly define as a default that would make any sense? |
20:26 | <AryehGregor> | Given that it has to make sense cross-language, nothing, I guess. |
20:27 | <Philip`> | The interpretation of arguments depends on what the function actually does, which is what you're specifying, so surely you're the only person who can decide what a missing argument does |
20:29 | <AryehGregor> | Well, in JavaScript, missing arguments become undefined, which could be automatically cast to the type specified in the IDL. |
20:33 | <Philip`> | That sounds more like required arguments than optional arguments, since your spec is requiring that they always have a value |
20:34 | <AryehGregor> | But I want them to have a default value. |
20:37 | <annevk> | Ms2ger, so apparently I do not have simplejson or some such |
20:37 | <annevk> | Ms2ger, but I only found that out by running anolis directly |
20:37 | <Ms2ger> | Hmm |
20:37 | <annevk> | Ms2ger, it would be helpful if dependencies are listed somewhere |
20:37 | <Ms2ger> | What python version do you have? |
20:37 | <annevk> | lxml, html5lib, simplejson |
20:37 | <annevk> | 2.6 |
20:37 | <annevk> | it seems |
20:38 | <annevk> | no idea if it works with this btw |
20:39 | <Ms2ger> | Let me try something.. |
20:39 | <timeless> | AryehGregor: can't you mark an argument as nullable instead of optional? |
20:39 | <timeless> | oh |
20:39 | <AryehGregor> | timeless, yes, but why would I want to do that? |
20:40 | <timeless> | we changed webidl so that callers need to pass all arguments |
20:40 | <timeless> | otherwise they get exceptions |
20:40 | <timeless> | no simple undefined filling for missing arguments |
20:40 | <timeless> | sorry :) |
20:40 | <timeless> | this wasn't the case in the webkit implementation :) |
20:40 | <timeless> | iiuc it provided undefined for missing arguments |
20:41 | <annevk> | installing simplejson involves fiddling with openssl |
20:41 | <annevk> | wtf macports |
20:41 | <annevk> | sqlite3! |
20:41 | <zewt> | that's how simple it is |
20:41 | <timeless> | hqh |
20:41 | <timeless> | hheh |
20:41 | <timeless> | gerr |
20:41 | <annevk> | omg |
20:41 | <zewt> | hhqh |
20:41 | timeless | ikicks kinesis keyboard |
20:42 | <Ms2ger> | annevk, could you try updating? |
20:42 | <annevk> | it's actually installing sqlite3 now |
20:42 | <timeless> | annevk: careful |
20:42 | <zewt> | it's punishing you for using a mac |
20:42 | <timeless> | from memory things like that sometimes break building native apps :) |
20:42 | <annevk> | Ms2ger, I guess |
20:43 | <Ms2ger> | (anolis, that is) |
20:43 | <annevk> | ooh, Building Python26 |
20:43 | <zewt> | building? |
20:43 | <zewt> | gross :P |
20:44 | <annevk> | Ms2ger, already installing simplejson |
20:44 | <timeless> | nice |
20:44 | <Ms2ger> | That works too |
20:44 | <annevk> | and lots of other things it seems |
20:46 | <zewt> | isn't simplejson replaced by python's builtin json module anyway? |
20:46 | <zewt> | don't recall if they're from the same codebase off-hand |
20:47 | <Ms2ger> | I just made it try importing the builtin json first |
20:47 | <annevk> | I saw |
20:47 | <annevk> | oh, replying to zewt |
20:48 | <Ms2ger> | Yes :) |
20:48 | <zewt> | it was imported to core in 2.6, i think? |
20:49 | <Ms2ger> | Yes |
20:49 | <annevk> | now I get "anolis: error: --dump-xrefs option does not take a value" |
20:50 | <Ms2ger> | Er |
20:50 | <annevk> | and executing anolis directly gives some weird output |
20:51 | <Ms2ger> | Try just make Overview.html |
20:52 | <annevk> | then it says Overview.html is up to date |
20:52 | <Ms2ger> | So did it change? |
20:52 | <annevk> | oh yes, lots of quotes got removed and such |
20:52 | <annevk> | do I need any other parameters? |
20:53 | <Ms2ger> | Huh |
20:53 | <annevk> | and -ED became -[STATUS] again |
20:55 | <annevk> | hmm, and it also still complaints about --filter unless I run anolis xxx.src.html xxx.html first |
20:56 | <annevk> | ah, dglazkov is not here |
20:56 | <Ms2ger> | Try changing .src.html and then make again |
20:57 | <annevk> | same problems |
20:58 | <Ms2ger> | :( |
20:59 | <timeless> | Ms2ger: so, i installed thunderbird |
20:59 | <timeless> | it couldn't configure itself for my mail account |
20:59 | <Ms2ger> | annevk, could you pastebin the output? |
20:59 | <timeless> | and while there seems to be an addon that might work, there's no sign of how to install it |
21:00 | <Ms2ger> | timeless, yay, open source :) |
21:00 | <zewt> | seems like if you need addons to make email work in 2011, something is amiss, heh |
21:00 | <annevk> | anolis --dump-xrefs=data/xrefs/dom/domcore.json Overview.src.html /tmp/spec |
21:00 | <annevk> | Usage: anolis [options] input output |
21:00 | <annevk> | Post-process a document, adding cross-references, table of contents, etc. |
21:00 | <annevk> | anolis: error: --dump-xrefs option does not take a value |
21:00 | <annevk> | make: *** [data/xrefs/dom/domcore.json] Error 2 |
21:00 | <annevk> | and the other I get is |
21:00 | <timeless> | Ms2ger: oh, there might or might not be source for some of it |
21:00 | <timeless> | but that probably requires building gecko, thunderbird, and it |
21:00 | <timeless> | and it probably wouldn't work |
21:01 | <Ms2ger> | annevk, anolis --version? |
21:01 | <annevk> | 1.1 |
21:01 | <Ms2ger> | That would explain things |
21:01 | <Ms2ger> | It's supposed to be 1.2pre |
21:02 | <annevk> | but I pulled the latest and installed that |
21:03 | <annevk> | using setup.py to install |
21:03 | <annevk> | i.e. I download the whole thing and run sudo python setup.py install |
21:03 | <Ms2ger> | Could you try changing ANOLIS in the Makefile again, and add a target to do $(ANOLIS) --version? |
21:07 | <annevk> | how does that work? |
21:08 | <Ms2ger> | Add version:\n\t$(ANOLIS) --version |
21:08 | <Ms2ger> | And then make version |
21:11 | <annevk> | /usr/local/bin/anolis --version |
21:11 | <annevk> | anolis 1.1 |
21:12 | <annevk> | I'll take another look when gsnedders is around |
21:14 | <Ms2ger> | If you don't feel attached to that anolis version, you could try deleting it, I guess |
21:15 | <Ms2ger> | Or make gsnedders fix it :) |
21:17 | Ms2ger | wanders off |
21:17 | <annevk> | hmm, deleted the file in /bin/ and after reinstalling it says it cannot find such a file |
21:17 | <annevk> | guess I will do that too |
21:32 | <timeless> | annevk: you might try 'rehash' |
21:43 | <AryehGregor> | You know what I just realized would make some functional programming things a lot easier? If operators on functions returned new functions whose return values would have the operators applied. So f && g would be something like function() { return f.apply(null, arguments) && g.apply(null, arguments) }. |
21:44 | <TabAtkins> | But what if you wanted the operator to apply to the function itself for some reason?!? |
21:44 | <AryehGregor> | Not likely in JS anytime soon, of course. |
21:45 | <TabAtkins> | Wait, does f&&g return one function or two? |
21:45 | <AryehGregor> | How could it return two functions? |
21:45 | <TabAtkins> | I'm asking you, because the way you wrote your text implied two. But the pseudocode is clearer. |
21:46 | <moo-_-> | I think JS lacks enough syntatic sugar to make features like that? |
21:46 | <AryehGregor> | I mean that I want to do something like myList.filter(isFoo && isBar). |
21:46 | <AryehGregor> | Instead of myList.filter(function(item) { return isFoo(item) && isBar(item) }). |
21:47 | <TabAtkins> | Is it just the logical operators you want this to happen to, or more generally? |
21:47 | <timeless> | in spidermonkey you can get away w/o some of those {}s :) |
21:47 | <AryehGregor> | May as well be more generally. |
21:47 | <AryehGregor> | timeless, what do you mean? |
21:48 | <TabAtkins> | Hrm. My functional calculus in Lisp is actually not well-suited to doing that. |
21:48 | <TabAtkins> | (f+ (unpack &&) (xcompose f g)) |
21:48 | <timeless> | AryehGregor: this doesn't work, i'll have to find a real reference for it, but roughly: |
21:48 | <timeless> | javascript:function a() return 1; a() |
21:49 | <timeless> | http://mxr.mozilla.org/mozilla-central/search?string=function&find=%5C.js&filter=function%5B%5E%7B%5D%2B%3B |
21:49 | <timeless> | line 40 -- do_execute_soon(function() request.resume()); |
21:50 | <AryehGregor> | Does ES5 allow that? |
21:50 | timeless | shrugs |
21:50 | <timeless> | i said spidermonkey |
21:51 | AryehGregor | will look it up in a minute |
21:51 | <ttepasse> | AryehGregor, in a way myList.filter(firstPred).filter(secondPred) is short and easier to read. On the other hand more computational steps, of course. |
21:51 | <AryehGregor> | Yeah, but my code isn't only for SpiderMonkey, so I'm interested. :) |
21:51 | <AryehGregor> | ttepasse, that doesn't generalize to, e.g., || or !. |
21:51 | <TabAtkins> | AryehGregor: Define a global op object with function versions of the operators. |
21:51 | <TabAtkins> | op.or = function(a,b) { return a||b; }; |
21:52 | <AryehGregor> | Then what? |
21:52 | <TabAtkins> | Oh, sorry, I didn't read ttepasse properly. |
21:52 | <timeless> | AryehGregor: it's probably at best a proposal |
21:52 | timeless | shrugs |
21:52 | <TabAtkins> | Then define every, some, notall, and none. |
21:53 | <TabAtkins> | s/Then d/D/ |
21:53 | <TabAtkins> | The usual way functional languages do this is via explicit "and/or all of these functions" functions. |
21:53 | <TabAtkins> | myList.filter(every(f,g)) |
21:55 | <TabAtkins> | Overloading || on functions would prevent you from using || to set a default value for a var that might be a function. |
21:59 | <AryehGregor> | True, I forgot JS allowed that. |
22:00 | <AryehGregor> | Sad. ES5 requires the curly braces. |
22:01 | <AryehGregor> | I hope it's going to make it into the next version. |
22:02 | <TabAtkins> | I think it'll happen in the context of arrow functions, like myList.filter((item)=>isFoo(item)&&isBar(item)); |
22:02 | <gsnedders> | TabAtkins: s/=/-/ |
22:02 | <gsnedders> | Though there's currently three separate proposals for such things |
22:02 | <TabAtkins> | I forget which is being proposed at any given time. |
22:03 | <TabAtkins> | There's also the *horrifying* curly-block syntax. |
22:03 | <TabAtkins> | myList.filter({|item| isFoo(item)&&isBar(item)}); |
22:05 | <AryehGregor> | Oh, wow. Passing "true" as the second parameter in execCommand() does really complicated stuff in IE. |
22:05 | <AryehGregor> | I assumed it would just let you change the value, but it actually gives you all sorts of options, like providing alt text for an image and things. |
22:05 | AryehGregor | wonders if and how to spec it |
22:07 | <ttepasse> | TabAtkins, afaik pythonic array comprehensions are still a possible feature of ES.next which is another, better syntax for filtering. |
22:07 | <TabAtkins> | I thought they were in. |
22:08 | <TabAtkins> | Array comprehensions are the best. |
22:08 | <TabAtkins> | [x for x in myList if isFoo(x) && isBar(x)] |
22:08 | <ttepasse> | An idea for AryehGregor, untested: https://gist.github.com/1055146 |
22:14 | <ttepasse> | Ok, please ignore it. Forgot the first function. |
22:16 | <Hixie> | AryehGregor: perl kinda does this with the implied parameter |
22:17 | <Hixie> | AryehGregor: if you defined sub f ($) { ... } and sub g ($) { ... } (so two functions that each take one argument) |
22:18 | <Hixie> | er well no, i mean, if you defined them as taking () and operating on $_, which is the convention |
22:18 | <Hixie> | you could do grep { f && g } @list; |
22:18 | <Hixie> | to do what you describe |
22:18 | <Hixie> | maybe |
22:18 | <Hixie> | untested :-) |
22:18 | <Hixie> | (also ugly and not recommended) |
22:28 | <AryehGregor> | "Beautiful and interactive Web applications are easier to deliver with support for several new technologies like CSS3 Positioned Floats, HTML5 Drag-drop, File Reader API, Media Query Listeners and initial support for HTML5 Forms." |
22:28 | <AryehGregor> | Wait, drag-drop? Didn't IE support that already? I guess it means it supports the new features added . . . |
22:28 | <TabAtkins> | It's HTML5. |
22:29 | <AryehGregor> | Yeah, but it's listed as a new feature of IE10PP2. |
22:29 | <AryehGregor> | I'll be interested to see what the form support looks like. |
22:29 | <TabAtkins> | I know, I'm just telling you why it's new and exciting. |
22:30 | <AryehGregor> | Oh, HTML5 parser too, apparently. |
22:30 | <AryehGregor> | Yay. |
22:30 | <AryehGregor> | That's reason enough for me to switch to it for my testing. |
22:35 | <Yuhong> | I like to mention this: http://news.slashdot.org/comments.pl?sid=2281734&cid=36616788 |
22:43 | <Hixie> | AryehGregor: we did add a bunch of new d&d features |
22:43 | <AryehGregor> | Yeah, I remembered after I said that. |
22:43 | <Hixie> | AryehGregor: i assume they particularly mean file d&d |
22:43 | <AryehGregor> | dropzone and whatever. |
22:43 | <AryehGregor> | Ah. |
22:46 | <Yuhong> | About IE and CSS. |
23:23 | <Hixie> | http://www.whatwg.org/specs/web-apps/current-work/complete.html#audiotracklist-and-videotracklist-objects - does that look ok? |
23:33 | <ttepasse> | Hm. Everytime I read about XBL(2) and the component/widget model it sounds interesting but then leaves me with a lot of questions of how and when to use it. Assuming it will someday land in browsers and be usable by web authors. |
23:34 | <ttepasse> | E.g. ... Twitter has some guidelines about embedding/quoting tweets outside of their silo. In a way a tweet isn't such a part of a document but a widget. |
23:36 | <ttepasse> | So, I think ... <tweet tweetid=1234 style="binding:url(example.org/tweet.xbl)"></tweet> ... or <blockquote class="tweet">...</blockquote> with an assorted binding. |
23:38 | <ttepasse> | Additional ... display of a tweet per Twitters display guidelines could have buttons for actions, like favorite and retweet. Should these be part of the document that embeds this tweet or should they be hidden in the shadow DOM? And if hidden, what does the user agent with the shadow DOM? Will ARIA information be exposed or not? |
23:38 | <ttepasse> | </loudthinking> |
23:44 | <cpearce> | Hixie: "The AudioTrackList and VideoTrackList interfacesa are used ..." did you mean "interfaces" ? |
23:44 | <Hixie> | oops thanks will fix |
23:45 | <ttepasse> | Each audio track_s_ is represented by an AudioTrack object |
23:45 | <Hixie> | thanks, fix in the pipeline |