Commit Graph
80175 Commits
Author SHA1 Message Date
Steve CornettandVadim Zeitlin 6254fc30f2 Fix dark mode switching for wxStatusBar
When switching to light mode, always use the theme name L"Explorer"
rather than using MSWGetDarkModeSupport().

The theme name and id needed for dark mode does not always work for
light mode. For example, for wxStatusBar combination name=nullptr
id=L"ExplorerStatusBar" results in an un-themed status bar with strange
internal borders and missing gripper.

Closes #26608.
2026-06-20 03:16:43 +02:00
Steve CornettandVadim Zeitlin 7f582c5730 Update background brush in MSWSetDarkOrLightMode()
Remap the colour used for the background brush to the new mode.

Closes #26603.
2026-06-20 03:16:43 +02:00
Steve CornettandVadim Zeitlin e23ddf4b65 Implement wxMDIChildFrame::GetDefaultAttributes() in wxMSW
Ensure that the correct background colour is returned for MDI children.

See #26603.
2026-06-20 03:06:01 +02:00
anhnong90andVadim Zeitlin 96939340cc Remove custom_search_functions.php and the regen.sh copy step.
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
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
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
Let upstream Doxygen provide its own version as it works with PHP 8
unlike our one.

Closes #26610.
2026-06-19 17:16:08 +02:00
Vadim Zeitlin 934705ef82 Replace wxTopLevelWindow::GeometrySerializer with GeometryStore
The old class used incorrect const qualifiers on its member functions:
saving function typically modifies the object being saved into, and so
must not be const, while loading function should be const, but the old
class reversed this.

Do it right this time in the new GeometryStore class and keep the old
class for compatibility only.

See #26602.
2026-06-19 17:14:39 +02:00
paulcorandGitHub e743d674cf Stop setting GTK size-request on widgets managed by wxPizza
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
Setting the size-request is not necessary, as wxPizza does not use it to
determine the sizes of its children. But it can cause GTK to complain, when
resizing a window smaller. Not setting avoids many Gtk-WARNING debug messages
of the form:
"gtk_widget_size_allocate(): attempt to underallocate wxPizza's child X"
2026-06-18 16:30:12 -07:00
Stefan CsomorandVadim Zeitlin 7148a49c6d Map wxDF_TEXT to text in UTF-8 encoding in wxOSX
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
Don't use legacy encoding for it, this was unexpected and resulted in
e.g. wxClipboard::IsSupported(wxDF_TEXT) returning false when there was
text on the clipboard and IsSupported(wxDF_UNICODETEXT) returned true.

On current systems text and Unicode text are the same thing, so make
behaviour of wxDF_TEXT consistent with wxDF_UNICODETEXT.

See #26552.

Closes #26565.
2026-06-17 02:14:01 +02:00
Vadim Zeitlin 32d9ea2b08 Use std::vector<> in wxDataInputStream code
Prefer using the standard container instead of manual memory management.

No real changes.
2026-06-17 02:06:28 +02:00
dxbjavidandVadim Zeitlin 11f8ff7b46 Treat truncated reads as errors in wxDataInputStream
Reading from a truncated stream returned values built from partially
or completely uninitialised buffers, e.g. ReadString() decoded the
unread tail of its temporary buffer and the fixed size readers returned
whatever happened to be on the stack. Check that all the requested bytes
were actually read and, if not, mark the input stream as being in error
and return an empty/zero value instead of silently wrong data.

Closes #26600.
2026-06-17 02:03:13 +02:00
Steve CornettandVadim Zeitlin 1281d51021 Fix wxNotebook background colour in dark mode
After the changes of f8363719d4 (Preserve wxNotebook custom colours upon
dark mode switch, 2026-06-15), we need to erase background using the
proper brush.

Closes #26605.

Closes #26606.
2026-06-17 01:49:13 +02:00
Steve CornettandVadim Zeitlin 86f6a8d039 Add support for switching to dark mode to wxTreeCtrl
Update wxTreeCtrl to respond to system colour changes, including
switching into and out of dark mode.

Closes #26601.
2026-06-16 18:44:45 +02:00
Vadim Zeitlin 0ebc0e51ec Don't scale AUI layout on platforms using DPI-independent pixels
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
Disable changes of d32c574141 (Update AUI layout on DPI change,
2026-06-01) for the platforms with wxHAS_DPI_INDEPENDENT_PIXELS, i.e.
wxGTK and wxOSX, because it's not just unnecessary but wrong to scale
layout by DPI scale factor there.
2026-06-16 14:41:51 +02:00
Vadim Zeitlin 6af5df1d43 Check that page inserted in wxAuiNotebook has correct parent
The page isn't shown correctly otherwise (at least in wxMSW) and this
check is consistent with a similar one in wxNotebook.
2026-06-16 14:34:46 +02:00
Paul Cornett eb44efae4b Avoid some -Wzero-as-null-pointer-constant warnings
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
2026-06-15 22:37:00 -07:00
Paul Cornett 05e49a5972 Remove execute permission from source file 2026-06-15 22:29:59 -07:00
Paul Cornett be1274d517 Avoid some -Wcomma warnings 2026-06-15 22:20:39 -07:00
Paul Cornett e69213eca1 Remove declaration for function which was removed
Should have been part of
bf386d99c0 (Simplify wxSplashScreen drawing code, 2026-05-15)
2026-06-15 22:02:57 -07:00
Paul Cornett ecb37e81af Fix drawing of very large bitmaps with GTK3
Creating a Cairo "similar image" surface seems to use a lot of memory for very large
images, resulting in what is probably an out-of-memory condition. Using a plain
image surface allows sizes up to the Cairo limit of 32767x32767 to be handled.
See #25656
2026-06-15 21:59:05 -07:00
Paul Cornett 71f1b8b894 Fix assertion failure in generic animation control
See #26598
2026-06-15 21:41:10 -07:00
dxbjavidandVadim Zeitlin 788b458112 Avoid uninitialised palette read in wxXPMDecoder::ReadData()
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
This function allocates the palette r/g/b arrays from the colour count
given in the XPM header but fills them by walking the colour map, so a
malformed file that reuses the same key on more than one colour line
collapses those lines into a single map entry and leaves the tail of the
arrays uninitialised. wxPalette() then copies that uninitialised memory
into the palette later returned by GetPalette(), and in debug builds the
wxASSERT(i == colors_cnt) at the end fires.

Use the actual number of distinct colours in the map as the size for
the arrays and the palette to fix this.

Also add a test loading an XPM triggering this issue.

Closes #26595.
2026-06-16 00:34:15 +02:00
Vadim Zeitlin 753de29cae Merge branch 'darkmode-custom-colour' of github.com:stevecor/wxWidgets
Preserve custom colours upon dark mode switch.

Also remove wxStaticText::MSWSetDarkOrLightMode() as it appears to be
unnecessary.

See #26596.
2026-06-16 00:29:38 +02:00
Steve CornettandVadim Zeitlin 0b6e531bae Remove wxDialogBase::OnSysColourChanged()
This function became unreferenced in 2158f4d798 (moved all wxDialog
event handlers to wxDialogBase to avoid code duplication (sixplication?)
among ports[...], 2006-08-19).

Closes #26594.
2026-06-16 00:25:03 +02:00
songjinandVadim Zeitlin 192eb68e05 Clarify RequestUserAttention() behaviour under wxGTK
Document that this function may not have any effect even though it is
implemented because it also requires run-time support.

Closes #26593.

Co-authored-by: Vadim Zeitlin <vadim@wxwidgets.org>
2026-06-16 00:06:55 +02:00
Maarten BentandVadim Zeitlin a66bf5d897 Disable MinGW thread local workaround in wxTranslations
This has been fixed in MSYS2 MinGW.

Fixes #26195.

Closes #26587.
2026-06-16 00:04:01 +02:00
Blake-MaddenandVadim Zeitlin 4eb22403a5 Remove plugin interface from test_drawing
This was never used and doesn't seem like it ever will be.

Closes #26568.
2026-06-16 00:02:56 +02:00
Steve Cornett 920b428a4c Remove MSWSetDarkOrLightMode() 2026-06-15 12:59:20 -07:00
Steve Cornett f8363719d4 Preserve wxNotebook custom colours upon dark mode switch 2026-06-15 11:41:53 -07:00
Steve Cornett 4df35f2418 Preserve wxStaticText custom colours upon dark mode switch 2026-06-15 11:41:22 -07:00
Vadim Zeitlin 0af78f6896 Fix active tab index value saved in AUI layout
This value must be the page index, independent of the page current
position in its tab control, but we saved the page position instead.
Get the active page position in the "m_tabs" pseudo tab control which
always stores pages in their addition order to fix this.
2026-06-15 00:37:18 +02:00
Vadim Zeitlin a1e910f517 Use "windows-2022" image for wxQt CI builds using MSVS 2022
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
Somehow using "windows-2025" still results in "windows-2025-vs2026"
image being used (GitHub Actions bug?).
2026-06-13 22:25:53 +02:00
Vadim Zeitlin 47945b13b0 Use "windows-2025" image for wxQt builds using MSVS 2022
This MSVS version is not available in "windows-2025-vs2026" image to
which "windows-latest" maps now.
2026-06-13 20:52:51 +02:00
dxbjavidandVadim Zeitlin 7ee01fa850 Validate background colour index in wxGIFDecoder::LoadGIF()
Don't set background colour to uninitialized memory contents, just
ignore the invalid index.

Closes #26582.
2026-06-13 20:42:07 +02:00
Vadim Zeitlin fd35f189b6 Merge branch 'msw-dark-taskdlg'
Add dark mode support to wxMSW task dialog-based dialogs.

See #26570.
2026-06-13 20:28:01 +02:00
Steve CornettandVadim Zeitlin 0e60afa604 Preserve wxListCtrl custom colours upon dark mode switch in wxMSW
Avoid overwriting custom colours upon switching into or out of dark
mode.

The text colour is now the same thing as the foreground colour, as with
wxGenericListCtrl.

Closes #26584.
2026-06-13 20:25:33 +02:00
Vadim Zeitlin 5bedad68dd Remove note about wxToolBar::SetDropdownMenu() in dark mode
This remark is obsolete, the problem described by it was fixed by
c301af42f9 (Fix wxMSW toolbar drop down arrow appearance in dark mode,
2024-10-22).
2026-06-13 20:21:58 +02:00
Steve CornettandVadim Zeitlin 29e64673a6 Preserve wxToolBar custom background colour upon dark mode switch
Avoid overwriting wxToolBar custom colours upon switching into or out of
dark mode.

Closes #26581.
2026-06-12 18:44:00 +02:00
Vadim Zeitlin c3c3b70aca Don't say that task dialogs don't support dark mode any more
This limitation is lifted by the changes in this branch.
2026-06-12 18:42:17 +02:00
Arthur ChanandVadim Zeitlin aef89c0e87 OSS-Fuzz: Add new fuzzer targets tar operation
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
Add a new OSS-Fuzz fuzzer targeting tar operation, mirroring the
existing zip fuzzer.

Closes #26579.

Signed-off-by: Arthur Chan <arthur.chan@adalogics.com>
2026-06-11 23:57:23 +02:00
Steve CornettandVadim Zeitlin 34a29a1599 Fix disabled wxStaticBox text color in dark mode
Ensure that the control is redrawn when it's enabled or disabled and fix
its drawing in dark mode when it is disabled.

Closes #26575.
2026-06-11 23:52:30 +02:00
Vadim Zeitlin 57def0bcdc Merge branch 'darkmode-switching-checkbox' of github.com:stevecor/wxWidgets
Fix dark mode switching for wxCheckBox and wxRadioButton in wxMSW.

See #26572.
2026-06-11 23:50:50 +02:00
Blake-MaddenandVadim Zeitlin 9f397d5977 Fix repaint artifacts in Edge-based wxWebView
When an Edge-based wxWebView is a child of a more complex control and
that control is hidden and then shown again, artifacts from the old
window will appear in the web view window.

Fix this by forcing a repaint, in a non-trivial way because the native
window optimizes away most attempts to do it, whenever the window is
shown.

Closes #26566.
2026-06-11 23:48:36 +02:00
Blake-MaddenandVadim Zeitlin 6f24da9068 Avoid events being sent to half-destroyed wxWebViewEdge
Ensure that the control doesn't get any size/focus events while it's
being already destroyed.

See #26566.
2026-06-11 23:47:46 +02:00
Vadim Zeitlin 767e9c8bb9 Fix leak in wxHtmlHelpData::LoadCachedBook() after previous commit
Don't leak wxHtmlHelpDataItem memory, even if the data is invalid.

See #26577.
2026-06-11 23:45:37 +02:00
dxbjavidandVadim Zeitlin ebd86dee67 Reject out-of-range parent index in cached help book
LoadCachedBook reads each index entry's parent back-reference straight
from the .cached file and uses it as an index with no check, so a
crafted cached file (which can sit inside a .htb help archive opened
through AddBook) may result in creating a pointer to data outside the
m_index array; that pointer is later dereferenced when the index is
sorted at the end of AddBookParam.

The change rejects the file when parentShift is negative or larger than
the number of index entries loaded so far, matching the existing version
and flags checks just above.

Also add a small test under tests/html that feeds such a cached stream
and confirms it is now refused rather than reading out of bounds.

Closes #26577.
2026-06-11 23:40:20 +02:00
Mohmed abdel-fattahandVadim Zeitlin 458549bd18 Draw background of expanded footer area under Windows 11
Fix wrong background appearance under some (newest?) Windows 11 systems.
2026-06-11 23:33:35 +02:00
Mohmed abdel-fattahandVadim Zeitlin 357265c281 Apply dark theme to the task dialog scrollbars
They may be shown after expanding the "Details" section if the contents
is big enough and didn't adapt to the dark theme without this change.
2026-06-11 23:30:04 +02:00
Vadim Zeitlin afe8b984a5 Simplify check for null element class
Return early in this case to ensure that the pointer can be used without
any checks in the code below.

No real changes.
2026-06-11 23:23:34 +02:00
Steve CornettandVadim Zeitlin 2d07a1e214 wxMSW: Border handling code cleanup
Remove a useless function and some commented-out code.

Closes #26580.
2026-06-11 23:16:52 +02:00
taler21andVadim Zeitlin 4fa5863637 Correct translation of "Del" key in some languages
Use the key name that is used by Windows itself (for example, on its
on-screen keyboard as well as an accelerator in its notepad).

Closes #26576.
2026-06-11 23:12:25 +02:00
Vadim Zeitlin aeef45946c Fix progress dialog background
Pass the dark brush to use in the dialog subclass proc and do not set
the class background brush to avoid it being freed.
2026-06-11 04:14:50 +02:00