Commit Graph
22257 Commits
Author SHA1 Message Date
Richard fecee7773a Replace \275 (DOS character code for 1/2) with .5 in page size comments 2026-04-28 15:17:24 -06:00
Vadim Zeitlin 8a41fd01d1 Fix creating wxGLCanvas when using EGL 1.4 with X11
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 18.04 wxDFB (push) Has been cancelled
Unix builds / Ubuntu 24.04 wxGTK UBSAN (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 / macOS latest wxGTK 3 Unix Makefiles (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 builds / wxMSW vs2026 DLL Release x64 (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
No Response / no-response (push) Has been cancelled
The changes of 602b80d (Support EGL 1.4 instead of previously required
1.5, 2025-11-23) were wrong for X11 because eglCreateWindowSurface(),
used as the fallback when newer EGL functions are not available,
requires passing it the actual X11 Window (i.e. an XID) rather than a
pointer to it.

Fix this by passing both the XID and a pointer to it to this function
and calling the different functions with the appropriate parameter.

Note that we still need to pass wl_egl_window pointer to this function
when using Wayland and we need to pass a pointer to XID when using newer
EGL functions.

Closes #26410.
2026-04-27 17:16:11 +02:00
stevecor 1bc4900ed6 Remove wxUSE_GEOMETRY
Disabling it doesn't save much on code size and the build without it is
currently broken anyhow, so just remove the possibility to turn it off.

Closes #26388.

Closes #26402.
2026-04-24 19:10:09 +02:00
Vadim Zeitlin bad7d09d4f Fix positioning images in generic wx{List,Tree}Ctrl in high DPI
The implementation of GetImageLogicalSize() overload taking the image
index returned correct answer for this individual image, but was wrong
when used in the control with multiple images with different logical
sizes. This resulted in the actual bitmap being drawn, as returned by
GetImageBitmapFor(), being of different size than the size returned by
this function, as GetImageBitmapFor() uses the best ("consensus") size
for all images, which is also returned by GetImageLogicalSize() overload
not taking the image.

Solve this by simply getting rid of the overload taking the image and
replacing all existing calls to it with the calls to the other overload.
This is backwards-incompatible, but this function was only added in 3.3
and removing it is a lesser evil than either leaving a function which
can only be misused, or keeping the unused image index parameter which
would be confusing.

See #26397.

Closes #26391.
2026-04-24 16:56:12 +02:00
Vadim Zeitlin f8d4759804 Move fallback definitions used only in wxWebViewIE to its header
Don't define INET_E_XXX symbols use only by wxWebViewIE in
wx/msw/missing.h included by all files, this is unnecessary and also can
result in problems if the application predefines WIN32_LEAN_AND_MEAN, as
these symbols are not defined after including just windows.h in this
case but are defined if urlmon.h is included later, e.g. by one of COM
headers, as their definitions in urlmon.h would results in redefinition
warnings.

Instead, define them only in webview_missing.h and include it after all
Windows headers to ensure that these symbols are defined if they are
present there (which is probably always the case by now).
2026-04-20 23:09:16 +02:00
Vadim Zeitlin 6026d2f609 Merge branch 'clang-cl-fixes'
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 18.04 wxDFB (push) Has been cancelled
Unix builds / Ubuntu 24.04 wxGTK UBSAN (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 / macOS latest wxGTK 3 Unix Makefiles (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 builds / wxMSW vs2026 DLL Release x64 (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
Fix multiple clang-cl warnings in wxMSW build.

See #26393.
2026-04-19 00:26:46 +02:00
Vadim Zeitlin 892fb7f2d5 Use "__declspec(nothrow)" when overriding IUnknown functions
Use STDMETHOD and STDMETHOD_ macros instead of STDMETHODIMP[_] to get
the Microsoft-specific exception specification which is present in the
former macros but not the latter ones and avoid clang warning about
overriding the base class virtual function using laxer exception
specification.
2026-04-18 18:19:54 +02:00
Vadim Zeitlin dcec891a5c Use WinStruct<> instead of manually initializing HIGHCONTRAST
This is simpler and avoids clang warning about missing field
initializers.
2026-04-18 17:04:21 +02:00
Vadim Zeitlin d2f572bdb6 Define WX_ATTRIBUTE_UNUSED correctly for clang-cl
It needs the usual clang definition of this attribute to avoid warnings
about unused local typedefs in wxDELETE[A] but the macro was defined as
empty for it because clang-cl doesn't predefine __GNUC__ (it predefines
_MSC_VER instead).
2026-04-18 16:45:38 +02:00
Steve Cornett 09321123e8 Fix linking with RTTI disabled
Don't reference ms_wxDummy variable which was never defined in the
version of WX_DECLARE_TYPEINFO_INLINE() macro used when compiler RTTI
support is disabled, as this resulted in link errors.

Just remove this variable completely.

Closes #26389.
2026-04-18 15:23:40 +02:00
Blake-Madden 6d818815c8 Add accessibility support to wxSVGFileDC
Adds an ARIA group builder and wrapper for drawing commands within SVG
output.

Closes #26379.
2026-04-15 02:30:09 +02:00
Vadim Zeitlin e822126c37 Merge branch 'osx-cache-insets' of github.com:ryancog/wxWidgets
Cache alignment rect insets in wxOSX.

See #26318.

See #26353.
2026-04-14 23:56:01 +02:00
Randalphwa 722f58e238 Refactor wxRibbon to use wxBitmapBundle for icons and images
- Update wxRibbonPanel to accept wxBitmapBundle for minimised icons.
- Modify wxRibbonToolBar to utilize wxBitmapBundle for tool icons.
- Change wxRibbonAUIArtProvider and wxRibbonMSWArtProvider to handle
  wxBitmapBundle for drawing operations.
- Adjust wxRibbonGallery to support wxBitmapBundle for gallery items.
- Implement DPI change handling in wxRibbonBar, wxRibbonPage,
  wxRibbonPanel, and wxRibbonToolBar to recalculate sizes and redraw
  with the correct bitmap for the current DPI.
- Ensure all relevant methods and event handlers are updated to work
  with wxBitmapBundle instead of wxBitmap.

Closes #26117.
2026-04-14 23:52:51 +02:00
Robert Roebling 8294a66417 Provide new value in EVT_DATAVIEW_ITEM_EDITING_DONE in wxOSX
The value only seems to be reported in OSXCellChanged so defer sending
the event until then (unless it was cancelled).

Closes #26367.
2026-04-14 23:50:48 +02:00
ryancog 28d60ed77a Add wxWidgetCocoaImpl::InvalidateLayoutInset()
It's (yet) unclear where such invalidation may be explicitly needed (due
to caching in da08c576), but this formalizes it for when/where needed.
2026-04-13 16:47:56 -04:00
Blake-Madden b226c77ec2 Use unique clip/gradient IDs across all wxSVGFileDC objects
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 18.04 wxDFB (push) Has been cancelled
Unix builds / Ubuntu 24.04 wxGTK UBSAN (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 / macOS latest wxGTK 3 Unix Makefiles (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 builds / wxMSW vs2026 DLL Release x64 (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
No Response / no-response (push) Has been cancelled
This is useful if you need to combine output SVGs as it avoids ID
clashes.

Closes #26366.
2026-04-10 02:22:08 +02:00
Vadim Zeitlin 21264e26de Fix wxWithImages::GetImageLogicalSize() in wxGTK and wxOSX
Calling FromPhys() unconditionally on the image list size was wrong, we
want to use the logical size of the bitmap contained in wxImageList
which depends on its scale factor and is the same as its physical size
on platforms using DPI-independent pixels such as wxGTK and wxOSX.

This resulted in positioning the bitmaps incorrectly in wxListCtrl (and
almost surely wxTreeCtrl too).

Closes #26349.
2026-04-10 02:22:08 +02:00
Vadim Zeitlin 37d15603c9 Add annotations to WinMain() to avoid MSVC analyzer warnings
Avoid MSVC code analysis warning

C28251: Inconsistent annotation for 'WinMain': this instance has no annotations.

by providing the same annotations as in the SDK header.

Closes #18529.

Closes #26322.
2026-04-09 23:30:44 +02:00
Vadim Zeitlin e508f6bc9d Merge branch 'qt-rtl-fixes' of github.com:AliKet/wxWidgets
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 18.04 wxDFB (push) Has been cancelled
Unix builds / Ubuntu 24.04 wxGTK UBSAN (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 / macOS latest wxGTK 3 Unix Makefiles (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 builds / wxMSW vs2026 DLL Release x64 (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
No Response / no-response (push) Has been cancelled
wxQt: some RTL fixes.

See #26363.
2026-04-09 03:04:27 +02:00
Vadim Zeitlin 73baab427b Stop checking for putws() in configure and CMake
It doesn't seem to exist anywhere other than under Windows with MSVC
where we already use it when wxHAVE_TCHAR_SUPPORT is true.
2026-04-08 00:13:32 +02:00
Vadim Zeitlin 62ac675ad6 Stop checking for get{host,serv}byname()
These functions are always available, as proven by #error directives in
the code never triggering for all the years they were there, so stop
checking for them and just assume they are available.

Also simplify the check for gethostbyname_r() in CMake and just test
directly if we can use the function with the given prototype, reducing
the number of checks to one in the most common case when before we made
3 of them (one extra due to checking if the function existed first and
another one due to a logical but wrong idea that we need to check for 5
before 6).

Finally, also define HAVE_FUNC_GETSERVBYNAME_R_{6,5} in CMake,
previously it never defined them at all and so reentrant functions were
never used.
2026-04-08 00:05:49 +02:00
ali kettab a62bcc4ae5 wxQt: No need to store the layout direction in wxDC
The layout direction is stored/retrieved directly from the QPainter

No real changes, just a cleanup.
2026-04-07 22:55:21 +01:00
Vadim Zeitlin b5703d4357 Remove check for <widec.h> from configure and HAVE_WIDEC_H
The check for this pre-C99 Solaris header was added back in a49ffb32e2
(include widec.h if it's available, it contains declarations of
[f]putws() under Solaris, 2006-11-09) and shouldn't be needed any more.

CMake never checked for it, so remove the check from configure too and
then remove the now never defined HAVE_WIDEC_H.
2026-04-07 23:21:57 +02:00
Vadim Zeitlin 96ae1fb978 Remove checks wchar.h existence
This header always exists and we already relied on it anyhow, so stop
checking that it does and remove HAVE_WCHAR_H.
2026-04-07 23:21:57 +02:00
Vadim Zeitlin b2342ec001 Stop checking if wchar_t is a distinct type, just assume it is
We don't support ancient MSVC version which didn't treat wchar_t as a
distinct type, so don't bother catering for such compilers and simplify
the code by removing the checks for wxWCHAR_T_IS_REAL_TYPE.

Also remove the checks for this from configure and CMake.
2026-04-07 23:21:57 +02:00
Vadim Zeitlin 7ed866c622 Remove tests for non-standard and never used in practice wcstr.h
Stop checking for <wcstr.h>, this header never exists and is not used if
<wchar.h> exists (which it always does nowadays) anyhow.
2026-04-07 23:21:57 +02:00
Vadim Zeitlin 638af54a8a Merge branch 'text-max-len-fixes'
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 18.04 wxDFB (push) Has been cancelled
Unix builds / Ubuntu 24.04 wxGTK UBSAN (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 / macOS latest wxGTK 3 Unix Makefiles (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
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
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 builds / wxMSW vs2026 DLL Release x64 (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
Update Documentation / Update Online Documentation (push) Has been cancelled
No Response / no-response (push) Has been cancelled
Miscellaneous fixes related to max length of wxTextEntry.

See #26351.
2026-04-07 00:05:05 +02:00
Stefan Csomor ba3f6c0549 Centralize setting styles for normal and toggle buttons in wxOSX
Make SetBezelStyleFromBorderFlags() function internally public, rename
it to use "wxOSX" prefix and use it for toggle buttons as well.

See #26300.

Closes #26308.
2026-04-07 00:03:34 +02:00
utelle d3734f2fd8 Fix wxUILocale when regional format differs from Windows language
On Windows the default locale instantiated by wxUILocale::UseDefault()
referenced the locale configured for regional formatting in the Windows
settings. This could lead to unintended behaviour (like using the wrong
layout direction), if the locale for the Windows display language
was different from the locale for regional formatting.

Fix this by using the correct locale, i.e. either the one corresponding
to the display language or the one corresponding to the regional
formatting, depending on the locale property in question.

Closes #26274.

Closes #26354.
2026-04-06 18:18:56 +02:00
Bill Su 1f0d74de80 wxScrolled<>: reduce public API
Reduce the number of functions declared public by making functions
only used in the implementation private and giving internal classes
friend access.

This commit is best viewed with git diff --color-moved and
--color-moved-ws=ignore-all-space options.

Closes #26319.
2026-04-06 18:14:48 +02:00
Vadim Zeitlin fda62b4c2a Merge branch 'gtk-egl-notebook'
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 18.04 wxDFB (push) Has been cancelled
Unix builds / Ubuntu 24.04 wxGTK UBSAN (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 / macOS latest wxGTK 3 Unix Makefiles (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 builds / wxMSW vs2026 DLL Release x64 (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
Fix crash when using EGL-based wxGLCanvas in a wxNotebook and some
related cleanup.

See #26352.
2026-04-05 18:35:51 +02:00
Blake-Madden 83d3774a10 Add wxSVGFileDC::Save()
This function allows to check if the SVG file was written successfully.

Closes #26347.
2026-04-05 18:30:54 +02:00
Vadim Zeitlin 3740ec2ed7 Merge branch 'dc-log-dev'
Ensure that wxDC::DeviceToLogical{X,Y}() and DeviceToLogical() etc are
always consistent.

See #26346.
2026-04-05 18:28:43 +02:00
Vadim Zeitlin 85eeee1757 Merge branch 'use-0-build-fixes'
Fix build errors when wxUSE_REGKEY, wxUSE_INTL and/or wxUSE_MIMETYPE are
set to 0.

See #26332.
2026-04-05 18:22:55 +02:00
Vadim Zeitlin 8ab925fa02 Destroy EGL surface immediately when X11 window is unrealized
This doesn't change much in the typical case when the window is either
realized again immediately afterwards (as it happens with wxNotebook
pages) or destroyed, but it seems tidier to do it just in case it
remains in the unrealized state but still alive for some time.

See #26340.
2026-04-05 17:12:33 +02:00
Vadim Zeitlin 322ba2b5dd Rename GTKHandleUnrealize() to GTKHandleUnrealized()
Make the name consistent with GTKHandleRealized().

This is a private function which should never be called from outside the
library, so it shouldn't be a problem to rename it.
2026-04-05 17:03:06 +02:00
Vadim Zeitlin 7bb87de27c Make GTKHandleUnrealize() virtual too
No real changes yet, but this member function should also be virtual if
only for consistency with GTKHandleRealized(): if the latter can be
overridden, it should be also to override the former.
2026-04-05 17:00:30 +02:00
Vadim Zeitlin 8dbe20b86e Initialize wxTextEntry members in their declarations
No real changes, just a minor simplification/cleanup.
2026-04-05 15:46:57 +02:00
Vadim Zeitlin 5d28a30c50 Reimplement wxDC X/Y transformations in terms of wxPoint/wxSize
Both DeviceToLogical{X,Y}() and DeviceToLogical() taking wxPoint were
virtual, with the latter implemented in terms of the former by default,
which meant that overriding only that function, but not the ones taking
X/Y coordinates individually, could result in inconsistent behaviour,
which is exactly what happened in wxMSW.

Make it impossible for this to happen by only allowing to override the
functions taking wxPoint (or wxSize for "relative" variant) and
reimplementing the functions working with individual components in terms
of the virtual functions.

The same goes for LogicalToDevice() and "Rel" variants.

As an important side effect, this fixes a bug in wxDC::StretchBlit() in
wxMSW when using RTL layout as the code there used LogicalToDevice{X,Y}
functions that didn't return the correct values before this commit.

Update the tests to not test for the wrong behaviour of per-coordinate
translation functions now that they behave correctly. Also remove the
tests checking that per-coordinate translation doesn't work when the
transformation matrix includes a rotational component.

Update the documentation to emphasize that converting both coordinates
at once is preferred.

See #19344, #26266.
2026-04-04 20:58:14 +02:00
Vadim Zeitlin 05248eb3b8 Remove unnecessary [XY]LOG2DEV and DEV2LOG definitions
Don't confuse things even more by defining macros or functions that do
exactly the same thing as LogicalToDevice[XY] and DeviceToLogical[XY]
member functions of wxDCImpl.

This is just completely unnecessary, simply use the functions themselves
directly instead.

Note that there are still definitions of such macros in wxMSWDCImpl and
wxPostScriptDCImpl code, but they actually do something different and so
can't be just replaced with the function calls.

No real changes.
2026-04-04 19:11:58 +02:00
Vadim Zeitlin f2ac6de05f Remove unused code for wxCAIRO_SCALE==0 in wxGTK
The code for wxCAIRO_SCALE==1 was used since eaeb99858d (Use
cairo_scale() for scaling to full printing resolution[...], 2008-04-30)
and it doesn't seem useful to keep the fallback/original version any
longer.

This simplifies the code, allows to get rid of m_PS2DEV and m_DEV2PS
members of wxGtkPrinterDCImpl (as they are always 1 now) and will
facilitate the upcoming changes.
2026-04-04 19:07:25 +02:00
Vadim Zeitlin 719c678abb Merge branch 'SVGText' of github.com:Blake-Madden/wxWidgets
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 18.04 wxDFB (push) Has been cancelled
Unix builds / Ubuntu 24.04 wxGTK UBSAN (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 / macOS latest wxGTK 3 Unix Makefiles (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 builds / wxMSW vs2026 DLL Release x64 (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
Add way to get generated SVG content from wxSVGFileDC.

See #26344.
2026-04-04 18:52:02 +02:00
Blake-Madden 880c280c81 Add way to get generated SVG content from wxSVGFileDC
This can be retrieved even if the content wasn't written to a file (e.g., file name was empty in the CTORs).
2026-04-04 11:55:45 -04:00
Tim Stahlhut 3bd3baaecd Build fixes when wxUSE_INTL=0 2026-04-02 19:07:43 -04:00
Tim Stahlhut e16c6ce52a Add aborts when wxUSE_REGKEY=0 2026-04-02 19:07:42 -04:00
Tim Stahlhut 69b8d2d513 Fix wxMSW build errors when wxUSE_REGKEY=0 2026-04-02 19:07:42 -04:00
Vadim Zeitlin c00f22d868 Use wxGtkObject instead of manual g_object_unref()
No real changes, just use the RAII helper instead of manual memory
management added in c456ccb28f (Fix memory leak in
wxDataViewChoiceRenderer on GTK, 2026-03-31).
2026-04-02 22:58:55 +02:00
Vadim Zeitlin 941ec0c8cb Avoid harmless MSVC warning about converting pointer to bool
Do it explicitly to silence it.
2026-04-01 14:12:14 +02:00
ryancog 25e46b9030 Add MacGetBorderSize() 2026-03-31 22:36:48 -04:00
ryancog da08c57613 Cache wxWidgetCocoaImpl::GetLayoutInset 2026-03-31 10:07:09 -04:00