The types of "handle" are completely different for different platforms,
so add a new "handleValue" variable just for the purpose of being able
to use it as wxLogTrace() argument.
This reverts commit 3d51977acf because
it's incompatible with the library names created by CMake when building
CEF directly, and not via wx CMake files.
Although building CEF itself requires C++17, C++14 is sufficient for
building libcef_dll_wrapper, so allow using it.
Also move the error message a bit more informative.
If it is enabled (e.g. globally because the application using wxWidgets
as a submodule enables it), it would result in a harmless warning about
not calling the base class ctor in base/cef_callback_internal.cpp.
Calling this function from OnInternalIdle() is not always enough, so
call it before processing each and every event to ensure that CEF can
really do whatever it needs to be doing internally.
This doesn't seem to noticeably slow down the program and solves weird
problems, like embedded text boxes (e.g. search zones on the web sites)
not getting focus on click.
wxEventLoop is not used in this file any more after the changes of
11d04389a0 (Add support for using wxWebViewChromium from non-main
thread, 2023-11-29).
Check for 'libcef_dll' instead of 'cef_paths.gypi', because the minimal distribution doesn't contain the last one.
Mark all CEF variables as advanced, so they don't show up in the default CMake GUI.
WindowOpenDisposition is an inherited typedef from a base class and may
result in ambiguity errors if more than one base class defines it, so
use the actual type corresponding to it to preventively solve this
problem.
No real changes yet.
Even though NULL might seem more appropriate in a call to this C
function, it doesn't pass the style check hook, so replace it with
nullptr too.
No real changes.
When Chrome creates a thread-specific GMainContext, as it does whenever
it's initialized from any thread other than the main process one, we
need to ensure that events are dispatched for this context whenever the
main event loop wakes up, as otherwise it could wake up, realize that
there is nothing for it to do, and resume polling again, without giving
us a chance to dispatch the events meant for this context.
To do this, register a special dummy event source which does nothing
except calling wxWakeUpIdle() whenever its "check" function is called,
as it happens when any events are available.
No real changes (use --color-moved --color-moved-ws=ignore-all-space
options of git-diff to see it), just move the code dispatching messages
to the thread-specific GMainContext into a separate function to make it
easier to call it from other places.
This fixes a crash if the application uses wide-char entry function, as
in this case the arguments wouldn't be initialized yet and any hook
checking them to decide what to do, like wxWebViewChromium one, would
crash.
Don't say that the directory where the archives are unpacked shouldn't
contain anything else than include and lib directories, as it can/does
contain other files, such as wxwidgets.props.
Closes#24098.
Co-Authored-By: Bill Forster <billforsternz@gmail.com>
Fix wxBitmapBundle::FromSVG(), which renders incorrectly on GTK and add
wxHAS_PREMULTIPLIED_ALPHA to make the code dealing with alpha more clear
and correct.
See #24097.
Replace most 'neither' words introduced after 66916c74a3 (Fix double
negatives used with 'neither' in docs and comments, 2022-08-15) with
'either'.
All changes are to comments only.
Closes#24090.
The previous ToCDouble() function accepted leading spaces, a starting +
sign, and hex strings. std::from_chars() does not accept spaces or +,
and requires a special flag to convert hex strings, so handle this
manually to preserve the old behaviour of this function.
This is similar to the changes done for ToCULong() in #24022.
Closes#24089.
This fixes a crash when DoShowMultipleLogMessages() is called with
wxUSE_LOG_DIALOG set to 0. The code after the #else statement gets the
size of the wxArrayString but then instead of accessing that array, it
tried to access the m_aMessages array which is empty, resulting in a
crash in the C runtime. This commit simply gets the strings from the
correct array.
Closes#24087.
We need to use a native clip view for things to behave correctly under
this OS version, otherwise scrollbars can be overdrawn by the window
contents.
Closes#24067.
Closes#24073.
Use TIFFFlush() in wxTIFFHandler::SaveFile() in order to check for
success when saving TIFF images, as TIFFClose() doesn't have any error
code to do it.
Closes#23214.
Closes#24072.
This is more consistent with the conversion in the other direction, but
here we also fall back to UTF-8 if conversion fails as it seems better
than just losing the argument entirely.
Also make the conversion a bit more efficient by stealing the pointer
from wxCharBuffer instead of using strdup() to copy the string.