00:08
<astearns>
is it that there's 'no DRM' or that they're not 'adding to the HTML5 spec'? I think their claim is that they're only adding data to the element
00:09
<TabAtkins_>
They're adding mechanisms whose sole purpose is enabling DRM within the browser to operate.
00:11
<astearns>
yes, but I think they're trying to convince (us? themselves?) that they're isolating DRM from HTML and the user agent
00:11
<TabAtkins_>
I don't understand the distinction you're claiming they're trying to draw.
00:11
<annevk>
so far my plans for sleeping earlier
00:14
smaug____
is trying to get to bed before 4 am
00:14
<smaug____>
trying
00:14
<annevk>
mine is sleeping by 12AM
00:14
<Hixie>
you're somewhat behind :-)
00:15
<Hixie>
unless you're not in CET anymore
00:15
<annevk>
still am :(
00:15
<Hixie>
hehe
00:15
<annevk>
going now, read then sleep :) nn
00:16
<Hixie>
nn
00:25
MikeSmith
looks around for Ms2ger
01:10
<kennyluck>
huh, I love http://gavinsharp.com/irc/whatwg.html
01:12
<TabAtkins_>
kennyluck: Hey! I gotta lot of responses to CSS3 Images stuff you need to accept or reject!
01:12
<kennyluck>
TabAtkins_, I accept them all.
01:13
<TabAtkins_>
Cool, I'll add a minutes link to the issues list once it shows up.
01:16
<kennyluck>
(Honestly I have no idea what the process is. Perhaps I shouldn't have played Last Call games.)
01:17
<TabAtkins_>
It's easy. I just need to get an explicit "accept" or "reject" to every response I make to an LC issue.
01:17
<TabAtkins_>
(Or note that I couldn't get one.)
01:18
<TabAtkins_>
Then TimBL reviews the ones where the commenter didn't agree with me, and either accepts my resolutions or sends it back.
01:18
<kennyluck>
TabAtkins, is there a process that allows me to flag automatic "accept"?
01:19
<kennyluck>
flag myself as accepting anything, I mean.
01:19
<TabAtkins_>
I suppose you could just say that you accept any resolution (you just wanted to make a comment) in the initial email.
01:19
<TabAtkins_>
But it's not a big deal.
01:26
<jamesr__>
annevk, plh fixed the domcore->dom4 refs in the requestAnimationFrame spec
01:27
<jamesr__>
annevk, he also 'fixed' all the html references to point to w3.org/TR/html5/
01:33
<MikeSmith>
so Ms2ger pinged me a few hours back to say "seems like the automatic reporting went into an infinite loop" about the following http://w3c-test.org/framework/details/dom4-Ms2ger-submissions/Document-getElementById.html/engine/gecko/
01:33
<MikeSmith>
but I must be missing something
01:34
<MikeSmith>
because I don't see anything there that indicates any infinite loop is occurring
01:35
<MikeSmith>
maybe it was some transient problem that happened while I was jacking around with the backend and he just noticed it then but it's gone now
01:39
<MikeSmith>
AryehGregor: you working on CSS some these days?
01:40
<MikeSmith>
ah, Transforms
01:40
<MikeSmith>
cool
04:14
<MikeSmith>
sweet
04:14
<MikeSmith>
just now got websockets support working on w3c-test.org
05:11
<Hixie>
i need a less charged name that "specially focusable"
05:11
<Hixie>
something that doesn't imply that the element is focusable
05:12
<Hixie>
but which makes sense to use in the definition of "focusable"
05:12
<Hixie>
a "focus candidate" maybe
05:16
<Hixie>
"has its tabindex focus flag set" it is.
06:50
<MikeSmith>
how do I completely unset a particular apache directive?
06:51
<MikeSmith>
or set it back to the default?
07:04
<Hixie>
MikeSmith: depends on the directive
07:04
<MikeSmith>
Hixie: OK
07:04
<MikeSmith>
I was hoping there was just an "Unset" or whatever
07:04
<MikeSmith>
but I can see there's not
07:04
<Hixie>
i'm not aware of one
07:04
<Hixie>
for some it wouldn't make sense
07:04
<MikeSmith>
OK
07:04
<Hixie>
think of apache configs as an imperative language
07:04
<MikeSmith>
ah
07:04
<MikeSmith>
OK
07:05
<MikeSmith>
well, the one in particular I want to change is RequestReadTimeout
07:05
<MikeSmith>
for WebSocket testing
07:05
<Hixie>
no idea
07:05
<MikeSmith>
because the Debian defaults for that at least are too low
07:05
<MikeSmith>
OK
08:31
<Ms2ger>
MikeSmith, pong
08:32
<MikeSmith>
Ms2ger: hey
08:32
<MikeSmith>
are you still seeing that problem you reported yesterday?
08:33
<Ms2ger>
Let's try
09:10
<asmodai>
Buddy of mine who works on web frameworks: What break is that Chrome tries to find the /favicon.ico for the debugger which in Flask's case will invalidate the preserved local context.
09:38
<annevk>
jamesr__: "fixed" indeed
09:42
<jgraham>
MikeSmith: Is pywebsocket considered safe to put on public-facing servers these days? Last time I heard, it wasn't
09:45
<zcorpan>
http://code.google.com/p/pywebsocket/source/browse/trunk/src/mod_pywebsocket/standalone.py#87
09:45
<annevk>
jamesr__: draft looks good though, didn't really spot any obvious mistakes, although more globals is too bad
09:46
<zcorpan>
not sure if that applies when using pywebsocket as an apache module rather than using standalone
09:47
<annevk>
jamesr__: any reason it doesn't just use partial Window btw?
09:47
<annevk>
jamesr__: in the IDL?
09:47
<annevk>
(this is about http://dvcs.w3.org/hg/webperf/raw-file/tip/specs/RequestAnimationFrame/Overview.html fwiw)
09:53
<annevk>
links to the June 2010 draft of HTML
09:53
<annevk>
oh yes, dated references are some much better
09:53
<annevk>
o_O
09:56
<jgraham>
Oh wow
10:28
<[tm]>
jgraham: I'm using out through the Apache module
10:28
<[tm]>
using it
10:29
<[tm]>
installed frm Debian package
10:30
<jgraham>
Does that make it impossible to inject code?
10:30
<[tm]>
i didn't see any security bugs against the Debian package but will check when i get back
10:31
<silentimp>
Hi all. Is there any way to monitor changes inside DOM node, or change of some elements property (height for example)? In ie7+ and normal browsers.
10:33
<[tm]>
jgraham: i am happy to install whatever better alternatives there might be
10:35
<jgraham>
[tm]: I am not aware of what alternatives exist that meet all the requirements
10:39
<zcorpan>
silentimp: "ie7+ and normal browsers"? i think the answer to that is "no". if you change that to a different set of browsers, the answer is "mutation listeners", but those are going away and are being replaced by "mutation observers" (which isn't implemented yet, i think)
10:39
<zcorpan>
that's just for dom changes, not style changes
10:40
<zcorpan>
i'm not aware of style mutation observers or anything like that
10:41
<zcorpan>
although some browsers might have events for when reflow or repaint happens
10:41
<[tm]>
jgraham: http://www.tavendo.de/autobahn/ maybe
10:42
<[tm]>
https://github.com/oberstet/Autobahn
10:43
<silentimp>
mutation listeners implemented in ff,chrome and opera as far as i know. Not sure about safari. Is there any way but timers to emulate this events in IE?
10:45
<silentimp>
reflow and repaint is happen much more often then changes in specific node. so timer is better, am i right?
10:45
<annevk>
mutation events are implemented, but are going away
10:45
<annevk>
mutation observers is only implemented in Chrome
10:45
<annevk>
and only in a dev/beta build
10:46
<[tm]>
http://en.m.wikipedia.org/wiki/Comparison_of_WebSocket_implementations
10:47
<Ms2ger>
MikeSmith, yeah, can't reproduce the infinite loop either
10:47
<silentimp>
oh. so I think timer is best decision for the moment any way
10:47
<jgraham>
[tm]: The hardest requirement is "allows arbitary bits on the wire"
10:47
<jgraham>
We have to be able to create invalid responses
10:47
<jgraham>
But there's no good reason a server should let you do that
10:47
<jgraham>
So it might be hard to find an existing project that meets our needs
10:48
<jgraham>
(pywebsocket does do that, but seems to be insecure-by-design and not just to people writing tests)
10:48
<jgraham>
I kind of assume we will need custom code
10:49
<Ms2ger>
I believe Mozilla uses pywebsocket as well
10:51
<jgraham>
I think everyone uses it internally
10:52
<jgraham>
Which means it would be really nice to use it directly
10:52
<jgraham>
But it would also be really nice if people can't run arbitary commands on w3c-test.org
10:53
<Ms2ger>
Require review, like with php files?
10:55
<jgraham>
Well given the comment it's not clear that's safe enough
10:58
<jgraham>
I can't find the rationale for the comment htough
11:01
<zcorpan>
MikeSmith, hsivonen: in v.nu, when the image report is shown, you could check for width="" and height="" constraints because you know the intrinsic dimensions
11:02
<zcorpan>
would only work with js, though
11:02
<zcorpan>
and would probably take focus away from alt=""
11:03
<zcorpan>
maybe would be better to check this in a conformance checker that's integrated with devtools in a browser
11:31
<asmodai>
Crap, where is this ff memleak coming from
11:31
<hsivonen>
zcorpan: I suppose that would be doable
11:31
<hsivonen>
asmodai: extensions are the usual suspects these days
11:32
<asmodai>
hsivonen: Ghostery maybe?
11:32
<asmodai>
it's the only one I added in recent days
11:32
<asmodai>
Got to be it, as I was quite stable before that, mmm
11:35
<hsivonen>
asmodai: sounds believable
11:36
<hsivonen>
asmodai: this maybe? https://bugzilla.mozilla.org/show_bug.cgi?id=718375
11:36
<asmodai>
oh hey
11:40
<asmodai>
~50% in memory because of JavaScript XD
11:40
<asmodai>
on my ff instance
11:42
<asmodai>
hsivonen: could very well be that that is what I am running into.
11:45
<annevk>
I argued https://www.w3.org/Bugs/Public/show_bug.cgi?id=16074 for a while
11:45
<annevk>
did not really get anywhere
11:51
<hsivonen>
annevk: seen https://svn.tools.ietf.org/svn/wg/appsawg/draft-ietf-appsawg-mime-default-charset/latest/draft-ietf-appsawg-mime-default-charset.html ?
11:53
<annevk>
I heard something was going on
11:53
<annevk>
looks wrong
11:53
<annevk>
'pecify that the "charset" parameter is not used for the defined subtype, because the charset information is transported inside the payload (as in "text/xml")'
11:53
<annevk>
text/xml definitely uses the charset parameter
11:55
<annevk>
and it continues
11:55
<annevk>
' specifically including "text/html" and "text/xml", SHOULD NOT specify the use of a "charset" parameter, nor any default value, in order to avoid conflicting interpretations should the charset parameter value and the value specified in the payload disagree'
11:55
<hsivonen>
annevk: yeah, it sure looks wrong
11:55
<hsivonen>
also "The default charset parameter value for text/plain is unchanged from [RFC2046] and remains as "US-ASCII"."
11:55
<annevk>
mwaha ' The default charset parameter value for text/plain is unchanged from [RFC2046] and remains as "US-ASCII".'
11:55
<annevk>
yeah
11:56
<hsivonen>
now I need to figure out where to send feedback to
11:56
<hsivonen>
apps-discuss
11:56
<hsivonen>
another list to subscribe to
11:57
<annevk>
thanks, I don't want to subscribe to another list really
12:10
<annevk>
Ms2ger: you really prefer the interface callback stuff?
12:10
<Ms2ger>
I prefer interoperability, and we're not getting that with callbacks
12:11
<annevk>
sure we are
12:11
<annevk>
sometimes Microsoft does not play ball short term, but long term it works out
12:11
<annevk>
if some people at Mozilla do the same, it won't really work out any different
12:12
<Ms2ger>
Anyway, there is no good reason to make the platform less consistent here
12:12
<annevk>
the platform is already inconsistent
12:13
<annevk>
here
12:13
<annevk>
and there are good reasons
12:13
<annevk>
see the long public-script-coord thread
12:20
<hsivonen>
annevk: is there a summary that explains what problem is solved by changing JS strings to be indexed by UTF-32 code unit?
12:22
<annevk>
I think it's basically about better dealing with all the new code points
12:22
<annevk>
without libraries having to take special care
12:22
<hsivonen>
maybe I should read that thread and reply
12:23
<annevk>
a lot of the thread is terminology confusion
12:23
<hsivonen>
indexing by UTF-32 code unit is generally a false goal
12:23
<annevk>
and a few interesting questions about what to do with surrogate code points and such
12:23
<annevk>
I sure hope it's not going to get stored as utf-32
12:23
<hsivonen>
since you still have to consider runs of more than one code unit to split strings on grapheme cluster boundaries
12:23
<hsivonen>
and people care about grapheme clusters
12:24
<annevk>
ah yeah, combining code points...
12:24
<Philip`>
Does any programming language have a widely-agreed-to-be-good approach to strings yet?
12:25
<hsivonen>
Philip`: probably not. I think UTF-8 plus standards library that doesn't suck for manipulating UTF-8 would be good.
12:26
Philip`
remembers seeing a preference towards forbidding random access of Unicode strings, and only allowing iteration (which means you can easily store as UTF-8 and can provide iteration over grapheme clusters or whatever)
12:26
<jgraham>
I think people generally choose either speed of certain operations or correctness in all cases, and the people who need one always see the other as broken
12:27
<Philip`>
(and adding a separate type for byte/character arrays with random access)
12:27
<jgraham>
So it's hard to construct a system that has uoniversal agreement
12:27
<jgraham>
*universal
12:27
<hsivonen>
Philip`: yeah, it's generally a non-goal to be able to index into strings
12:28
<hsivonen>
jgraham: I think there's a tendency towards what superficially looks like correctness, but real correctness is always harder
12:28
<jgraham>
Harder and slower
12:28
<hsivonen>
jgraham: e.g. indexing by Unicode character superficially looks like correctness but doesn't buy you much of interest
12:29
<annevk>
you can handle emoji better
12:29
<jgraham>
Basically I think most languages strike a balance between speed and correctness that make them look broken to everyone
12:30
<Philip`>
Android seems to be trying to force C++ code to stop using wchar_t strings (presumably in favour of UTF-8 encoded char strings), by providing minimal broken support for wchar_t
12:30
<hsivonen>
all-ascii identifiers are easy in any UTF and prose is hard in any UTF
12:30
<Philip`>
(which is a bit annoying when you have lots of code that uses lots of wchar_t strings)
12:30
<annevk>
but yeah sometimes I do have the feeling TC39 is just trying to design the perfect language
12:30
<hsivonen>
wchar_t is full of FAIL
12:31
<Philip`>
wchar_t gives you the problems of UTF-32, and the problems of UTF-16, and the additional problem of not knowing whether you're using UTF-32 or UTF-16
12:33
<zcorpan>
sounds like html's definition of "unicode code point"
12:34
<crocket>
What should I use between <br> and <br/> for HTML documents?
12:35
<annevk>
either is fine
12:35
<Philip`>
crocket: Whichever you find most aesthetically pleasing
12:36
<hsivonen>
what's the term for MIME payload that I should use so that the IETF folk see I have the right shibboleth and don't laugh at me? "entity body"?
12:37
<annevk>
yeah
12:37
<crocket>
Do HTML parsers convert <br/> to <br>?
12:37
<annevk>
headers + entity body is what goes in a request/response
12:37
<annevk>
crocket: they just ignore the /
12:37
<hsivonen>
annevk: for HTTP. but RFC 2046 talks about message body.
12:37
<annevk>
crocket: so <br> is slightly better as there's less cruft
12:38
<annevk>
hsivonen: there's some conversion between the two, hmm
12:38
<hsivonen>
annevk: but I guess I prefer HTTP terminology over email terminology as a political statement
12:38
<zcorpan>
hsivonen: do the bjoern approach, use several terms and put them in square quotes
12:38
<gsnedders>
hsivonen: Yet the instant you want JS you need to index into code-units, and if you're moving stuff between JS and the DOM, then you don't want to convert all the time.
12:38
<hsivonen>
zcorpan: s/square/scare/ ?
12:38
<annevk>
hsivonen: http://tools.ietf.org/html/rfc2616#section-4.3
12:39
<zcorpan>
square? dunno how i managed to type that
12:39
<hsivonen>
annevk: ok. so I mean entity-body
12:39
<hsivonen>
annevk: thanks
12:39
<annevk>
hsivonen: entity body is raw octets, message body is raw bytes decoded per transfer-encoding
12:39
<annevk>
np
12:44
<wilhelm>
… Speaking of vendor prefixes: http://googlewebmastercentral.blogspot.com/2012/01/making-form-filling-faster-easier-and.html
12:46
<crocket>
Does HTML5 parsers remove / from <br/>, too?
12:46
<crocket>
Does -> Do
12:47
<Philip`>
crocket: Yes (effectively) - they act exactly the same with or without the "/"
12:48
<crocket>
I wish HTML was a subset of XML.
12:48
<hsivonen>
wilhelm: at least x- is less harmful that engine-specific prefixes
12:49
<Philip`>
crocket: Unfortunately that battle was lost before XML even existed
12:49
<crocket>
How do I use libxml with HTML documents, then?
12:49
<crocket>
or lxml
12:51
<Philip`>
In Python, if you want to correctly parse random web pages (not ones where you can carefully control them to be non-erroneous or XML-compatible), I think the only option is html5lib
12:51
<jgraham>
crocket: html5lib or lxml.html, depending on your preference for correctness vs speed
12:51
<Philip`>
(html5lib can give an lxml-compatible tree object)
12:52
<crocket>
html5lib.
12:52
<Philip`>
(...if I'm not getting confused)
12:53
<jgraham>
(you're not)
12:53
<jgraham>
(unless you are confused about something else)
12:53
<Philip`>
(I am confused about many other things)
12:53
<crocket>
What do C/C++ have instead of html5lib?
12:54
<jgraham>
Web browsers
12:54
<crocket>
I need a library.
12:54
jgraham
isn't sure there is a general purpose spec-complaint HTML parsing library written in C(++)
12:54
<Philip`>
What happened with Hubbub?
12:54
<jgraham>
That is not deeply tied to a browser
12:55
<crocket>
I don't need a browser.
12:55
<wilhelm>
hsivonen: True.
12:55
<jgraham>
I think hubbub is unmaintained, but I am not sure
12:56
<crocket>
The last commit was 13 months ago, so it's unmaintained.
12:56
<Philip`>
crocket: Could you use an external tool that parses as HTML5 and outputs in a more easily parseable format (like XML) that you can then read into C/C++?
12:56
<crocket>
Philip`: That's a weird way to do things.
12:56
<Philip`>
If so, the validator.nu parser (in Java) is probably best, since it's both correct and fast (unlike anything available to Python or easily available to C/C++)
12:57
<crocket>
validator.nu?
12:57
<jgraham>
crocket: Depending on how much you need it you could eiterh pick up maintainance of hubbub, make the validator.nu C++ convertor emit non-gecko-specific code, or rip the parser out of WebKit.
12:58
<crocket>
That's a shame.
12:58
<Philip`>
http://about.validator.nu/htmlparser/
12:58
<crocket>
C/C++ doesn't have a portable library.
12:58
<jgraham>
It is a shame
12:59
<crocket>
I think java has a built-in HTML library.
12:59
<Philip`>
If it does, it won't be correct
13:01
<crocket>
I think python is the best nowadays.
13:01
<crocket>
For processing documents, python is pretty good.
13:01
<crocket>
Is html5lib as good as validator.nu parser?
13:02
<Philip`>
html5lib is probably something like 100x slower than the validator.nu parser, but on the plus side it doesn't involve Java
13:02
<crocket>
I know how to code java programs.
13:02
<Philip`>
They're both almost entirely correct HTML5 parser implementations
13:02
<crocket>
Philip`: Did you test both?
13:03
<smaug____>
I think hsivonen or someone had ideas to have libxml2 like API for validator.nu's parser
13:03
<Philip`>
crocket: They both use the same fairly-extensive test suite
13:03
<crocket>
How come is validator.nu parser a lot faster?
13:04
<Philip`>
Because Python is a lot slower than Java
13:04
<crocket>
How about C?
13:04
<crocket>
Java is a lot slower than C.
13:04
<Philip`>
C should be about as fast as Java
13:04
<crocket>
Java programs are usually heavy.
13:05
<crocket>
Think of playing "mass effect 2" written in java.
13:06
<Philip`>
I don't think there's much difference for this kind of algorithm - Java JITs work well, and the bottlenecks are probably mostly in memory allocation (where Java could be faster) and string manipulation
13:06
<hsivonen>
where's the concept of an origin considered to be defined these days?
13:07
<hsivonen>
ah. http://tools.ietf.org/html/rfc6454
13:09
<zcorpan>
yep. it's the rfc that precedes the websocket protocol
13:10
<crocket>
Philip`: Why do you prefer python to java, then?
13:12
<Philip`>
crocket: Usually I don't care about execution speed that much (html5lib still only takes a few seconds per megabyte, if I remember correctly), and Python takes less effort to write and to run
13:14
<crocket>
Philip`: There are java 3D games for your information.
13:15
<crocket>
With java, you can make a true platform-independent games.
13:18
<Philip`>
I don't think I've ever disputed that :-)
13:19
<hsivonen>
Hixie: how come step 8 under http://www.whatwg.org/specs/web-apps/current-work/#determining-the-character-encoding says UTF-8 for some locales? did you verify that that makes sense or did you just copy whatever Mozilla localizers did?
13:25
<hsivonen>
ok. email to apps-discuss sent. not in their Web archive yet.
13:27
<hsivonen>
aargh. If my From and Sender don't match, apps-discuss wants Sender to be subscribed
13:27
<kennyluck>
At least interesting enough zh-TW FF uses UTF-8 as default but the spec matches IE.
13:32
<kennyluck>
hsivonen, an interesting example of the problem that changing to UTF-32 would solve is, for example, WebKit doesn't display a text run if it starts with a surrogate code point. This could happen if authors use a naive algorithm to do, say, ellipsis in the middle of a text run.
13:32
<kennyluck>
Having said that, this is a WebKit bug so I am not too convinced...
13:33
<hsivonen>
kennyluck: they they'd get an ellipsis in the middle of a base character and diacritics the next time
13:33
<hsivonen>
sigh. did ietf blackhole my email. still not in the archive after replying to the confirmation
13:35
<kennyluck>
hsivonen, that is at least better than the whole text run disappearing.
13:35
<kennyluck>
I think.
13:40
<kennyluck>
In any case the internal storage of a JS string probably wouldn't be affected much by this. For example, Python3.3 does provide a UTF-32 string API but whether the string is stored as 1, 2 or 4 bytes per code point depends on the maximum code value appearing in that string, which is quite clever.
13:42
<hsivonen>
kennyluck: Gecko does the 1 vs. 2 vs. 4 thing for DOM text nodes
13:42
<annevk>
hsivonen: nice email!
13:42
<kennyluck>
hsivonen, I thought it only does 1 vs. 2?
13:42
<annevk>
should really write a new RFC 2046
13:43
<hsivonen>
kennyluck: so when you've got a huge text node in a script element and the author puts his/her non-ASCII name in a comment, the memory footprint of the node doubles
13:43
<hsivonen>
kennyluck: well, a surrogate pair takes 4 bytes :-)
13:43
<hsivonen>
annevk: thanks. if it only reached the IETF folks
13:43
<kennyluck>
hsivonen, oh, but in Python3.3, that's a real 4 bytes for each code point.
13:43
<kennyluck>
if there's any non-BMP in that string.
13:44
<hsivonen>
s/non-ASCII/non-ISO-8859-1/ above
13:48
<zcorpan>
hsivonen: resend it to www-archive
13:50
<hsivonen>
zcorpan: now it's on apps-discuss! http://www.ietf.org/mail-archive/web/apps-discuss/current/msg04347.html
14:34
hsivonen
wonders why https://lists.w3.org/Archives/Member/w3c-css-wg/2012JanMar/0150.html isn't on www-style
14:35
<AryehGregor>
Does anyone know why WebIDL allows float/double to have values like NaN, Infinity, etc.? That seems undesirable.
14:36
AryehGregor
will file a bug if no one answers in the time it takes him to file it
14:36
<jgraham>
Why not? ECMAScript allows those values
14:37
<AryehGregor>
The WebIDL uses of float/double I can think of don't want them.
14:37
<AryehGregor>
Like currentTime, or CSSMatrix.
14:37
<jgraham>
But that seems very interface-specific
14:38
<AryehGregor>
If existing users don't want them, they shouldn't be allowed, or should only be allowed if you opt in with an extended attribute.
14:38
<jgraham>
It seems bad to disallow those values in any interface just because they don't make sense in some
14:38
<AryehGregor>
If some interfaces want them and some don't, there should be different types, or extended attributes.
14:38
<annevk>
jgraham: i think it's the other way around though
14:38
<annevk>
jgraham: they only make sense in some
14:38
<jgraham>
Or it could just say in prose
14:39
<annevk>
and often it's just attributes that return a number and therefore never need them either
14:39
<jgraham>
It seems bizzare to me taht if you pass in a variable that happens to be NaN, it would change e.g. overload resolution
14:40
<zcorpan>
wasn't overload going to be dropped?
14:41
<annevk>
yes it was
14:41
<annevk>
or is
14:43
<jgraham>
Hmm, so how is that going to work? There are interfaces that depend on it, surely?
14:43
<annevk>
apparently not
14:46
<jgraham>
I am obviously behind. Stuff like CanvasRenderingContext2D::createPattern
14:46
<zewt>
it'd make sense for NaN/INF to be "converted" to 0 (in the same sense as a type conversion) unless some flag is present (akin to nullable) ... but that's not what actually happens in many places, at least in the HTML spec
14:47
<AryehGregor>
AFAICT, the HTML spec mostly just doesn't define what to do.
14:47
<hsivonen>
I wonder how Opera developers feel about Pepper
14:47
<zewt>
Except where otherwise specified, for the 2D context interface, any method call with a numeric argument whose value is infinite or a NaN value must be ignored.
14:47
<jgraham>
Oh, that uses "or"
14:47
<AryehGregor>
jgraham, they use union types now.
14:47
<hsivonen>
Opera even joined the Open Screen Project and this is what they get
14:48
<zewt>
converting to 0 seems more in line with how other functions work when you pass a "wrong" type; just convert it and keep going
14:48
<jgraham>
Hmm
14:48
<smaug____>
open screen project ? maybe internet knows what that is
14:48
<zewt>
anyway, off to work
14:49
<hsivonen>
smaug____: It's Adobe's Flash Player porting and bundling program
14:49
<smaug____>
uh
14:49
<smaug____>
"open"
14:55
<AryehGregor>
zewt, setting a float/double attribute to something will already throw in any case where ToNumber() throws, which includes at least the case where you pass an object and ToPrimitive() throws. E.g., video.currentTime = {} already throws TypeError per spec.
14:55
<annevk>
AryehGregor: oh, long / long long / octet cannot be Infinity and such?
14:55
<AryehGregor>
annevk, no.
14:55
AryehGregor
looks what happens
14:56
<AryehGregor>
annevk, it seems like in that case it gets set to +0.
14:58
<tomasf>
2
15:06
<crocket>
How can I declare a valid XHTML5 document with a doctype tag?
15:06
<crocket>
Can an XHTML5 document conform to "XHTML 1.0 Strict DTD"?
15:07
<zcorpan>
crocket: why do you care about DTD at all?
15:07
<crocket>
DTD is important.
15:07
<Philip`>
DTD isn't important
15:09
<Philip`>
(HTML5's XML serialisation allows you to use any doctype, or none, as you wish)
15:09
<zcorpan>
crocket: http://about.validator.nu/#faq ("What’s wrong with DTDs?")
15:09
<zcorpan>
hsivonen: would be nice if all the headings had ids ^
15:10
<Philip`>
(though if you're transmitting it as text/html then it's not really the XML serialisation, and you need to use one of http://www.whatwg.org/specs/web-apps/current-work/multipage/syntax.html#obsolete-permitted-doctype-string )
15:10
<Philip`>
(which does allow 1.0 Strict)
15:11
<zcorpan>
hsivonen: or at least the dtd heading, since i wanted to link to it now :-)
15:16
<crocket>
Philip`: I guess <!DOCTYPE html> would do.
15:16
StoneCypher
is not a fan of using the html5 doctype before standardization
15:17
<AryehGregor>
REC != "standardization"
15:20
<StoneCypher>
well
15:20
<StoneCypher>
those recommendations are called standards
15:20
<StoneCypher>
eg the html4 standard
15:20
<StoneCypher>
no?
15:20
<Ms2ger>
No
15:20
<StoneCypher>
oh.
15:20
<Ms2ger>
The W3C doesn't publish standards
15:20
<StoneCypher>
is that just inappropriate common slang?
15:22
<AryehGregor>
It doesn't use the term "standard" officially, it uses "Recommendation".
15:22
<StoneCypher>
k
15:23
<Ms2ger>
Anyway, HTML5 is more mature than HTML4
15:23
<StoneCypher>
most of its modules are still being haggled about
15:23
<StoneCypher>
even sorta-straightforward stuff
15:24
<StoneCypher>
although, the recommendation piece that (i think annevk?) showed me yesterday, which is basically what other languages call inheritance for css (think LESS,) makes me *super* happy
15:24
<Philip`>
That's better than the situation with HTML4, where it was blatantly wrong and people were just resigned to it never being fixed
15:25
<StoneCypher>
that's a valid point
15:25
<StoneCypher>
i guess what i am reacting poorly to is the possibility - in a few cases, the likelihood - that the recommendation i'm writing towards will change
15:26
<Ms2ger>
Aww, I missed an XML conversation
15:26
<jgraham>
"09:22 < Ms2ger> The W3C doesn't publish standards" - in that case they probably shouldn't have a heading "standards" at the top of their homepage
15:26
<Ms2ger>
You go tell them that
15:26
<Ms2ger>
I am no longer surprised by hypocrisy at the W3C
15:27
<jgraham>
I thought the "we don't publish standards" thing was a vauge fear of being sued by ISO or someone
15:27
<Philip`>
StoneCypher: It doesn't really matter what stan... uh, recommendation you're writing towards - it just matters what web browsers are implementing, and whether they're backward-compatible with the content you've already published
15:27
<Philip`>
StoneCypher: (assuming your goal is for your sites to not break in future browsers)
15:29
<Ms2ger>
AryehGregor, HTML requires throwing for non-finite doubles somewhere up front
15:29
<Ms2ger>
Except for canvas2d, which silently ignores
15:29
<AryehGregor>
Ms2ger, really?
15:29
AryehGregor
looks
15:29
<Ms2ger>
jgraham, we can apparently disambiguate on argument count only
15:30
<Ms2ger>
AryehGregor, 2.2.2 Dependencies under WebIDL
15:30
<AryehGregor>
Oh.
15:30
<AryehGregor>
How confusing.
15:33
<Philip`>
These hidden sentences that have arbitrary influences on arbitrary parts of the rest of the spec are almost as intuitive as COME FROM
15:33
<zcorpan>
iirc the spec required throwing before for everything, but some browsers did ignore instead for canvas, and then some pages depended on not throwing for canvas, so the spec changed for canvas
15:35
<Ms2ger>
Gecko used to throw for most of canvas IIRC
15:35
<Ms2ger>
Blame Philip` for getting that changed :)
15:35
<Philip`>
I blame Hixie for accepting my suggestions
15:35
<smaug____>
(throwing was the sane behavior, but I didn't care enough to file spec bugs)
15:36
<AryehGregor>
Since when is the web platform supposed to be sane?
15:36
<smaug____>
there can be some corner cases when it is sane
15:37
<Philip`>
I think it was an attempt to handle edge cases (like scaling by 1/x for small x) relatively gracefully, where throwing an exception is considered non-graceful because it usually clobbers the entire script
15:38
<zcorpan>
Hixie: if you fasttrack https://www.w3.org/Bugs/Public/show_bug.cgi?id=14929 i'll give you a cookie. :-)
15:38
<AryehGregor>
Scaling by 1/x for small x will have discontinuous behavior near 0 no matter what you do.
15:40
<Ms2ger>
zcorpan, fwiw, I've found that attaching a patch + reminder by private email works quite well :)
15:41
<Ms2ger>
"If the unprefixed property is used widely enough that changing its syntax would be a problem, then ipso facto we should be very reluctant to change its syntax."
15:41
<Ms2ger>
Ha. Ha. Ha.
15:56
<hsivonen>
Ms2ger: seems like a reasonable statement. (the one you quoted)
15:56
<Ms2ger>
Yeah
15:56
<Ms2ger>
I'm a little cynical about the CSSWG
16:13
<StoneCypher>
Philip`: nah, i'm a c++ programmer. I need standards compliance, even if it's moot. It's who I am.
16:23
Philip`
doesn't see C++ as a great place for caring hugely about standards compliance, given how much is left undefined or implementation-defined or is defined wrongly or is too hard for any human to comprehend, and how most real programs rely on non-standard features
16:26
<StoneCypher>
Philip`: kay
16:26
<StoneCypher>
Philip`: very little is actually undefined, though
16:27
<StoneCypher>
Philip`: it's just that what's undefined is well defined, which is not usually the case in weaker languages
16:28
<Ms2ger>
Has casting to smaller-width integers been defined yet?
16:28
<Philip`>
Some fairly critical stuff is(/was until very recently) undefined, like the memory model when you have multiple threads
16:29
<Philip`>
Ms2ger: I think that's always been defined for unsigned ints, but not for signed if the result overflows
16:30
<Ms2ger>
Hmm, I thought the opposite
16:30
<Philip`>
They don't want to require something that's infeasible on ones' complement architectures
16:33
<Philip`>
s/ones'/one's/ (I got distracted by Wikipedia's needlessly pedantic linguistic choice)
16:33
<kennyluck>
it's defined for unsigned ints last I check.
16:41
<MikeSmith>
zcorpan, if you can raise a bugzilla.validator.nu bug for that, that'd be great
16:41
<MikeSmith>
(about the image report)
16:51
<AryehGregor>
At least with C++, differences between compilers are only relevant once, when you compile. Once you compile in a given compiler and test it, it will work the same forevermore regardless of C++.
16:52
<AryehGregor>
With web stuff, you can test your web page in all major browsers at the time you write it, and it might work just fine, and then it still might not work in future browsers if behavior changes.
16:52
<AryehGregor>
Which is why undefined behavior is more acceptable for C++ than the web.
16:52
<StoneCypher>
Ms2ger: downcasting has been well defined since BCPL
16:52
<AryehGregor>
jgraham, are you planning on ever accepting my pull request?
16:52
<StoneCypher>
Ms2ger: any downcast which is correctly masked succeeds
16:52
<AryehGregor>
Okay, let me rephrase that more politely:
16:52
<AryehGregor>
jgraham, do you have a timeline in mind for accepting my pull request?
16:53
AryehGregor
always try to be more polite than he is
16:53
<Ms2ger>
Which pull request? If it's to testharness.js, just push to dvcs.w3.org/hg/resources/
16:53
<AryehGregor>
Ms2ger, he asked me to submit a pull request on github instead of just pushing it.
16:53
<Philip`>
AryehGregor: Except if you're dynamically linking with libstdc++, which might change in the future
16:54
<AryehGregor>
If he doesn't respond for long enough, I guess I'll just push the updates myself.
16:54
<jgraham>
AryehGregor: Please do what Ms2ger says
16:54
<AryehGregor>
jgraham, okay. So should I not submit pull requests in the future, or what?
16:54
<AryehGregor>
(I added a second commit to the pull request, in case you didn't notice.)
16:54
<jgraham>
I haven't got the sync between git and hg worked out properly yet
16:54
<AryehGregor>
(Should I push that too?)
16:56
<jgraham>
AryehGregor: Yes, that change looks fine
16:56
<jgraham>
AryehGregor: Dunno why I didn't get mail about it
16:57
<jgraham>
If I set up the necessary bits to sync github and hg I think pull requests are still the best way to work, because a crappy code review system is better than no code review system
16:58
<AryehGregor>
github's code review doesn't seem too bad at first glance.
16:58
<AryehGregor>
Got to be better than Bugzilla.
16:59
<jgraham>
Well yeah, but so is amputating your own leg with a rusty spoon.
16:59
<AryehGregor>
Mozilla still uses it. :(
16:59
<Ms2ger>
Splinter isn't too bad
16:59
<jgraham>
I seriously have no idea how Mozilla manage it
17:00
<jgraham>
But maybe everyone is using the tools that present a UI on top of the broken model
17:00
<jgraham>
That makes it suck less
17:02
<AryehGregor>
Pretty much.
17:09
<Ms2ger>
What broken model?
17:10
<jgraham>
Posting diff output to bug reports
17:10
<Ms2ger>
That makes a lot of sense
17:10
<jgraham>
Not to me
17:11
<Ms2ger>
Why not? You're writing patches to a repository, so that's your output
17:13
<jgraham>
No, commits in a repository are your output. Why not work with those, and all the advanced tools you have for managing them?
17:26
<Ms2ger>
AryehGregor, congratulations, I guess :)
17:26
<AryehGregor>
Ms2ger, . . . on what?
17:27
<Ms2ger>
The CSSWG likes you
17:28
<AryehGregor>
It does? I didn't notice.
17:28
<Ms2ger>
http://krijnhoetmer.nl/irc-logs/css/20120222#l-375
17:28
<AryehGregor>
Hurrah.
17:28
<AryehGregor>
It only took, what, upwards of a month?
17:29
<StoneCypher>
oh neat
17:29
<astearns>
we're now talking about transform-origin and perspective-origin
17:29
<Ms2ger>
But the bureacrazy needs that time!
17:30
<AryehGregor>
Oh, you're going to talk about using hg for specs.
17:30
<AryehGregor>
Yay.
17:30
<Ms2ger>
One repo for all specs, apparently
17:30
<AryehGregor>
That's okay with me.
17:31
<AryehGregor>
I wish it were easier to merge and split repos.
17:31
<AryehGregor>
No VCS seems to have managed that yet.
17:31
<AryehGregor>
Seems like a natural extension of the concept of a DVCS.
17:31
<AryehGregor>
You should be able to merge two repositories, where the merge commit puts one of them in a subdirectory of the other.
17:32
<Ms2ger>
I think you can do that somehow in hg
17:32
<AryehGregor>
Splitting is naturally handled anyway, I guess, by just deleting the irrelevant files in two different copies.
17:32
<AryehGregor>
Although re-merging won't be nice in that case.
17:32
<Philip`>
Presumably moving them into a subdirectory that wouldn't preserve the commit IDs (because changing the paths will change the commit content)
17:33
<Ms2ger>
You would move all the files into a subdir in one of the repos before merging
17:34
<Philip`>
Oh, I suppose that might work
17:35
<Philip`>
Can you simply pull from an unrelated repository into a second one, and then do a merge of the heads?
17:35
<Ms2ger>
Yes
17:35
<Ms2ger>
Though you have to say so loudly
17:35
<Philip`>
"hg PULL"?
17:35
<Ms2ger>
hg pull -f, IIRC
17:50
<AryehGregor>
Interesting.
18:51
<MikeSmith>
smaug____: validator.nu/mozilla HTML parser code does expose an API
18:51
<MikeSmith>
a la libxml2 or whatever
18:51
<MikeSmith>
for java apps at least
18:51
<smaug____>
MikeSmith: I was thinking API for C/C++
18:53
<jamesr__>
annevk, partial didn't exist when i wrote the IDL
18:53
<jamesr__>
annevk, i'll update the references to the most recent thing i can find on w3, but i'll have to leave those as links to w3 and w3c staff might go in and make them more retarded later on
18:53
<MikeSmith>
smaug____: ah OK, yeah, that would be nice to have
19:05
<pablof>
I'm a bit confused with some wording, halp?
19:05
Philip`
sees http://blogs.adobe.com/flashplayer/2012/02/adobe-and-google-partnering-for-flash-player-on-linux.html and now understands hsivonen's earlier reference to Pepper
19:05
<pablof>
When content whose URL has the same origin as the iframe element's Document fails to load (e.g. […]), then the user agent must queue a task to fire a simple event named error at the element instead.
19:05
<pablof>
what exactly are the origins involved in the same origin check there?
19:06
<pablof>
Who is "content" referring to?
19:06
<Ms2ger>
iframe src=foo
19:06
<Ms2ger>
content refers to foo
19:08
<pablof>
Ms2ger: i see, thanks!
19:17
<jamesr__>
Philip`, gtk3 transition is another factor w.r.t. flash linux (gtk3's an ABI change, npapi flash depends on gtk2)
19:29
<roc>
wow, that is really antisocial
19:31
<MikeSmith>
roc: ?
19:31
<roc>
tying Linux Flash > 11.2 to a huge pile of Chrome-only APIs
19:33
<AryehGregor>
Fortunately, Flash is progressively less relevant anyway.
19:33
<AryehGregor>
Still, though . . .
19:35
<roc>
indeed, maybe support for Flash > 11.2 will never become important to users
19:36
<AryehGregor>
So the CSSWG has finally decided to move from CVS to hg, but it probably won't happen for months. Oh well.
19:36
<AryehGregor>
I guess I have to learn how to use CVS after all.
19:36
<roc>
you have led a protected existence
19:36
<AryehGregor>
:(
19:39
<roc>
hmm, my first read through the Adobe announcement missed the just-as-important fact that Adobe won't offer a Flash download other than bundled with Chrome
19:39
<smaug____>
roc: oh, I must have missed that
19:39
<smaug____>
Google must be paying quite a bit to Adobe
19:40
<roc>
so presumably as well as Firefox and Opera getting shafted, so do all other open-source browsers, including Chromium!
19:50
<Hixie>
where do i point someone who wants to work on test suites for html?
19:52
<roc>
jamesr__: FWIW I don't see any issues with supporting GTK3-based plugins in NPAPI. There might be a little work around the edges but the API dependencies on GTK2 are minimal
19:52
<Ms2ger>
Hixie, dvcs.w3.org/hg/html
19:53
<jgraham>
Hixie: public-html-testsuite
19:53
<Ms2ger>
And
19:53
<Ms2ger>
http://www.w3.org/html/wg/wiki/Testing/Submission/
19:53
<jgraham>
Or here ofc :)
19:53
<Hixie>
k, thanks guys
19:53
<jgraham>
Depends what "wants to work" means, really :)
19:54
<Ms2ger>
"At this time we are creating tests based on HTML5 'Features'. "
19:54
Ms2ger
wonders what that means
19:54
<jgraham>
The scare quoutes?
19:54
<jgraham>
Probably if you s/'Features'/bugs/ it will all make sense
19:58
<jamesr__>
roc, npapi flash today has dependencies on the ABI of gtk2, so it won't do anything on gtk3 systems. i imagine this could be fixed by some amount of work on the plugin author's side
19:58
<jamesr__>
i don't know how much work it is
20:01
<roc>
porting from GTK2 to GTK3 isn't that hard, judging by the patches that port Firefox ... especially since Flash isn't even affected by theming-related changes ... but OK
20:11
<Hixie>
ok i did the bug zcorpan wanted
20:24
<charlvn>
Hixie: now make zcorpan buy you a cookie... and make sure it isn't a flash cookie :P
21:09
<jgraham>
I have to stop reading about pepper, it is just too unpleasant
21:10
<MikeSmith>
jgraham: heh
21:11
<MikeSmith>
among the many lessons we have learned over the last 15 years: plugins in whatever form are ultimately a very bad idea
21:11
<Ms2ger>
Multipage dead?
21:11
<Ms2ger>
http://www.whatwg.org/specs/web-apps/current-work/multipage/the-canvas-element.html#the-canvas-element
21:12
<Philip`>
Not my fault
21:13
<MikeSmith>
Ms2ger: http://dev.w3.org/html5/spec/the-canvas-element.html#the-canvas-element is working afaict
21:13
<Ms2ger>
Bah, w3
21:14
<smaug____>
MikeSmith: indeed, which is why it is surprising that one browser vendor is actively developing a plugin API.
21:16
<MikeSmith>
yeah
21:17
<MikeSmith>
dunno what to say about that
21:26
<annevk>
jamesr: cool
21:28
<annevk>
Ms2ger: it's only one API
21:28
<annevk>
Ms2ger: no big deal
21:29
AryehGregor
is very sad that even with 16G of RAM, Gecko source code doesn't stay in the OS page cache for long
21:29
AryehGregor
shakes fist at Linux kernel
21:42
<jgraham>
AryehGregor: Pretty sure there will be a setting you can tweak to change that behaviour. And if you do, in three years, you might have figured out how to boot your system again!
21:42
AryehGregor
has considered just running cat on it all every once in a while from a cron job, with ionice set to idle
22:14
<pablof>
my brain is having a slow day today, trying again, in [[ When content whose URL has the same origin as the iframe element's Document fails to load (e.g. […]), then the user agent must queue a task to fire a simple event named error at the element instead.]], i'm still not sure i understand which origins are involved.
22:14
<pablof>
is it the iframe.src and iframe.contentDocument.URL, so to speak? or is it the iframe and the parent document?
22:16
<annevk>
no
22:16
<annevk>
it's iframe and it's owner Document
22:17
<annevk>
that could be a little clearer
22:17
<annevk>
though that suggests that if content fails to load in cross-origin scenarios nothing is dispatched at all
22:17
<annevk>
not sure that's what it is intended
22:21
<pablof>
what follies is it trying to prevent?
22:22
<annevk>
presumably detecting intranets
22:22
<annevk>
but you could do the same with XHR so I'm not sure it's preventing anything
22:29
<pablof>
annevk: how so? xhr throws different errors if there's a problem loading vs. security?
22:44
<Hixie>
aaaaaaanneeeeeeeeeeeeeeeeeeee
22:44
<Hixie>
(annevk: ping)
22:46
<pablof>
might need to turn this one on, http://i.imgur.com/LGawg.jpg
22:49
<annevk>
Hixie: que?
22:50
<Hixie>
annevk: your server sent me an incomplete zip
22:51
<Hixie>
annevk: aside from the obvious thing, namely making it so that the zip is always complete, it would be good to either not notify my side if the zip somehow is incomplete, or at least, to give me a way to determine if it is complete
22:51
<Hixie>
annevk: so i can skip it if it's not
22:53
<annevk>
Hixie: oh
22:53
<annevk>
file too big?
22:53
<Hixie>
it's happened before
22:53
<Hixie>
doesn't always happen
22:54
<Hixie>
hmm
22:55
<annevk>
I run zip and then wget
22:55
<annevk>
if you some advice for other commands I can run inbetween
22:55
<Hixie>
i'm guessing the problem is before zip
22:55
<Hixie>
probably anolis being killed by the kernel or something
22:55
<annevk>
before zip there's the spec-splitter
22:55
<annevk>
which I currently run twice
22:55
<Hixie>
or spec splitter yeah
22:56
<Hixie>
maybe you could make the spec splitter output a checkpoint file at the end, and then verify that it's there
22:56
<annevk>
but maybe I can drop the first copy
22:56
<Hixie>
why twice?
22:56
<Hixie>
so it looks like the a11y people think we should somehow expose text drawn into canvas so that it can be selected and cursored-through
22:57
<Hixie>
i have absolutely no idea how we could do that
22:57
<Hixie>
(short of using svg)
22:57
<annevk>
by reimplementing everything!
22:58
<Hixie>
annevk: my guess is that however many copies you have, the one that is used for whatwg.org is sometimes getting killed early by the kernel
22:58
<Hixie>
annevk: i would recommend the checkpoint file idea so you could at least detect that case easily
22:59
<Hixie>
something else that might be going on is that i might be calling you again while you're running
22:59
<Hixie>
maybe detect that somehow and abort if tere's already a running instance?
23:00
<annevk>
I don't know nearly enough shell script to take care of that
23:00
<annevk>
btw
23:00
<annevk>
the fragment-links.js file is generated by the spec-splitter script
23:01
<annevk>
so I should probably start including it again...
23:01
<Hixie>
it's link-fixup.js that you're not including
23:01
<Hixie>
it uses fragment-links.js
23:01
<Hixie>
which i thought you _were_ including
23:02
<Hixie>
(does it output that file last? if it does, i can use that as the checkpoint file and you don't need to do anything)
23:03
<annevk>
I am including it
23:03
<annevk>
it outputs that file last
23:03
<Hixie>
k
23:04
<annevk>
I made spec-splitter generate a single copy now
23:04
<annevk>
not spec-splitter, the shell script
23:04
<annevk>
commented the other out
23:04
<Hixie>
k
23:04
<annevk>
we'll see how it goes
23:04
<Hixie>
i made my side check for that file and not replace the online copy if it's absent
23:09
<pablof>
i thought imagemaps might in fashion again for the canvas thing, no? :P
23:09
<pablof>
*might be
23:11
<annevk>
oh god
23:12
<annevk>
pablof: xhr will just give an error event
23:12
<annevk>
pablof: including for cross-origin requests
23:23
<Hixie>
so basically one of the a11y requests for canvas boils down to "make find in page work for text drawn to canvas"
23:27
<pablof>
annevk: back to the iframe.onerror thing, "it's iframe and it's owner Document", i'm still confused...
23:29
<annevk>
confused about what?
23:29
<annevk>
might be better to ask Hixie about it
23:29
<annevk>
i'm planning to sleep
23:32
<pablof>
about what origins are supposed to be the same
23:32
<Hixie>
pablof: what's the question?
23:33
<pablof>
Hixie: [[ When content whose URL has the same origin as the iframe element's Document fails to load (e.g. […]), then the user agent must queue a task to fire a simple event named error at the element instead.]]
23:34
<Hixie>
yes?
23:34
<annevk>
pablof: it's the origin of the URL of the iframe and the origin of its owner Document afaict
23:35
<Hixie>
i really can't see any sane way that we could make "find in page" work for text drawn to canvas...
23:35
<Hixie>
hmmmmmm
23:36
<Hixie>
one of the design concepts for canvas is the idea that it has no backing DOM, and that if you need a backing DOM you should be using SVG
23:36
<bga>
http://www.paulgraham.com/hundred.html
23:49
<Hixie>
we could have the fillText()/strokeText() methods somehow keep track of which pixels they drew to, and remember the text at those pixels, until such time as the canvas is blown away by a clearRect()...
23:50
<Hixie>
but that seems like it would be shockingly expensive and wouldn't even work if you were drawImage()ing stuff with text
23:50
<Hixie>
e.g. canvas to canvas
23:50
<Hixie>
unless you somehow propagated the information along...
23:53
<Philip`>
http://simonsarris.com/blog/322-canvas-drawtext-considered-harmful - "Instead of calling drawText() to redraw my text objects each frame, I would instead create a new canvas (one never added to the DOM) for every single text object, and call drawText() on each object only once, drawing the text to its personal canvas. Then, every time I wanted to (re)draw that text object, I would call drawImage() on my real canvas, passing in the object’s ...
23:53
<Philip`>
... personal canvas, instead of using drawText()."
23:53
<Philip`>
Sounds like copying text between canvases won't be especially rare, so a solution that doesn't work in that case is not a very good solution
23:54
<Philip`>
(A solution that does work in that case is likely to be far worse for many other reasons, of course)
23:59
<Philip`>
I'd have thought a better way to approach a11y is to consider that the canvas is a presentation of some internal application-specific data structure (i.e. whatever data the JS uses to decide what to render), and so there should be a decent way to expose that application-specific data to external a11y tools without the significant complexity of converting it all into a DOM