The LFUN pass through the Action class. The problem is that
GuiView::closeEvent() is not called. Two solution here:

1) Transfer the session stuff in GuiView::closeEvent() somewhere else.

2) Make sure that we pass through GuiView::closeEvent(). This could be
achieved by a pure virtual methods in LyXView:

virtual void close() = 0;

There seems to be three layers of close. :-)
1. Lyx::ref().quit  ==> no qui
2. LFUN_LYX_QUIT ==> save buffer info, call 1, needs lyx_view_
3. closeEvent ==> save geometry (toolbar), call 2, needs qt4

File->Exit execute 2, so geometry is not saved. Abdel's option 1 is
not feasible since geometry stuff has to be implemented for individual
frontend. Option2 is better.

Bo

Reply via email to