Add some common architecture-dependent directories to the list of
subdirectories that should be ignored.
For Win32 the directory name x86 is also common.
For Win64 the directory names Win64 and x86_64 are frequently in use,
too.
Closes https://github.com/wxWidgets/wxWidgets/pull/2233
When configured with --enable-permissive option, add -fpermissive to C++
flags, not C flags, to avoid the gcc warning
command-line option '-fpermissive' is valid for C++/ObjC++ but not for C
when compiling C code.
Closes https://github.com/wxWidgets/wxWidgets/pull/2232
Fix missing events for in-document navigation with wxWebViewEdge,
implement Find() for it and add wxEVT_WEBVIEW_FULLSCREEN_CHANGED for it
and wxGTK.
See https://github.com/wxWidgets/wxWidgets/pull/2227
Check that the EOL used in the file corresponds to the expected one for
its extension, in addition to checking that EOLs are consistent.
Closes https://github.com/wxWidgets/wxWidgets/pull/2228
This implementation is based on javascript 'window.find()'
https://developer.mozilla.org/en-US/docs/Web/API/Window/find
It's not standard, but implemented in most browsers.
It's not a complete implementation as it can't determine how
many search results can be found.
If the backends API provides a native find interface it should be
used instead of this implementation, but it's good fallback.
Send EVT_WEBVIEW_NAVIGATING, EVT_WEBVIEW_NAVIGATED and EVT_WEBVIEW_LOADED
when an anchor is clicked within a document. This kind of navigation
cannot be vetoed.
Fixes: #19074
A number wxRIBBON_ART_TOOOL_XXX constants were not taken into account by
GetColour() and SetColour() for some reason, even though the class did
have the corresponding member colour variables.
Fix this by simply adding cases for them to the existing switch.
Closes https://github.com/wxWidgets/wxWidgets/pull/2225
If source wxImage has a mask we need to create ARGB32 Cairo surface (even
for RGB image) and based on the mask values set the alpha values to fully
transparent or retain original values.
Automatically download the WebView2 SDK from nuget (official repo for the SDK)
when enabling wxUSE_WEBVIEW_EDGE to simplify usage.
Copying to 3rdparty/webview2 is still supported optionally.
If a wxWebRequestCURL object is canceled or deleted before its transfer
is complete, we need to manually close its active socket. Record each
transfer’s active socket in wxWebSessionCURL::SocketCallback so can use
it if needed.
Previously, this was done using curl_easy_getinfo, but this required
some compile time and run time checks and could fail in some specific
cases. Recording the socket ourselves significantly simplifies the code
and should always work.
For internal purposes wxBitmap with mask should be converted to CGImage
with alpha values only (with no mask). This is i.a. needed to assure
compatibility of wxGraphicsBitmap format with other ports where these
bitmaps are in pure ARGB format.
No real changes, ignore the huge diff which is due to reordering of all
the strings in this file after the changes of 87c56c7c1d (Do not sort
content of generated POT files alphabetically, 2021-01-23).
See https://github.com/wxWidgets/wxWidgets/pull/2214
Remove platform-specific translations.
This is unnecessarily complicated for the single string that we
currently use this for, so just handle it specially.
Also some other minor translation-related improvements.
See https://github.com/wxWidgets/wxWidgets/pull/2213
When using the socket poller implementation using wxEventLoopSource
objects to monitor sockets, the operation
wxEventLoopBase::AddSourceForFD(... can sometimes return NULL. In these
cases the socket will not be monitored as needed. The only option seems
to be to cancel the transfer and report a failure
On windows and systems where wxUSE_EVENTLOOP_SOURCE is 1, it is
possible to monitor socket descriptors for activity from the main
thread. The SocketPoller class used with wxWebSessionCURL is modified
to use an implementation class that does so.
On windows, the implementation uses the winsock1 function
WSAAsyncSelect to send events to wxWebSessionCURL when activity is
detected. When wxUSE_EVENTLOOP_SOURCE is 1, a wxEventLoopSource is used
to monitor for socket activity. The event loop source is given a custom
wxEventLoopSourceHandler object to send the necessary event.
Previously wxWebRequestCURL objects were canceled by removing their
CURL easy handle from the CURLM multihandle. Unfortunately the really
only pauses the connection and does not truly cancel it. This commit
tries to stop the transfer by retrieving the active socket from the CURL
handle for the transfer and closing it.
There are some complications in doing this because the option curl uses
to get the socket have changed over the years. A combination of compile
time and run time checks are used to use the appropriate options to get
the socket. However in the case of 64bit windows using a curl version
older than 7.45.0 simply won’t have an usable option. In this case,
it seems nothing can be done.