wxwidgets/docs/changes.txt
Vadim Zeitlin ee6d58abe2 Don't call wxDocument::OnCloseDocument() twice when closing
When closing the document using wxDocManager::CloseDocument(), which is
what happens when using the standard wxID_CLOSE menu command handler,
OnCloseDocument() was called twice: first when wxDocument::Close() was
called directly from CloseDocument() itself and once again later when it
was implicitly called from DeleteAllViews().

This was unexpected and also resulted in calling DeleteContents() twice,
which is even more so for a function supposed to perform cleanup.

Fix this by not calling Close() itself but instead a new CanClose()
function from CloseDocument() to check whether we can close and then
relying on DeleteAllViews() to actually close the document.
2022-07-15 00:15:40 +01:00

52 lines
1.8 KiB
Text

-------------------------------------------------------------------------------
wxWidgets Change Log
-------------------------------------------------------------------------------
Note: This file contains the list of changes since wxWidgets 3.2, please see
docs/changes_32.txt for the earlier changes.
INCOMPATIBLE CHANGES SINCE 3.2.x:
=================================
Changes in behaviour not resulting in compilation errors
--------------------------------------------------------
- wxDocument::OnCloseDocument() was called twice in previous versions when
closing the document from the menu. Now it is only called once and after
destroying all the existing document views. If you overrode this function,
please check that you don't rely on any views existing when it's called.
Changes in behaviour which may result in build errors
-----------------------------------------------------
3.3.0: (released 2022-??-??)
----------------------------
NOTE: This file is updated only before the release, please use
$ git log --notes=changelog --format='%N' v3.2.0..|grep .
to see all the change log entries since the last release.
To update the notes, fetch them first:
$ git fetch origin refs/notes/changelog:refs/notes/changelog
then use the following command to update them locally
$ git notes --ref=changelog add -m 'wxPort: description.'
and finally push it to the server.
$ git push origin refs/notes/changelog:refs/notes/changelog
If this fails due to a conflict because you had forgotten to
run git-fetch first, you can always reset your local notes
(LOSING YOUR CHANGES TO THEM, so make sure to make a copy)
$ git fetch origin refs/notes/changelog
$ git update-ref refs/notes/changelog FETCH_HEAD
and then redo "git-notes add" and git-push.