00:06
<Hixie>
hgroup isn't going anyewhere
00:06
<Hixie>
erlehmann: yeah, what would you call it?
00:06
<Hixie>
erlehmann: i was stuck for names :-(
00:06
<erlehmann>
hixie what would i call what? what would i call hgroup?
00:07
<Hixie>
what would you call sortNow
00:09
<Hixie>
maybe stopSort() should be stopSorting()
00:09
<Hixie>
(erlehmann ^)
00:12
<erlehmann>
ah
00:13
<erlehmann>
Hixie, what happens when stopSort() is called and the sortable attribute is set? are the controls visible stills
00:13
<erlehmann>
?
00:13
<erlehmann>
also, i have no idea how to call that. i think i do not understand all the issues
00:13
<Hixie>
stopSort() just means that no column is now marked as being sorted
00:14
<Hixie>
doesn't change the UI other than remove the indicator as to which column is currently sorted
00:14
<TabAtkins>
<table>.stopSort().
00:17
<erlehmann>
how is it internally represented which column is sorted?
00:18
<Hixie>
how do you mean?
00:18
<Hixie>
internally to what?
00:20
<erlehmann>
let me rephrase that
00:20
<erlehmann>
does having sort attribute mean something is sorted and the absense of them mean it is not sorted?
00:21
<erlehmann>
or is there an intermediatelayer
00:22
<TabAtkins>
If by "not sorted" you mean "not guaranteed to be sorted", then yes.
00:22
<erlehmann>
i think i'll wait until this is done. and sleep some time
00:22
<TabAtkins>
The presence of "sort" on a <th> means that the column the <th> is in is actively sorted.
00:22
<erlehmann>
so does the absense mean the dom goes to its original state?
00:22
<TabAtkins>
That is, upon setting the table is rearranged to be sorted, and if you mutate the table it adjust the sort accordingly.
00:22
<TabAtkins>
The absence means it stops being actively sorted.
00:23
<TabAtkins>
It goes back to acting like a normal table.
00:23
<erlehmann>
or does the absense mean that it stops sorting but the previous dom manipulation prevails?
00:23
<TabAtkins>
That.
00:23
<erlehmann>
ah
00:26
<TabAtkins>
I think the main purpose of stopSorting() will be to *reset* sorting. Otherwise, if you call sortNow() on a new column, it'll just become the new primary sort column, and the previous one will downgrade to a secondary sort column.
00:27
<Hixie>
setting the attribute doesn't immediately cause a sort, either, so maybe it should
00:27
<TabAtkins>
Yes, I think so.
00:27
<Hixie>
that would mean we don't need sortNow()
00:27
<Hixie>
however
00:27
<Hixie>
it would mean that setting an attribute causes a change to the DOM
00:27
<Hixie>
other than the attribute
00:27
<Hixie>
which is a new level of wacky, maybe?
00:27
<Hixie>
hmmm
00:27
<TabAtkins>
Depends. Sync or async?
00:28
<erlehmann>
all of this is pretty wacky
00:28
<erlehmann>
tables are black magic
00:28
<Hixie>
TabAtkins: dunno
00:28
<TabAtkins>
You still want sortNow(), I think. Even if we did start sorting the table after setting the attribute, it woudl be extra-wacky to also downgrade the sort level of the other sorted headings.
00:28
<Hixie>
oh wait, we still need sortNow
00:29
<Hixie>
you need sortNow() because it also sets the attributes
00:29
<TabAtkins>
Yeah.
00:30
<Hixie>
maybe setting the attribute shouldn't do the sort, so that you can set several in a row
00:30
<Hixie>
which you almost always will want to, if you're doing that
00:30
<Hixie>
so maybe table should have a .forceSort()?
00:31
<Hixie>
i don't like sortNow() as a name, for the method on <th>
00:31
<TabAtkins>
I can't come up with a better name. :/
00:31
<Hixie>
me either :-(
00:31
<Hixie>
sort() would be perfect
00:32
<TabAtkins>
Dude, just make the attribute be sorted.
00:32
<Hixie>
it's just so weird to have a past-tense attribute to do something in the future
00:33
<TabAtkins>
Nah, it's an adjective, not a past-tense verb.
00:33
<Hixie>
fine fine
00:33
<Hixie>
sorted it is
00:36
<erlehmann>
i find it funny how you are lacking words to describe what is a feature many want!
00:43
<JonathanNeal>
<table sorted>?
00:44
<TabAtkins>
Nah, the <table sortable> attribute is like <video controls> - it says you want sorting UI, but has no effect on sorting itself.
00:45
<JonathanNeal>
I see. So this is for javascript? Like Array.prototype.sort?
00:46
<TabAtkins>
No, you can still use <th sorted> on table headers to sort by the columns declaratively, without needing any script.
00:47
<TabAtkins>
JonathanNeal: Check out the very first part of http://www.whatwg.org/specs/web-apps/current-work/temp
00:48
<TabAtkins>
It explains the new stuff being added (except we've slightly changed the names since Hixie last updated that).
00:48
<JonathanNeal>
I guess it was the () that was throwing me off.
00:48
<jsbell>
Have a polyfill implemented yet? :)
00:49
<TabAtkins>
JonathanNeal: There are JS functions for dealing with the sorting, too, of course.
00:49
<JonathanNeal>
a polyfill could be written on the fly, is it necessary?
00:50
<TabAtkins>
The only difficult part of the polyfill would be validating the constraints.
00:50
<JonathanNeal>
what would this feature be called? sortable tables?
00:51
<TabAtkins>
(Only paying attention to sorting-capable <th> elements, treating rows as automatic based on spans, etc.)
00:51
<TabAtkins>
s/automatic/atomic/
00:52
<TabAtkins>
Hixie: Regarding adding sorted attributes via script which don't automatically start sorting, what about adding .sort() to <table> as well, with it just running through and picking up all the sorted columns again
00:52
<TabAtkins>
?
00:52
<JonathanNeal>
I was wondering why you wouldn't just use existing names, like sort, etc.
00:53
<JonathanNeal>
although .sortTable might not conflict with any potential future .sort that would apply agnostically to elements.
00:53
<TabAtkins>
JonathanNeal: Before, Hixie used "sort" as the attribute name, so he coudln't use "sort" as the method name as well (attributes normally reflect as a same-named property).
00:54
<TabAtkins>
JonathanNeal: I'm not sure how I would sort arbitrary elements. They need to be linear collections of some kind, and tables are really the only thing that fits that bill.
00:54
<JonathanNeal>
Did I hear right that sort takes a value? sort="1", etc?
00:55
<JonathanNeal>
TabAtkins: lists fit the bit too.
00:55
<TabAtkins>
JonathanNeal: Maybe, yeah.
00:55
<TabAtkins>
JonathanNeal: Yes, the value is an integer >= 1, which determines the sort order.
00:55
<JonathanNeal>
So, this document I'm reading is using unagreed or outdated terminology in some spots?
00:55
<TabAtkins>
sorted=1 is the primary sort column, with sorted=2 used to break ties, etc.
00:55
<TabAtkins>
Yes. ^_^
00:56
<JonathanNeal>
for the sake of discussion, why not http://oksoclap.com/whatwg-sortable-tables ?
00:56
<TabAtkins>
Because Hixie's document is in his own webspace and easy for him to use?
00:57
<JonathanNeal>
Yea, it's just that I was trying to understand the discussion and you said it was outdated. I thought something more open would help organize thoughts a little better.
00:58
<JonathanNeal>
I see, that's where you changed it to "sorted".
00:58
<TabAtkins>
Yeah, all I've changed is <th sort> ==> <th sorted>, and <th>.sortNow() ==> <th>.sort().
00:58
<JonathanNeal>
Is that you fixing it?
01:00
<TabAtkins>
Yeah.
01:01
<JonathanNeal>
I like this name, "comparator". It's better than "compareFunction", the naming I see used in mdn docs for Array.prototype.sort.
01:01
<TabAtkins>
Interesting that the MDN docs don't use it. It's the standard term.
01:01
<JonathanNeal>
can comparator be set via string <th comparator="return a -b"> ?
01:02
<JonathanNeal>
whoops, i meant to add the function (a, b)
01:02
<TabAtkins>
No, it's a property, not an attribute.
01:02
<JonathanNeal>
Got it.
01:02
<TabAtkins>
You can, however, do <th onsort="this.comparator = function(a,b){return a - b;}">
01:02
<JonathanNeal>
is there a way to see the state of the sorting? like .sorting // boolean ?
01:02
<TabAtkins>
What do you mean by "state of the sorting"?
01:03
<JonathanNeal>
well, what does stopSorting do?
01:03
<TabAtkins>
Removes all the sorted attributes from the <th>s in the table.
01:03
<JonathanNeal>
ah, it disables all sorting by actually removing all of the attributes?
01:03
<TabAtkins>
Yeah.
01:03
<JonathanNeal>
What an evil function.
01:04
<JonathanNeal>
9. define sort() is that supposed to be sorted too?
01:05
<TabAtkins>
No, that's the function. It's named sort() on purpose.
01:05
<TabAtkins>
Hixie: How are you treating cells with a colspan? Do they belong to both columns? The first?
01:06
<JonathanNeal>
why not sortRow() ?
01:08
<TabAtkins>
It doens't sort a row, it sorts a column.
01:08
<TabAtkins>
And why add more than necessary?
01:08
<JonathanNeal>
just seems like cells and rows were labeled in other js
01:08
<JonathanNeal>
cellIndex, rowSpan.
01:12
<JonathanNeal>
rowIndex, cells, rows
02:37
<MikeSmith>
dammit
02:37
<MikeSmith>
is there some rule that a Location directive can't be the first directive in an .htaccess file?
02:38
<MikeSmith>
trying to fix a problem with http://w3c-test.org/html/
02:40
<MikeSmith>
the Location directive is the only one in the file, but the error log says <Location not allowed here
02:42
MikeSmith
finds http://stackoverflow.com/questions/6667894/httaccess-location-not-allowed-here
02:42
<MikeSmith>
Location apparently not allowed in .htaccess at all
03:52
<JonathanNeal>
hola
04:29
<JonathanNeal>
Does the <th>. comparator compare the tds or their content?
04:37
<MikeSmith>
JonathanNeal: what's a comparator?
04:38
<JonathanNeal>
MikeSmith: http://www.whatwg.org/specs/web-apps/current-work/temp http://oksoclap.com/whatwg-sortable-tables
04:41
<MikeSmith>
JonathanNeal: something Hixie posted to the list?
04:41
<JonathanNeal>
I was just following the conversation from earlier today. I don't know where else it has been posted.
04:42
<JonathanNeal>
Something TabAtkins, erlehmann, and Hixie were enjoying.
04:42
<erlehmann>
i am still sleepy and not sleeping
04:47
<JonathanNeal>
Is that why you denied my IIFE reduction (function (global) { /* never an instance of global */ })(this); ?
05:03
<erlehmann>
jonathanneal, i probably did overlook it
05:57
<Hixie>
TabAtkins: both
06:03
<Hixie>
JonathanNeal: good question... probably the elements, i guess
06:09
<zewt>
(collator is less of a mouthful than comparitor, don't know if that implies human-language-sorting for some people)
06:13
<zewt>
(just specifying sort keys handles a lot, though, and without the possible interop issues with a function being called in different orders for different sort implementations, or the weirdness of a function that might return an inconsistent ordering)
06:17
<zewt>
guess it'd just have to specify the entire sort algorithm, as annoying as that probably is
06:24
<erlehmann>
bobble bubble sort
06:24
<erlehmann>
i submit bogosort for examination! http://en.wikipedia.org/wiki/Bogosort
06:25
<erlehmann>
oh, better, sleep sort! http://dis.4chan.org/read/prog/1295544154
06:26
<erlehmann>
> This is sort of like a simple bucket/radix sort but instead of using a space-based array, it's effectivly using a time-based "array"
06:50
<MikeSmith>
Hixie: looking back through the log at your conversation with jgraham about the title element, are you saying the title element must have non-empty text content?
06:52
<MikeSmith>
http://www.whatwg.org/specs/web-apps/current-work/multipage/elements.html#text-content says, "if the Text nodes are empty"
06:53
<MikeSmith>
implies that there is such a thing as an empty Text node
06:54
<MikeSmith>
in which case <title></title> would be conforming
06:55
<MikeSmith>
because nowhere does the spec say that it must a content a non-empty Text node
06:55
<MikeSmith>
*must contain a non-empty Text node
06:56
<MikeSmith>
it just says "Text", which could be empty
07:40
<Hixie>
MikeSmith: yeah but the parser won't give a text node for <title></title>
07:41
<Hixie>
you have to work pretty hard to get an empty text node :-)
07:43
<MikeSmith>
Hixie: ok
07:43
<MikeSmith>
still it's not clear in the current spec
07:45
<Hixie>
agreed
07:45
<MikeSmith>
should I file a bug?
07:47
<Hixie>
if you must :-P
08:22
<jgraham>
To be fair it does seem pretty weird that <title></title> is non-conforming, but <title></title><script>document.head.firstChild.appendChild(document.createTextNode("")</script> is conforming
08:22
<jgraham>
(if you imagine more parenthesis)
08:26
<Ms2ger>
krijn, logs down?
08:45
<MikeSmith>
I would be quite happy if we just dropped the requirement that every document have a title element
08:46
<MikeSmith>
I'm not sure that requirement is really helping anythign
08:46
<JonathanNeal>
Hixie: thanks for the answer, the elements.
08:47
<JonathanNeal>
Is there a situation where the tables sort themselves without javascript interaction?
08:53
<jgraham>
Yes, if it was up to me there wouldn't be a need for <title>, ever and Text content would be 0 or more text nodes
08:59
<JonathanNeal>
<title> isn't necessary in chromeless web apps, iframes, etc.
08:59
<JonathanNeal>
or rather, it isn't leveraged.
09:03
<MikeSmith>
Ms2ger: I think the w3c-test problem you pinged me about yesterday is fixed
09:11
<annevk>
JonathanNeal: yes, the user can sort the table by using the UI exposed by the user agent
09:24
<Ms2ger>
MikeSmith, looks like it is
09:25
<Ms2ger>
MikeSmith, it isn't replicating from github yet?
09:26
<MikeSmith>
Ms2ger: no not yet as far as I know
09:26
<MikeSmith>
I'll need to talk to darobin about that part
09:27
<MikeSmith>
hardre to automate the replication in this direction
09:27
<darobin>
hullo
09:27
<jgraham>
Really?
09:27
<MikeSmith>
need to set up some kind of hook without running it on github
09:27
<jgraham>
Add a commit hook to the github repo
09:27
<darobin>
jgraham: harder as in: if we do it with dvcs, there's already a script you can just link in on that machine :)
09:27
<jgraham>
That tells the W3C server to do a pull
09:27
<jgraham>
I guess it is harder
09:28
<darobin>
yes, he said harder, not hard
09:28
<jgraham>
In that it requires two machines to interact
09:28
<darobin>
setting up autopull is harder than ln -s, yes
09:34
<Stevef>
Hixie: while <hgroup> may not be going anywhere WHATWG wise it heading for the exit in HTML5
09:36
<Ms2ger>
So, it's not going anywhere
09:38
<Stevef>
Ms2ger: depends on your coice of HTML brand
09:38
<MikeSmith>
I don't know what the normal best way to run an autopull as a hook is
09:38
<Stevef>
Hixie: see http://lists.w3.org/Archives/Public/public-html-admin/2012Dec/0073.html
09:38
<Stevef>
coice=choice
09:47
<annevk>
What's a sorted table going to look like DOM-wise? Will there be plenty of DOM mutations?
09:47
<annevk>
Can the sorting be animated somehow?
09:49
<annevk>
Stevef: if you keep it in parsing and the style sheet that seems hardly like removal
09:49
<Stevef>
annevk: sure, obsolete is a better term
09:51
<darobin>
you can't move hgroup out, I use it on my blog
09:51
<darobin>
you'd think that would be the final argument in this matter
09:54
<Stevef>
darobin: didn't realise you used it, changes my view of its utiility completely
09:55
<darobin>
thank you
09:55
<annevk>
As long as <time>, <nav>, and <footer> stay in I should be fine
09:55
<MikeSmith>
hcruft
09:56
<darobin>
I guess I could switch to subline for the usage I'm making of it
09:57
<darobin>
but that would require updating my blog
09:57
<darobin>
that's not what blogs are for
09:57
<Stevef>
darobin: teaseer
09:58
<annevk>
My blog still runs on some PHP I wrote five years ago or so...
09:58
<Stevef>
darobin: have shelved subline like hgroup doesn't meet the high bar...
10:00
<darobin>
annevk: hahaha, I can beat that — my blog is authored using a subset of polyglot that's processed to a static site using a mixture of Perl and XSLT some elements of which probably haven't changed in a good decade
10:01
<darobin>
I'm not even sure I'd know how to update it if I had to
10:01
<annevk>
Uhuh, that's why I'm not changing much either. Although I have removed stuff over time, such as comments.
10:02
<darobin>
Stevef: I know, but grouped headings (using whatever) make lots of sense to me
10:03
<darobin>
then again, I also like the outlining algorithm so I guess my opinion does not matter
10:03
<MikeSmith>
I can think of lots of inelegant/klunky ways of automating sync from github to dvcs.w3.org .. I guess you alls plan is to go with the least inelegant
10:05
<Stevef>
darobin: the problem i have and have always had with hgroup is that its required acc mappings in html make any amount of headings and whatever else is in hgroup which can be link lists or any other stuff (as seen in wild), into one big heading
10:05
<MikeSmith>
I like that algorithm so well I spent hours rewriting somebody else's broken implementation of it to make it actually conform to the spec
10:05
<Stevef>
darobin: so rather than add semantics for AT users it maskes them
10:07
<darobin>
Stevef: but I don't think that's necessarily inherent to hgroup — we could think of better ways of AT exposing it
10:08
<Stevef>
darobin: that is if the acc mappings were implemented which they are not, instead it encourages authros to add heading markup where they often times did not, making heading navigation less useful for AT usersand adding cognitive noise
10:11
<Stevef>
darobin: sure that was my original course, but it got nixed, <hgroup><hx>heading</hx><p>subheading<p></hgroup> would be much friendlier without the semantic cruft and nosie issues (if hgroup> p = subheading semantic and not <hx> heading subheading</hx> as currently specced
10:11
<Stevef>
nosie=noise
10:12
<darobin>
mmmmm
10:13
<darobin>
Stevef: so essentially the difference between <hgroup><h2>sub</h2><h1>main</h1></hgroup> and <hgroup><p>sub</p><h1>main</h1></hgroup> is to help the transition based on existing AT implementation?
10:17
<Stevef>
darobin: no not really, the current acc requirements in spec are borked, both of the above result in 1 heading, the current hgroup definition is ( i think is suboptimal in general) it promotes a markup pattern that adds unecessary headings
10:24
<Stevef>
darobin: if identifying a subheading meets the bar then we should define a way to do that,not define a way to obscure subheading semantics
10:27
<darobin>
Stevef: sure, but there are two different issues here that I'm trying to disentangle
10:27
<Stevef>
ok
10:27
<darobin>
1) is that the current acc reqs are unhelpful — that's something that can be changed without touching hgroup
10:27
<darobin>
because you can keep all that's there, and simply change how it is recommended to be exposed
10:28
<darobin>
2) is what you said about using <p> for subheading in hgroup rather than reusing existing hx
10:33
<Stevef>
darobin: hgroup did not pave a cowpath authors sometimes used a heading to indicate a subheading, sometimes used a p or a div or some other element, use of a container to semantically associate heading and subheading was not a clear pattern if you look at data collected after the fact to support hgroup it shows this http://wiki.whatwg.org/wiki/Hgroup_element
10:39
<darobin>
well it's hard to pave a cowpath when the cows go all over the palce
10:39
<darobin>
*place
10:40
<Stevef>
darobin: The real world examples show that authors do not as a general rule put a container element only around headings and subheadings, subtitles, taglines and bylines. they use a variety of markup structures, in most cases the grouping structure reflects the existing HTML5 header element. -> http://www.w3.org/html/wg/wiki/ChangeProposals/hgroup#Rationale ignore the subline bits
10:40
<Stevef>
darobin: right and they go all over the place for reasons
10:41
<darobin>
sure, the usage of interest maps to header more than anything else
10:45
<Stevef>
i think subheading semantic only deserves a 'common idiom with no specific markup feature' makeover until the feature actually solves a problem other than masking subheadings for an outline algorithm that is of itself marginal
10:45
<Stevef>
but thats just me
10:49
<darobin>
I don't think the outline algorithm is marginal, it's useful (and could be used more often)
10:49
<darobin>
I'm guessing you could replace hgroup with header for that purpose though
10:50
<Stevef>
darobin: question is are user agents planning to implement the outline algorithm?
10:50
<darobin>
it doesn't seem like the hottest topic in UA land right now
10:51
<darobin>
it would be more useful if it had CSS selectors to match
10:51
<darobin>
right now processing structured HTML that doesn't use section is a real pita
10:52
<Stevef>
darobin: one user agent has = JAWS, but its implementation is borked and they ignore hgroup
10:52
<darobin>
well, I'm not sure that counts then :)
10:54
<MikeSmith>
if the language provided some way for authors to automatically include an ouline in a document (e.g., as a ToC), then that would be something that UAs could implement it for
10:54
<MikeSmith>
right now there is no hook for authors to do anything with it
10:54
<Stevef>
darobin: don't get me started on section... its the noisy div
10:58
<Stevef>
darobin: in general i think that now we have some usage data on the new structural elements its time to start analysing and revising the author advice and requirements in HTML of those elements based on real world usage, so that we can hopefully optimize the positives of use
10:59
<darobin>
yes, it would be a good idea to look back on actual usage
10:59
<Stevef>
or at least attempt to influence those in the html5 book industry who tell authors how to use the stuff
10:59
darobin
<3 section
10:59
<darobin>
you're just using that as an excuse to go have a beer with Bruce
11:00
<darobin>
MikeSmith: I agree that exposing outline information would be useful
11:00
<darobin>
it's an open question whether it would be useful enough overall, but I for one would use it
11:01
<MikeSmith>
darobin: it doesn't seem like many authors are clamoring for it
11:01
<darobin>
no
11:01
<MikeSmith>
or maybe they have been and I just ignored it
11:01
<Stevef>
darobin: :-) well thats on my HTML WG activity plan for 2013 getting discussion on and changes made
11:01
<MikeSmith>
seems pretty useful to me personally too
11:01
<darobin>
Stevef++ # good plan
11:02
<darobin>
MikeSmith: yeah, same here, but then I look for instance at the features in in-browser HTML editors and they don't support anything for structured content
11:02
<Stevef>
darobin: i wanna be part of the W3C do-ocracy like you guys
11:02
<darobin>
people seem generally happy in the unstructured Word-like morass
11:02
<darobin>
haha
11:03
<jgraham>
Stevef++ # - is that some new programming langauge for .net?
11:04
<Stevef>
jgraham: if you had access to the secret lists you would understand
11:05
<Stevef>
jgrahaM: its the sign for a handshake of sorts only its not only shaking hands
11:06
<jgraham>
Shaking what you say?
11:06
jgraham
tries to shake off unpleasant images
11:17
<othermaciej>
Stevef: when you have a paired heading and subheading (however it is marked up), is it most useful for assistive technology, when reading the heading for a section, to: (a) present only the heading; (b) present the heading and subheading with no major distinction; (c ) present both and associate them together, but distinguish heading from subheading?
11:19
<othermaciej>
Stevef: for (a), non-heading markup for the subhead would be most legacy compatible, while for (b) or (c ) it would be best to make the subhead a child of the main heading I think
11:22
<othermaciej>
but it seems like both <hgroup> and the alternate proposals have neither of these properties, and would cause older assistive technologies to present multiple separate headings as if there were an immediate subsection or something
11:23
<Ms2ger>
Always fun when you start reading a www-style email and suddenly "Kind regards, Adam Sobieski"
11:35
<Stevef>
othermaciej: my thinking is that if something is a subheading, tagline etc to provide an indicator of that in the acc mapping and let the AT and ultimately user decide how it is presented and consumed, the major consideration is to providing the distinction
11:39
<Ms2ger>
annevk, is the xref repo up to date?
11:42
<Stevef>
othermaciej: that is what is not provided for as specced currently. I also think if <hx>heading <element>subheading</element><hx> was the pattern we wouldn't be seeing <hgroup><hx>heading</hx></hgroup> which is not uncommon from the data i have looked at and also reduce this <hgroup> <hx>heading</hx> other structured content and linsk and controls ... ... </hgroup> which is less common but...
11:42
<Stevef>
...still enough to be a problem
11:45
<annevk>
Ms2ger: maybe not
11:45
<annevk>
Ms2ger: will sync now
11:47
<annevk>
Ms2ger: done btw
11:54
<Stevef>
othermaciej: it should also be noted that as specced there is no distinction in the way <hgroup> is presented for AT users as in the page view or outline view are the same, which is not the case for non AT users
11:59
<annevk>
Ms2ger: whoa, that email is out there
12:00
<annevk>
Ms2ger: any other gems on www-style this month?
12:04
<Ms2ger>
I think he's sent a few more lately
12:05
<Ms2ger>
And thanks :)
12:06
<annevk>
Ms2ger: you're gonna write some spec text again? :)
12:07
<Ms2ger>
Yeah, one word :)
12:07
<SimonSapin>
annevk: what is it about www-style?
12:08
<annevk>
SimonSapin: are you pinged whenever we mention CSS or www-style? :)
12:08
<annevk>
SimonSapin: but there's nothing, Ms2ger just pointed out an email
12:08
<Ms2ger>
Is SimonSapin secretly glazou?
12:08
<Velmont>
Just like I was for encoding for a long while... :S
12:10
<SimonSapin>
annevk: no, but I often look around here
12:10
<SimonSapin>
Ms2ger: glazou can confirm that I’m not him ;)
12:13
<annevk>
I think I've seen them in the same room... Although on IRC you never know of course
12:23
<darobin>
I've seen them in the same room, but then again they're both French and into CSS, so maybe they're brothers, or cousins, or something
12:27
<annevk>
Ms2ger: https://bugzilla.mozilla.org/show_bug.cgi?id=672190 was never actually fixed right?
12:27
<annevk>
Ms2ger: at least, http://mxr.mozilla.org/mozilla-central/search?string=expandEntityReferences seems to suggest it's still very much alive
12:29
<Ms2ger>
Partly
12:30
<Ms2ger>
The creator argument was removed
12:31
<annevk>
yeah but this was very much about the attribute
12:31
<annevk>
reopening
13:56
<Stevef>
nice to see bug to implement <main> in Firefox has been assigned https://bugzilla.mozilla.org/show_bug.cgi?id=820508
14:32
<SimonSapin>
darobin: as you well know, all french people are cousins
14:36
<darobin>
wesh wesh, ça va cousin?
14:38
<jgraham>
So "Liberty, fraternity, equality" was actually just code for inbreeding?
14:41
<annevk>
MikeSmith: any chance https://www.w3.org/Bugs/Public/buglist.cgi?product=WebAppsWG&component=URL can be removed now it's empty?
14:41
<annevk>
(sorry for the bugspam everyone)
14:42
<Ms2ger>
please make a proposal on public-webapps
14:55
<SimonSapin>
annevk: updated http://simonsapin.github.com/data-urls/ for percent-decode
14:55
<MikeSmith>
annevk: I'll ask Art again but pretty sure the answer is going to be know. if i unilaterally remove it, i reckon they're just going to ask me to out it back. and/or rope in plh into the discussion. WebApps WG i
14:55
<MikeSmith>

14:55
<MikeSmith>

14:57
<annevk>
something got lost there
14:57
<annevk>
but thanks
14:57
<annevk>
SimonSapin: can you close the bug too?
14:57
<SimonSapin>
closed
14:57
<annevk>
lol VLC has a Christmas hat
14:58
<annevk>
someone pointed out to me duckduckgo.com also has a nice logo today
15:23
<a-ja>
hmmm...<main> but no <banner>? yet?
15:30
<stevefaulkner>
a-ja:there is history behind that (in regards to Firefox implementation) I believe it will be revisited in light of <header> usage data and the implementation in webkit
15:35
<a-ja>
anyone mention to bing/yahoo lately that their webmaster seo optimization report still complains about multiple <h1>'s ?
15:36
a-ja
sighs
15:37
<stevefaulkner>
a-ja: history https://bugzilla.mozilla.org/show_bug.cgi?id=610650
15:40
darobin
sighs
15:40
<darobin>
you'd think browsers would have become better at detecting that your JS is just spinning by now
15:41
<darobin>
"oh my! this thing has been blocking the event loop for ten minutes now, it must be doing something really important — let's not disturb it then"
15:42
<a-ja>
stevefaulkner: i'm aware (i'm the 1 vote in that bug...though mainly for my tracking, rather than any indication pro/con)
15:42
<jgraham>
darobin: Which browser?
15:42
<darobin>
in this case Firefox, but I'm seeing similar behaviour elsewhere
15:43
<darobin>
(haven't tried Opera in this case though tbh)
15:43
<jgraham>
Well firefox usually puts up a "stop this script" dialog
15:43
<darobin>
only under certain circumstances, I get the impression only the really simple ones
15:44
<stevefaulkner>
a-ja: cool, I was talking with dave bolter about it the other day and want to re-open with a view to getting header > banner
15:44
<Ms2ger>
It should always put that up if we don't return to the event loop
15:45
<jgraham>
Opera has an interruptable script engine so it doesn't have a slow script dialog, but it should be possible to keep interacting with the browser when the script is running
15:46
<jgraham>
Chromium helpfully allows you to kill the render process after a while
15:49
<darobin>
Ms2ger: I've clearly noticed an endless loop of functions that just keep calling one another here, and FF never gives me the slow script dialog
15:49
<darobin>
it's forcing me to use the debugger *shudders*
15:52
<darobin>
it's really weird because I'd expect to blow the stack pretty quickly
15:53
<jgraham>
darobin: Well if you are doing something like (function f() {setTimeout(f,0)})() that might not be detected
15:53
<darobin>
no, there's no timeout
15:54
<darobin>
it's a bunch of closures calling one another
15:54
<Ms2ger>
Which version?
15:54
<darobin>
17.0.1
15:54
<Ms2ger>
Hrm
15:54
<Ms2ger>
Want to file?
15:54
<jgraham>
Nothing else that would spin the event loop, I assume?
15:54
<darobin>
I probably will, but I need to dig a little deeper
15:55
<darobin>
jgraham: nope, it's very straightforward DOM plus algo steps
15:55
<darobin>
it might be something else: when I try to reload while in the debugger it spins anyway
15:58
<darobin>
ok, just tweaking some comments makes Chrome behave differently — I think I'm on to something :)
16:07
<JonathanNeal>
goodmorning
16:44
<zewt>
death to @id
17:04
<volkmar>
"The algorithm to convert a string to a number, given a string input, is as follows: If parsing a date from input results in an error, then return an error"... what does does "return an error" means here
17:04
<volkmar>
(4.10.7.1.8)
17:09
<annevk>
it means to return "an error" to the calling site
17:09
<annevk>
"an error" being an abstract concept the calling site does something with
17:10
<volkmar>
annevk: I have no idea what should really be returned
17:10
<volkmar>
spaghetti specs :(
17:10
<annevk>
volkmar: what are you trying to implement?
17:11
<volkmar>
hmm, I think I found i
17:11
<volkmar>
it
17:12
<volkmar>
valueAsNumber and valueAsDate for type='date'
17:13
<dglazkov>
good morning, Whatwg!
17:14
<annevk>
volkmar: seems like they say that if error is returned you have to return NaN and null respectively
17:14
<volkmar>
annevk: saw that
17:15
<volkmar>
for type='number', I did that
17:15
<volkmar>
but that spec is so hard too read
17:16
<annevk>
I'm not a big fan of how Hixie defined HTML forms either, but I know how it works...
17:17
<volkmar>
I'm Jon Snow, I know nothing :(
17:18
Ms2ger
sends volkmar to the wall
17:18
<zewt>
http://i.imgur.com/41lcs.png i'm sure glad i spent years of my youth learning not to make typos, just so google could add them back in
17:20
<annevk>
zewt: maybe you need to tell Google a bit more about yourself and then they'll realize you're not the same as the people making that typo
17:23
<zewt>
will my social and bank records be sufficient
17:35
<jwalden>
is there anything special about the scope chain for <body onload="..." that it wouldn't have document on it? http://www.whatwg.org/specs/web-apps/current-work/multipage/webappapis.html#event-handler-content-attributes seems to say it should have document there, but in my tests I'm not seeing it there
17:37
<jwalden>
e.g. http://software.hixie.ch/utilities/js/live-dom-viewer/saved/2038 would, if document is there, print [object HTMLCollection] or something stupid
17:38
<Ms2ger>
Yeah
17:39
<Ms2ger>
body onload="" sets a handler on window
17:39
<jwalden>
dangit
17:39
<jwalden>
I guess I can add a fake form and get what I want here, or something
17:49
<Ms2ger>
MikeSmith, did I dream this, or is http://www.w3c-test.org/html/ broken again?
17:53
<zewt>
heh, i should figure out how to get rid of the annoying bookmark star thing in firefox
17:53
<zewt>
i never use it to bookmark things, but i accidentally bookmark things all the time, and it's an asymmetric button--i can't just click it again to undo
17:54
<jwalden>
Esc
17:54
jwalden
learns that form.submit() doesn't trigger onsubmit="", dies a little
17:55
<tantek>
oh yeah, that's a good one.
17:55
zewt
remembers that evernote will let you write out a whole note, then when you try to save tell you "you need to update! click here to reload!" and lose the whole thing, dies again
17:56
<zewt>
(mental note: find a less horrible notepad thing)
17:58
tantek
gave up on evernote immediately upon launching it when it wanted him to create an account. Um no, I just wanted to take a few notes quickly, don't bother me with that crap.
17:59
<zewt>
er, taking notes without some way to ... log back in to retrieve them later doesn't sound useful, heh
18:00
<tantek>
I'll decide later if I want to use it on a 2nd device.
18:00
<zewt>
device? webpage
18:00
<tantek>
webpage? localstorage.
18:00
<zewt>
haha no
18:00
<tantek>
haha yes. offline FTW.
18:00
<jgraham>
Well IndexedDB these days
18:01
<tantek>
jgraham - yes, that :)
18:01
<zewt>
never ever put anything in localstorage that can't be regenerated by other means
18:01
<zewt>
unless you're okay with a notepad app that will randomly lose all of your notes
18:01
<tantek>
jgraham is right, I misspoke and meant indexeddb.
18:01
<jgraham>
But I agree that asking for an account before you get to try the product is obnoxious, especially when things want an email address
18:02
<zewt>
no form of local storage will be immune to browsers flushing it down the toilet arbitrarily
18:02
<jwalden>
any Opera people around who could explain why http://software.hixie.ch/utilities/js/live-dom-viewer/saved/2039 logs false rather than true? it's like evaluating document.all at different times produces non-equal objects, but that doesn't make any sense
18:02
<jgraham>
No, but you can easilly have a "save to the cloud" checkbox that requires you to create an account
18:02
<tantek>
jgraham++
18:02
<jwalden>
webkit logs true, Gecko logs true (possibly because of my local patches)
18:03
<zewt>
no, you shouldn't even give the option to *only* store important user data in local storage
18:03
<zewt>
users don't understand the idea of "if you use this, your data might randomly disappear"
18:03
<jgraham>
Well
18:03
<jgraham>
I wouldn't mind if it was called "trail mode"
18:03
<jgraham>
*trial
18:04
<jgraham>
And I would have to create an account to get non-trial mode
18:06
jwalden
tweaks that slightly to http://software.hixie.ch/utilities/js/live-dom-viewer/saved/2040
18:07
<jgraham>
jwalden: all doesn't resolve to document.all in the event handler
18:08
<jgraham>
Or, it didn't on the first TC
18:08
<jwalden>
jgraham: why not? document's on the scope chain before you reach the global
18:08
<jgraham>
I haven't looked at the new one much but it seems to there?
18:08
<jwalden>
first/second are not different in the interesting bits, I think
18:09
<jwalden>
IE seems to produce different document.all values as well, oddly
18:10
jwalden
tweaks even further to http://software.hixie.ch/utilities/js/live-dom-viewer/saved/2041 to log the different all-values observed
18:10
<jgraham>
Uh
18:10
<jgraham>
I can't reproduce my earlier result
18:12
<jwalden>
or is all maybe a property of every element in IE/Opera, hmm
18:12
jwalden
can't remember if all is on everything in some browsers
18:13
<jwalden>
oh, that's it
18:13
<jgraham>
Yes
18:13
<jgraham>
Good deduction :)
18:14
<volkmar>
Hixie: ping
18:15
<jwalden>
well, at least I understand the behavior difference in the testcase I actually care about now
18:21
<TabAtkins>
Woo, second Formal Friday is off to a good start.
18:32
jwalden
will not be caught dead in a suit
18:32
<jwalden>
anyone who tries it will get written out of my will
18:33
<TabAtkins>
But it's so much fun!
18:33
<TabAtkins>
One looks so fancy in a suit. ^_^
18:38
<jgraham>
That one is wilhelm. The rest of the population shouldn't bother
18:40
<jgraham>
Last time I went to a wedding I was made to wear a suit under protest. It turned out to be entirely unnecessary. I was not impressed
18:40
<TabAtkins>
jgraham: Man, you'd look distinguished as hell in a suit. You've got great hair for it.
18:41
<TabAtkins>
Pony-tail it with a dark-gray suit, perhaps.
20:02
<Hixie>
volkmar: sup
20:37
<Hixie>
i want a callback that returns -1, 0, or 1 (a comparator) -- what should I define its return type as?
20:37
<Hixie>
there's no way to define a type like "-1..1" in WebIDL right?
20:38
<Hixie>
"byte"?
20:38
<TabAtkins>
Hixie: No you don't. You want one that returns a number, and then you use the fact that it's 0, positive, or negative.
20:38
<Hixie>
so double?
20:38
<TabAtkins>
Yeah.
20:38
<Hixie>
fair enough
20:39
<TabAtkins>
That way simple comparators like function(a,b) { return b - a; } work.
20:39
<Hixie>
right
20:39
<Hixie>
except a and b are HTMLTableCellElements in this case, but sure
20:40
<TabAtkins>
function(a,b) { return +b.textContent - +a.textContent; }
20:42
<TabAtkins>
Actually, you can remove the +'s. The strings will automatically get cast to numbers to satisfy the type requirements of -.
20:51
<volkmar>
Hixie: still around?
20:51
<Hixie>
yup
20:51
<volkmar>
Hixie: so, I have a question regarding @step
20:51
<Hixie>
pray ask your question sir
20:52
<tantek>
got to remember that one
20:53
<volkmar>
we do agree that step can be a flat for things like <ninput type='number'>?
20:53
<volkmar>
(sorry, my server has some connections issues)
20:53
<Hixie>
flat?
20:53
<volkmar>
like <input type='number' step='0.1'> would allow values with one decimal, right?
20:53
<Hixie>
oh float?
20:53
<volkmar>
float
20:53
<Hixie>
sounds right, let me check the spec though
20:54
<Hixie>
The step attribute, if specified, must either have a value that is a valid floating-point number that parses to a number that is greater than zero, or must have a value that is an ASCII case-insensitive match for the string "any".
20:54
<Hixie>
so yes.
20:54
<Hixie>
in fact it can always be a float
20:54
<Hixie>
assuming it applies at all
20:54
<volkmar>
Hixie: so what should happen if it's things like <input type='date'>
20:54
<volkmar>
if I follow strictly the specs, step=1.5 means it will allow 2 dates out of 3
20:55
<Hixie>
http://www.whatwg.org/specs/web-apps/current-work/#the-step-attribute defines this in detail, but the basic idea is each type= value defines the units for step=""
20:55
<volkmar>
(my question was just an introduction for date...)
20:55
<Hixie>
so e.g. type=month says the scale factor is 1 (1 month)
20:55
<Hixie>
Spec says "The step attribute is expressed in days. The step scale factor is 86,400,000 (which converts the days to milliseconds, as used in the other algorithms). The default step is 1 day." for type=date.
20:57
<Hixie>
are you going to ask what step=1.5 means for type=date?
20:57
<Hixie>
if so, iirc it basically means the same as step=3
20:57
<volkmar>
Hixie: ok, then we agree
20:58
<volkmar>
Hixie: that's what current patches in Gecko do
20:58
<Hixie>
sweet
20:58
<volkmar>
but Webkit and Presto don't do that
20:58
<volkmar>
and don't implement the same thing
20:58
<Hixie>
booo
20:58
<Hixie>
what do they do?
20:58
<volkmar>
Hixie: IIRC, Webkit rounds the step to the nearest integer and Presto floor it
20:59
<Hixie>
well that's just lame and clearly they're ignore the spec and should be appropriately remarked upon
20:59
<Hixie>
ignoring, even
20:59
<Hixie>
file bugs, i guess (on them)
20:59
<volkmar>
yeah, I guess I will
20:59
<Hixie>
thanks
20:59
<volkmar>
just wanted to make sure I understood it right
21:00
<Hixie>
well nothing in the spec says to round anything for step
21:00
<Hixie>
so regardless of whether you and i are reading the spec right, they're definitely wrong if they round
21:00
<volkmar>
sure
21:00
<Hixie>
the only real thing in the spec that makes step="" do anything is "When the element has an allowed value step, and the result of applying the algorithm to convert a string to a number to the string given by the element's value is a number, and that number subtracted from the step base is not an integral multiple of the allowed value step, the element is suffering from a step mismatch."
21:01
<Hixie>
which seems pretty unambiguous, if not necessarily the clearest prose ever
21:47
<yroc>
Anyone know anything about the definition/rationale behind "palpable" content? I couldn't find anything in the mailing list.
22:01
<Hixie>
yroc!
22:01
<Hixie>
sorry dude, kept missing you
22:01
<yroc>
Oh, there you are!
22:03
<yroc>
So I was interested in content types, especially palpable and flow.
22:04
<yroc>
There's no definition for either in the spec...
22:04
<yroc>
Or I should say no conceptual (intensional) defintion -- just a listing of elements.
22:05
<Hixie>
true
22:06
<Hixie>
palpable is intended to address the problem that we don't want things like <ul> <li>TEST <li> </ul> to not be caught
22:06
<Hixie>
but at the same time we don't want to make <ul></ul> or <ul><li><li></ul> to be completely invalid
22:06
<yroc>
Sorry, not to be "caught"?
22:07
<Hixie>
by a validator, sorry
22:07
<yroc>
OK
22:07
<Hixie>
the former because it's obviously a mistake (<li> instead of </li>), the second because it might be intentioally for a script to fill in
22:07
<Hixie>
intentionally
22:08
<yroc>
You mean a script to intentionally fill in the closing li tag?
22:09
<TabAtkins>
Scripts can't fill in a closing tag (tags don't exist in the dom). He means fill in the contents.
22:10
<yroc>
Oh, because the closing tag for li is optional?
22:10
<yroc>
IOW, "<li>content" is valid?
22:16
<yroc>
OK, what about flow content? What would be the rationale for this type?
22:17
<Hixie>
yroc: i meant like a template where the page just has some empty list items but the author is later expected, or a script is later expected, to add content to the list items
22:18
<Hixie>
the "flow" content model is just the content model we use to represent most normal content
22:18
<Hixie>
like paragraphs or text
22:18
<Hixie>
it's just the name we give for what <body> can contain, basically
22:26
<yroc>
Why is <ins> palpable, but <del> isn't?
22:29
<yroc>
Or is it because you can't later add something to <del>, by definition?
22:51
<Hixie>
yroc: other way around
22:51
<Hixie>
yroc: it means that <del> doesn't count as palpable content
22:51
<Hixie>
yroc: so e.g. <p><del>x</del></p> is "empty" like if it was <p></p> for the purposes of the discussion above
22:55
<JonathanNeal>
Someone showed me a way to do <source src="i/pr6.webm" type='video/webm; codecs="vp8,vorbis"'> without singles quotes, but I've forgotten how. Does anyone here know?
22:55
<yroc>
So you're saying that <del> isn't palpable because even if it's filled in, it still counts as empty?
22:57
<yroc>
Whereas <ins> is palpable, because it's not empty when later filled in. And this is simply due to the semantics of ins and del?
23:00
<Hixie>
yroc: well i'm saying if your paragraph only contains a <del>, it's not palpable (as in, it's effectively empty)
23:00
<Hixie>
yroc: <ins> is just like <span>, it's <del> that's the exception
23:00
<Hixie>
yroc: because it represents removed content
23:01
<Hixie>
JonathanNeal: " can be written as &quot;, maybe that's it?
23:01
<JonathanNeal>
You can just drop the quotes altogether, actually.
23:01
<Hixie>
ah ok
23:02
<JonathanNeal>
It works and mdn shows it off @ https://developer.mozilla.org/en-US/docs/HTML/Using_HTML5_audio_and_video
23:02
<JonathanNeal>
However, I'm thinking it has some validation issues.
23:03
<yroc>
Hixie: right, got you.
23:04
<JonathanNeal>
Yay for all attributes having double quotes again.
23:04
<zewt>
(better, no quotes)
23:04
<JonathanNeal>
zewt: maybe after a minified, but not as source.
23:04
<JonathanNeal>
*minifier
23:05
<zewt>
minifiers need to not exist, and yeah, it's a good thing in source
23:05
<zewt>
so much cleaner to read html without unnecessary quotes everywhere
23:05
<JonathanNeal>
I think you're in the minority with that preference. I have looked at a lot of code in practice without quotes and it was awful.
23:06
<zewt>
i'd call that habit more than anything else
23:06
<zewt>
<img src=dude.jpg width=100 height=100>, very clean
23:07
<JonathanNeal>
Quotes are more consistent, and as a matter of preference, I prefer to see the uniformed delimiters.
23:07
<JonathanNeal>
<img src="dude.jpg" width="100" height="100">, still very clean
23:07
<zewt>
less clean :)
23:07
<JonathanNeal>
MOAR CLEEN!
23:07
<zewt>
mister clean
23:08
<JonathanNeal>
tobias?
23:08
<JonathanNeal>
vin disel?
23:09
<Hixie>
ok seriously
23:09
<Hixie>
i don't get it
23:09
<Hixie>
what sequence of events leads to people filing bugs like these? https://www.w3.org/Bugs/Public/show_bug.cgi?id=20469
23:10
<zewt>
"trolling"
23:10
<Hixie>
doubt it
23:10
<JonathanNeal>
That's nice of you to respond, Hixie.
23:11
<Hixie>
they even created an account with the spec's system first
23:11
<Hixie>
and have a bugzilla account
23:11
<Hixie>
since it cc'ed them
23:12
<JonathanNeal>
You're getting a Facebook post for this.
23:12
<JonathanNeal>
So everybody knows what a nice guy you are.
23:15
<Hixie>
ok seriously, wtf. as far as i can tell, they went to the spec directly, not e.g. through a google search or whatnot
23:15
<Hixie>
and they had the spec open for hours before submitting this feedback
23:17
<Hixie>
hm, according to the logs there's another bug they filed
23:17
<Hixie>
a day earlier
23:18
<Hixie>
sure enough, https://www.w3.org/Bugs/Public/show_bug.cgi?id=20467
23:20
<JonathanNeal>
That was good of you to mark it as a duplicate.
23:20
<Hixie>
it's not the first time we've had questions like this
23:20
<Hixie>
i don't understand what sequence of thoughts leads to this
23:20
<JonathanNeal>
I think it's a serious problem. We should probably call Apple.
23:21
<Hixie>
i don't mean lost iphones, i mean questions that really should be directed towards the authorities or hospitals or whatnot
23:21
<JonathanNeal>
BREAKING NEWS: SPEC BUG RESULTS IN LOST IPHONE
23:21
<zewt>
my hair is on fire, what should i do
23:22
<JonathanNeal>
MOAR CLEEN!
23:22
<Hixie>
if we understood how/why this kept happening, we could do something to help them better, is all
23:22
<Hixie>
and that might reduce our bogus bug rate
23:28
<JonathanNeal>
I know what will fix it.
23:28
<JonathanNeal>
<main>
23:44
<Hixie>
http://gavinsharp.com/irc/whatwg.html is funny. most used words: 1. would, 3. should, 6. could.
23:44
<gavin>
heh
23:46
<Hixie>
in other news, i can't write html for shit
23:47
<Hixie>
"</code>th<code>"
23:48
<JonathanNeal>
That's not a good way to do RTL, Hixie.
23:49
<JonathanNeal>
Hixie: would you want .style = "display:block" instead of .style.cssText = "display:block" ?
23:50
<Hixie>
yes
23:50
<Hixie>
(PutForwards would solve this nice and easily)
23:50
<Hixie>
(but apparently only I like that)
23:50
<Hixie>
come to think of it
23:51
<Hixie>
that would be in the HTML spec, huh
23:51
<Hixie>
i could just put that in there and see if anyone bites
23:52
<Hixie>
https://www.w3.org/Bugs/Public/show_bug.cgi?id=20484 if people want to stop me
23:54
<JonathanNeal>
"I can polyfill that"
23:58
<Hixie>
i assume <table onsort> shouldn't bubble, right? (canceling it aborts the sort)
23:59
<JonathanNeal>
Right. You wouldn't want it bubbling up to the table that was wrapping it.
23:59
<JonathanNeal>
Or any other element.