[Geany-devel] [PATCH] X session management support

Eugene Arshinov earshinov at xxxxx
Tue Dec 15 10:55:23 UTC 2009


Hi.

Here are the patches for SM branch I promised to send. Proposed commit
message and notes (if any) are given below.

On my way I noticed some minor bugs. The patches which fix those bugs
have "fix" in their names.


Now I'm going to write a reverse parser for GOptionEntry. To proceed, I
need to know where I should put the code. Should I (a) modify
utils.{c,h} files or (b) make my own optentries.{c,h}? I want to
declare new GeanyOptionEntryAux struct containing one gboolean and
implement two functions:

  * a function to reverse-parse a single GOptionEntry;

  * a function taking an array of GOptionEntry and an array of
    GeanyOptionEntryAux and returning a GArray filled like argv.

Personally, I'd prefer (b).


[sm.1.files.patch]
“Extract SM-related code into separate sm.{c,h} files, make some
refactoring, and write code comments for Doxygen.”

Note: if you consider some Doxygen comments excessive, just drop them.


[sm.2.sm_finalize.patch]
“Add sm_finalize().”


[sm.3.fix-restart-command.patch]
“Fix restart command.”


[sm.4.fix-interaction.patch]
“Handle "Interact" message properly.”


[sm.5.noinstance-behaviour.patch]
“Make --new-instance imply --no-session.”


[sm.6.nosession.patch]
“Handle --no-session properly.
    
The previous commit allows us to change --no-session command line
option handling back to normal. The issue was described in a FIXME
section inside src/sm.c, the section is now deleted.”


[sm.7.fix-filenames.patch]
“Use `GeanyDocument.file_name's instead of `GeanyDocument.real_path's in
restart command like Geany session management facilities do.”


Best regards,
Eugene.



More information about the Devel mailing list