PATCH: save session on close

Adam Foran <[email protected]> Thu, 06 Oct 2005 22:30:28 -0400
Newsgroups gmane.comp.web.galeon.devel
Message-ID <[email protected]>
--=-JiIX5j2luBX7HcaiknRK
Content-Type: text/plain
Content-Transfer-Encoding: 7bit


Hi there,

I've attached a patch that adds a 'Quit and Save Session'
action to the File Menu. The sensitivity of this action is
toggled on/off based on the off/on value of always_save_session
key.

The start-up behaviour is driven by a little file called
~/.galeon/session_resume_flag that gets created when this
action is used to quit the app.

Thanks,

Adam
 

--=-JiIX5j2luBX7HcaiknRK
Content-Disposition: attachment; filename=session_on_close.patch
Content-Type: text/x-patch; name=session_on_close.patch; charset=UTF-8
Content-Transfer-Encoding: base64

SW5kZXg6IHNyYy9nYWxlb24td2luZG93LmMNCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0NClJDUyBmaWxlOiAvY3ZzL2du
b21lL2dhbGVvbi9zcmMvZ2FsZW9uLXdpbmRvdy5jLHYNCnJldHJpZXZpbmcgcmV2aXNpb24gMS4z
MDkNCmRpZmYgLXUgLXAgLXIxLjMwOSBnYWxlb24td2luZG93LmMNCi0tLSBzcmMvZ2FsZW9uLXdp
bmRvdy5jCTEyIEp1bCAyMDA1IDIwOjE4OjE1IC0wMDAwCTEuMzA5DQorKysgc3JjL2dhbGVvbi13
aW5kb3cuYwk3IE9jdCAyMDA1IDAyOjAzOjMyIC0wMDAwDQpAQCAtMzMzLDYgKzMzMyw4IEBAIHN0
YXRpYyBHdGtBY3Rpb25FbnRyeSBlbnRyaWVzW10gPSB7DQogCSAgTl8oIlNlZSBwYWdlIHByb3Bl
cnRpZXMiKSwgR19DQUxMQkFDSyh3aW5kb3dfY21kX3ZpZXdfcGFnZV9pbmZvKSB9LA0KIAl7ICJG
aWxlQ2xvc2VUYWJBY3Rpb24iLCBHVEtfU1RPQ0tfQ0xPU0UsIE5fKCJfQ2xvc2UiKSwgIjxjb250
cm9sPnciLA0KIAkgIE5fKCJDbG9zZSB0aGUgY3VycmVudCBwYWdlIiksIEdfQ0FMTEJBQ0sod2lu
ZG93X2NtZF9maWxlX2Nsb3NlX3RhYikgfSwNCisJeyAiRmlsZVF1aXRBbmRTYXZlQWN0aW9uIiwg
TlVMTCwgTl8oIlF1aXQgYW5kIFNhdmUgU2Vzc2lvbiIpLCBOVUxMLA0KKwkgIE5fKCJDbG9zZSBh
bGwgd2luZG93cywgc2F2ZSBzZXNzaW9uLCBhbmQgcXVpdCIpLCBHX0NBTExCQUNLKHdpbmRvd19j
bWRfZmlsZV9zYXZlX2FuZF9xdWl0KSB9LA0KIAl7ICJGaWxlUXVpdEFjdGlvbiIsIEdUS19TVE9D
S19RVUlULCBOXygiX1F1aXQiKSwgIjxjb250cm9sPnEiLA0KIAkgIE5fKCJDbG9zZSBhbGwgd2lu
ZG93cyBhbmQgcXVpdCIpLCBHX0NBTExCQUNLKHdpbmRvd19jbWRfZmlsZV9xdWl0KSB9LA0KIA0K
QEAgLTE2MzksNiArMTY0MSwyOCBAQCBwZXJtaXNzaW9uX2NoYW5nZWRfY2IgKEdhbGVvbkVtYmVk
U2hlbGwgDQogfQ0KIA0KIHN0YXRpYyB2b2lkDQordXBkYXRlX3F1aXRfYW5kX3NhdmVfc2Vzc2lv
bl9hY3Rpb25fc2Vuc2l0aXZpdHkgKEdhbGVvbldpbmRvdyAqd2luZG93LCBnYm9vbGVhbiBzZW5z
aXRpdmUpDQorew0KKwlHdGtBY3Rpb24qIGFjdGlvbiA9IGd0a191aV9tYW5hZ2VyX2dldF9hY3Rp
b24gKHdpbmRvdy0+bWVyZ2UsICIvdWkvbWVudWJhci9GaWxlL0ZpbGVRdWl0QW5kU2F2ZSIpOw0K
KwlpZiAoYWN0aW9uKQ0KKwl7DQorCQlnX29iamVjdF9zZXQgKEdfT0JKRUNUKGFjdGlvbiksICJz
ZW5zaXRpdmUiLCBzZW5zaXRpdmUsIE5VTEwpOw0KKwl9DQorfQ0KKw0KKw0KK3N0YXRpYyB2b2lk
DQorc2F2ZV9zZXNzaW9uX2djb25mX2NoYW5nZWRfY2IgKEdDb25mQ2xpZW50ICpjbGllbnQsDQor
CQkJICAgICAgIGd1aW50IGNueG5faWQsDQorCQkJICAgICAgIEdDb25mRW50cnkgKmVudHJ5LA0K
KwkJCSAgICAgICBHYWxlb25XaW5kb3cgKndpbmRvdykNCit7DQorCWdib29sZWFuIHNlbnNpdGl2
ZSA9ICFlZWxfZ2NvbmZfZ2V0X2Jvb2xlYW4gKENPTkZfR0VORVJBTF9BTFdBWVNfU0FWRV9TRVNT
SU9OKTsNCisJdXBkYXRlX3F1aXRfYW5kX3NhdmVfc2Vzc2lvbl9hY3Rpb25fc2Vuc2l0aXZpdHkg
KHdpbmRvdywgc2Vuc2l0aXZlKTsNCit9DQorDQorDQorc3RhdGljIHZvaWQNCiBnYWxlb25fd2lu
ZG93X2luaXQgKEdhbGVvbldpbmRvdyAqd2luZG93KQ0KIHsNCiAJR3RrVG9nZ2xlQWN0aW9uICpv
ZmZsaW5lX2FjdGlvbjsNCkBAIC0xODgwLDYgKzE5MDQsMTQgQEAgZ2FsZW9uX3dpbmRvd19pbml0
IChHYWxlb25XaW5kb3cgKndpbmRvdw0KIAl1aV9maWxlID0gZ3VsX2dlbmVyYWxfdXNlcl9maWxl
KCJnYWxlb24tZWdnLXVpLnhtbCIsIFRSVUUpOw0KIAlndGtfdWlfbWFuYWdlcl9hZGRfdWlfZnJv
bV9maWxlICh3aW5kb3ctPm1lcmdlLCB1aV9maWxlLCBOVUxMKTsNCiAJZ19mcmVlICh1aV9maWxl
KTsNCisNCisJaWYgKCBlZWxfZ2NvbmZfZ2V0X2Jvb2xlYW4gKENPTkZfR0VORVJBTF9BTFdBWVNf
U0FWRV9TRVNTSU9OKSApDQorCXsNCisJCXVwZGF0ZV9xdWl0X2FuZF9zYXZlX3Nlc3Npb25fYWN0
aW9uX3NlbnNpdGl2aXR5ICh3aW5kb3csIEZBTFNFKTsNCisJfQ0KKwlnYWxlb25fbm90aWZpY2F0
aW9uX2FkZCAoQ09ORl9HRU5FUkFMX0FMV0FZU19TQVZFX1NFU1NJT04sDQorCQkJCShHQ29uZkNs
aWVudE5vdGlmeUZ1bmMpc2F2ZV9zZXNzaW9uX2djb25mX2NoYW5nZWRfY2IsDQorCQkJCXdpbmRv
dywgJndpbmRvdy0+cHJpdi0+bm90aWZpZXJzKTsNCiANCiAJZ3RrX3VpX21hbmFnZXJfZW5zdXJl
X3VwZGF0ZSAod2luZG93LT5tZXJnZSk7DQogDQpJbmRleDogc3JjL3Nlc3Npb24uaA0KPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQ0KUkNTIGZpbGU6IC9jdnMvZ25vbWUvZ2FsZW9uL3NyYy9zZXNzaW9uLmgsdg0KcmV0cmll
dmluZyByZXZpc2lvbiAxLjMwDQpkaWZmIC11IC1wIC1yMS4zMCBzZXNzaW9uLmgNCi0tLSBzcmMv
c2Vzc2lvbi5oCTEwIEZlYiAyMDA1IDE4OjU2OjE3IC0wMDAwCTEuMzANCisrKyBzcmMvc2Vzc2lv
bi5oCTcgT2N0IDIwMDUgMDI6MDM6NDkgLTAwMDANCkBAIC04Nyw2ICs4Nyw4IEBAIHZvaWQgICAg
ICAgICAgc2Vzc2lvbl9hZGRfd2luZG93ICAgICAgCSgNCiB2b2lkICAgICAgICAgIHNlc3Npb25f
cmVtb3ZlX3dpbmRvdyAgICAgKFNlc3Npb24gKnNlc3Npb24sDQogCQkJCQkgR2FsZW9uV2luZG93
ICp3aW5kb3cpOw0KIA0KK3ZvaWQgICAgICAgICAgc2Vzc2lvbl9zZXRfcmVsb2FkX25leHRfc3Rh
cnQgKFNlc3Npb24gKnNlc3Npb24pOw0KKw0KIEdfRU5EX0RFQ0xTDQogDQogI2VuZGlmDQpJbmRl
eDogc3JjL3Nlc3Npb24uYw0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQ0KUkNTIGZpbGU6IC9jdnMvZ25vbWUvZ2FsZW9u
L3NyYy9zZXNzaW9uLmMsdg0KcmV0cmlldmluZyByZXZpc2lvbiAxLjE3Mg0KZGlmZiAtdSAtcCAt
cjEuMTcyIHNlc3Npb24uYw0KLS0tIHNyYy9zZXNzaW9uLmMJMjcgQXVnIDIwMDUgMTg6MTI6MzMg
LTAwMDAJMS4xNzINCisrKyBzcmMvc2Vzc2lvbi5jCTcgT2N0IDIwMDUgMDI6MDM6NTcgLTAwMDAN
CkBAIC0yOSw2ICsyOSw4IEBADQogDQogI2luY2x1ZGUgPHN0cmluZy5oPg0KICNpbmNsdWRlIDx0
aW1lLmg+DQorI2luY2x1ZGUgPHVuaXN0ZC5oPg0KKyNpbmNsdWRlIDxmY250bC5oPg0KIA0KICNp
bmNsdWRlIDxnbGliL2dpMThuLmg+DQogI2luY2x1ZGUgPGd0ay9ndGtkaWFsb2cuaD4NCkBAIC0y
NTYsNiArMjU4LDE5IEBAIGNyYXNoZWRfcmVzdW1lX2RpYWxvZyAoU2Vzc2lvbiAqc2Vzc2lvbikN
CiAJcmV0dXJuIEZBTFNFOw0KIH0NCiANCitzdGF0aWMgY2hhcioNCitnZXRfc2Vzc2lvbl9sb2Fk
X29uX3Jlc3VtZV9maWxlbmFtZSAoKQ0KK3sNCisJY2hhciAqbG9hZF9vbl9uYW1lOw0KKw0KKwls
b2FkX29uX25hbWUgPSBnX2J1aWxkX2ZpbGVuYW1lIChnX2dldF9ob21lX2RpciAoKSwNCisJCQkJ
CSBHQUxFT05fRElSLA0KKwkJCQkJICJzZXNzaW9uX3Jlc3VtZV9mbGFnIiwNCisJCQkJCSBOVUxM
KTsNCisNCisJcmV0dXJuIGxvYWRfb25fbmFtZTsNCit9DQorDQogLyoqDQogICogc2Vzc2lvbl9h
dXRvcmVzdW1lOg0KICAqIEBzZXNzaW9uOiBhICNTZXNzaW9uDQpAQCAtMjcwLDkgKzI4NSwxMyBA
QCBTZXNzaW9uUmVzdW1lVHlwZQ0KIHNlc3Npb25fYXV0b3Jlc3VtZSAoU2Vzc2lvbiAqc2Vzc2lv
bikNCiB7DQogCWNoYXIgKnNhdmVkX3Nlc3Npb247DQorCWNoYXIgKmxvYWRfb25fcmVzdW1lX2Zp
bGU7DQogCWdib29sZWFuIGxvYWRlZCA9IEZBTFNFOw0KKwlnYm9vbGVhbiBsb2FkX29uX3Jlc3Vt
ZSA9IEZBTFNFOw0KIAkNCiAJc2F2ZWRfc2Vzc2lvbiA9IGdldF9zZXNzaW9uX2ZpbGVuYW1lIChT
RVNTSU9OX0NSQVNIRUQpOw0KKwlsb2FkX29uX3Jlc3VtZV9maWxlID0gZ2V0X3Nlc3Npb25fbG9h
ZF9vbl9yZXN1bWVfZmlsZW5hbWUgKCk7DQorCWxvYWRfb25fcmVzdW1lID0gZ19maWxlX3Rlc3Qg
KGxvYWRfb25fcmVzdW1lX2ZpbGUsIEdfRklMRV9URVNUX0VYSVNUUyk7DQogDQogCWlmIChnX2Zp
bGVfdGVzdCAoc2F2ZWRfc2Vzc2lvbiwgR19GSUxFX1RFU1RfRVhJU1RTKSkNCiAJew0KQEAgLTI5
NCwxNiArMzEzLDQxIEBAIHNlc3Npb25fYXV0b3Jlc3VtZSAoU2Vzc2lvbiAqc2Vzc2lvbikNCiAN
CiAJaWYgKGdfZmlsZV90ZXN0IChzYXZlZF9zZXNzaW9uLCBHX0ZJTEVfVEVTVF9FWElTVFMpIA0K
IAkgICAgJiYgIWxvYWRlZA0KLQkgICAgJiYgZWVsX2djb25mX2dldF9ib29sZWFuIChDT05GX0dF
TkVSQUxfQUxXQVlTX1NBVkVfU0VTU0lPTikpDQorCSAgICAmJiAoIGVlbF9nY29uZl9nZXRfYm9v
bGVhbiAoQ09ORl9HRU5FUkFMX0FMV0FZU19TQVZFX1NFU1NJT04pDQorCQkgIHx8IGxvYWRfb25f
cmVzdW1lICkpDQorDQogCXsNCiAJCXNlc3Npb25fbG9hZCAoc2Vzc2lvbiwgc2F2ZWRfc2Vzc2lv
biwgMHUpOw0KKwkJaWYgKGxvYWRfb25fcmVzdW1lKQ0KKwkJew0KKwkJCXVubGluayggbG9hZF9v
bl9yZXN1bWVfZmlsZSApOw0KKwkJfQ0KIAl9DQogCQ0KIAlnX2ZyZWUgKHNhdmVkX3Nlc3Npb24p
Ow0KKwlnX2ZyZWUgKGxvYWRfb25fcmVzdW1lX2ZpbGUpOw0KIA0KIAkvKiByZXR1cm4gU0VTU0lP
Tl9SRVNVTUVELCBpZiBhIHdpbmRvdyB3YXMgb3BlbmVkLCBlbHNlIFNFU1NJT05fT0sgKi8NCiAJ
cmV0dXJuIChzZXNzaW9uLT5wcml2LT53aW5kb3dzICE9IE5VTEwpID8gU0VTU0lPTl9SRVNVTUVE
IDogU0VTU0lPTl9PSzsNCiB9DQorDQordm9pZA0KK3Nlc3Npb25fc2V0X3JlbG9hZF9uZXh0X3N0
YXJ0IChTZXNzaW9uICpzZXNzaW9uKQ0KK3sNCisJaW50IGZkOw0KKwljaGFyICpsb2FkX29uX3Jl
c3VtZV9maWxlOw0KKwlsb2FkX29uX3Jlc3VtZV9maWxlID0gZ2V0X3Nlc3Npb25fbG9hZF9vbl9y
ZXN1bWVfZmlsZW5hbWUgKCk7DQorDQorCWZkID0gb3BlbiggbG9hZF9vbl9yZXN1bWVfZmlsZSwg
T19XUk9OTFl8T19DUkVBVHxPX1RSVU5DLCAwNjAwICk7DQorDQorCWlmICggZmQgIT0gLTEgKQ0K
Kwl7DQorCQljbG9zZSAoZmQpOw0KKwl9DQorDQorCWdfZnJlZSAobG9hZF9vbl9yZXN1bWVfZmls
ZSk7DQorfQ0KKw0KIA0KIHN0YXRpYyBnYm9vbGVhbiANCiBzYXZlX3lvdXJzZWxmX2NiICAoR25v
bWVDbGllbnQgKmNsaWVudCwNCkluZGV4OiBzcmMvd2luZG93LWNvbW1hbmRzLmgNCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0NClJDUyBmaWxlOiAvY3ZzL2dub21lL2dhbGVvbi9zcmMvd2luZG93LWNvbW1hbmRzLmgsdg0K
cmV0cmlldmluZyByZXZpc2lvbiAxLjQ1DQpkaWZmIC11IC1wIC1yMS40NSB3aW5kb3ctY29tbWFu
ZHMuaA0KLS0tIHNyYy93aW5kb3ctY29tbWFuZHMuaAk4IEFwciAyMDA1IDIwOjU3OjMzIC0wMDAw
CTEuNDUNCisrKyBzcmMvd2luZG93LWNvbW1hbmRzLmgJNyBPY3QgMjAwNSAwMjowNDoyNyAtMDAw
MA0KQEAgLTY5LDYgKzY5LDkgQEAgdm9pZCB3aW5kb3dfY21kX2ZpbGVfc2VuZF90byAJKEd0a0Fj
dGlvbg0KIHZvaWQgd2luZG93X2NtZF9maWxlX3F1aXQJKEd0a0FjdGlvbiAqYWN0aW9uLCANCiAJ
CQkgICAgCSBHYWxlb25XaW5kb3cgKndpbmRvdyk7DQogDQordm9pZCB3aW5kb3dfY21kX2ZpbGVf
c2F2ZV9hbmRfcXVpdCAoR3RrQWN0aW9uICphY3Rpb24sIA0KKwkJCSAgICAJICAgIEdhbGVvbldp
bmRvdyAqd2luZG93KTsNCisNCiB2b2lkIHdpbmRvd19jbWRfZmlsZV9jbG9zZV90YWIJKEd0a0Fj
dGlvbiAqYWN0aW9uLCANCiAJCQkgICAgCSBHYWxlb25XaW5kb3cgKndpbmRvdyk7DQogDQpJbmRl
eDogc3JjL3dpbmRvdy1jb21tYW5kcy5jDQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09DQpSQ1MgZmlsZTogL2N2cy9nbm9t
ZS9nYWxlb24vc3JjL3dpbmRvdy1jb21tYW5kcy5jLHYNCnJldHJpZXZpbmcgcmV2aXNpb24gMS4x
MjgNCmRpZmYgLXUgLXAgLXIxLjEyOCB3aW5kb3ctY29tbWFuZHMuYw0KLS0tIHNyYy93aW5kb3ct
Y29tbWFuZHMuYwkyIE9jdCAyMDA1IDExOjA0OjAyIC0wMDAwCTEuMTI4DQorKysgc3JjL3dpbmRv
dy1jb21tYW5kcy5jCTcgT2N0IDIwMDUgMDI6MDQ6MzQgLTAwMDANCkBAIC0zOTUsNiArMzk1LDE1
IEBAIHZvaWQgd2luZG93X2NtZF9maWxlX3F1aXQoR3RrQWN0aW9uICphY3QNCiAJc2Vzc2lvbl9j
bG9zZShzZXNzaW9uKTsNCiB9DQogDQordm9pZCB3aW5kb3dfY21kX2ZpbGVfc2F2ZV9hbmRfcXVp
dChHdGtBY3Rpb24gKmFjdGlvbiwNCisJCQkJICAgR2FsZW9uV2luZG93ICp3aW5kb3cpDQorew0K
KwlTZXNzaW9uICpzZXNzaW9uID0gZ2FsZW9uX3NoZWxsX2dldF9zZXNzaW9uKGdhbGVvbl9zaGVs
bCk7DQorDQorCXNlc3Npb25fc2V0X3JlbG9hZF9uZXh0X3N0YXJ0IChzZXNzaW9uKTsNCisJd2lu
ZG93X2NtZF9maWxlX3F1aXQgKGFjdGlvbiwgd2luZG93KTsNCit9DQorDQogdm9pZA0KIHdpbmRv
d19jbWRfZmlsZV9jbG9zZV90YWIgKEd0a0FjdGlvbiAqYWN0aW9uLCANCiAJCSAgICAgICAgICAg
R2FsZW9uV2luZG93ICp3aW5kb3cpIA0KSW5kZXg6IHVpL2dhbGVvbi1lZ2ctdWkueG1sDQo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09DQpSQ1MgZmlsZTogL2N2cy9nbm9tZS9nYWxlb24vdWkvZ2FsZW9uLWVnZy11aS54bWws
dg0KcmV0cmlldmluZyByZXZpc2lvbiAxLjIzDQpkaWZmIC11IC1wIC1yMS4yMyBnYWxlb24tZWdn
LXVpLnhtbA0KLS0tIHVpL2dhbGVvbi1lZ2ctdWkueG1sCTIyIEphbiAyMDA1IDE4OjIzOjUyIC0w
MDAwCTEuMjMNCisrKyB1aS9nYWxlb24tZWdnLXVpLnhtbAk3IE9jdCAyMDA1IDAyOjA1OjE2IC0w
MDAwDQpAQCAtMTUsNiArMTUsNyBAQA0KIAk8c2VwYXJhdG9yIG5hbWU9IkZTZXA0Ii8+DQogICAg
ICAgICA8bWVudWl0ZW0gbmFtZT0iRmlsZU9mZmxpbmUiIGFjdGlvbj0iRmlsZU9mZmxpbmVBY3Rp
b24iLz4NCiAgICAgICAgIDxtZW51aXRlbSBuYW1lPSJGaWxlQ2xvc2VUYWIiIGFjdGlvbj0iRmls
ZUNsb3NlVGFiQWN0aW9uIi8+DQorCTxtZW51aXRlbSBuYW1lPSJGaWxlUXVpdEFuZFNhdmUiIGFj
dGlvbj0iRmlsZVF1aXRBbmRTYXZlQWN0aW9uIi8+DQogCTxtZW51aXRlbSBuYW1lPSJGaWxlUXVp
dCIgYWN0aW9uPSJGaWxlUXVpdEFjdGlvbiIvPg0KICAgICA8L21lbnU+DQogICAgIDxtZW51IG5h
bWU9IkVkaXQiIGFjdGlvbj0iRWRpdE1lbnVBY3Rpb24iPg0K


--=-JiIX5j2luBX7HcaiknRK--


-------------------------------------------------------
This SF.Net email is sponsored by:
Power Architecture Resource Center: Free content, downloads, discussions,
and more. http://solutions.newsforge.com/ibmarch.tmpl