Since the changes of 8034e35391 (see #16870)
accelerators, including the standard ones such as Ctrl-F4 under MSW, didn't
work any longer inside the MDI children.
Fix this by extending IsTopNavigationDomain() to allow for checking whether
the given window should stop propagation of all keyboard events, as wxTLW
does, or only TAB navigation ones as wxMDIChildFrame and wxAuiFloatingFrame
do.
The current code incorrectly returned true if the string contained
an invalid UTF-8 sequence after an embedded NUL.
Check the entire string if the length was explicitly given instead of stopping
at the first NUL.
Closes https://github.com/wxWidgets/wxWidgets/pull/236
This suppresses warning messages from GTK+ (pixman to be more precise) if
there is really no space left for a widget and doesn't seem to have any ill
effects.
Closes#16996.
The tests crashed after running ModalDialogsTestCase::FileDialog() because the
next call to wxYield() resulted in the completion of an async operation
launched by the native file dialog which tried to dereference the already
destroyed dialog.
No real changes, just always show the frame as we need it to be shown for the
tests to run anyhow.
Also update the nonsensical comment about creating a hidden window just before
showing it.
Use wxHtmlWinParser instead of wxHtmlParser which can't be actually used
without being initialized with the tag handlers (it's not clear whether this
is really intentional...).
When pixel doubling is in use, e.g. when using GTK+ 2 on high DPI displays,
the width of a single TAB can be greater than the hardcoded 50 width in the
test, which resulted in test failures.
Base the widths on the average character width to make sure we can always
ellipsize.
Exporting these classes doesn't seem necessary as they only have inline
functions and doing it results in problems with MSVC as it also, apparently,
exports the corresponding specialization of std::vector<T> from the wxWidgets
DLLs which can clash with the use of std::vector<T> in the user code or even
in 3rd party libraries included in wx itself, such as Scintilla, so this
change fixes link errors in "DLL Debug" build configuration when using MSVC.
Closes#10884.
The refactoring in https://github.com/wxWidgets/wxWidgets/pull/92 changed the
appearance of wxNotificationMessages created using default ctor under MSW:
they now had no icon instead of using the default one.
Restore the old behaviour for compatibility and also because it's compatible
with the notifications created using non-default ctor but without providing
an explicit flags parameter value.
It is a bit annoying to have to use wxICON_INFORMATION explicitly both here
and as the default parameter value in include/wx/notifmsg.h, but not annoying
enough to do anything more complicated to solve it.
In wxMask::GetBitmap() we need to create a copy of the mask bitmap and assign
it to the resulting wxBitmap. We cannot simply assign existing mask bitmap to
the resulting wxBitmap because when wxMask::GetBitmap would be called more
then once then many independent wxBitmaps would own the same bitmap.
Closes https://github.com/wxWidgets/wxWidgets/pull/230Closes#17395.
Using the library wasn't really possible with all the debug messages it
generated, so either suppress them completely or turn them into trace messages
which can be activated on demand if needed.
Doing this resulted in GTK errors about invalid iterators, so postpone the
generation of the CLOSEUP event for slightly later to allow changing the
combobox contents from it with GTK+ 2 (this is not necessary with GTK+ 3).
Also add a demon of a dynamic combobox, creating and destroying its items on
the fly, to the widgets sample.
Closes#17223.
This generic implementation should be used for wxUniv too, otherwise any code
using wxActivityIndicator, such as the widgets sample, simply failed to link
when using it.
Closes#17394.
This warning was given many times and was very confusing as it wasn't given at
all in the right location, but rather for all the other, subsequent
declarations of wxControlRenderer which were correct -- unlike this one which
used wrong order for the "class" keyword and the attribute.