Peter Kümmel wrote:
Abdelrazak Younes wrote:
-            LyX::ref().quit();
+ + // quitting is trigged by the gui code (leaving the event
loop)
+            theApp()->gui().closeAllRegisteredViews();
What's the difference between this and closeAll()? Can a view be
unregistered?

Yes, this is one of the most important change, unregister only in
the CloseEvent and quit when no views left.

Yes, but still, this is temporary and once it is closed, it is closed. So better stay with the simple more meaningful name closeAll(). The lyx core (LyXFunc) doesn't want to know the details about what is registered and what's not, it does want to close all windows. Or, am I missing something?


+}
I think this could be a good solution but the problem here is that I
think there is a bug in QtMac. This is a theory that could well explain
Bennett's report about non-saved files on exit:

I also have the impression that QCloseEvent isn't called on the Mac,
I've added an output in the new patch to verify it.

qApp->exit() seems to always results in killing the application. It
seems that the LyX destructor is always called the moment just after
that. The execution process in LyX::exec() is thus not properly done and
prepareExit() is not called here:

qApp->quit(); should only close the event loop and return,

That's what the doc says but I suspect a bug here. Hope I'm wrong.

but
we will see it with Bennetts backtrace (now I'm pessimistic for the Mac)

That's exactly what I fear :-(


The are no new big changes in the new patch.


Thanks for the comments Abdel,

My pleasure.

this is really a hairy stuff,
costs me several hours.

I know that, believe me ;-)

Abdel.

Reply via email to