Go to file
Vadim Zeitlin 0220d86ef4 Fix missing wxContextMenuEvent for wxTreeCtrl in wxMSW
This reverts 54753c3d75 and (partially)
dbd5b2ce42 (leaving the unit test added by it)
and implements yet another fix for the original problem of duplicate
wxContextMenuEvents generated in wxMSW which doesn't break the generation of
wxContextMenuEvents entirely in wxTreeCtrl.

wxTreeCtrl is special as its DefWindowProc() sends WM_CONTEXTMENU directly to
its parent, and not to the control itself, when handling WM_RBUTTONUP, so the
code checking that WM_CONTEXTMENU was not coming from one of the window own
children added in dbd5b2 filtered out all messages from it completely. As it's
probably not the only control behaving in this way, abandon the idea of the
message origin check and instead set things up so that we still pass the
message to DefWindowProc() (because not doing it breaks built-in context menus
in wxTextCtrl, for example), but don't do anything when the message is
propagated upwards from it.

This should ensure that we only process the message once in MSWHandleMessage()
of the first window which gets it, whether it's the original window or its
parent, which ensures the event propagation on wxWidgets side of things, but
prevents it being done by Windows itself.

See #13683.
2016-01-30 04:43:45 +01:00
art Replace images in wxRendererMac::DrawTitleBarBitmap() with drawing code. 2016-01-05 14:51:04 +01:00
build Test builds with newer g++, clang and OS X on Travis CI 2016-01-24 21:26:43 +01:00
demos Link with shlwapi.lib and version.lib under MSW 2015-10-07 18:56:33 +02:00
distrib Updated links and mailing list addresses. 2015-10-30 20:06:09 -06:00
docs Avoid 1px gaps between consecutive underlined words in wxHTML 2016-01-29 17:19:29 +01:00
include Restore sending wxEVT_CONTEXT_MENU for wxTE_RICH controls in wxMSW 2016-01-30 01:03:32 +01:00
interface Add wxTextEntryDialog::ForceUpper() 2016-01-22 14:41:06 +01:00
lib Delete dummy 2015-06-03 17:17:38 +02:00
locale Update Lithuanian translations 2016-01-17 14:04:36 +01:00
misc Add support for "forceupper" attribute to wxTextCtrl in XRC 2015-12-08 03:02:49 +01:00
samples Miscellaneous improvements to the multimedia keys support 2016-01-20 18:56:03 +01:00
src Fix missing wxContextMenuEvent for wxTreeCtrl in wxMSW 2016-01-30 04:43:45 +01:00
tests Skip network tests when running under Travis CI 2016-01-26 23:19:51 +01:00
utils Link with shlwapi.lib and version.lib under MSW 2015-10-07 18:56:33 +02:00
.gitattributes Replace upmake and dependent modules with a monolithic script 2015-10-04 00:11:10 +02:00
.gitignore Add Visual Studio 2015 specific folder to the list of ignored files/folders. 2016-01-25 23:37:33 +01:00
.travis.yml Don't use "-B" make option in Travis CI builds 2016-01-29 15:16:15 +01:00
acinclude.m4 Add --disable-sys-libs configure option. 2014-07-24 11:34:14 +00:00
aclocal.m4 Add --enable-cxx11 configure option 2016-01-24 21:22:15 +01:00
appveyor.yml Fixed missing wxUSE_STL config for MinGW AppVeyor build. 2015-11-04 19:07:15 -07:00
autoconf_inc.m4 Update OS X and iOS related build files 2015-11-09 22:47:56 +04:00
autogen.sh
BuildGit.txt Updated BuildSVN.txt for git migration. 2015-02-20 18:04:53 -07:00
config.guess
config.sub
configure Revert to using -stdlib=libc++ as part of CXX under OS X 2016-01-29 15:15:14 +01:00
configure.in Revert to using -stdlib=libc++ as part of CXX under OS X 2016-01-29 15:15:14 +01:00
CONTRIBUTING.md Mention that GitHub pull requests are accepted too now. 2015-05-01 15:09:46 +02:00
descrip.mms
install-sh
Makefile.in Add wx/generic/collheaderctrl.h to the list of GUI headers 2016-01-02 13:26:26 +01:00
mkinstalldirs
README.md Show continuous integration results in readme. 2015-12-03 21:38:00 -07:00
regen
setup.h_vms Add wxUSE_NATIVE_PROGRESSDLG to OpenVMS setup 2016-01-05 16:33:57 +01:00
setup.h.in Add proper support for wxUSE_NATIVE_PROGRESSDLG 2015-12-30 18:54:35 +01:00
version-script.in
wx-config-inplace.in
wx-config.in Remove wxPM, wxWidgets port to OS/2. 2014-05-15 23:56:58 +00:00
wxwin.m4 Don't force the use of DEBUG on application in autoconf macros 2015-09-20 02:23:06 +02:00

About

wxWidgets is a free and open source cross-platform C++ framework for writing advanced GUI applications using native controls.

wxWidgets Logo

wxWidgets allows you to write native-looking GUI applications for all the major desktop platforms and also helps with abstracting the differences in the non-GUI aspects between them. It is free for the use in both open source and commercial applications, comes with the full, easy to read and modify, source and extensive documentation and a collection of more than a hundred examples. You can learn more about wxWidgets at https://www.wxwidgets.org/ and read its documentation online at http://docs.wxwidgets.org/

Platforms

AppVeyor Travis

wxWidgets currently supports the following primary platforms:

  • Windows XP, Vista, 7, 8 and 10 (32/64 bits).
  • Most Unix variants using the GTK+ toolkit (version 2.6 or newer or 3.x).
  • Mac OS X (10.7 or newer) using Cocoa (32/64 bits) or Carbon (32 only).

Most popular C++ compilers are supported including but not limited to:

  • Microsoft Visual C++ 2003 or later (up to 2015).
  • g++ 3.4 or later, including MinGW/MinGW-64/TDM under Windows.
  • Clang under OS X and Linux.
  • Intel icc compiler.
  • Oracle (ex-Sun) aCC.

Licence

wxWidgets licence is a modified version of LGPL explicitly allowing not distributing the sources of an application using the library even in the case of static linking.

Further information

If you are looking for support, you can get it from

We would also gladly welcome your contributions.

Have fun!

The wxWidgets Team.