Looking at CSS and HTML
Using console.log and ajax listening
This new model works great for the CSS and HTML usage. You can turn on firebug on the site you are looking at, check out the css and html, close firebug and be done.
But for console.log and ajax listening (especially at page load), it doesn't really work. You have to make sure firebug is open before the page is loaded if you want to see any output of the console.log and watch any ajax calls. And since firebug closes itself on every new page, this makes watching stuff on page load very frustrating.
Personally, if I have firebug open in a tab, I expect it to stay open in that tab until I close it (and for it to be listening for ajax requests and console.log calls on that tab. I don't care if I'm switching domains or staying in the same domain, if I opened up, stay open. Since I'm usually debugging more than one page, this new model is becoming very frustrating. I setup the environment, I go through the steps to get the form to submit, I submit expecting to check ajax requests and console.log calls on the next page and firebug closes. Completely destroying the possibility to debug. I've started changing console.log to something else and catching ajax requests in another way just so I can work.
Another frustrating aspect is that one workaround this issue is to make sure firebug has already been opened on each of the pages. This makes firebug stay open when you switch pages. But when I'm done debugging, I close it and assume that it should stay closed. But firebug only closes it for the page I'm currently on. If I go to one of the other pages, firebug reopens unexpectedly. So I close it. Another page reopens it, I close it. And it continues (I've usually opened it on 10+ pages in the course of debugging). And now that I've closed it on all those pages, when I want to debug them (for another issue), I've got to remember to reopen it on each of those pages (and I only remember after being reminded painfully after firebug closes the first couple of times on me).
The one issue I would have with having it open on all tabs is that I don't want XHR requests and JS errors jumbled together. If Firebug can differentiate between which page I'm current looking at and only show the XHR requests and JS errors for that page, then I'm fine with firebug being open across all tabs/pages.
Trevan
Landon
Regards, Nux.
Couldn't this be configured by some kind of setting? If there's "On
for all web pages" why not "Minimized for all web pages"?
You may say this can clutter the UI, and you're probably right. But it
would be nice to have this option, at least in about:config, while we
search for a good alternative in the UI ;)
Hernán
I've reported bug 1730 regarding this issue (I made it from another
account, thigs thathappen when you log with two different accounts
into google services...).
http://code.google.com/p/fbug/issues/detail?id=1730
Hernán
The new activation model should be pretty simple to use, yet the
implementation might still be a little buggy.
The idea behind this activation model is the following:
1) You can have firebug opened attached to the window *OR* detached from it.
2) You can have only one firebug window detached *per* Firefox window.
That means, if you want to have two different firebug windows opened
at the same time, you should open two Firefox windows as well.
3) No matter how you opened Firebug, the User Interface should reflect
the status of firebug in the tab you have focus. This leads to some
sub-items:
3.1) You opened firebug attached to the window in "Tab A" where
firebug is enabled, and then switched to other "Tab B".
3.1.1) If firebug is not enabled in "Tab B", the UI shouldn't show up.
3.1.2) If firebug is enabled in "Tab B", you should see the UI
reflecting the status of firebug in "Tab B".
3.2) You opened firebug detached from the window. The behavior of
firebug should be the same as in 3.1, just that all the action happens
in the detached firebug window.
4) When you change from "Tab A" to "Tab B" in the browser, firebug
keeps running in "Tab A" but in background, while the UI reflects the
status of firebug in "Tab B". When you switch back from "Tab B" to
"Tab A", the running instance of firebug which was in the background
is restored, and the one from "Tab B" is the one that now goes to the
background.
This means that if you left firebug in one tab doing some AJAX, when
you switch back to that tab, the console or Net panel should list the
full log of the transfers, just like if you hadn't switched from that
tab at all.
But that's an ideal activation model, if some things doesn't behave as
expected it might be that your facing some bug in the code. And by the
way, it would be wonderful if you reported it ;)
Hernán
I would be happy to try my hand at writing one (if possible to do the
scenario in the other post, if not then I guess domain whitelisting
would be good enough).