[Ext]Session Manager 0.6.1.13 for FF 2.0+ [Mar 10, 2008]

Announce and Discuss the Latest Theme and Extension Releases.
Locked
User avatar
Morac
Posts: 2519
Joined: February 9th, 2004, 8:20 pm
Contact:

[Ext]Session Manager 0.6.1.13 for FF 2.0+ [Mar 10, 2008]

Post by Morac »

New thread started, please click here.
Last edited by Morac on September 2nd, 2008, 1:26 pm, edited 46 times in total.
User avatar
gssq
Posts: 504
Joined: December 7th, 2002, 10:17 am
Location: Singapore
Contact:

Post by gssq »

Is this the same version as the 0.43 that you put out?
User avatar
Morac
Posts: 2519
Joined: February 9th, 2004, 8:20 pm
Contact:

Post by Morac »

Almost the same. The Cache Fixer that zeniko provided was added to this and the version number was bumped to 0.5. Other than that it's the same.
alta88
Posts: 1029
Joined: January 28th, 2006, 3:08 pm

Post by alta88 »

morac, first of all many thanks for doing this. and of course, zeniko's original idea, allowing one button managment of windows -> tabs -> tab histories and easy ways to name sessions and access histories (via TMP style and contextmenu snippets) is, for me, one of the top web usability tools.

some testing shows no real problems, old session names and their histories were converted seamlessly. after clearing out old backup session files, crash recovery also restored everything properly. i don't use closed tabs/windows recovery so can't say about that.

i think there is one leftover bug, which since Fx almost never crashes for me, i forgot about. steps are to load a named session A (with a specific window size/position), restart or crash/start, then load/replace another named session B (with a different size/pos), and kill the process. upon selecting Recover Previous Session, the size/pos of B is not restored although tabs etc are. instead, it's loaded into the size/pos of A.

interestingly, SM 0.4.3 (in crash recovery code) just started throwing a flood of aBrowser console errors in Fx2. so you're just in time!
chilliadus
Posts: 2
Joined: January 6th, 2007, 3:03 pm

Post by chilliadus »

Thank you so much. Now I can upgrade all my remaining firefox 1.5.0.9 to 2.0.0.1, at last.
User avatar
Morac
Posts: 2519
Joined: February 9th, 2004, 8:20 pm
Contact:

Post by Morac »

Your welcome. I'd also like to thank zeniko for the original extension and for his help on some issues I had when doing the conversion.

alta88 wrote:i think there is one leftover bug, which since Fx almost never crashes for me, i forgot about. steps are to load a named session A (with a specific window size/position), restart or crash/start, then load/replace another named session B (with a different size/pos), and kill the process. upon selecting Recover Previous Session, the size/pos of B is not restored although tabs etc are. instead, it's loaded into the size/pos of A.


The closed tab recovery and crash recovery processing is handled by SessionStore (which is built into Firefox 2.0). The extension provides a session choice list on a crash, but if the current session is chosen it lets Firefox handle the recovery on its own. This would seem to indicate that the bug would actually be a Firefox bug (since SessionStore is part of Firefox).

Basically the extension is just an interface into the SessionStore API. The only thing it really does is allow manual saving and restoring of sessions. The session information itself comes from and is sent to the Firefox SessionStore component.

I tried to recreate the problem you mentioned, but everything thing seemed fine. A quick question though, if you select "Recover Previous Session" it should load Session A, not Session B since that was the previous one. Selecting "Recover Current Session" will load Session B. I tested both cases and they both worked.

Also remember that by default the session data is only saved every 10 seconds. If you reload the browser and crash it in less than 10 seconds, no data from that session will be stored.


On a side note, I did find a bug in that the saved Crashed Session sessions aren't loading at all. I'm pretty sure I know why this isn't happening.
Also the Crashed Sessions aren't obeying the backup number limit. I'll have to look into this one.
User avatar
Morac
Posts: 2519
Joined: February 9th, 2004, 8:20 pm
Contact:

Post by Morac »

Okay I fixed the bug with saving backups of crashed sessions. It also looks like the number of backups corrects itself when the browser is restarted so that isn't a problem.

I was somewhat torn between re-uploading 0.5 or upping the version number to 0.5.1 and submitting that so I split the difference. I figured re-uploading was a bad idea because different people would have different versions of 0.5, but as Mozilla Addons hasn't posted 0.5 yet it seemed dumb to let that post and then upload 0.5.1 so I split the difference. I basically made it so that 0.5 does not exist.

I used the same filename for the fix so as to not screw up zenikos update check, but I bumped up the version number to 0.5.1. I then removed the 0.5 submittal to Mozilla Addons and submitted 0.5.1. That way people who grabbed the old 0.5 version will get an update notice once Mozilla Addons accepts 0.5.1 and people who have 0.4.3 should get 0.5.1 automatically.

Note it takes about 12 hours to replicate the file so don't try and grab the file again now or you'll just get 0.5 again. Don't worry if you do get 0.5 since it will automatically upgrade to 0.5.1 once approved at Mozilla Addons.
alta88
Posts: 1029
Joined: January 28th, 2006, 3:08 pm

Post by alta88 »

hmm, i tried again and can recreate it. definitely selected Recover Current Session (sorry about the prev mistype), also browsed around > 10 secs, closed 1 tab to make sure there would be a difference. and upon restart, the closed tab was gone, as it should, but size/pos were of the session A prior to loading/killing B.. it seems while content may be saved every 10 secs, screen pos isn't captured/dumped/reset unless there is an explicit save?

also just saw another interesting thing: on loading session B, one of the tabs (heh mozillazine) took too long and timed out. the site in the same tab position in A as mozillazine in B, upon doing a Retry on the Fx timeout screen, is what loaded in B. all other B tabs loaded properly.
User avatar
Morac
Posts: 2519
Joined: February 9th, 2004, 8:20 pm
Contact:

Post by Morac »

Okay I managed to recreate the problem, but it is a Firefox bug (or design) and not with the extension.

You can demonstrate this yourself. After you load session A and reload the browser, go into the addon manager and disable Session Manager. Then load Session B wait a bit and crash Firefox. When Firefox is loaded, Session Manager will be disabled so you'll get the normal do you want to resume prompt. If you pick yes, you'll see the same problem with the window size and location not being correct.

You can even save off the sessionstore.js file from your profile directory after you crash the browser and then put it back in to a brand new profile and you'll see the same problem.

I can see that the correct window location values are stored within the sessionstore.js file, but according to the sessionstore component file the initial window values are pulled in from localstore.rdf. I believe the localstore.rdf file is updated when the browser shuts down normally so if the browser crashes, the old position and size data is used.

I'm not sure why SessionStore was designed this way. It would be rather trivial to not use the localstore.rdf data in the case of a crash and use what was stored in sessionstore.js but it wasn't coded that way. You can open a bug at http://bugzilla.mozilla.org if you want it want it fixed (mention SessionStore).

In the mean time a work around is to select the last "[ Crashed Session ...]" from Session Manager. Session Manager saves the crash data and the window position and size is restored correctly when manually loaded..
LLane
Posts: 37
Joined: July 30th, 2006, 2:26 am

Post by LLane »

Just wanted to say thanks to Morac and zeniko for helping me solve the problem I posted in the second-to-the-last page of the previous thread.

I had to both enable Firefox's built-in Session Restore and disable Tab Mix Plus' Single Window mode for things to work properly, though.

When Single Window Mode is enabled and I try to restore a session without overwriting the current window, first the restored session will pop up in the new window, but then when it tries to merge the two windows, I'm just left with the tabs from my current window + a single blank tab rather than [x] tabs from the restored session. I don't know if there is any way that the restored session can be made to show up in the currently open window without overwriting the existing tabs (maybe not, due to the fact that Session Manager saves history and cookies and all that), but I can live with the limitation for the goodness that this extension provides. Thank you for keeping it up!
User avatar
Morac
Posts: 2519
Joined: February 9th, 2004, 8:20 pm
Contact:

Post by Morac »

Tab Mix Plus is trying to move the window into a tab the moment the window opens. Session Manager waits for the new window to open before restoring the session data.

A work around for this is to hold down the ctrl key while clicking the closed window or session. This will activate "append" mode and add the new windows' tabs' into the current window. This works in TMP's single window mode.

I threw together a development build of SessionManager to check for TMP's single window mode and if set to force append mode to occur. Try it out and tell me what you think.


On an unrelated note, Mozilla Addons has accepted version 0.5.1 so anyone with 0.5 just check for an update and you'll be upgraded.
LLane
Posts: 37
Joined: July 30th, 2006, 2:26 am

Post by LLane »

Oh, that works wonderfully! I'm thrilled with the option, and thank you very much for making it available. I really appreciate this, Morac. :) Thanks again.
BipolarBear
Posts: 57
Joined: June 16th, 2005, 1:40 pm

Post by BipolarBear »

The description for Session Manager states that "This extension stores more data than [Tab Mix Plus]".

What data does Session Manager store that TMP does not?
old zeniko
Posts: 0
Joined: December 31st, 1969, 5:00 pm

Post by old zeniko »

Morac wrote:I'm not sure why SessionStore was designed this way.

Mainly because (1) this more reliably placed windows correctly on the secondary display (manual placing occasionally moved the window to the primary display at startup) and because (2) this wouldn't screw up window placing when the last closed window was a resized popup (whose size isn't stored in localstore.rdf).

BipolarBear wrote:What data does Session Manager store that TMP does not?

Text entered in forms, cookies, window positions, POSTDATA, frameset configurations and a few other details.
BipolarBear
Posts: 57
Joined: June 16th, 2005, 1:40 pm

Post by BipolarBear »

zeniko wrote:
BipolarBear wrote:What data does Session Manager store that TMP does not?
Text entered in forms[...]

I haven't checked the other types of data, but Session Manager 0.5.1 isn't saving forms properly here, with Firefox 2.0.0.1.

I've tested with this URL:

http://www.roboform.com/test.html

When I open that URL, enter text into a few of the fields, and then either: [1] Save it as a session, close all tabs, and restore the session, or [2] Restart Firefox, only a single (seemingly random) field is filled.

I have TMP installed, but it's set per instruction.
Locked