The code apparently expected EM_SETCUEBANNER to return false on
pre-Vista systems (where the cue banners don't work). This isn't the
case in practice, so check for Vista explicitly and use the generic
implementation on XP.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/WX_3_0_BRANCH@75333 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
Disable setting focus in response to TVN_SELCHANGING when deleting an item in
a single selection control too -- this was already done in multi selection
case but not in this one, for some reason.
See #15721.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/WX_3_0_BRANCH@75306 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
If the application launches while the parent process doesn't have an active
window, [NSApp run] won't terminate immediately, as was assumed here. Instead,
it blocks until some input arrives, e.g. clicking the Dock icon.
Work around this by adding a dummy event to the queue.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/WX_3_0_BRANCH@75303 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
Subsequent calls didn't initialize the hidden window correctly because
wxSocket::Shutdown() unregistered the window class used for it, but
wxSocket::Initialize() still kept a pointer to the previously registered class
name.
Don't remember it any longer, unlike in the other cases where we use
wxCreateHiddenWindow(), this function is only ever going to be called once
until the class is unregistered anyhow, so it doesn't have to be static.
Closes#15701.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/WX_3_0_BRANCH@75288 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This code probably misunderstood NSEvent documentation, where this mask is
mentioned, but setKeyEquivalentModifierMask: documentation doesn't list it as
allowed. More importantly, it causes "fn" to appear in the menu item and the
accelerator doesn't work.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/WX_3_0_BRANCH@75279 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
Use wxUIntPtr, not long, and SetItemPtrData() instead of SetItemData(), to
ensure that we preserve the values of client data pointers in 64 bit build,
otherwise they were truncated to 32 bits.
Closes#15687.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/WX_3_0_BRANCH@75247 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
We multiplied the number of items by the size of each element twice, once in
wxVector::reserve() itself and once in Ops::Realloc() it called, so we
allocated much more memory than actually needed.
Fix this by passing the number of elements to Ops::Realloc().
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/WX_3_0_BRANCH@75245 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
When setting a new "Window" menu (as opposed to just modifying the existing
one which did work correctly), we shouldn't show it immediately in the menu
bar if there are no MDI children, this results in wrong UI and assert
failures.
Closes#15663.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/WX_3_0_BRANCH@75244 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
Account for the "Window" menu (and any other foreign windows lurking in our
menu bar) correctly in wxMenuBar::Insert() instead of the old code which
apparently tried to do something similar but didn't make much sense and didn't
work when trying to insert the menu at the position actually occupied by the
"Window" menu in the menu bar.
Closes#15662, #1732.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/WX_3_0_BRANCH@75243 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
Native OS X apps sometimes have certain app-wide comments in the
Apple/app menu ("Check for Updates" is a typical example). Make it
possible to write well-behaved OS X apps by exposing this menu to user
code.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/WX_3_0_BRANCH@75226 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
The code didn't follow the golden rule of localization and broke
user-visible string into separately translated substrings. Replace with
the same _("About %s") string already used in wxAboutDialog.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/WX_3_0_BRANCH@75225 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
Have just one copy of the code, instead of two. Eliminate differences
between the two versions. As a result, applications now properly have
preferences and about items even if window-less.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/WX_3_0_BRANCH@75224 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775