245 Commits
Author SHA1 Message Date
Vadim Zeitlin 5ccdcd6b2a Update version to 3.3.4
Run misc/scripts/inc_release, update version.bkl and rebake.
2026-07-09 15:08:08 +02:00
Blake-MaddenandVadim Zeitlin e871f1a841 Add wxWebView::PrintToPDF()
Add a possibility to save the page as PDF, possibly with some
non-default print settings.

Closes #26583.
2026-06-21 18:51:38 +02:00
ihtandVadim Zeitlin f5cb9a66c0 Update wxwidgets.props and common.bkl for VS 2026
This is in line with the changes in a0f5c92b96 and 3d88038d01
2026-05-12 16:29:03 +02:00
Blake-MaddenandVadim Zeitlin 82f3989c82 Add new Print function to WebView that takes printer settings
Implement it for Edge, GTK and macOS backends and simply fall through to
Print() without parameters for the other ones.

Closes #26239.
2026-03-13 15:39:54 +01:00
Vadim Zeitlin edefb4475e Update version to 3.3.3
Run misc/scripts/inc_release and rebake and rerun autoconf.
2026-03-04 19:40:20 +01:00
RandalphwaandVadim Zeitlin 6228eaf449 Add support for using LunaSVG for SVG rasterization
Optionally use LunaSVG library from the new submodule instead of
NanoSVG.

Closes #25902.
2026-01-18 00:48:57 +01:00
Vadim Zeitlin 0a6523c4d9 Update copyright years to 2025
Unix builds / Ubuntu 18.04 wxGTK 3 compatible 3.0 (push) Has been cancelled
Unix builds / Ubuntu 24.04 wxGTK ASAN not compatible (push) Has been cancelled
Unix builds / Ubuntu 18.04 wxGTK UTF-8 (push) Has been cancelled
Unix builds / Ubuntu 18.04 wxQt (push) Has been cancelled
Unix builds / Ubuntu 18.04 wxX11 (push) Has been cancelled
Unix builds / Ubuntu 20.04 wxGTK 3 with clang (push) Has been cancelled
Unix builds / Ubuntu 22.04 wxGTK with wx containers (push) Has been cancelled
Unix builds / Ubuntu 24.04 wxGTK UBSAN (push) Has been cancelled
Unix builds / Ubuntu 18.04 wxDFB (push) Has been cancelled
Unix builds / Ubuntu 18.04 wxGTK 3 static with gcc 4.8 (push) Has been cancelled
Unix builds / Ubuntu 18.04 wxGTK 2 (push) Has been cancelled
CMake builds / Ubuntu 22.04 wxGTK 3 (push) Has been cancelled
CMake builds / MSW/MSVC wxMSW (push) Has been cancelled
CMake builds / MSW/Clang wxMSW (push) Has been cancelled
CMake builds / macOS latest wxOSX Ninja (push) Has been cancelled
CMake builds / macOS 14 wxOSX Xcode (push) Has been cancelled
CMake builds / macOS 14 wxIOS (push) Has been cancelled
CMake builds / MSW/MSVC wxQt 5.15 (push) Has been cancelled
CMake builds / MSW/MSVC wxQt 6.10 (push) Has been cancelled
Mac builds / wxMac ARM ASAN not compatible (push) Has been cancelled
Mac builds / wxMac Universal C++14 (push) Has been cancelled
Mac builds / wxiOS Simulator on Silicon Mac (push) Has been cancelled
Mac builds / wxiOS (push) Has been cancelled
Mac builds / wxMac Intel C++17 (push) Has been cancelled
Mac Xcode builds / iOS Simulator static (push) Has been cancelled
Mac Xcode builds / macOS dynamic Release (push) Has been cancelled
Mac Xcode builds / iOS static Debug (push) Has been cancelled
MSW builds / wxMSW vs2022 DLL Debug x64 (push) Has been cancelled
MSW builds / wxMSW vs2022 DLL Release x64 (push) Has been cancelled
MSW builds / wxMSW vs2022 Debug Win32 (push) Has been cancelled
MSW builds / wxMSW vs2022 Release arm64 (push) Has been cancelled
MSW cross-builds / wxMSW 64 bits not compatible (push) Has been cancelled
MSW cross-builds / wxMSW/Univ (push) Has been cancelled
MSW cross-builds / wxMSW 32 bits (push) Has been cancelled
Code Checks / Check Spelling (push) Has been cancelled
Code Checks / Check Whitespace (push) Has been cancelled
Code Checks / Check Mixed EOL (push) Has been cancelled
Code Checks / Check C++ Style (push) Has been cancelled
Code Checks / Check All Headers In allheaders.h (push) Has been cancelled
Update Documentation / Update Online Documentation (push) Has been cancelled
No Response / no-response (push) Has been cancelled
Just run misc/scripts/inc_year and commit the results.

See #18690.
2026-01-01 17:40:18 +01:00
Maarten BentandVadim Zeitlin ccbd0ad63a Move wxWebViewBackendChromium name into common webview header
This allows to check for Chromium back-end availability without needing
wxUSE_WEBVIEW_CHROMIUM guards.

Closes #25911.
2025-10-25 15:10:07 +02:00
Vadim Zeitlin 3b7ce8e9a7 Increment version to 3.3.2
Rebake all generated files.
2025-07-25 00:29:00 +02:00
PBandVadim Zeitlin d5c140a801 Fix webrequest and webview samples build with MSVC in C++20 mode
Unix builds / Ubuntu 24.04 wxGTK with ASAN (push) Has been cancelled
Unix builds / Ubuntu 18.04 wxGTK 3 compatible 3.0 (push) Has been cancelled
Unix builds / Ubuntu 18.04 wxGTK UTF-8 (push) Has been cancelled
Unix builds / Ubuntu 18.04 wxQt (push) Has been cancelled
Unix builds / Ubuntu 18.04 wxX11 (push) Has been cancelled
Unix builds / Ubuntu 20.04 wxGTK 3 with clang (push) Has been cancelled
Unix builds / Ubuntu 22.04 wxGTK with wx containers (push) Has been cancelled
Unix builds / Ubuntu 24.04 wxGTK with UBSAN (push) Has been cancelled
Unix builds / Ubuntu 18.04 wxDFB (push) Has been cancelled
Unix builds / Ubuntu 18.04 wxGTK 3 static with gcc 4.8 (push) Has been cancelled
Unix builds / Ubuntu 18.04 wxGTK 2 (push) Has been cancelled
CMake builds / Ubuntu 22.04 wxGTK 3 (push) Has been cancelled
CMake builds / Windows MSVC (push) Has been cancelled
CMake builds / macOS latest wxOSX Ninja (push) Has been cancelled
CMake builds / macOS 14 wxOSX Xcode (push) Has been cancelled
CMake builds / macOS 14 wxIOS (push) Has been cancelled
CMake builds / Windows wxQt 6.8 (push) Has been cancelled
Mac builds / wxMac Universal C++14 (push) Has been cancelled
Mac builds / wxMac ARM with ASAN (push) Has been cancelled
Mac builds / wxiOS (push) Has been cancelled
Mac builds / wxMac Intel C++17 (push) Has been cancelled
Mac Xcode builds / iOS Simulator static (push) Has been cancelled
Mac Xcode builds / macOS dynamic Release (push) Has been cancelled
Mac Xcode builds / iOS static Debug (push) Has been cancelled
MSW builds / wxMSW vs2022 DLL Debug x64 (push) Has been cancelled
MSW builds / wxMSW vs2019 DLL Release x64 (push) Has been cancelled
MSW builds / wxMSW vs2019 Debug Win32 (push) Has been cancelled
MSW builds / wxMSW vs2022 Release arm64 (push) Has been cancelled
MSW builds / msw-msys2-clang (push) Has been cancelled
MSW cross-builds / wxMSW 64 bits (push) Has been cancelled
MSW cross-builds / wxMSW/Univ (push) Has been cancelled
MSW cross-builds / wxMSW 32 bits (push) Has been cancelled
Code Checks / Check Spelling (push) Has been cancelled
Code Checks / Check Whitespace (push) Has been cancelled
Code Checks / Check Mixed EOL (push) Has been cancelled
Code Checks / Check C++ Style (push) Has been cancelled
Code Checks / Check All Headers In allheaders.h (push) Has been cancelled
Update Documentation / Update Online Documentation (push) Has been cancelled
No Response / no-response (push) Has been cancelled
Using a const char* and a wxString in the two branches of the ternary
operator resulted in compile-time errors when using C++20 standard
since the result type of the conditional expression was ambiguous,
so add explicit conversions to fix it.

See also #19355.

Closes #25501.
2025-06-09 22:57:00 +02:00
Vadim Zeitlin 29f9d3512a Update version to 3.3.1 and rebake 2025-06-09 22:36:35 +02:00
Vadim Zeitlin 74a1498eee Remove unnecessary use of wxLogXXX("%s")
Just pass the strings directly to wxLogXXX functions as this works
correctly after the changes of the parent commit.
2025-05-17 22:44:48 +02:00
Maarten Bent fd14294606 Recreate build-files 2025-05-10 18:22:27 +02:00
Maarten Bent b0b3da6ce2 Add libwebp to MSVS solutions 2025-05-10 18:06:41 +02:00
Vadim Zeitlin 99ab3ebbe2 Merge branch 'webview_browserdata'
Add support for clearing browsing data in wxWebView.

See #24421, #25016.
2025-01-09 18:13:33 +01:00
Vadim Zeitlin 981341c913 Update copyright years to 2025
Just run misc/scripts/inc_year and commit the results.

See #18690, #25041.
2025-01-06 22:16:06 +01:00
Tobias TaschnerandVadim Zeitlin f982139ffc Add support for clearing browsing data in wxWebView 2024-12-23 00:28:46 +01:00
Lauri NurmiandVadim Zeitlin 87c1aae252 Fix double negatives used with 'neither'
Replace most 'neither' words introduced after 2b0ee48ef7
(Fix double negatives used with 'neither', 2023-11-25)
with 'either'.

All changes are to comments only.

Closes #24999.
2024-12-11 17:57:46 +01:00
PBandVadim Zeitlin eba106431a Allow running samples from MSVS in DLL configurations
Create file samples/samples.props which adds the DLL build directory
to MSVS PATH in <LocalDebuggerEnvironment> property.

Add file samples.props to all MSVS sample projects.
2024-11-16 18:35:41 +01:00
Vadim Zeitlin fa23c93832 Merge branch 'webview-cef-devtools'
Implement dev tools support for wxWebViewChromium.

See #24799.
2024-09-15 18:59:30 +02:00
Vadim Zeitlin 9cc48d7ec1 Merge branch 'webview-version'
Add possibility to retrieve both build- and run-time wxWebView version

See #24778.
2024-09-15 18:58:57 +02:00
Vadim Zeitlin 2e6d79acf2 Add wxWebView::ShowDevTools()
Implement it for Edge, WebKit2GTK and Chrome backends.

It doesn't seem possible to implement this for WebKit macOS backend and
IE backend doesn't support dev tools at all.

Also note that Edge backend doesn't seem to support closing the dev
tools window, so don't provide this functionality for now, even if it
could be implemented for WebKit2 and Chrome backends.
2024-09-05 22:09:57 +02:00
Vadim Zeitlin 28d3cbdfb9 Remove DebugOnlyLog and fix memory leak in webview sample
DebugOnlyLog is not needed any more since 33931b7378 (UI improvements to
WebView sample, 2024-03-19) replaced wxLogWindow, which doesn't let
trace messages through (but probably should?), with wxLogTextCtrl, which
doesn't eat the trace messages.

Also fix a memory leak introduced in the same commit: the old logger
returned by SetActiveTarget() must be destroyed.

See #24417.

Closes #24787.
2024-09-05 18:53:18 +02:00
Vadim Zeitlin 435fa14076 Add possibility to retrieve compile-time wxWebView version
This is currently only implemented for GTK WebKit2 and CEF backends.

Show both the compile- and run-time versions in the sample.
2024-08-23 00:19:53 +02:00
Vadim Zeitlin cf22fbb87f Show wxWebView backend version even if it has description too
For the backends that had a description string (such as Chromium), we
showed only it but not the actual version, which was a bit confusing, so
show both the version and the description, even if the latter includes
the former too.
2024-08-23 00:04:26 +02:00
Vadim Zeitlin a0ac9a9a67 Merge branch 'remove-gdiplus-wrapper' of https://github.com/MaartenBent/wxWidgets
Remove GDI+ wrapper and just link with gdiplus.lib.

See #24614.

Closes #24613.
2024-06-22 15:49:16 +02:00
Maarten Bent f0cca189ff Rebake after GDI+ and msimg32 changes 2024-06-22 13:51:39 +02:00
Vadim Zeitlin 9690779f90 Fix crash on webview sample startup when using CEF backend
Unfortunately the workaround in dce09c9b2a (Avoid crash on startup in
webvew sample under Wayland, 2024-04-22) broke the sample when using CEF
as we can't capture the local lambda by reference.

Fix this simply by making a copy of it instead -- this is not the most
efficient way to do it, but it doesn't really matter here and it's the
simplest one.
2024-06-15 20:37:41 +02:00
Vadim Zeitlin dce09c9b2a Avoid crash on startup in webvew sample under Wayland
The workaround for wxWebViewChromium added in f5e2af9a28 (Make
wxWebViewChromium work with wxGTK3 and X11, 2023-09-02) broke
wxWebViewWebKit under Wayland as calling wxYield() inside
wxEVT_WEBVIEW_CREATED handler results in

Error flushing display: Resource temporarily unavailable

error from GTK and immediate application exit.

This is almost certainly a GTK bug and should be fixed there, see
https://gitlab.gnome.org/GNOME/gtk/-/issues/124, but for now make the
workaround even uglier to avoid it.
2024-04-22 17:47:02 +02:00
Vadim Zeitlin 4fe947b2ba Fix defining WX_WEBVIEW_BACKEND as "cef" for the webview sample
The direction of comparison was accidentally reversed.
2024-03-31 19:43:36 +02:00
Tobias TaschnerandVadim Zeitlin 33931b7378 UI improvements to WebView sample
- Enlarge the main window to make menu button more easily accessible.
- Show logs in a text control instead of a separate window.

Closes #24417.
2024-03-19 16:48:54 +01:00
Vadim Zeitlin bbddaa2983 Use flags instead of multiple booleans in webview sample
No real changes, just avoid having to write "false, nullptr, true" in
the function call and use the much more clear "WebFrame::Private"
instead.
2024-03-16 01:23:13 +01:00
Tobias Taschner 72397e14a2 Add EnablePersistentStorage method to wxWebView 2024-03-15 22:04:32 +01:00
Vadim Zeitlin c45c1e5462 Use -rpath for utils too and not only samples
And get rid of SAMPLES_RPATH_FLAG and just use DYLIB_RPATH_FLAG, as it's
not at all sample-specific.

This notably allows running wxrc from the build tree without setting
LD_LIBRARY_PATH under Linux.

Closes #24384.
2024-03-09 20:30:52 +01:00
Vadim Zeitlin 9a27e206ce Rebake after adding 32-bit ARM support for MSVC
This should have been done in 99bc43cefe (Introduce minimal MSW ARM
support, 2024-01-15).

See #24222.
2024-02-24 20:50:38 +01:00
Vadim Zeitlin c14c652238 Rebake after wxWebViewChromium merge
No real changes, just rebake all the makefiles after the addition of
wxwin.extraLdflags, which results in an extra space even when these
flags are empty in webview-chromium branch.

This should have been done in f37401dde3 (Merge branch
'webview-chromium', 2024-01-19)
2024-02-24 20:46:51 +01:00
Vadim Zeitlin 9c33be4f5e Use a helper lambda for naming history menu items
Shorten the code a bit more.

No real changes.
2024-02-02 18:01:24 +01:00
Vadim Zeitlin 44bc26f087 Use range-for loops for iterating over wxWebViewHistoryItems
No real changes, just simplify the code a bit.
2024-02-02 17:59:01 +01:00
Scott Talbert 3ef1aee986 Fix WebView sample when there are blank title pages in history
Otherwise, the wxMenu code asserts due to an empty item.
2024-02-01 20:56:36 -05:00
Vadim Zeitlin 83d69a1cd9 Revert "Add debug postfix to libcef_dll_wrapper"
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.
2024-01-06 03:20:50 +01:00
Maarten Bent 3d51977acf Add debug postfix to libcef_dll_wrapper 2023-12-24 18:06:14 +01:00
Maarten Bent 948545ba81 Include helper ID in chromium helper plist
Same as the cefsimple example does.

CMake already has code to replace this variable.
2023-12-21 21:41:04 +01:00
Maarten Bent 5a2c45b8f7 Fix running webview sample with Chromium on macOS 2023-12-21 21:31:04 +01:00
Maarten Bent 6b6c5f5378 CMake: Fix building webview sample with Chromium
The macOS code is based on the cefsimple example in the cef distribution.
2023-12-21 21:27:14 +01:00
Vadim Zeitlin 48a97439d1 Make cef_process_helper build under MSW too and comment it more
Define WinMain() instead of main() under MSW, as we need to pass an
HINSTANCE and not argc/argv to CefMainArgs ctor there.

Also explain how to build this file.
2023-09-21 21:53:37 +02:00
Vadim Zeitlin b5e278c0eb Link CEF files into webview sample build directory under Unix
Ensure that the sample can run using wxWebViewChromium backend out of
the box by setting things up so that it can find the CEF files. Note
that we use symlinks instead of actually copying these files, to avoid
wasting so much disk space (CEF libraries take more than 1GiB).
2023-09-15 01:56:08 +02:00
Vadim Zeitlin ae8619b6dd Don't build separate webview_chromium library
Just include wxWebViewChromium in the webview library if it's enabled
during the build.

There doesn't seem to be any reason to build a separate library for it,
it's not really different from the other disabled by default wxWebView
backend (Edge).

And now that we don't need to link with an extra library, there is also
no need to have a separate webview_chromium sample, so just add a
possibility to run webview sample itself using Chromium backend by
setting WX_WEBVIEW_BACKEND environment variable.
2023-09-15 01:56:08 +02:00
Vadim Zeitlin 168ca9403d Return version information for wxWebViewChromium
This can be useful for diagnostic purposes and looks better than "0.0"
in the webview sample.

Notice that currently we return the compile-time version and not the
run-time version that could be retrieved using cef_version_info()
because this is simpler and we shouldn't be ever using a different
version from the one we were compiled with anyhow.
2023-09-14 19:20:11 +02:00
Vadim Zeitlin ad69f3779a Remove "adv" library from webview sample
This library doesn't contain anything any more and exists only for
compatibility, so don't reference it.
2023-09-13 21:27:06 +02:00
Vadim Zeitlin 2ef44570fd Work around bug with out of order JS execution results
Modify the sample to show the correct value of the user agent when using
WebKit backend as this got broken by calling it inside an event handler
executed later but before the idle event handler could dispatch the
result of JS executed from inside WebKit AddScriptMessageHandler()
implementation, resulting in misinterpreting this result ("{}") as the
user agent string.

The real fix is, of course, to deal with the JS execution results coming
out of order in some way.
2023-09-08 01:51:47 +02:00