LHelp flickers loading files and does not close when Lazarus closes
Original Reporter info from Mantis: BigChimp
-
Reporter name: Reinier Olislagers
Original Reporter info from Mantis: BigChimp
- Reporter name: Reinier Olislagers
Description:
- Currently, when Lazarus context sensitive help is started, it tells LHelp to load all chm files. This causes the lhelp window to show up and flicker.
- When Lazarus is closed, any opened lhelp windows remain open. They should close together with the IDE that started them.
See additional information for suggestion for fix
Additional information:
Taken from http://wiki.lazarus.freepascal.org/Help_protocol
* The viewer must support a --hide command-line option: it must not show the GUI but allow e.g. loading of help files and receiving further instructions from the IDE.
* The IDE passes an --ipcname starting with lhelp then the PID/process ID of the server process so multiple IDE/lhelp sets does not interfere with communication.
* There is an additional IPC channel between viewer and IDE that carries data from viewer to IDE.
* The viewer responds success or failure after receiving and processing a command from the IDE.
* The IDE must not send another command until: 1. it receives a response from the client (see above) or 2. a timeout has been reached.
* Extra commands to be implemented:
** version (IDE=>viewer): passes help protocol version (e.g. 1.0). If the client does not support it, it should return failure, else success.
** close (IDE=>viewer): client must respond complete and close itself. Used when the IDE is closed
** success (viewer=>IDE): viewer has succesfully completed the last command issued by the IDE
** failure (viewer=>IDE): viewer could not succesfully complete the command
Mantis conversion info:
- Mantis ID: 24743
- OS: Windows
- OS Build: Windows 7
- Build: 42083
- Platform: x64 (with x86 compiler)
- Version: 1.1 (SVN)
- Fixed in revision: r45857 (#c2a00946)