### Log session started at Fri Nov 30 00:00:00 2007 ### [00:00:18] jiha__ [jiha@moz-40072CFB.dip0.t-ipconnect.de] has joined #developers [00:00:26] your call, bz [00:02:22] jiha_ [jiha@moz-FAFE816A.dip0.t-ipconnect.de] has quit IRC: Ping timeout [00:02:41] <@bz> I'm about to head to bed [00:02:50] <@bz> so whatever we do should be fast [00:02:59] bz: does layout debug spew stuff to console continuously [00:03:04] I'm just the pilot. You're the captain. [00:03:06] or is it only for actual debug work? [00:03:09] <@bz> Callek: not the extension, no [00:03:16] <@bz> weirdal: hrm. OK. One sec.. [00:03:41] <@bz> weirdal: ok. [00:03:49] <@bz> weirdal: load the testcase [00:03:59] already there [00:04:23] <@bz> weirdal: type javascript:void(document.body.appendChild(document.createTextNode('x'))) in the url bar, but don't hit enter [00:04:34] <@bz> weirdal: breakpoint in nsCSSFrameConstructor::ContentAppended [00:04:38] <@bz> weirdal: then hit enter [00:04:42] dveditzAway [dveditz@moz-530FA17.cruzio.com] has joined #developers [00:04:45] dveditz [dveditz@moz-530FA17.cruzio.com] has quit IRC: Connection reset by peer [00:04:58] graydon [graydon@moz-4CF3055C.vc.shawcable.net] has joined #developers [00:05:28] at the breakpoint [00:06:09] dwitte_ [dwitte@moz-334F2010.mountainview.mozilla.com] has quit IRC: Quit: Auf wiedersehen [00:06:46] WeirdAl muses, idly, about the idea of combining a debugger with an IRC client... so that others could suggest commands, and with the click of a button, the debugger's owner could say "Do this" [00:07:07] <@bz> WeirdAl: ok. What's mPresShell.mDocument ? [00:07:13] <@bz> er, mPresShell->mDocument [00:07:37] nsHTMLDocument [00:07:40] <@bz> ok [00:08:10] <@bz> call nsIFrameDebug::DumpFrameTree(mPresShell->GetRootFrame()) [00:08:41] going to pastebin [00:08:59] http://pastebin.mozilla.org/252134 [00:10:46] <@bz> uh [00:10:48] <@bz> uhhhh [00:11:17] <@bz> one sec [00:12:41] <@bz> so that outer div has 0 height... [00:12:47] <@bz> and the inner div has 0 width [00:12:50] <@bz> that makes sense [00:12:50] <@bz> ok [00:12:52] <@bz> thanks! [00:13:21] hehe, you're quite welcome. [00:13:28] hope you get a useful bug comment out of it [00:13:39] <@bz> oh, I did [00:13:43] <@bz> it almost sorta kinda makes sense [00:14:20] now I just need someone to tell me if it's more efficient to generate XUL treechildren, treeitem, etc. elements, or to implement a JS-based nsITreeView [00:14:32] (the former from JS/DOM calls) [00:14:38] <@bz> probably the latter [00:14:41] <@bz> a lot less weight [00:14:56] that's sort of what I expected. [00:15:33] and it explains why nobody took me seriously years ago when I suggested we should do XUL elements inside the tree... [00:21:07] brendan [brendaneic@moz-37758455.hsd1.ca.comcast.net] has joined #developers [00:21:15] braden [braden@moz-C3AD38D5.dc.dc.cox.net] has quit IRC: Client exited [00:21:32] dveditzAway [dveditz@moz-530FA17.cruzio.com] is now known as dveditz [00:21:38] ChanServ [services@mozilla.org] has set mode +o dveditz [00:21:47] braden [braden@moz-C3AD38D5.dc.dc.cox.net] has joined #developers [00:22:29] Mossop [Mossop@moz-B9F6E8D3.oxymoronical.com] is now known as Mossop_away [00:24:30] <@bz> weirdal: https://bugzilla.mozilla.org/show_bug.cgi?id=400813#c13 fwiw [00:25:11] Mossop_away [Mossop@moz-B9F6E8D3.oxymoronical.com] is now known as Mossop [00:26:00] bz [bzbarsky@moz-C9A4D477.dsl.chcgil.sbcglobal.net] is now known as bz_sleep [00:26:13] caytchen [caytchen@moz-56CA4B98.pool.einsundeins.de] has quit IRC: Connection reset by peer [00:26:40] heh, too bad I really don't understand that, but that's ok [00:26:48] I think I get the gist of it [00:27:28] <@bz_sleep> well... dbaron was the main target audience [00:27:36] <@bz_sleep> with maybe stuart and vlad as secondary audience [00:27:41] <@bz_sleep> I think they'll get it. ;) [00:27:49] sleep well [00:27:50] <@bz_sleep> I can explain if you care [00:28:46] no :) [00:28:50] <@bz_sleep> ok [00:30:13] dria [dria@moz-B7FD1F7E.cpe.net.cable.rogers.com] has quit IRC: Quit: dria [00:30:23] Enn [enn@moz-63806515.wildpalms-wifi2.mozilla.hq] has joined #developers [00:30:33] fantasai [fantasai@moz-989A079D.info] has left #developers: 'night [00:32:03] kaie [kaie@moz-8AE14A9A.dip.t-dialin.net] has joined #developers [00:32:11] Mossop [Mossop@moz-B9F6E8D3.oxymoronical.com] is now known as Mossop_away [00:32:35] Firefox: 'WINNT 5.2 fxdbug-win32-tb Depend Debug + Leak Test' has changed state from Success to Test Failed. [00:33:04] WeirdAl [chatzilla@moz-E0ACC29C.hsd1.ca.comcast.net] has quit IRC: Connection reset by peer [00:33:53] Mossop_away [Mossop@moz-B9F6E8D3.oxymoronical.com] is now known as Mossop [00:37:01] ctalbert [clint@moz-7EFF73E1.dsl.pltn13.sbcglobal.net] has joined #developers [00:37:49] evan [evan@moz-7738C241.sun.com] has joined #developers [00:40:02] Mnyromyr [MnyroWork@moz-E0F31C11.tal.de] has joined #developers [00:41:50] Enn [enn@moz-63806515.wildpalms-wifi2.mozilla.hq] has quit IRC: Ping timeout [00:43:48] maikmerten [merten@moz-9D8BA0A0.cs.uni-dortmund.de] has joined #developers [00:44:23] sayrer [chatzilla@moz-63806515.wildpalms-wifi2.mozilla.hq] has joined #developers [00:45:01] karlt [karl@moz-8490F924.jetstream.xtra.co.nz] has joined #developers [00:46:06] taras [taras@moz-99B4231C.gv.shawcable.net] has quit IRC: Ping timeout [00:54:35] sayrer [chatzilla@moz-63806515.wildpalms-wifi2.mozilla.hq] has quit IRC: Ping timeout [00:59:40] ajschult [andrew@moz-30D83D47.bflony.east.verizon.net] has joined #developers [01:01:08] midnightaz_ [chatzilla@155526C9.F50E6DAB.3D0C8E44.IP] has joined #developers [01:02:14] peterv [peterv@moz-63806515.wildpalms-wifi2.mozilla.hq] has quit IRC: Input/output error [01:02:48] midnightaz [chatzilla@155526C9.F50E6DAB.3D0C8E44.IP] has quit IRC: Ping timeout [01:02:49] midnightaz_ [chatzilla@155526C9.F50E6DAB.3D0C8E44.IP] is now known as midnightaz [01:03:43] mw22_meeting [chatzilla@moz-DBCA600B.wildpalms-wifi1.mozilla.hq] has joined #developers [01:05:56] blassey [blassey@F28C1CF3.1CD3F6C3.BEDA7B58.IP] has joined #developers [01:07:13] WeirdAl [chatzilla@moz-E0ACC29C.hsd1.ca.comcast.net] has joined #developers [01:08:59] Mossop [Mossop@moz-B9F6E8D3.oxymoronical.com] is now known as Mossop_away [01:09:53] Does anyone know of a list of valid action names for http://lxr.mozilla.org/seamonkey/source/layout/xul/base/src/tree/public/nsITreeView.idl#223 ? [01:12:39] davida [dascher@moz-63806515.wildpalms-wifi2.mozilla.hq] has joined #developers [01:13:52] roc [roc@moz-2B3897A.dsl.telstraclear.net] has joined #developers [01:14:49] Firefox: 'WINNT 5.2 fxdbug-win32-tb Depend Debug + Leak Test' has changed state from Test Failed to Success. [01:15:56] brendan [brendaneic@moz-37758455.hsd1.ca.comcast.net] has quit IRC: Connection timed out [01:17:35] brendan [brendaneic@moz-37758455.hsd1.ca.comcast.net] has joined #developers [01:19:36] sdwilsh|away [sdwilsh@moz-242BA36C.public.engin.umich.edu] has joined #developers [01:20:21] what are we going to do about this broken tree? [01:20:28] is anyone awake? [01:21:09] anyone else in favour of reopening as long as qm-win2k3-01 stays green? [01:21:15] roc: I am, but I don't think I count [01:21:38] you'll do! [01:23:12] sounds OK to me [01:23:31] Mossop_away [Mossop@moz-B9F6E8D3.oxymoronical.com] is now known as Mossop [01:23:43] If I could stay connected for long enough to speak I'd agree too [01:23:47] sdwilsh|away: think css selection :odd/:even will be implemented for ff3? ;) [01:24:14] Mardak: wouldn't that be nice [01:24:50] trying to figure out how to incrementally add items... without calling oddEven each time [01:25:00] and when a download finishes and moves positions.... [01:25:33] sdwilsh|away: would it be like to have @page and media queries too? [01:25:54] dolske [dolske@moz-F8EC3862.hsd1.ca.comcast.net] has left #developers [01:25:58] dolske [dolske@moz-F8EC3862.hsd1.ca.comcast.net] has joined #developers [01:25:58] dolske [dolske@moz-F8EC3862.hsd1.ca.comcast.net] has left #developers [01:26:10] Mardak: man am I glad you time for this stuff [01:26:20] Jonathan: I don't care so much about those :p [01:26:29] dolske [dolske@moz-F8EC3862.hsd1.ca.comcast.net] has joined #developers [01:26:34] time for this stuff? o.O [01:26:59] @media and (boo) [01:27:49] Mardak: you seem to have more time than me! [01:29:12] sacrificing sleep ;) [01:30:08] time? who got a time left? [01:30:16] mw22_meeting_ [chatzilla@moz-63806515.wildpalms-wifi2.mozilla.hq] has joined #developers [01:30:42] mw22_meeting [chatzilla@moz-DBCA600B.wildpalms-wifi1.mozilla.hq] has quit IRC: Ping timeout [01:30:54] mw22_meeting_ [chatzilla@moz-63806515.wildpalms-wifi2.mozilla.hq] is now known as mw22_meeting [01:32:09] who wrote the long story that's currently on tinderbox and didn't sign their name? [01:32:20] dolske [dolske@moz-F8EC3862.hsd1.ca.comcast.net] has quit IRC: Quit: *** poof *** [01:32:35] dolske [dolske@moz-F8EC3862.hsd1.ca.comcast.net] has joined #developers [01:32:58] gavin|: ack, me [01:33:31] i left the tree closed, since there's no clear picture of what's failing [01:33:43] and i'm heading back to the hotel. i'll be back online in a bit. [01:34:07] heh, k :) [01:34:15] dietrich fixes name+formatting [01:35:29] Mossop [Mossop@moz-B9F6E8D3.oxymoronical.com] is now known as Mossop_away [01:35:42] dietrich [dietrich@moz-45994475.mountainview.mozilla.com] has quit IRC: Quit: dietrich [01:36:02] kaie [kaie@moz-8AE14A9A.dip.t-dialin.net] has quit IRC: Ping timeout [01:36:25] kaie [kaie@moz-CCF6E329.dip.t-dialin.net] has joined #developers [01:38:32] blassey [blassey@F28C1CF3.1CD3F6C3.BEDA7B58.IP] has quit IRC: Quit: blassey [01:38:44] sspitzerMsgMe [sspitzer@moz-334F2010.mountainview.mozilla.com] has quit IRC: Ping timeout [01:39:10] ajschult [andrew@moz-30D83D47.bflony.east.verizon.net] has quit IRC: Ping timeout [01:41:46] http://wiki.mozilla.org/Gecko:Compositor [01:41:56] can anyone point me in the direction of where I can find the functions listed on that page? [01:43:23] they don't exist yet [01:43:29] oh [01:43:31] um.... [01:43:34] that page describes work that's planned for future gecko releases [01:43:41] anything similar that does exist...? [01:43:54] as in, how can I request an invalidation of a certain region [01:43:55] from js [01:44:03] you're lucky, roc is here! [01:44:08] nattokirai [jdaggett@moz-E23BAEEF.dslextreme.com] has joined #developers [01:44:11] oh, awesome! [01:44:22] roc, any thoughts? [01:44:24] hmm? [01:44:37] dveditzAway [dveditz@moz-530FA17.cruzio.com] has joined #developers [01:44:39] so, I'm trying to do something fairly weird [01:44:48] I'm trying to overlay a SWF in the chrome [01:44:52] on top of gecko rendered content [01:44:55] dveditz [dveditz@moz-530FA17.cruzio.com] has quit IRC: Connection reset by peer [01:45:15] and when I put the SWF (via an embed xul element) and the tabPanels into a XUL "stack" [01:45:22] I get rendering update artifacts [01:45:32] as in, when I move the mouse, the gecko parts render [01:45:35] but other times not [01:45:49] so, I'm trying to figure out how I can hook into requesting repaints of the gecko surface [01:45:54] or some way to invalidate the gecko regions, etc [01:46:08] erm, hopefully I'm making some sense.... (I'm pretty new to moz hacking) [01:46:15] windowless or windowed? [01:46:23] what you're describing just sounds like a bug [01:46:34] not sure what you mean by windowless or windowed... [01:46:44] I mean is the Flash wmode="transparent" or not? [01:46:47] ah [01:46:58] yes, it's transparent / windowless [01:47:08] well, in fact, I'm willing to not set it to transparent [01:47:16] that probably won't help [01:47:18] but my thought was that it's the only way to get the SWF to render only certain parts [01:47:21] is this on Windows? [01:47:24] yep [01:47:27] win xp [01:47:32] what do you mean "render only certain parts"? [01:47:42] ajschult [andrew@moz-30D83D47.bflony.east.verizon.net] has joined #developers [01:47:43] so, for example, if I draw a donut [01:47:46] with an empty hole [01:47:52] that hole should show through to the gecko parts [01:47:56] are these tabpanels "content"-type tabpanels? [01:48:14] they're the tabPanels that are children of the tabbox [01:48:16] within tabBrowser.xml [01:48:22] in /global/content/bindings [01:48:23] ok, so this is Firefox chrome? [01:48:25] yep [01:48:30] ok [01:48:33] you're screwed :-( [01:48:36] ahahahaha [01:48:38] awesome! [01:48:39] really? [01:48:47] pretty much [01:48:52] ok.... [01:49:05] can I get a little more reason as to why I'm screwed... [01:49:10] there's a sort of workaround that the phishing UI used in Firefox 2 [01:49:23] ok.... [01:49:25] it sucks in a variety of ways [01:49:30] I guess, what am I "screwed" on? [01:50:12] basically "content" subdocuments (i.e. Firefox tab contents) and "chrome" subdocuments do not play together in the same rendering tree [01:50:25] sure... [01:50:33] ok, makes sense... [01:50:44] well, here's another way I was thinking of doing it [01:50:49] let me know if I'm just crazy [01:50:55] but I was thinking the other way... [01:51:26] would be to write a completely standalone win32 app, that injects a window (hwnd-style) into the firefox UI [01:51:33] mw22_meeting [chatzilla@moz-63806515.wildpalms-wifi2.mozilla.hq] has quit IRC: Ping timeout [01:51:40] the window it injects would have the flags set, such that windows would know it's supposed to be transparent [01:51:42] you were looking in the right place, the compositor is designed to fix this (and do other things too) [01:51:51] would that work? [01:52:00] that is, to have the Windows OS manager composite this correctly? [01:52:07] if I inject a window into the firefox ui [01:52:15] and in that window, use the Flash Active X? [01:52:17] I have no idea if Windows can do that properly [01:52:26] hrm.... [01:52:35] do you figure it's even worth a shot? [01:52:38] or completely in vain? [01:52:38] try it with a test app [01:52:50] so, here's what makes me think that it will work [01:52:53] glazou [daniel@moz-204094DD.disruptive-innovations.fr] has joined #developers [01:52:56] bonjour [01:52:56] if the window is another top-level window [01:53:00] mw22 [chatzilla@moz-63806515.wildpalms-wifi2.mozilla.hq] has joined #developers [01:53:01] smaugZzz [chatzilla@moz-DDD2A5AD.pp.htv.fi] is now known as smaug [01:53:04] as far as the Windows OS window manager is concerned [01:53:06] it works fine [01:53:13] any Adobe AIR app demonstrates that [01:53:19] so, my only difference would be that it's not a toplevel window [01:53:21] that's holding the SWF [01:53:24] we can do transparent windows too [01:53:29] oh really? [01:53:33] how...? [01:53:36] but only toplevel ones [01:53:37] I tried popup [01:53:42] same way other windows apps do it [01:53:44] and that kinda sucked, I got gray [01:53:48] make a popup [01:53:54] give it -moz-appearance:none, background:transparent [01:54:12] ah! [01:54:12] that's pretty much it [01:54:14] <@bz_sleep> well, it's been 14 hours [01:54:15] ok, maybe that'd do it [01:54:17] <@bz_sleep> still no crash data. :( [01:54:19] hey glazou [01:54:38] roc: so popup maps to top-level window at the OS level? [01:54:42] yeah [01:54:52] ok, let me try that [01:55:00] you can also create transparent XUL s and s [01:55:01] I know that opacity:0.5 gave me gray [01:55:15] you probably didn't cancel the -moz-appearance and got the theme background [01:55:27] yeah, that sounds right [01:55:42] how do I cancel moz-appearance, via setProperty("-moz-appearance", "none"); ? [01:55:48] I'm doing this from js [01:55:55] (prefer to keep my hands clean if I can :-) ) [01:56:05] yeah [01:56:10] hey roc, the new offices are now clean yet but all computers already up and running :-) sounds like a geeks' place ;-) [01:56:16] s/now/not [01:56:23] roc: will a transparent window with -moz-appareance: none have a titlebar etc.? (sorry to intrude) [01:56:26] glazou: :-) [01:56:35] first priority: Internt [01:56:41] second priority: toilet paper [01:57:15] wormsxulla: you want to set hidechrome="true" in your XUL root element [01:57:20] to remove the title [01:57:28] aazar [irc@moz-8F12591F.mc.videotron.ca] has quit IRC: Ping timeout [01:57:30] of course popups never have titles [01:57:45] roc: thanks. i didn't know about transparent windows WITH chrome [01:57:58] john: is this a new popup of your own, or an existing Firefox popup you want to make transparent? [01:58:08] a new one [01:58:22] my intent would then be to put an embed in the popup [01:58:28] and the embed would be "windowless" [01:58:32] or would that be equally pointless? [01:58:35] the easiest thing to do is just add style="-moz-appearance:none; background:transparent;" to the XML for the element [01:58:45] yeah, I wish [01:58:49] the stuff I'm adding to is anonid'd [01:58:56] so I have to do it programatically [01:59:03] I'm a bit confused [01:59:03] I don't think I can do it declaratively... [01:59:11] er, so tabBrowser.xml [01:59:16] declares certain things with anonid [01:59:21] so I can't use an overlay to add to it [01:59:48] I get a hold of the tabBox via [01:59:50] var tabBox = document.getAnonymousElementByAttribute(browser,"anonid","tabbox"); [01:59:50] well ok whatever [02:00:00] haha, yeah, I don't want to bug you too much [02:00:04] you can't make the *tab box" anonymous [02:00:08] let me try the popup thing to see if it does the right thing [02:00:14] I mean [02:00:19] you cant make the tabs transparent [02:00:24] right [02:00:36] where's your popup coming from? [02:00:39] I'm not trying to change the behavior of the tabs or the browser in general, in any way [02:00:47] from my init function [02:00:49] in the extension [02:00:54] so, the window.load event [02:00:56] brendan [brendaneic@moz-37758455.hsd1.ca.comcast.net] has quit IRC: Connection timed out [02:01:01] I just call document.createPopup [02:01:06] then I'll position it as neccessary [02:01:10] ok [02:01:15] keep in mind the window might move [02:01:17] and track if the user moves the top-level UI [02:01:21] right [02:01:22] ok [02:01:24] yeah [02:01:27] something like that might work [02:01:29] I'm guessing there's a way to track that via js? [02:01:33] dunno [02:01:48] it won't be perfectly smooth, I'm sure of that [02:01:49] midnightaz [chatzilla@155526C9.F50E6DAB.3D0C8E44.IP] has quit IRC: Quit: ChatZilla 0.9.79 [Firefox 2.0.0.10/2007111504] [02:01:58] yeah.... that kinda worries me [02:02:00] sorry this is such a pain [02:02:01] well, let me try it... [02:02:03] brendan [brendaneic@moz-37758455.hsd1.ca.comcast.net] has joined #developers [02:02:08] are you kidding me? [02:02:10] I've got the infamous roc helping me [02:02:10] there just wasn't time to do compositor for 1.9 [02:02:15] I'm actually pretty flattered [02:02:53] hey [02:02:55] I'm just a guy [02:03:03] don't flatter me :-) [02:03:11] yeah, but between you and a couple other folks [02:03:17] there's no one else that knows the guts of gecko [02:03:30] and like it or not, gecko is the engine that defines html [02:03:40] brendan [brendaneic@moz-37758455.hsd1.ca.comcast.net] has quit IRC: Quit: brendan [02:03:44] so, just, you know, make sure you don't get hit by a bus [02:03:47] we need that knowledge :-) [02:04:32] ok, thanks for the tip! :-) [02:05:14] sure, np [02:05:20] so, I'm screwing up the popup somehow [02:05:32] do I need to add it to some document first, before calling showPopup? [02:05:48] yeah [02:06:00] kaie [kaie@moz-CCF6E329.dip.t-dialin.net] has quit IRC: Quit: Leaving [02:06:51] joduinn [joduinn@moz-512827F9.dsl.static.sonic.net] has joined #developers [02:06:54] look in and around here, the autoscroll stuff uses a transparent popup [02:06:54] http://mxr.mozilla.org/seamonkey/source/toolkit/content/widgets/browser.xml#719 [02:07:18] ok, kewl! [02:07:23] so, I got the transparency thing to work [02:07:37] no, can I do popup.appendChild or popup.document.appendChild ? [02:07:42] no=so [02:09:53] kaie [kaie@moz-CCF6E329.dip.t-dialin.net] has joined #developers [02:10:21] ondrej [Miranda@moz-519B927F.cz] has joined #developers [02:10:50] popup.appendChild [02:10:55] a popup does not have its own document [02:11:02] (which maybe was a mistake, but there we are) [02:11:20] ok, so I should call popup.appendChild directly...? [02:11:26] sure [02:11:33] what's also weird is that I don't see the popup in the DOM inspector [02:11:39] philor [ringnalda@moz-838ECBDD.eug.or.uspops.net] has quit IRC: Ping timeout [02:11:47] oh, nm [02:13:26] ok, so, interesting results... [02:13:38] I can appendChild(oEmbed) if it's not transparent [02:13:48] but if it is, it doesn't work [02:14:01] as in, the appended embed into the popup doesn't appear at all [02:14:07] I just see the bleed through to whatever is underneath [02:14:11] great transparency [02:14:19] but no pixels rendered by the SWF [02:14:21] :-( [02:15:15] what's even worse, in the non-transparent case [02:15:15] tigerdog [tigerdog@moz-4D12B25A.san.res.rr.com] has quit IRC: Quit: Later, friends! [02:15:30] the SWF doesn't get the mouse events [02:15:44] dietrich [dietrich@moz-63806515.wildpalms-wifi2.mozilla.hq] has joined #developers [02:17:29] roc: any thoughts... [02:19:08] guess SWF doesn't like drawing to an HDC that's holding an RGBA bitmap :-( [02:19:24] hrm... [02:19:29] well, it does if it's not transparent [02:19:40] in that case it gets its own widget and its own HDC [02:19:44] I guess, can you point me to the code that handles the popup on the XPCOM side? [02:19:52] well, the thing is [02:19:56] it's transparency that screws it up [02:19:57] I don't think this is going to work, sorry [02:20:08] haha, well, that's ok [02:20:17] sounds like Flash just doesn't know how to draw to a transparent target [02:20:27] right... [02:20:34] well, there's still the win32 approach [02:20:45] that might work, but it'll be evil [02:20:47] of inserting a window with flash hosted on it [02:20:52] hrm.... [02:20:54] evil in what way...? [02:21:13] injecting an HWND that we don't know about into the Firefox HWND tree [02:21:21] sure... [02:21:30] but any technical evil-ness behind it....? [02:21:33] sdwilsh|away [sdwilsh@moz-242BA36C.public.engin.umich.edu] is now known as sdwilsh|sleep [02:21:38] or just bad form in theory? [02:21:48] more the latter [02:21:54] sspitzerMsgMe [sspitzer@moz-11FE7235.hsd1.ca.comcast.net] has joined #developers [02:21:57] I can't think of anything specific that will go wrong, but something might [02:22:11] <@bz_sleep> We Don't Support It [02:22:13] ok, well, if you can't think of anything, that means it's worth it for me to try [02:22:21] <@bz_sleep> Of course the things we do support don't do what you need... [02:22:39] bz_sleep should hunt more blockers [02:22:46] oh, I live on the edge [02:22:49] who needs support... [02:22:50] :-) [02:23:08] <@bz_sleep> "support" includes "fix bugs if there are some"... ;) [02:23:14] I know [02:23:16] but the thing is [02:23:20] I've never asked for a bug fix [02:23:28] <@bz_sleep> sure [02:23:29] I figure if it's broken, and bothers me enough, I should just fix it [02:23:32] :-) [02:23:32] bz_sleep should really sleep... [02:23:37] yeah, go sleep [02:23:40] :-) [02:23:44] oh, but [02:23:47] <@bz_sleep> yeah, having trouble with that. ;) [02:23:48] any thoughts on what I can do instead? [02:23:49] deb00t [Miranda@moz-4319B9E7.t-com.sk] has joined #developers [02:23:56] I mean [02:23:58] I want a SWF [02:24:00] with a donut [02:24:04] <@bz_sleep> not past what roc said [02:24:10] hrm... [02:24:13] <@bz_sleep> he knows a heck of a lot more about this than I do [02:24:17] ok, let me ask a different thing... [02:24:22] to both of you... [02:24:25] <@bz_sleep> "this" == "all the graphics stuff" [02:24:28] right... [02:24:29] stransky [stransky@moz-2952D2D0.redhat.com] has joined #developers [02:24:33] john: could you use instead of Flash for this? [02:24:35] well, this question is not really graphics [02:24:40] I wish [02:24:44] I need the flash vm [02:24:46] because a transparent canvas in the popup would probably work [02:25:01] <@bz_sleep> https://bugzilla.mozilla.org/chart.cgi?category=-All-&subcategory=-All-&name=1183&label0=1.9%2B+-+Content&line0=1201&label1=1.9%2B+-+Layout&line1=1206&label2=1.9%2B+-+Gfx%2FWidget&line2=1203&datefrom=&dateto=&action-wrap=Chart+This+List [02:25:02] with a donut etc [02:25:05] <@bz_sleep> That's just depressing. :( [02:25:10] so, here's another thought [02:25:20] actually, first let me confirm I understand the problem correctly [02:25:25] the only reason this doesn't work [02:25:32] is that my SWF is being embedded from the chrome [02:25:35] and the chrome tree [02:25:38] and DOM tree for each page [02:25:41] don't play well together [02:25:46] in the rendering pipeline, correct? [02:25:52] sort of yeah [02:26:00] feel free to correct... [02:26:07] is there something I said wrong... wrong terms, etc [02:26:08] <@bz_sleep> They have separate rendering pipelines, effectively [02:26:20] ok, so, shouldn't I be able to say, render pipeline 1, then 2 [02:26:25] the SWF is *always* on top [02:26:36] so render gecko first, then chrome surfaces [02:26:44] I was thinking I could even make manual calls to invalidate regions, etc [02:27:21] <@bz_sleep> Your real issue is that when the transparent region in the SWF changes you need to repaint it in the content document [02:27:23] <@bz_sleep> right? [02:27:33] let's say the transparent region stays the same [02:27:40] and is rectangular [02:27:52] I need the stuff the SWF overlays on top of the "content" [02:27:55] <@bz_sleep> If the transparent region stays the same, where do the problems come in? [02:27:55] to be in one place [02:28:08] <@bz_sleep> I guess if the content changes that region might not update... [02:28:18] right... [02:28:28] so, in my initial attempts at this [02:28:34] I waited for the dom to be parsed [02:28:41] <@bz_sleep> So here's my first question [02:28:45] and then just inserted the embed into the "content" tree [02:28:45] chewey [chewey@moz-6FAD7CAB.dip.t-dialin.net] has joined #developers [02:28:47] <@bz_sleep> do you need this to work with a stock Firefox? [02:28:57] Tomcat_ [Tomcat@moz-63806515.wildpalms-wifi2.mozilla.hq] has joined #developers [02:29:06] so, I'm willing to write an installer that will modify a stock firefox [02:29:09] into whatever state neccessary [02:29:12] tH_ [Rob@87.102.21.203] has joined #developers [02:29:18] but yes, the end-user will have a stock firefox install [02:29:22] <@bz_sleep> not quite what I had in mind. ; ) [02:29:28] and ideally I won't screw up anything for the user [02:29:32] Tomcat [Tomcat@moz-63806515.wildpalms-wifi2.mozilla.hq] has quit IRC: Ping timeout [02:29:36] Tomcat_ [Tomcat@moz-63806515.wildpalms-wifi2.mozilla.hq] is now known as Tomcat [02:29:37] I guess, put another way [02:29:37] tH_ [Rob@87.102.21.203] is now known as tH [02:29:39] <@bz_sleep> If you were compiling your own.... [02:29:41] <@bz_sleep> ok [02:29:51] if you had to put a SWF in a sidebar-like fashion [02:29:53] on top of the content [02:29:57] <@bz_sleep> so basically you need to make sure that invalidates happen in both places [02:29:57] how would you do it? [02:30:04] ok, right... [02:30:42] bz_sleep doesn't think we have an obvious way to observe them, though. :( [02:30:49] ah... [02:30:51] I was wondering about that [02:30:56] well, forget observing for a second [02:30:58] WeirdAl [chatzilla@moz-E0ACC29C.hsd1.ca.comcast.net] has quit IRC: Quit: ChatZilla 0.9.79 [Firefox 2.0.0.9/0000000000] [02:31:03] how do I request invalidation of the content areas? [02:31:07] <@bz_sleep> oh [02:31:08] the wiki page I saw was TBD [02:31:13] <@bz_sleep> that's easier. ;) [02:31:17] ah! [02:31:19] <@bz_sleep> There's an nsIFrame API [02:31:21] light at the end of some tunnel?! [02:31:33] wait, so, can I have an iframe [02:31:36] that never goes away [02:31:43] that's overlaid on top of all other content? [02:31:46] <@bz_sleep> hold on [02:31:49] as in, it doesn't get wiped out with page loads? [02:31:51] ok, holding :-) [02:31:56] <@bz_sleep> nsIFrame is just the rendering object [02:32:02] ok [02:32:02] <@bz_sleep> and it's not an API you can use from JS... [02:32:10] hah, ok.... [02:32:23] <@bz_sleep> basically, if you're in C++ [02:32:30] well, sounds like I am anyway [02:32:35] <@bz_sleep> and you have the two Window or Document or whatever pointers [02:32:36] my other approach is to inject an hWnd [02:32:50] <@bz_sleep> to the chrome and the content [02:33:02] ok... [02:33:03] nattokirai [jdaggett@moz-E23BAEEF.dslextreme.com] has quit IRC: Quit: nattokirai [02:33:20] is there anyway to overlay in a fixed place, "stuff" over the content? [02:33:21] <@bz_sleep> you can get the root frames for both [02:33:28] that doesn't get blown away on each page load? [02:33:32] <@bz_sleep> and then use http://lxr.mozilla.org/seamonkey/source/layout/generic/nsIFrame.h#1630 [02:33:43] ah, Invalidate(), ok [02:33:56] <@bz_sleep> mmm [02:34:08] I guess, I have no problem stuffing the SWF in "content" [02:34:12] <@bz_sleep> how evil do you want to be? ;) [02:34:14] I just need it to be a) on top and b) stay put [02:34:16] very evil! [02:34:21] <@bz_sleep> ok [02:34:38] <@bz_sleep> a user stylesheet that binds with some XBL [02:34:49] ok... [02:34:54] <@bz_sleep> The XBL could look something like: [02:34:57] <@bz_sleep> [02:35:17] <@bz_sleep> [02:35:23] <@bz_sleep> [02:35:27] <@bz_sleep> [02:35:39] <@bz_sleep> (well, plus the other crap you need in the XBL file, etc, etc [02:35:49] <@bz_sleep> There isn't that much more [02:36:18] <@bz_sleep> If the binding is installed at a chrome:// URI, after the first time it gets loaded the loads will be sync [02:36:19] oh [02:36:28] interesting... [02:36:32] but during tabbed browsing [02:36:34] <@bz_sleep> So it shouldn't even affect performance too too seriously [02:36:38] I would have a unique instance of the swf per tab? [02:36:46] <@bz_sleep> yes, with this approach you would [02:36:49] crap [02:36:55] ok, you got me 99% of the way there [02:36:58] I need the other 1% :-) [02:37:07] <@bz_sleep> heh [02:37:12] so the "content" tree... [02:37:16] is unique to each tab? [02:37:22] <@bz_sleep> yeah [02:37:25] and the only way to "overlay" all of them [02:37:27] is to use chrome? [02:37:31] <@bz_sleep> yep [02:37:36] god F***** it [02:37:39] ok... [02:37:44] yeah, in terms of performance [02:37:48] <@bz_sleep> Is the swf pretty static? [02:37:51] how would you feel about 50 SWFs in 50 tabs? [02:37:53] <@bz_sleep> Or is it actually changing? [02:38:02] so, it's not changing as much as it's doing network I/O [02:38:02] <@bz_sleep> I'd feel terrible! [02:38:06] yeah, exactly [02:38:09] <@bz_sleep> Heck, I feel that way about one swf in one tab [02:38:11] ahahaha [02:38:19] don't worry, I'll disable the rt-click menu [02:38:23] you'll have to use Spy++ to find it [02:38:34] and even then you guys wrap it with your Mozilla win32 class [02:38:41] anyway... [02:38:43] <@bz_sleep> if you're willing to tear down and recreate the thing on tab switches, you could probably do it that way too... [02:38:48] <@bz_sleep> inject it into the content DOM [02:38:58] so, wouldn't that flicker? [02:39:04] <@bz_sleep> when the tab switches, remove the node from the one document, place one in the new document [02:39:05] <@bz_sleep> mmmm [02:39:08] <@bz_sleep> it might, yes. [02:39:16] I guess that might be worth a shot [02:39:26] so, what would I do, remove it from one content tree [02:39:31] and add it to the other? [02:39:37] <@bz_sleep> yeah [02:39:40] I thought I could only override the html tree via a user style? [02:39:44] I can do this programatically as well? [02:39:50] as in html.append(...) [02:39:53] or something similar? [02:39:53] <@bz_sleep> I'd create a new one and stick it in the new document [02:39:54] <@bz_sleep> sure [02:39:58] <@bz_sleep> with an extension, no problem [02:40:01] really...? [02:40:04] <@bz_sleep> greasemonkey, eg [02:40:06] <@bz_sleep> does it all the time. ;) [02:40:07] ok, so, document.appendChild ...? [02:40:16] well, but I mean, I have to do this on each page load? [02:40:21] <@bz_sleep> well, probably more like document.documentElement.appendChild() [02:40:22] <@bz_sleep> and yes [02:40:26] oh! [02:40:29] <@bz_sleep> you'd have to do it on every pageload [02:40:32] <@bz_sleep> and every tab switch [02:40:33] well, I did that in my first try :-) [02:40:36] ohhhh [02:40:41] wait, so this html overriding XBL thing [02:40:52] that doesn't solve the problem of having to inject it on each page load? [02:40:59] <@bz_sleep> well [02:41:00] I guess that's the main thing I'm trying to fight [02:41:04] that the SWF stay put [02:41:10] <@bz_sleep> the xbl thing would create one on each pageload, yeah [02:41:12] while necko is busy fetching, and gecko busy laying out [02:41:20] <@bz_sleep> pretty much any content solution would.... [02:41:26] ok... [02:41:28] <@bz_sleep> since we sort of tear down the old page [02:41:34] so, the content gets "torn down" each page load? [02:41:39] I see [02:42:06] so, I guess my older statement of "the only way to overlay the content with something that stays put is with chrome" [02:42:09] is correct...? [02:42:17] where "stays put" means doesn't flicker or go away during page load....? [02:42:21] <@bz_sleep> yeah [02:42:24] crap [02:42:25] <@bz_sleep> in that case, yes [02:42:31] double crap [02:42:47] nothing iframe related I can do? [02:42:51] <@bz_sleep> Your hwnd approach sounds like the next thing to try.... [02:42:56] yeah... [02:42:58] it's a real PITA [02:43:06] <@bz_sleep> it sounds like it [02:43:09] I've already screwed up SetWindowsHookEx many times [02:43:19] then I thought "maybe this firefox extension thing is not so bad" [02:43:21] then I got to where I am now [02:43:25] welcome to my life :-( [02:43:55] Mook [mook@moz-13092AE3.dsl.pltn13.pacbell.net] has quit IRC: Quit: sleep [02:43:55] <@bz_sleep> heh [02:44:04] <@bz_sleep> the extension thing is great [02:44:09] yeah, it is! [02:44:11] <@bz_sleep> as long as you stick to stuff we can do.... [02:44:12] for everything except this [02:44:15] <@bz_sleep> well [02:44:15] yeah, exactly [02:44:20] Honza [chatzilla@moz-E61C758C.ip.b26.cz] has left #developers [02:44:21] I was amazed how much stuff adobe stole from xul [02:44:21] <@bz_sleep> it's acceptable as long as you stick to it [02:44:30] <@bz_sleep> for FLEX, you mean? [02:44:35] yeah! [02:44:42] daim [David_Mart@20A20C50.14A6DDD8.CAE56860.IP] has joined #developers [02:44:47] I guess maybe some talent/employees were shared..? [02:45:00] bz_sleep doesn't think so, offhand... [02:45:11] I also recall thinking that xaml was pretty clever [02:45:14] a few years back [02:45:14] <@bz_sleep> but it's not like XUL is hard to find out there... [02:45:28] but turns out XUL had the same "cool concepts" from back in the day [02:45:37] <@bz_sleep> anyway [02:45:40] yeah, ok [02:45:40] <@bz_sleep> sleep for real [02:45:43] agreed [02:45:44] bz_sleep glares at the green line [02:45:49] thank you very much for all the help! [02:46:02] I'll have to buy you a beer sometime [02:46:08] (I'm local to sfba) [02:46:18] bz_sleep is in Chicago [02:46:18] <@bz_sleep> for now [02:46:26] oh? [02:46:29] they don't let you guys rest? [02:46:31] <@bz_sleep> Might be in the Bay area in a few weeks, for a wedding... [02:46:41] I'd just tatoo "created world's first browser - f** off" [02:46:41] <@bz_sleep> hmm? [02:46:57] if I were bz :-) [02:47:03] davida [dascher@moz-63806515.wildpalms-wifi2.mozilla.hq] has quit IRC: Quit: davida [02:47:09] wait, chicago, it's 4am there? [02:47:12] christ [02:47:15] <@bz_sleep> 2:47 [02:47:20] bz_sleep should _really_ sleep [02:47:22] ok, equally bad :-) [02:47:24] yeah, go sleep [02:47:26] <@bz_sleep> g'night [02:47:28] g'nite [02:48:14] oh, for anyone still around [02:48:25] is there an easy way to use windows pipes from js? [02:48:34] Honza [chatzilla@349FF957.E2F5C102.32697916.IP] has joined #developers [02:48:45] since it sounds like I'll have to try the hwnd approach [02:48:52] the SWF will somehow need to get a hold of the DOM [02:49:09] so, pass-by-value semantics over a windows named pipe is pretty much the only way to marshall things back and forth [02:49:13] thoughts...? [02:52:55] laurentj [laurentj@moz-204094DD.disruptive-innovations.fr] has joined #developers [02:53:16] dao [dao@moz-9A731886.pool.einsundeins.de] has joined #developers [02:53:52] karlt [karl@moz-8490F924.jetstream.xtra.co.nz] has quit IRC: Ping timeout [02:58:11] how do i get 2 flexible labels to have their text as far apart as possible? [02:58:37] the second label will have the text start near the middle.. so i could text-align: right, but would that affect other locales? [03:00:06] Aleksej [Aleksej2@moz-C51E1CF2.broadband.corbina.ru] has quit IRC: Quit: Help testing Firefox, Thunderbird et al! See http://quality.mozilla.org/en/get-involved [03:00:24] Aleksej [Aleksej2@moz-C51E1CF2.broadband.corbina.ru] has joined #developers [03:01:05] hi [03:04:15] Mardak: could you add a spacer between labels? [03:04:38] Mardak: and put flex=1 only on that one [03:04:58] is there a way to get labels to crop without making them flex or specifyinga size? [03:06:10] Hydraxr [Miranda@moz-79E03EAF.dsl.prima.net.ar] has quit IRC: Connection reset by peer [03:07:45] this kinda gives the desired behavior..