Commit Graph

72301 Commits

Author SHA1 Message Date
Vadim Zeitlin
a5a5b1bb15 Fix restoring focus after showing native modal dialogs in wxMSW
This fixes a regression introduced in d311c705d7 (Make native dialogs
application-modal in wxMSW, 2022-04-01) which resulted in a focus loss
after showing a modal dialog, as the parent window was still disabled
when the native modal dialog was closed and so focus couldn't be set to
any of its children and was simply lost as the result.

Fix this by not disabling the dialog parent ourselves, but leaving
handling the parent status to the native modal dialog, which already
takes care of disabling the parent it uses when it is shown and
re-enabling it when it is dismissed. Still use wxWindowDisabler to
disable all the other top level windows, if any, to ensure that the
modal dialogs are truly app-modal and not just window-modal, i.e. ensure
that #11887 still remains fixed.

Closes #22285.
2022-04-07 23:43:53 +01:00
Vadim Zeitlin
717e851225 Allow to leave another window enabled in wxWindowDisabler
Allow specifying another window to "skip", i.e. not to disable, in
wxWindowDisabler.

This is not used yet, but will be in the upcoming commit.
2022-04-07 23:38:16 +01:00
Vadim Zeitlin
bc81682e7f Refactor wxWindowDisabler to allow skipping more than one window
This is not implemented yet, but this commit changes DoDisable() to
disable all windows except those in the list of the windows not to be
disabled instead of explicitly checking for just a single window to
skip.

Rename m_winDisabled to m_windowsToSkip to better describe its purpose
and also because it's a vector, and so should use plural form in its
name.

Finally note that AfterDisable() is called with NULL argument from the
ctor not taking the window to skip for compatibility with the old code,
but it's not clear if it's really the right thing to do and perhaps this
shouldn't be done.

No real changes yet.
2022-04-07 23:32:05 +01:00
Vadim Zeitlin
53844108dd Make wxWindowDisabler ctors explicit
Implicitly converting a bool or a wxWindow pointer to this class makes
no sense and shouldn't be allowed, so don't allow it.
2022-04-07 23:22:55 +01:00
AliKet
68b65c7333 Fix synthetic mouse events produced by wxAutoScrollTimer
Simplify the code translating from screen to client coordinates and make
it correct by using ScreenToClient() directly instead of emulating it
manually, which doesn't work quite right, at least in wxGTK.

Closes #22289.
2022-04-08 00:14:28 +02:00
Vadim Zeitlin
e92f8cbce8 Fix wxOSX compilation problem with older SDKs
NSArray is not fully declared otherwise, at least when using Xcode 8.3.

See #22272.
2022-04-07 17:43:30 +02:00
Vadim Zeitlin
f84864dcca Merge branch 'master' of https://github.com/dghart/wxWidgets
Add a missing XPM to the xrc sample

The merge also rebakes the sample makefiles.

See #22270.
2022-04-07 17:42:05 +02:00
Vadim Zeitlin
19e3a47d98 Update version to 3.1.7 and rebake the makefiles
Make it possible to distinguish the latest master from 3.1.6 before
making any changes.

Closes #22282.
2022-04-07 17:40:13 +02:00
DietmarSchwertberger
3719ab3725 Add support for rearranging wxGrid rows order interactively
Add EnableDragRowMove() function and wxEVT_GRID_ROW_MOVE, similarly to
the existing column function and event.

Closes #22260.
2022-04-07 17:39:56 +02:00
Patriccollu
c39c392bbb Add translations for Corsican
Closes #22276.
2022-04-07 17:39:56 +02:00
Vadim Zeitlin
71426a168a Add change log section for the next 3.1.7 release
Add a placeholder for the changes in the next release, restoring the
text removed in d8ec020109 (Copy the changes in 3.1.6 from Git notes to
the change log, 2022-04-04).
2022-04-07 17:39:56 +02:00
Paul Cornett
4c375ad430 Fix wxDC::DrawRotatedText() with GTK3
Use m_sign[XY] to determine if axes are inverted, as the full device transformation
may have negative scale for things like text rotation. Broken by
eafa248117 (Avoid mirroring text when wxDC axes are inverted with GTK3, 2022-02-13)
See #22278
2022-04-06 19:22:39 -07:00
Roberto Boriotti
c8cd79696c Update Italian translations 2022-04-05 14:25:23 +02:00
dghart
cd43393654 Update xrcdemo.bkl
Add an xpm missed by commit 49fd3a22
2022-04-04 20:41:23 +00:00
dghart
101602da63 Update CMakeLists.txt
Add an xpm missed by commit 49fd3a22
2022-04-04 20:39:14 +00:00
Vadim Zeitlin
4da102f2b1 Remove mention of Trac milestones from the release instructions
Replace it with the GitHub milestones update step instead.

There is no reason to create a new version any more.
2022-04-04 20:28:41 +01:00
Vadim Zeitlin
85c8c8987e Minor docs-related updates to the release instructions
Remove the instructions for applying the cherry-picked commit on
docs.wxwidgets.org as it's not used any more.

These instructions are probably insufficiently detailed, but we'll
probably switch to using GitHub Actions for updating the documentation
soon, so they won't be necessary for much longer anyhow and it's not
worth expanding them.
2022-04-04 17:41:05 +01:00
Vadim Zeitlin
e67b25ff69 Update checksums for 3.1.6 release files again
These files correspond to v3.1.6-rc2 tag.
2022-04-04 16:04:58 +02:00
Vadim Zeitlin
35a6d7b15f Fix a typo in "security fixes" in the change log 2022-04-04 15:41:33 +02:00
Vadim Zeitlin
e4c2298e5e Use window scale factor for all MSW wxDCs associated with windows
This ensures that we use correct font sizes with the DCs and, in
particular, fixes the font size in wxAutoBufferedPaintDC when using DPI
scaling different from 100% after the changes of e3557b8c0a (Respect
bitmap content scale factor in wxMSW wxMemoryDC, 2022-03-26).

See #22234.
2022-04-04 13:30:08 +01:00
Vadim Zeitlin
543b581bca Fix type for fallback definitions of INET_E_XXX
These constants must be of type HRESULT, i.e. long, and not unsigned
long that was used for them by default.
2022-04-04 12:40:22 +02:00
Vadim Zeitlin
620ffa61d0 Upgrade expat submodule to fix MSVS 2010/2011 build
Use non-standard _isnan() for these compilers.
2022-04-04 12:40:22 +02:00
Vadim Zeitlin
20fe5e57df Update checksums for 3.1.6 release files
This is the result of running ./build/tools/post-release.sh
2022-04-04 01:31:21 +02:00
Vadim Zeitlin
1990792484 Update the release documents for 3.1.6 release
Update the version, fix the date and update the changes list.

Also zero out the checksums for the release binaries.
2022-04-04 01:16:33 +02:00
Vadim Zeitlin
db4731fc75 Update the versions of gcc that we provide binaries for
Update TDM-GCC version and add MSYS2 gcc one.

See #22261.
2022-04-04 01:12:08 +02:00
Vadim Zeitlin
d8ec020109 Copy the changes in 3.1.6 from Git notes to the change log
Replace the comment explaining how the change log should be updated with
the result of actually doing just this.
2022-04-04 01:09:44 +02:00
Vadim Zeitlin
01ed0e54f7 Merge branch 'build_tools' of https://github.com/XPsoud/wxWidgets
Update MinGW compiler versions for 3.1.6 release.

See #22261.
2022-04-03 20:15:07 +02:00
Tobias Hammer
9991a8b490 Enable wxCheckListBox in wxDebugReportDialog
It was wrongly guarded by wxUSE_OWNER_DRAWN but there are wxCheckListBox
implementations available for most platforms. Use correct
wxUSE_CHECKLISTBOX instead.

Closes #22263.
2022-04-03 20:14:31 +02:00
PB
295237882b Fix building benchmarks with gcc
GCC failed to compile bench.cpp due to DBL_MAX not being declared.

Fix this by including float.h.

Closes #22262.
2022-04-03 20:12:44 +02:00
Xaviou
d923feee31 Readme Update 2022-04-03 10:56:18 +02:00
Xaviou
d686a44b4f Update MinGW build tools (MinGW-1030-TDM and MSYS2 MinGW-1120) 2022-04-03 10:45:07 +02:00
Scott Talbert
5614f73b2b Document missing wxGridStringTable parent class
See https://github.com/wxWidgets/Phoenix/issues/2131

Closes #22258.
2022-04-02 16:48:54 +02:00
Vadim Zeitlin
46f81624c1 Add tests for wxLocaleIdent::FromTag() and FindLanguageInfo()
Add at least trivial tests for this function and FindLanguageInfo()
overload using it to confirm that it works minimally correctly.

See #22252.
2022-04-02 16:45:20 +02:00
utelle
b507c97b92 Handle Windows CRT locale names in wxLocaleIdent::FromTag() too
Recognize strings returned by setlocale() when using MSVC under MSW too,
if only because it was possible to construct wxLocale using them in the
previous versions and so doing this avoids breaking the existing code.

Also don't assert in FromTag(), even if the input is incorrect, as it is
potentially user-defined (e.g. can come from environment variables under
Unix).

Closes #22247, #22252.
2022-04-02 16:45:20 +02:00
utelle
280cb68887 Add wxLanguageInfo::GetCanonicalWithRegion() helper
This simple function allows to simplify the code by avoid to test for
CanonicalRef before using either it or CanonicalName in multiple places.

No real changes.

See #22252.
2022-04-02 16:45:20 +02:00
Vadim Zeitlin
fdfb9cda1b Update zlib submodule to v1.2.12.1
This fixes a security problem (CVE-2018-25032) in it.
2022-04-01 17:56:23 +02:00
Vadim Zeitlin
9501349b14 Disable wxWebRequest tests using badssl.com
There are DNS problems with resolving it that make the tests fail, see
https://github.com/chromium/badssl.com/issues/500

Require WX_TEST_WEBREQUEST_URL_SELF_SIGNED to be set to the URL to test
instead of hard-coding https://self-signed.badssl.com and don't set this
variable for now to let the tests pass.
2022-04-01 15:27:24 +02:00
Vadim Zeitlin
d311c705d7 Make native dialogs application-modal in wxMSW
Being able to use other application windows while a modal dialog was
shown was unexpected and could easily result in nasty reentrancies, and
was also inconsistent with the behaviour of ShowModal() for the dialogs
defined in wx, so disable all the windows, not just the parent one,
while showing the native modal dialogs too.

Closes #11887.
2022-04-01 02:50:38 +02:00
Vadim Zeitlin
b2b58ee6cf Upgrade bundled Expat to the latest version
This fixes several security vulnerabilities when parsing untrusted XML
input.

Closes #22218.
2022-04-01 01:37:40 +02:00
Paul Cornett
0ac60175b0 Use wxINVERT for drawing generic wxCaret when possible
This now works after recent fixes, although wxINVERT does not
work with wxGraphicsContext-based wxDC. So this is mainly for GTK2,
only about 20 years late.
2022-03-31 08:11:27 -07:00
Paul Cornett
d51f274e1c Avoid drawing generic wxCaret outside of its bounds
Outline caret rectangle needs to be inset so that its outer
edge is the same as the solid caret when window is scaled.
2022-03-31 07:46:28 -07:00
Jouk
5536f0196f OnOpenVMS langinfo.h is too old 2022-03-31 08:36:00 +02:00
Paul Cornett
228bbbf93a Create generic wxCaret backing bitmap with correct scale
Fixes degraded appearance of scaled window contents under caret
2022-03-30 09:04:19 -07:00
Tobias Fleischer
e8872b335c Allow using multiple lines in single line wxTextCtrl under Mac
Add new OSX specific OSXEnableNewLineReplacement(bool enable) function
to control if new lines should be replaced with spaces (which is still
done by default) in a single-line wxTextCtrl.

Closes #22245.
2022-03-30 17:59:49 +02:00
Vadim Zeitlin
c63de862c4 Actually use WX_HTML_OUTPUT_DIR in Doxyfile
This should have been part of efa1c59141 (Allow setting
WX_HTML_OUTPUT_DIR to override default location, 2022-03-28) but was
forgotten there.
2022-03-30 16:35:45 +02:00
utelle
9bb2a02232 Simplify accessing localized names
Add a helper function allowing to make the code shorter and hopefully
more clear.

Closes #22246.
2022-03-30 14:32:07 +02:00
Paul Cornett
3985e195cb Don't include <winsock2.h> when wxUSE_SOCKETS==0 2022-03-29 16:44:52 -07:00
Daniel Kulp
842314af4e Fix generating right click menu events for wxComboBox in wxOSX
These events were never generated for the comboboxes, so forward them to
the window from the text editor used for the comboboxes, just as we
already do for the key events.

Do it for the mouse up events too for consistency.

Co-Authored-By: Vadim Zeitlin <vadim@wxwidgets.org>

Closes #22179.
2022-03-30 01:13:32 +02:00
Vadim Zeitlin
ce1d350f41 Add logging of context menu events to the widgets sample
Show when (and if) they are generated.
2022-03-30 01:07:38 +02:00
Vadim Zeitlin
e9aaca50c2 Fix the name of the test excluded in the CI builds using Wine
The apparently innocuous a0d1379a57 (Split wxDC::GetTextExtent() test
case in 3 pieces, 2022-03-29) has broken the CI builds because it moved
the code failing under Wine (apparently due to problems in metafile
support implementation) into a differently named test.

Fix this now by excluding the right test.
2022-03-30 00:55:17 +02:00