00:00
jgraham
thinks getElementsByClassName should be document order unless there is a good reason not to be (e.g. speed, implementation complexity)
00:03
<zcorpan>
jgraham: agree (and i think it should be defined)
00:04
<zcorpan>
same as getElementsByTagName
00:04
<jgraham>
Yes, I meant it should be defined to be document order, unless there is a good reason not to make it document order in which case it should be explictly noted it is not
00:05
<jgraham>
and the same as DOM 2 Range and DOM 3 XPath IIRC
00:05
<zcorpan>
getElementsByTagName
00:05
<zcorpan>
Returns a NodeList of all the Elements in document order... -- http://www.w3.org/TR/DOM-Level-3-Core/core.html#ID-A6C9094
00:07
<jgraham>
(ah XPath has ordered and unordered as options)
00:14
Philip`
wonders how you can have an unordered list
00:14
<Philip`>
Unordered sets make sense, but I'm not sure how an unordered list could work
00:15
Philip`
discovers that writing asynchronous JS code is sometimes nasty
00:21
<zcorpan>
http://tinyurl.com/yv9atd -- both opera and firefox have managed to implement getElementsByClassName in document order... :)
00:21
jgraham
will send email about gEBCN unless anyone else already did
00:45
Dashiva
laughs at the puny job queue
00:52
Philip`
now has properly-shaded X3D text in Firefox, but realises it'd require far too much effort to bother doing in Opera (if it's even possible)
03:41
<Hixie>
k, commented on http://tech.gtaero.net/2008/01/xhtml2-vs-html5.html
03:41
MacDome
wonders if WebKIt failed to implement gEBCN in document order... I kinda doubt it
03:57
<othermaciej>
MacDome: it's in document order
03:58
<othermaciej>
we'd have to go out of our way to use any other order
03:58
<MacDome>
othermaciej: I figured it would be, given that it's *right there* in the spec
03:58
MacDome
was failing to undersatnd the line of questioning beofre about gEBCN
03:58
<MacDome>
no matter
03:59
<othermaciej>
does the spec say document order?
04:01
<othermaciej>
both getElementsByName and getElementsByClassName don't seem specify an ordering
04:03
<othermaciej>
in contrast DOM 2 Core says this for getElementsByTagName: "Returns a NodeList of all the Elements with a given tag name in the order in which they are encountered in a preorder traversal of the Document tree."
04:03
<othermaciej>
(preorder traversal is document order)
07:24
<kig>
hard to do glows in svg, skipping
08:06
<hdh>
in <http://hdh.dyn-o-saur.com:81/~hdh/blos/twitter-160>;, does anyone see the ETX mark appears after the first paragraph?
08:07
<hdh>
konqueror4 (khtml) and qt demo browser display that way, firefox2 and opera beta put ETX before "posted at"
08:43
<hdh>
http://hdh.dyn-o-saur.com:81/~hdh/misc/html5/after.html konqueror (khtml) and qtwebkit display the added content after the 1st paragraph
08:56
<kig>
oh. firefox 2 doesn't do feGaussianBlur
10:19
<virtuelv>
ugh. the double-click handler in the spec is annoying
10:20
<virtuelv>
I can no longer triple-click to select paragraphs
10:36
<Lachy>
virtuelv, yeah, I have the same problem with it.
10:37
<Lachy>
Hixie, maybe the script should require the user to Shift+Double-Click or something
10:38
<hsivonen>
Lachy: wouldn't that be too device-dependent?
10:39
<hsivonen>
Hixie: Re: doctype sniffing: I think it doesn't make sense to second-guess the Mozilla quirky doctype list. having three entries of dead code is cheap relative to the data size of the list that has to be there anyway, the doctypes didn't come out of nowhere and Anne says Opera has hit one of them
10:41
<Hixie>
lachy: k it requires ctrl+dblclick now
10:42
<Hixie>
hsivonen: the doctypes came out of dbaron and i going through looking at what we could find at the time, iirc
10:42
<Hixie>
but i will be looking at anne's mail in due course
10:48
<hsivonen>
Hixie: I'm aware that dbaron collected the inital list. my point is that taking the three doctypes out of the quirky list has no real upside and has a potential downside
10:49
<hsivonen>
I just tried googling for "David's list of doctypes" but it seems the original list isn't on the Web anymore
10:50
<hsivonen>
archive.org doesn't have the relevant file from fas.harvard.edu, either
10:50
<Lachy>
hsivonen, not much more device-dependent than it is already. It already requires a mouse, which not all devices have
10:50
<Lachy>
Hixie, thanks
10:51
<hsivonen>
Lachy: actually, it required a pointing device that can emit a double-click :-)
10:51
<hsivonen>
but yeah, not worth tweaking
10:51
<Lachy>
Hixie, Ctrl+DblClick is not good. Ctrl+Click triggers the context menu on Macs
10:52
<hsivonen>
but in general, e.g. on the N800 keyboard emulation occupies the pointing device
10:52
<Hixie>
Lachy: k, meta-dblclick
10:54
<Lachy>
Hixie, ok, now that works on Mac. But which key is the meta key on windows?
10:54
<OmegaJunior>
ctrl
10:54
<Hixie>
alt, actually
10:54
<OmegaJunior>
oh?
10:54
<Hixie>
ctrl is, well, ctrl
10:54
<Lachy>
Alt doesn't work in Firefox on Windows
10:55
<Hixie>
really?
10:55
<Hixie>
odd
10:55
<Hixie>
maybe windows doesn't have meta
10:55
<Hixie>
silly line of computers
10:56
<Hixie>
k, changed it to alt
10:56
<Lachy>
AFAIK, Windows only supports the "Alt", "Shift" and "Ctrl", and maybe "AltGraph" with some keybaords
10:57
<Lachy>
can you make it work with either Ctrl+DblClick or Meta+DblClick
10:57
<OmegaJunior>
Apple has option, command and shift. Option usually maps to the alt key, and command maps to the ctrl key on windows.
10:58
<OmegaJunior>
(and the Apple key maps to the Windows key ;) )
10:58
<Lachy>
OmegaJunior, the command key is the apple key.
10:59
<OmegaJunior>
Hmm... it's been almost a year since I stopped using Macs... I must have forgotten a lot in the mean time.
11:00
<Lachy>
Apple's keys don't map directly one-to-one to the windows keys, unfortunately
11:01
<OmegaJunior>
Didn't people already work out this difference for the javascript click event model?
11:01
<Hixie>
Lachy: i could, but is there a good reason to?
11:02
<Hixie>
anyone got any TreeWalker or NodeIterator bugs they know about?
11:02
<Lachy>
Hixie, it depends if you want to allow both Windows and Mac users to add annotations, you either need a single key that works for both, or allow either key to be used.
11:03
<Hixie>
Lachy: alt works for both, no?
11:03
<Lachy>
it should
11:03
<Hixie>
that's what it's current set to
11:04
<Lachy>
yes, it works
11:05
<Lachy>
Hixie, just that, IIRC, NodeIterator and TreeWalker are totally unsupported in IE.
11:05
<Hixie>
and firefox, it seems
11:05
<Lachy>
I thought they were supported in FF
11:06
<Hixie>
so did i
11:06
hsivonen
thought Firefox had TreeWalker
11:07
<hsivonen>
Does TreeWalked plus NodeFilter even reduce XPCOM crossings significantly compared to pure-JS DOM traversal?
11:07
<Hixie>
it certainly has the potential to
11:08
<Hixie>
but personally i just find it very convenient to be able to walk the tree witha filter without having to implement the whole thing myself
11:09
<hsivonen>
I think it is code-wise easier to have the generic DOM walk loop stored somewhere so that I can copy and paste the same loop when I need it
11:09
<Lachy>
my test shows that TreeWalker is supproted, but NodeFilter isn't in Firefox
11:09
<hsivonen>
too bad the pure-JS walk is too slow over the whole HTML 5 spec in Gecko
11:10
<hsivonen>
(especially if run from chrome)
11:10
<Lachy>
same result in Opera 9.24
11:10
<Hixie>
opera fails the node iterator tests pretty fundamentally, yet shows presence of support
11:10
<Hixie>
wtf
11:11
<Lachy>
Opera isn't showing any support for NodeFilter in my test
11:14
<Hixie>
oh it's definitely doing _something_ with nodeiterator
11:14
<Hixie>
my filter function is being called
11:16
<Hixie>
check out test 6 in opera
11:16
<Hixie>
it fails in expectation 2
11:16
<Hixie>
which means expectation 1 is being called
11:16
<Hixie>
and that's in the node filter!
11:25
<hdh>
meta+LMB triggers window moving on x11
11:33
<Lachy>
oops, I just realised I wrote NodeFilter instead of NodeIterator above in my last 3 messages.
11:53
<Hixie>
i don't understand why firefox fails test 9
11:54
<Hixie>
35 tests to go
11:54
<Hixie>
bed time nownn
15:12
<zcorpan>
http://software.hixie.ch/utilities/js/live-dom-viewer/?%3C!DOCTYPE%20html%3E%0D%0A%3Cstyle%3E%0D%0Abody%20%7B%20color%3Agreen%20%7D%0D%0A%5Balign%3D%C4%B0%5D%20%7B%20color%3Ared%20%7D%0D%0A%3C%2Fstyle%3E%0D%0A%3Cbody%3E%0D%0A%3Cscript%3E%0D%0Avar%20e%20%3D%20document.createElementNS('x'%2C%20'y')%3B%0D%0Ae.setAttribute('align'%2C%20'i')%3B%0D%0Ae.textContent%20%3D%20'This%20text%20should%20be%20green.'%3B%0D%0Adocument
15:12
<zcorpan>
A%3C%2Fscript%3E
15:13
<zcorpan>
try that in firefox
15:14
<zcorpan>
or [align=I] in safari
15:28
<zcorpan>
it seems that in firefox, a set of attributes are unicode case-insensitive for *all* elements. in safari, *all* attributes on *all* elements are ascii case-insensitive. in opera, a set of attributes are unicode case-insensitive for all *html* elements.
15:31
<zcorpan>
http://simon.html5.org/test/selectors/case-sensitivity/
15:35
<Lachy>
zcorpan, that dom viewer link was too long and broke. Can you just upload it to the clipboard
15:37
<zcorpan>
Lachy: done
15:41
<Lachy>
zcorpan, it's not clear how to interpret the result of those case-sensitivity tests.
15:47
<zcorpan>
everything listed matched the selector
15:52
<Lachy>
ok. It would be much more useful if there was some kind of explanation and/or summary
16:03
<zcorpan>
opera is missing valign='', and firefox is missing ismap='', but otherwise opera and firefox have the same set of attributes that are case insensitive
16:05
<zcorpan>
combining them gives 54 different attributes... assuming i haven't missed some attribute
16:06
<Philip`>
Is each attribute treated the same regardless of which element it's on?
16:06
<zcorpan>
yes
16:08
<kig>
need a smarter thumbnail cache. 2.6GB memory use for half a million images is no fun
16:09
<Philip`>
kig: Need fewer images :-p
16:09
kig
plans to scale to billions :(
16:10
Philip`
wonders where that many images would come from
16:10
<kig>
internet
16:11
<Philip`>
Oh, makes sense
16:11
<kig>
( http://dark.fhtr.org/exafile/ )
16:12
<kig>
... all my projects tend to be somehow strangely deranged and megalomanic
16:13
<Philip`>
Is this somewhat related to the thingy that Microsoft Research showed a while ago?
16:14
<Philip`>
like http://www.labs.live.com/photosynth/ though they had a different demo that was just zooming in on lots of thumbnails
16:14
<kig>
yes and no
16:15
<kig>
similar, same ideas, nothing else to do with it
16:17
<kig>
here video http://fhtr.blogspot.com/2007/09/and-screencap-video-of-zoomable-file.html
16:18
<kig>
i think the photosynth demo had something like 600 photos on screen
16:21
<Philip`>
That looks quite neat :-)
16:22
<Philip`>
How are you meant to find a particular image when it's somewhere in a pile of fifty thousand other images?
16:23
<Philip`>
Also, can you do this with AJAX and canvas? ;-)
16:23
<kig>
the same way you find it when it's on the file system
16:23
<kig>
it is ajax, actually..
16:23
<kig>
and html
16:23
<Philip`>
Ooh
16:25
<kig>
but has wacky js cross-platform issues that i have never ironed out, and hence works only in firefox 2 (ouch)
16:29
hdh
likes the scale in Goals
16:32
<Philip`>
"Every file produced by humanity during 30 thousand years." sounds a bit suspicious - most 30,000 year spans have resulted in zero files being produced
16:33
<kig>
extrapolating with 10 billion people each producing a thousand files a year (or something like that)
16:34
<hdh>
<meter>?
16:35
<Philip`>
It seems hard to accurately extrapolate the population of the earth into the next century, never mind thirty thousand years into the future :-)
16:35
<kig>
yeah, could replace it with something else
16:35
<Philip`>
It seems hard to accurately extrapolate the idea of "humanity" that far, too :-p
16:35
<hdh>
lol
16:36
<kig>
http://en.wikipedia.org/wiki/Orders_of_magnitude_%28numbers%29#1018
16:37
<kig>
"every insect on earth"
16:37
<kig>
"crawling"
16:47
<zcorpan>
ok... so how do we want case-insensitivity for values in attribute selectors to work?
16:48
<zcorpan>
leaking case-insensitivity to attributes on non-html elements (like firefox and safari) seems clearly wrong
16:49
<zcorpan>
but perhaps checking the element to see if the attribute should be case-insensitive is too much of a perf hit?
16:50
<zcorpan>
e.g. should <a accept> be case-insensitive?
16:54
Philip`
discovers why his gl.blendFunc(gl.ONE_MINUS_DEST_ALPHA, ...) code wasn't working as expected - it's spelled ONE_MINUS_DST_ALPHA instead
16:55
Philip`
would like the API to warn him when passing undefined arguments
17:00
gsnedders
needs an XML caching format
17:00
<gsnedders>
(for caching processed XML data)
17:03
<Philip`>
gsnedders: "Processed" in what form? Just a simple tree of 'struct node { string content; map<string, string> attributes; list<node> children; }' or something?
17:04
Philip`
wrote something like that to cache parsed XML for a game (in C++)
17:04
<gsnedders>
Philip`: this element/attribute has this processed content (i.e., a string) with these options
17:04
<gsnedders>
Philip`: I need to serialise it back in XML though
17:05
<Philip`>
(because it took far too long to parse every time the game was loaded, but writing custom binary formats is a bit of a pain, so we just cache the parsed XML in a fast binary format)
17:06
<Philip`>
(which is easier when it's a subset of XML that doesn't have namespaces or mixed text/element children or anything fancy)
17:06
<Philip`>
(Age of Mythology / Age of Empires III does exactly the same, incidentally)
17:07
<gsnedders>
Ah. I need to use XML as the cached format as it's the only format PHP can natively parse into a DOM tree (and anything in userland code is far slower)
17:07
<Philip`>
Ah, okay
17:08
<gsnedders>
And because I need non-lossy storage of the XML input
17:08
<Lachy>
Philip`, where did you quote "Every file produced by humanity during 30 thousand years." from?
17:09
<Philip`>
Lachy: From the page kig pointed at
17:09
<Philip`>
http://dark.fhtr.org/exafile/
17:12
Lachy
wonders what the screen resolution would need to be to get "A quintillion files in a 100 quadrillion directory hierarchy." on screen at once
17:12
<hdh>
subpixel hinting
17:13
<Philip`>
You can get sixteen million images into a single pixel, such that each image still potentially has an effect on the output image
17:14
<Philip`>
so you'd need a couple of hundred thousand pixels width/height on your monitor, else some of the input images would never have any effect and it wouldn't really be fair to say they're being displayed
17:15
<hdh>
:)
17:16
<Lachy>
Philip`, I don't think the number of colours that can be represented by a pixel equals the number of files that could be represtented with that single pixel in the way you describe
17:16
<Philip`>
Uh, that's true
17:17
<Philip`>
I should have said 24 instead of sixteen million
17:17
<Lachy>
why 24?
17:19
<Philip`>
Because one pixel is 24 bits, so I was thinking that if you had more than 24 images then at least one of them couldn't possibly affect the output since there aren't enough bits, except actually I'm being stupid
17:19
<Philip`>
because it's easy to have fractional bits of information
17:19
<gsnedders>
silly Philip`
17:19
<gsnedders>
I mean, I'm _never_ silly.
17:19
<Philip`>
e.g. compute the MD5 of all the images then take the first 24 bits
17:19
<Philip`>
so every image will have an effect on the output
17:20
<Philip`>
though that'd also be a silly way to represent multiple images
17:20
<Lachy>
you'd have to find the average colour of every file, and then find the average of all those averages. Given an even distribution of colours, eventually the pixel would end up being a shade of grey.
17:20
<Lachy>
or white
17:21
<Lachy>
I don
17:21
<Philip`>
If you're just taking the mean, then the limit would be 256
17:22
<Philip`>
because if you have 256 images, an additional image would contribute < 1/256 to each component, so it would have no effect
17:22
<Lachy>
no, say you have 256 predomindately red files. Then you add a bunch of predominately blue files to the collection. The average colour would still be shifted towards blue.
17:23
<Philip`>
It wouldn't, since the output blue would be (256*0.0 + 1*1.0)/257 = 0 (rounded to the display's colour precision)
17:23
<Philip`>
...if you're only adding one blue image
17:23
<Lachy>
I said a *bunch*
17:24
<Philip`>
If you add a bunch, you could remove one of them and have no effect on the output, so that image isn't really in the output
17:25
<Philip`>
I'm not at all convinced by myself, though
17:25
<Lachy>
add 256 blue files to the collection of 256 red files. The average will then be a shade of magenta
17:25
<Philip`>
Remove one of those red files, and the output will be precisely the same as before
17:26
<Philip`>
so all you're really displaying is 256 blue and 255 red files
17:26
<Lachy>
there is no limit to the number of files. However, as the number of files increases, the effect of a single file reduces
17:27
<Philip`>
There is a limit because eventually the effect of a single file reduces to zero :-)
17:28
<Lachy>
no, the effect of a single file just asymptotically approaches zero
17:28
<Philip`>
The output is quantised to 24 bits, so the effect does reach zero
17:28
<Philip`>
(Er, I guess it's more correct to say it's quantised to 8 bits)
17:28
<Lachy>
that's a rounding error that occurs after the calculation
17:28
gsnedders
might actually write a spec in terms of ABNF! :o
17:29
<Lachy>
it doesn't affect the calculation itself
17:29
<Philip`>
It's not a rounding error - it's a fundamental part of the question of how many images you can meaningfully represent in a pixel on a monitor :-)
17:30
<Philip`>
(...assuming it's not a silly LCD monitor that does 18-bit-plus-dithering or something)
17:31
<Lachy>
IIRC, the human eye can only distinguish about 10 million colours anyway
17:31
<Philip`>
Bah, humans weren't part of the question
17:32
<Philip`>
In 30,000 years we will all be robots and we'll plug ourselves directly into the VGA socket
17:32
<Lachy>
You think we'll still have VGA in 30,000 years? Surely we'll have upgraded to at least Dual-DVI by then :-)
17:33
<Philip`>
Don't underestimate the problems of backward compatibility in technology!
17:33
<Lachy>
(hopefully HDMI will have been thrown out by then)
17:34
<Lachy>
DVI is backwards compatible with VGA, so not a problem
17:34
<Lachy>
just needs a simple DVI-VGA adapter
17:34
<gsnedders>
hmmm… ABNF doesn't specify which match to use if multiple alternatives match.
17:34
<Philip`>
Only DVI-I
17:35
<Lachy>
what about DVI-A?
17:35
<Philip`>
gsnedders: Probably the idea is that you don't have multiple alternatives matching, because that would be an ambiguous / non-deterministic grammar
17:35
<gsnedders>
Lachy: Dual-DVI? Not Dual-link DVI? Why would we want two sockets? :P
17:35
<gsnedders>
Philip`: yeah, I guess I'll just use something like, "If xxx doesn't match, yyy is a string."
17:36
<Philip`>
Is DVI-A something other than VGA but in an incompatible shape?
17:36
<Lachy>
yeah, I meant Dual Link DVI
17:36
<gsnedders>
Philip`: DVI-A is VGA only
17:36
<gsnedders>
Philip`: DVI-I is VGA and DVI-D
17:37
<Lachy>
but 2 sockets are necessary for 2 monitors. Or, when we are robots, one for each eye
17:37
<gsnedders>
(where DVI-D is the native digital one)
17:37
<Philip`>
Anyway, when the robots invent time travel, they'll make us pay for inventing all these legacy technologies that they'll be shackled to for the rest of eternity
17:40
<Lachy>
in that case, we should just deposit $1 in a long term savings account, and by the time the robots come to collect their compensation in 30,000 years, then interest earned should cover it.
17:40
<Dashiva>
Dunno, there's inflation to consider too
17:41
<Philip`>
There's the matter of writing down the PIN number too
17:42
gsnedders
once managed to get through five PIN numbers in a year.
17:44
<Lachy>
nah, just write it in your Will that the money in the account is left to the robots. Your heirs generally don't need your PIN to access their inheritence, and nor should the robots
17:45
Lachy
has to go home. Back soon.
17:47
<gsnedders>
Hixie (or anyone else who knows): is the spec-gen available at all?
17:53
<Philip`>
gsnedders: Do you mean the source code, or just remote access to the service?
17:53
<gsnedders>
Philip`: either
17:54
gsnedders
vaguely remembers something being said about it being by Bert Bos and being remotely available to W3C members, but isn't very sure
17:56
Philip`
remembers the same
17:56
<Philip`>
but all I can find is http://www.w3.org/Tools/HTML-XML-utils/ which doesn't look like the same thing
18:06
<Lachy>
gsnedders, the spec generator is for W3C members only. I could look up the URL for you, but wouldn't do you much good
18:07
<Lachy>
it was originally made for the CSSWG
18:07
<gsnedders>
Lachy: yeah, that's what I thought.
18:08
<Lachy>
it would be nice if someone could write a similar system using html5lib
18:08
<Lachy>
and an HTML5 serialiser
18:09
gsnedders
wonders if he can, until then, occasionally nag someone into putting stuff through it for him
18:09
<Lachy>
what do you need done?
18:10
<gsnedders>
now? nothing.
18:10
<gsnedders>
just nice to decide what format to write a spec in before writing it :)
18:10
<Lachy>
ok, sure. I can do nothing for you now :-)
18:10
<gsnedders>
Lachy: hard working guy, eh? :)
18:11
<Lachy>
I could do it for you occasionally
18:12
<gsnedders>
I expect I could get others to do so occasionally too: most likely whoever happens to be around here when I need it done :)
18:15
gsnedders
tries to reverse-engineer what it does
18:15
<gsnedders>
.no-num, .no-toc, and <!--toc--> are the obvious parts
18:16
<gsnedders>
IIRC it does cross-references too
18:58
<Dashiva>
> The 'height' property doesn't apply. The height of the content area should be based on the font, but this specification does not specify how.
18:59
<Dashiva>
Anyone know off-hand if this is interop and if so, what is used?
20:03
Philip`
doesn't like having to depth-sort transparent objects
23:14
<zcorpan>
hsivonen: validator.nu doesn't catch errors in xml-stylesheet PIs
23:19
<gsnedders>
Hixie: ping
23:21
<gsnedders>
Hixie: do you do refs manually and not through what <http://www.w3.org/Style/spec-mark-up>; says?
23:21
<gsnedders>
(or are they pre-processed somehow to be in the WF2 source?)
23:29
<Hixie>
i do all references manually