00:05 | <Hixie> | wow, onbeforeunload and multipart/x-mixed-replace don't mix well |
00:07 | <Hixie> | onunload fires in firefox |
00:07 | <Hixie> | safari fails to parse it right as far as i can tell |
00:08 | <Hixie> | and opera doesn't fire it |
00:08 | <Hixie> | well then |
00:09 | <Hixie> | firefox doesn't fire onbeforeunload |
00:12 | <gsnedders> | Opera practically never fires unload, though |
00:15 | <Hixie> | why does firefox ignore the call on http://damowmow.com/playground/demos/multipart/003.html? |
00:15 | <Hixie> | (go to http://damowmow.com/playground/demos/multipart/ then click the 003 link to test) |
00:15 | <Hixie> | (you should end up back at http://damowmow.com/playground/demos/multipart/ ) |
00:19 | <Hixie> | ok i guess the answer is that we just repeat step 20 of the navigate algorithm for each component |
01:21 | <Hixie> | i wonder how i get a multipart/x-... to abort |
01:30 | <Hixie> | oh actually that will just work if i fix the bug that back() doesn't abort a document |
01:30 | <Hixie> | ok so here's a question |
01:31 | <Hixie> | if half-way through a multipart/x-mixed-replace you hit a back() call |
01:31 | <Hixie> | should the browser be allowed to keep buffering that document such that if you go forward again it continues from where you left off? |
01:31 | <mkanat> | Ah, I would say no. |
01:31 | <Hixie> | not required, mind |
01:31 | <Hixie> | a browser can always discard anything in the session history |
01:32 | <mkanat> | I don't think it would make sense. |
01:32 | <Hixie> | yeah it'd probably hurt servers, too |
01:32 | <Hixie> | ok |
01:32 | <mkanat> | Think of the Bugzilla use case, for example. |
01:32 | <mkanat> | (We're one of the only people to actually implement x-mixed-replace in a non-COMET fashion.) |
01:33 | <Hixie> | wouldn't that use case argue for it to be supported? |
01:33 | <Hixie> | it would mean you could go forward again without waiting for the query to load |
01:43 | <mkanat> | Hixie: Ah, as a Bugzilla server maintainer, I wouldn't want the server load to continue. |
01:43 | <Hixie> | yeah, that's what i figured |
01:43 | <mkanat> | Hixie: Also, usually if somebody goes back from the search page, it's to change their search and do a new one. |
01:43 | <Hixie> | true |
02:41 | <aho> | oh boy oh boy oh boy! text-overflow:ellipsis finally landed in FF7 (stable) |
02:42 | <roc> | you mean it finally shipped |
02:42 | <aho> | eh |
02:42 | <aho> | yea |
02:42 | <aho> | :) |
02:43 | <roc> | that reminds me, I need to blog about how our implementation is better than everyone else's |
02:43 | <aho> | vertical margin collapse for tables next? :>~ |
02:43 | <roc> | that is actually just about to land |
02:44 | <aho> | :O |
02:44 | <aho> | i was actually kinda joking |
02:44 | <aho> | it's the duke nukem of firefox bugs |
02:44 | <aho> | :> |
02:44 | <aho> | https://bugzilla.mozilla.org/show_bug.cgi?id=87277 - reported: 2001-06-22 |
10:00 | <smaug____> | Someone should review quirksmode's tests |
10:00 | <smaug____> | and result |
10:00 | <smaug____> | way too many bugs there :/ |
10:01 | <smaug____> | in the tests |
14:10 | <annevk> | http://my.opera.com/daniel/blog/2011/09/28/reparse-xml-as-html hmm |
14:10 | <annevk> | didn't know that |
14:10 | <Rik`> | does it gives an alert in the console for developers? |
14:10 | <miketaylr> | it should show it in the error console |
14:11 | <annevk> | but what it says about other browsers there? |
14:11 | <annevk> | is that actually true? |
14:11 | <miketaylr> | yep, http://miketaylr.com/post/d15ad477.png |
14:12 | <miketaylr> | that i don't know |
14:12 | <annevk> | and we only do this for browsing context loads I hope |
14:12 | <annevk> | not e.g. DOMParser or XHR |
14:12 | <annevk> | but that's pretty self-evident I guess |
14:13 | <annevk> | back later |
15:23 | <twisted`> | hi, in Chrome when I use an input type image I the value gets hidden, but in Firefox it stays |
15:24 | <twisted`> | IE also hides it |
15:40 | <woef> | Is there a plan to improve feature detection? ie let the browser itself respond whether it has already implemented certain features (correctly)? |
15:41 | <Philip`> | No, because the browser's response will be wrong often enough to make the feature detection useless |
15:42 | <Philip`> | e.g. it implements the feature but forgot to update the detection status, or it claims to implement a feature when it's unusably buggy or when it only implements half of it |
15:43 | <aho> | http://dev.w3.org/csswg/css3-conditional/ |
15:43 | <jcranmer> | or when it correctly implemented a feature but the feature has since changed under them |
15:43 | <aho> | @supports ( display: flexbox ) {...} |
15:43 | <Philip`> | Or it simply lies about the feature in order to avoid "sorry, your browser is not supported" messages on major sites |
15:47 | <woef> | aho: cool |
15:49 | <woef> | Philip`: maybe a "we now it's fucked" marker only? |
15:49 | <woef> | So if it returns nothing, you're still on your own. I guess browser vendors won't risk having those around for no good reason. |
15:49 | <Philip`> | If they know they've implemented a feature that badly, they should disable the feature entirely |
15:49 | <woef> | Having problems with the placeholder positioning in webkit right now and it's damn sad. |
15:50 | <Philip`> | Also they often won't realise there's problems until after releasing |
15:50 | <woef> | I guess things won't we that bad once we have the conditional css. Though I figured feature detection was all about not having to do that anymore :) |
15:55 | <smaug____> | twisted`: what you mean with "value gets hidden"? |
15:57 | <smaug____> | or, what you mean "it stays" |
15:58 | <aho> | woef, this *is* feature dection... just w/o the js, the added classes to the root element, and the change in selector specificity |
15:59 | <aho> | well, ok. the features are queried, not tested for |
16:00 | <aho> | (usually the used tests are just queries though) :> |
16:00 | aho | splits the hair once more |
16:11 | <twisted`> | smaug____: oh, well I fixed it differently (got rid of the whole form) but what I meant is: in Firefox when you create a form with a input type="image" and set a value="bla |
16:11 | <twisted`> | " |
16:12 | <twisted`> | and then with CSS set a background image, it shows [bla] with the bg image |
16:12 | <twisted`> | in Chrome and IE the button is [ ] (empty value shown) with a background |
16:52 | <dglazkov> | good morning, Whatwg! |
16:53 | <divya> | hi dglazkov! |
16:53 | <divya> | (finally an echoback) |
16:54 | <dglazkov> | divya: exactly! |
16:54 | <dglazkov> | :) |
16:54 | <divya> | :)) |
16:55 | <jcranmer> | don't you mean good afternoon? |
16:55 | <divya> | dglazkov: i tl;dr; the component model spec and my tl;dr; question was are browsers allowed to create their own custom templates e.g. <x-myownbrowsersilo-component> |
16:55 | <dglazkov> | divya: no. That's only something authors can do. |
16:56 | <dglazkov> | jcranmer: it's morning outside, thus no. |
16:56 | <divya> | k thnx dglazkov |
17:53 | <Hixie> | hm, no anne |
17:53 | <Hixie> | anyone know anything about XHR2 plans? |
17:55 | <nlogax> | using html5 d&d, how would you for example outline areas as droppable for certain kinds of data? i had to resort to overriding the standard behavior (embedding chromium) |
17:55 | <nlogax> | since you can't read what's being dragged above you |
17:56 | <nlogax> | can of course do it in hacky ways but.. |
17:57 | <smaug____> | Hixie: what about XHR2 ? |
18:20 | <Hixie> | nlogax: dropzone="" attribute or reading the type information from the event (you can read the type, just not the data) |
18:23 | <nlogax> | Hixie: but the type seems to be hardcoded to only accept a handful of things |
18:23 | <nlogax> | in chromium at least |
18:23 | <nlogax> | maybe that's a bug then? |
18:25 | <nlogax> | hmm yeah, seems like it. http://jsfiddle.net/9YK5s/4/ |
18:25 | <nlogax> | works fine in safari |
18:26 | <nlogax> | and firefox.. doh. picked the wrong horse. |
19:47 | <AryehGregor> | rniwa, do you have an opinion on this? http://www.w3.org/Bugs/Public/show_bug.cgi?id=14253 |
19:47 | rniwa | looks |
19:48 | <rniwa> | AryehGregor: this is about allowing execCommand to take cm, mm, pt, etc...? |
19:48 | <AryehGregor> | rniwa, I'm suggesting a new command, maybe fontSizePt. fontSize takes legacy sizes 1-7, which isn't what users expect from WYSIWYG editors. |
19:49 | <rniwa> | oh I see |
19:49 | <rniwa> | mn... adding new command for each new unit seems inelegant |
19:49 | <AryehGregor> | I suggest a command that accepts pt, since that's what editors normally use. |
19:49 | <AryehGregor> | All the other absolute units are defined as a multiple of pt. |
19:49 | <rniwa> | mn... |
19:49 | <AryehGregor> | So I think it would be okay to just have one for pt. |
19:49 | <AryehGregor> | We could allow input in other absolute units, like px or mm. |
19:49 | <rniwa> | oh I see |
19:50 | <rniwa> | what you're saying that allowing it to be more precise in pt? |
19:50 | <AryehGregor> | So execCommand('fontSizePt', false, '12') might be the same as execCommand('fontSizePt', false, '12pt'), but you could also do execCommand('fontSizePt', false, '16px'). |
19:50 | <AryehGregor> | Yes. |
19:50 | <rniwa> | right |
19:50 | <rniwa> | okay |
19:50 | <rniwa> | I think that makes sense |
19:50 | <AryehGregor> | However, queryCommandValue() would always have to return pt. |
19:50 | <rniwa> | right |
19:50 | <AryehGregor> | Since it has to return some specific unit, and pt makes the most sense for WYSIWYG. |
19:50 | <rniwa> | although it'll be nice if it were configurable |
19:50 | <AryehGregor> | Although getComputedStyle returns px. |
19:50 | <rniwa> | but then... people can always get px value out of getComputedStyle |
19:50 | <AryehGregor> | How could it be configurable? |
19:50 | <rniwa> | add some command like |
19:51 | <rniwa> | FontSizeWithPx |
19:51 | <rniwa> | just like styleWithCSS |
19:51 | <rniwa> | but kind of ugly to introduce those states too though |
19:51 | <rniwa> | anyway lunch time for now. |
19:51 | <AryehGregor> | I don't like commands like that, because they're global. It will make other code do something unexpected. |
19:51 | <rniwa> | will be back ~hour |
19:51 | <AryehGregor> | Okay. |
19:51 | <rniwa> | AryehGregor: yeah, not too nice |
20:16 | <annevk> | maybe it should expose the CSSValue API somehow |
20:16 | <annevk> | but I'm not really sure how |
20:16 | <annevk> | might be better to wait somewhat longer with introducing features such as FontSizePt until everything else is better adopted |
20:17 | <AryehGregor> | annevk, the current fontSize command doesn't allow you to even *set* font size to anything other than 1-7. |
20:17 | <AryehGregor> | And it gives you the font size back in that unit too. |
20:17 | <AryehGregor> | It's crippled. |
20:18 | <AryehGregor> | fontSizePt would work just fine for normal authoring use-cases, which fontSize does not. |
20:19 | <annevk> | if it's not supported now it's prolly not that high priority |
20:19 | <annevk> | we're still not quite sure over the CSSOM |
20:19 | <annevk> | not really sure this needs to move faster than that |
20:19 | <AryehGregor> | queryCommandValue() just returns a string. |
20:19 | <AryehGregor> | It can return the size in points. |
20:19 | <AryehGregor> | We could add a separate API later to retrieve the size in other units or whatnot. |
20:19 | <AryehGregor> | If anyone wants it. |
20:19 | <AryehGregor> | But it's not really necessary. |
20:20 | <annevk> | we could also wait in general |
20:20 | <AryehGregor> | Generally I'm trying to fix existing stuff before adding more, but this is a simple and useful addition. |
20:33 | <AryehGregor> | I want to test something. Someone say my name. |
20:35 | <Philip`> | AryehGregor: Like this? |
20:35 | <AryehGregor> | Philip`, yeah, thanks. |
20:36 | <AryehGregor> | Was testing whether Unity tells you which window wants your attention like gnome-panel's task switcher does. It doesn't. |
20:37 | <astearns> | AryehGregor: why define fontSizePt over fontSizePx? |
20:37 | <AryehGregor> | astearns, because all WYSIWYG editors use pt, not px. |
20:38 | <astearns> | but specifying on-screen browser text in points is not WYSIWYG |
20:39 | <AryehGregor> | astearns, sure it is. In CSS, a 1px = 0.75pt. |
20:39 | <AryehGregor> | s/a //. |
20:41 | <Hixie> | annevk: do you know anything about streaming upload in xhr? (i.e. where a web page is generating data to send and starts sending it before it has finished generating it) |
20:44 | <astearns> | AryehGregor: since points are defined by the reference pixel, I think it's less misleading to use pixels (since that's what it actually comes down to) |
20:46 | <AryehGregor> | astearns, the actual definitions don't really matter. Almost no one who uses a WYSIWYG editor could tell you that a pt is 1/72 of an inch. It's an arbitrary unit that people are used to, that's all. |
20:47 | <astearns> | I'd rather the web platform push "16px" as normal text, instead of "12pt" that's not particularly relevant to the screen |
20:47 | <AryehGregor> | I'd rather the web platform do whatever users expect. |
20:47 | <AryehGregor> | Web pages are printable too, you know. |
20:48 | <astearns> | 16px prints out just fine |
20:48 | <AryehGregor> | px is meaningless for print, however. |
20:48 | <AryehGregor> | Just like pt is meaningless for screen. |
20:48 | <AryehGregor> | The difference is, users are used to pt. |
20:51 | <TabAtkins> | "meaningless" being relative, since the two are defined to have a strict ratio to each other. |
20:52 | <AryehGregor> | We could make the API px and expect authors to translate to pt, but they'll get it wrong. |
20:52 | <AryehGregor> | So let's just make it pt to start with. |
20:52 | <astearns> | is the fontSizeSomething API being designed for those WYSIWYG users who are scared of pixels? |
20:53 | <AryehGregor> | astearns, yes. The entire execCommand() API is for WYSIWYG. |
20:53 | <astearns> | there are a lot of people around me who do know what points are, and get it wrong when they assume that CSS points are 1/72 of an inch :) |
20:53 | <TabAtkins> | AryehGregor: He meant wysiwyg development, not scripting a wysiwyg editor. |
20:54 | <AryehGregor> | astearns, CSS points are 1/72 of a CSS inch, and also 1/72 of an actual inch when printed. |
20:54 | <AryehGregor> | TabAtkins, hmm? |
20:54 | <annevk> | Hixie, it's not supported |
20:54 | <TabAtkins> | AryehGregor: execCommand() is for scripting a WYSIWYG editor. Alan's talking, I think, about a WYSIWYG coding environment. |
20:54 | <astearns> | WYSIWYG editors could still display pt in the UI, but use a fontSizePx method |
20:55 | <Hixie> | annevk: any plans? |
20:55 | <AryehGregor> | astearns, assuming the authors of those editors know that 0.75px = 1pt. Which they probably won't. Why make them? |
20:55 | <annevk> | Hixie, so far the only request has been streaming "downloads" |
20:55 | <AryehGregor> | Make the API work for the common case, and let authors translate to the uncommon case. |
20:55 | <Hixie> | annevk: ah, interesting. |
20:56 | <Hixie> | annevk: is it something that could be added if use cases were presented, or is xhr unlikely to change again? |
20:56 | <annevk> | Hixie, I guess we might enhance XHR some more |
20:57 | <Hixie> | annevk: k, thanks |
20:57 | <astearns> | all of the hand-coded CSS advice I've read lately encourages people to use px (if they want to use an absolute size). Adding new APIs in points seems retrograde to me |
20:57 | <annevk> | gonna get some sleep now |
20:57 | <AryehGregor> | astearns, this is not about hand-coded CSS. It's an API to auto-generate CSS. |
20:57 | <AryehGregor> | Typically, the CSS won't ever be viewed by a person. |
20:58 | <AryehGregor> | Also, "I read advice lately that encourages using px" is not itself a very compelling argument. |
20:58 | AryehGregor | wonders why EC2 Windows instances take 15-30 minutes after startup to generate a password that actually lets you log in |
20:59 | AryehGregor | also wonders why he has to enter a private key to get the password |
20:59 | <AryehGregor> | I mean, a) I don't see what attack scenario that averts, and b) isn't the whole point of public-key cryptography that you never have to give out your key to anyone? |
21:00 | <TabAtkins> | That seems completely broken. |
21:00 | <AryehGregor> | It's a private key from a keypair they generated, so it doesn't bother me much. |
21:00 | <AryehGregor> | But it seems pretty dumb. |
21:01 | <AryehGregor> | I assume that a Linux instance would just allow login directly with the private key. |
21:01 | <AryehGregor> | (without disclosing it, obviously) |
21:04 | <gsnedders> | Yay, and so Hotmail makes it practically impossible for us to drop another non-standard feature (currentStyle), as the codepath we end up on is one they don't officially support, so if we break anything on it due to dropping a non-standard feature, we simply break the site. They won't fix it. :\ |
21:04 | <Hixie> | noooo where did anne go |
21:05 | <TabAtkins> | Probably dead. |
21:06 | <wilhelm> | Last seen drinking beer in a restaurant near the office. Yeah, probably dead. |
21:46 | <AryehGregor> | So there's no way to get the latest IE10 preview except installing a Windows 8 VM? |
21:46 | <AryehGregor> | Which probably will not work on an AWS VM? |
21:46 | <Hixie> | this appears to be the case |
21:47 | <AryehGregor> | PP2 is no longer available? |
21:47 | AryehGregor | grumbles |
21:48 | <Hixie> | so you can get a beta of firefox, 30MB or so and runs on the spot, or you can download IE10, 1.5GB or so, needs its own partition and several reboots, and won't run side-by-side with any of your other browsers. |
21:49 | <Hixie> | as you might guess, I'm not spending as much time testing IE these days |
21:49 | <AryehGregor> | IE9 works fine in a VM. |
21:49 | <Hixie> | yeah that's how i test it |
21:49 | <Hixie> | (remote VM, but same idea) |
21:49 | <AryehGregor> | Also, is there some MS Office free crippled version that I can use for testing on my VM? Otherwise maybe I'll have to not test it. |
21:50 | <AryehGregor> | (I'm using a remote VM too, EC2) |
21:50 | <AryehGregor> | (costs me $3/month for the storage plus $0.03/hour for using it) |
21:51 | <AryehGregor> | I wish I could use less storage. 20G of that 30G is unused. |
21:52 | <AryehGregor> | But savings of $1.50/month is not worth trying to see if I can shrink the Windows root partition while the system is running. |
21:52 | <AryehGregor> | I've done that on Linux, mind you! It was fun. And this was without LVM or md or anything fancy, or with any extra devices. It was basically something like everything on /dev/sda1, which took up all of /dev/sda, with no other disks. |
21:53 | <AryehGregor> | (the solution involved copying essential files to a tmpfs, pivot_root, and then killing or restarting any processes using the old root partition so I could unmount it) |
21:54 | <AryehGregor> | But somehow I doubt Windows is capable of such things. |
21:54 | <AryehGregor> | <3 Linux |
22:17 | <zcorpan> | Hixie: "+ <p>Here, a a column" |
22:31 | <zcorpan> | http://smus.com/game-asset-loader - feedback on appcache |
23:21 | <Hixie> | ok i think i have multipart/x-mixed-replace specced for regular browsing contexts |
23:21 | <Hixie> | now for images |
23:23 | <Hixie> | holy cow, bfcache works better for the html spec in firefox than chrome, that's for sure |
23:27 | <abarth> | Hixie: chrome doesn't have a bfcache |
23:27 | <Hixie> | ah well that explains it |
23:34 | <mkanat> | Yeah, it makes me sad. |
23:34 | <mkanat> | There's one in WebKit but it hasn't been hooked into Chrome yet. |
23:34 | <abarth> | i've wanted to implement it for a while, but I haven't gotten around to it |
23:35 | <abarth> | its non-trivial to get right |
23:35 | <mkanat> | Yeah, I can totally imagine. |
23:37 | <Hixie> | especially in a multiprocess architecture, i imagine |
23:37 | <mkanat> | Oh yeah, I suppose you have to have a bfcache for each process. |
23:37 | <abarth> | mkanat: and do process-process back navigations |
23:38 | <abarth> | sorry |
23:38 | <abarth> | cross-process |
23:38 | <mkanat> | abarth: There are times when back/forward crosses process boundaries? |
23:38 | <abarth> | yes, often |
23:38 | <abarth> | we refresh the process whenever we can |
23:38 | <gavin> | can you not at least do fastback for same-process navigation? |
23:39 | <mkanat> | gavin: I'd imagine that would be an inconsistent and confusing user experience. |
23:39 | <mkanat> | gavin: Particularly if developers came to rely on it. |
23:39 | <gavin> | huh? |
23:40 | <mkanat> | gavin: There have been times when I've greatly wanted to rely on the bfcache in Firefox for fixing back/forward bugs. |
23:40 | <gavin> | "going back is sometimes fast" shouldn't really be confusing to users, it's not like there's much consistency there |
23:40 | <mkanat> | gavin: That's true, since bfcache is already like that. |
23:41 | <Hixie> | the spec allows bfcache to blow away the stored documents whenever |
23:41 | <Hixie> | pages that depend on them not going away are going to break left right and center |
23:41 | <mkanat> | Yeah. |
23:41 | <mkanat> | I actually wish that didn't happen; about 75% of JS bug effort on the developer side nowadays seem to be around dealing with the Back button. |
23:42 | <gavin> | "JS bug effort on the developer side" ? |
23:42 | <mkanat> | gavin: In terms of work that you have to do if you want to render an app that does go to different URLs, but while it's on the page, alters the DOM with JS in some way. |
23:42 | <gavin> | just in general? |
23:42 | <mkanat> | gavin: Yeah, in general. |
23:42 | <gavin> | ok... |
23:42 | <Hixie> | jsut store the state with pushState or replaceState |
23:42 | <Hixie> | it's not _that_ hard |
23:43 | <mkanat> | Hixie: Provided that your page can rebuild itself from a URL string, yes. |
23:43 | <Hixie> | or a state object |
23:43 | <mkanat> | Hixie: Although that means that any DOM manipulation you do, you must then also implement a system for rebuilding it from the URL. |
23:43 | <Hixie> | well you should do that anyway |
23:43 | <mkanat> | Hixie: Only if that state object can be serialized into the URL, no? Or you mean like in localStorage. |
23:43 | <Hixie> | for bookmarking purposes |
23:44 | <Hixie> | the state object can be anything that can be structured-cloned |
23:44 | <mkanat> | Hixie: Yeah, thankfully the last time I hit this, replaceState did fix it (for the browsers that implement replaceState). |
23:44 | <Hixie> | (think of it as "anything like JSON) |
23:44 | <Hixie> | ^" |
23:44 | <Hixie> | anyone know of a multipart/x-mixed-replace image anywhere? |
23:45 | <mkanat> | No, although I'd imagine it would be fairly easy to set up. |
23:45 | <Hixie> | i'm lazy :-P |
23:45 | Hixie | uses his multipart/x-mixed-replace kitchen to make one |
23:46 | <Hixie> | (http://www.hixie.ch/tests/evil/page-loading/multipart/001.cgi) |
23:47 | <Hixie> | http://software.hixie.ch/utilities/js/live-dom-viewer/saved/1159 doesn't work in firefox :-( |