Commit Graph

58809 Commits

Author SHA1 Message Date
Scott Talbert
a19e512e80 Fix the stop function of wxFontEnumerator for wxGTK
In a wxFontEnumerator, if false is returned from OnFacename() or
OnFontEncoding(), the enumeration is supposed to stop.  This was not happening
on wxGTK.

See https://github.com/wxWidgets/wxWidgets/pull/311

(cherry picked from commit 3572c2c654)
2016-08-08 14:07:46 +02:00
David Costanzo
b4e2f93248 Don't handle special keys as characters in wxSTC in non-Unicode build
Correct the check for non-special keys when wxUSE_UNICODE==0.

Closes #17598.

(cherry picked from commit ab092c8d13)
2016-07-17 14:17:40 +02:00
Vadim Zeitlin
bca90fc95f Recognize wxAUI_NB_MIDDLE_CLICK_CLOSE in wxAuiNotebook XRC handler
This style was apparently just forgotten, so add it too.

See #17597.

(cherry picked from commit 63944ae9bd)
2016-07-17 14:06:55 +02:00
Paul Cornett
3e9bd07e3f Be more conservative in avoiding Cairo's maximum coordinate limit.
Fixes wxGCDC::Clear().
See #17584

(cherry picked from commit fa54e1af15)
2016-07-08 22:59:19 -07:00
Vadim Zeitlin
0264b2218c Use equally-sized buttons in wxMSW horizontal toolbars
Only use TBSTYLE_AUTOSIZE, adjusting each button to the size it really needs,
for the toolbars with wxTB_HORZ_LAYOUT style as they don't have any uniform
button size anyhow.

(cherry picked from commit 967bdbf994)
2016-06-30 19:13:30 +02:00
Paul Cornett
722ff6a210 Avoid clearing selection for mouse button up event which is not over an item, see #17547
(cherry picked from commit e9fdda8638)
2016-06-16 07:25:24 -07:00
Dimitri Schoolwerth
6c6522736d Make a public free function private
In cfe9625a0d the free function
MSWShouldBeChecked was introduced in toolbar.cpp and mistakenly made
inline. Fix by making it static instead.

(cherry picked from commit 54e6f6e7b8)
2016-06-08 01:32:33 +02:00
Artur Wieczorek
f82f74d09b Fix disabling control tools in wxMSW wxToolBar
Tools containing controls should be enabled/disabled in a different way from
the button tools in wxToolBar::DoEnableTool(). The control and its label (if
any) need to be explicitly enabled/disabled for wxToolBarBase::EnableTool() to
work properly.

Closes #17346.

(cherry picked from commit 68eae6ba5b)
2016-06-08 01:30:04 +02:00
Vadim Zeitlin
15507c0ab4 Suppress harmless unused parameter warnings in release build
Use WXUNUSED_UNLESS_DEBUG() for the parameters used only inside debug
checks.

See #16829.

(cherry picked from commit 6c3dfd113b)
2016-06-08 01:25:56 +02:00
Vadim Zeitlin
cfe9625a0d Fix checked disabled wxToolBar tools with custom images in wxMSW
Windows doesn't use the correct image for checked disabled tools, at least
up to and including Windows 7, so don't put such tools in the "checked"
state at all: this doesn't matter as they are disabled anyhow, but shows
the correct image for them.

See #12989.

(cherry picked from commit 29cd13cc8f)
2016-06-08 01:20:18 +02:00
Andreas Falkenhahn
fd95ab5615 Refresh wxListCtrl with wxLC_HRULES in SetColumnWidth() in wxMSW
This is necessary to avoid corrupted rules display after changing the column
width.

Closes #17158.

(cherry picked from commit 02c8973a57)
2016-06-07 23:37:20 +02:00
Kevin B. McCarty
fa19bfa239 Fix race condition in Unix wxExecute() if child exited too quickly.
Check if the child has already finished before starting waiting for it.

Closes #16661.

(cherry picked from commit 1298f5970b)
2016-06-07 23:35:34 +02:00
Dimitri Schoolwerth
c293c645d7 Include all repository files in setup exe
Don't exclude non-MSW specific files any longer from the generated
installer for MSW. The space savings are hardly worth the effort:
originally 46.9 MiB (133 MiB installed) and with all files included 48 MiB
(142 MiB installed).
Also by having all files in the installer more exotic builds such as wxGTK
for MSW are available.

(cherry picked from commit 9a9a1199d4)
2016-06-06 03:31:55 +04:00
Corey Daley
6f7ea203f3 Implement support for wxHSCROLL in wxTextCtrl under OS X
Make the associated NSTextContainer of infinite size and tell it not to
track the NSTextView width if wxHSCROLL is specified.

Closes #4022.

Closes https://github.com/wxWidgets/wxWidgets/pull/124

(cherry picked from commit a118c4243a)
2016-06-06 03:30:22 +04:00
Andreas Falkenhahn
49d52abb4e Add wxTE_{RIGHT,CENTER} support for multiline wxTextCtrl in wxOSX
Just use -[NSTextView setAlignment].

Closes #13702.

(cherry picked from commit d45ba8ce62)
2016-06-06 01:34:20 +04:00
richard67
66ac3e863f Fix wxTranslations::GetHeaderValue() to look for correct header
Correct the search to completely match the full header name and not only
its beginning by appending ": " to the specified search string.

This prevents GetHeaderValue("Language") from returning "eam: wxWidgets team"
if there is a "Language-Team" header in the catalog, for example.

See #17555.

(cherry picked from commit 889cbd8e04)
2016-06-05 17:01:19 +02:00
Vadim Zeitlin
8675f35fc8 Fix creating wxGLCanvas without any attributes in wxMSW
This was broken by the changes of
f0e67ed517, see #16402.

Just check that we do have the attributes before examining them.

(cherry picked from commit 74421a7f35)
2016-06-02 22:42:31 +02:00
Václav Slavík
12d9c4ea9d Don’t assert on weird custom number formatting settings
On OS X at least, the user is free to customize numbers formatting rules
and use more than one character for separators. Don’t assert in such
cases (the rules are untrusted input), but instead fall back to
something reasonable, as is already done if we can’t retrieve the rules.

(cherry picked from commit 5d2b2b3d7a)
2016-05-30 18:21:41 +02:00
Václav Slavík
3de9fd84fe Fix link errors with older MinGW due to use of GetLayout()
This function is not present in older MinGW import libraries, up to at least
MinGW 4.8.1, so we can't use it directly as it was done in
22f0801 and we need to load it dynamically.

(limited backport from commit d55e4b2829b44a07f7c224f7b3327a1267c27093)
2016-05-29 17:55:44 +02:00
Paul Cornett
90fa100623 Fix linking with gdk_mir_* functions
gdkmir.h header is missing extern "C" wrapper as of GTK+ 3.18.7

(cherry picked from commit 1908c41f36)
2016-05-26 20:01:38 -07:00
Paul Cornett
57dce78348 Avoid blank menubar/toolbar when using wx[MT]B_DOCKABLE with GTK+ 3.20
A GTK+ bug involving GtkHandleBox somehow prevents drawing of its child
since 3.19.7.  Avoid this by disabling the docking functionality, which
is preferable to having the bar be blank.
See #17539

(cherry picked from commit 7e41ac405f)
2016-05-25 09:41:41 -07:00
Vadim Zeitlin
4c6f6059a4 Merge fixes for CVE-2016-0718 in Expat
This merges a branch with a (slightly tweaked to apply) copy of the
cve-2016-0718-fix-2-2-1 branch from the official Expat repository at
https://sourceforge.net/p/expat/code_git/

(cherry picked from 5817911863 in master)
2016-05-18 15:07:47 +02:00
Pascal Cuoq
06381b5d81 Do not compare an out-of-bounds pointer. See https://lwn.net/Articles/278137/ 2016-05-18 15:04:09 +02:00
Pascal Cuoq
779bfe99ee Avoid undefined behavior when computing larger blockSize. The compiler might reason that (end - start)*2 is negative only if (end - start) is negative, see https://godbolt.org/g/wVEoTM 2016-05-18 15:04:09 +02:00
Sebastian Pipping
5ea067da70 Complete XmlConvert return value handling 2016-05-18 15:04:09 +02:00
Sebastian Pipping
f88eff9cdb Do not grow pool to out-of-memory for incomplete input 2016-05-18 15:04:09 +02:00
Sebastian Pipping
63688b5e58 Make converters tell state on termination (v3) 2016-05-18 15:04:09 +02:00
Sebastian Pipping
c5efe0c7db Prevent out-of-bounds access in text conversion
* big2_toUtf8
* little2_toUtf8
* utf8_toUtf8
* utf8_toUtf16
2016-05-18 15:04:09 +02:00
Gustavo Grieco
66102231d3 Fix two integer overflows 2016-05-18 15:04:09 +02:00
Karl Waclawek
af6ef9555a Fix overflow (v2)
(Some post-processing by Sebastian Pipping)
2016-05-18 15:04:09 +02:00
Paul Cornett
088b79bd88 remove disabling comment accidentally committed in c6cf5ac 2016-05-15 09:19:20 -07:00
Paul Cornett
c6cf5ac91f Avoid resetting global cursor if no global cursor is set
see #17503

(cherry picked from commit 5819b9cbc5)
2016-05-15 09:07:44 -07:00
Paul Cornett
536ebb1bc4 Fix single line wxTextCtrl selection colors when foreground or background color is set with GTK3
see #17527
2016-05-14 11:38:56 -07:00
Eric Raijmakers
d8e6043602 Fix keyboard navigation crash in single column generic wxDataViewCtrl
Selecting a leaf node in a wxDataViewCtrl and then pressing the right arrow
key resulted in using an out-of-bounds index for accessing the columns list.

Fix this by setting the current column to the first one, and not to the second
one which might not exist.

See #17537.

(cherry picked from commit 5d671d8136)
2016-05-14 16:21:09 +02:00
Benjamin Drung
3cacee9d52 Define wxIsNaN() as std::isnan() in C++11 mode
std::isnan() is always available when using C++11, so just use it.

Also pout the test for C++11 implementations of both wxIsNaN() and wxFinite()
first, eventually the rest of the checks will become obsolete and will be
removed.

See https://github.com/wxWidgets/wxWidgets/pull/283

(cherry picked from commit bc41cbeb25)
2016-05-14 15:49:35 +02:00
Vadim Zeitlin
990ebe2dc2 Null-terminate arrays returned from wxCmdLineArgsArray
This is required for compatibility with the real argv array that this class is
supposed to emulate.

See #17531.

(cherry picked from commit 189e4c5024)
2016-05-13 15:42:45 +02:00
Jonathan Dagresta
143e55b8df Ensure wxGenericListCtrl item selected from keyboard is visible
When using the keyboard to select an item by typing the first characters of
its name, we need to make the item visible in addition to selecting it.

See #16336.

(cherry picked from commit 306597c4fa)
2016-05-13 15:34:43 +02:00
Dimitri Schoolwerth
99262787cb Revert "Create native buttons without any label in wxOSX/Cocoa"
This change is not any longer needed since the reversion of
05862e608d in
831f360787.

This reverts commit f0f83adecf.
2016-05-01 22:05:04 +04:00
Václav Slavík
c41dee9a0d Convert more CRLF files to use LF to fix git confusion
Continuation of commit a7644e7b05 -
forcing git to normalize _all_ affected files seems impossible.
2016-05-01 18:57:11 +02:00
Václav Slavík
831f360787 Revert "Only set native label if nonempty in wxWindowMac::SetPeer()"
This reverts commit 05862e608d.

See db9baf9aa5 for the reasons.
2016-04-30 18:58:47 +02:00
Vadim Zeitlin
adb48b3c72 Fix wxMSW wxMimeTypesManager compilation in UTF-8 build
Use wxStringCharType with wxS(), not wxChar (which should be used with wxT())
to fix UTF-8 build after a487dc88c1.

Closes #17335.

(cherry picked from commit 884f3c623d)
2016-04-28 17:13:38 +00:00
Václav Slavík
fc4cfd4b9b wxMSW: Fix display of file history items in menus
Unlike other platforms, wxMSW assumes natural text directionality (i.e.
right to left under RTL locales), but absolutely filenames are always
LTR because they begin with a Latin character. It is therefore necessary
to add  an explicit directional mark in front of them on Windows.
2016-04-23 17:22:05 +02:00
Václav Slavík
59531f9616 MSW: Fix dialog default positions under RTL locales
Toplevel windows use their parent's coordinate system as the reference
frame, not desktop's, so need to be adjusted accordingly if its
mirrored. Without these changes, default-positioned wxDialogs would end
to the right side of the parent window's right border (instead of being
slightly inside the window) and changing their size would move them as
well.
2016-04-23 17:21:44 +02:00
Václav Slavík
a7644e7b05 Convert all CRLF files to use LF to fix git confusion.
Having CRLF files in the repository with eol=crlf breaks just about
everything, e.g. any rebase/merge involving these files would fail.
Try to fix this by making sure the files use LF in the repository and CRLF is
only used in the working copy.

(analogous to commit c3e5751c36)
2016-04-23 17:20:42 +02:00
Vadim Zeitlin
59078ab545 Use correct size for the notebook background bitmap in wxMSW
Using "r.x + r.width" didn't really make much sense, it just happened to be
close enough to the real value to not create any problems when using LTR
layout, but was wrong in RTL, resulting in visible vertical line being visible
in the notebook client area.

Fix this using the same GetThemeBackgroundExtent() for determining the bitmap
size as is used for drawing over it.

(cherry picked from commit 0487a3d3f1)
2016-04-10 20:53:19 +02:00
Vadim Zeitlin
53588bd970 Fix background for children of windows with RTL layout in wxMSW
To correctly compute the brush origin offset for painting background of a
child in a window using RTL layout, we need to offset it by the child origin
i.e. its _right_ top corner in this case and not the left top corner as we did
before.

Conveniently, although not very explicitly, MapWindowPoints() already takes
care of this for us if we just pass it both the left and right points, but we
wrongly passed it only a single one, so it couldn't work its magic in this
case.

Change this to fix the drawing artefacts which appeared over wxNotebook
children with transparent background (e.g. wxStaticText) due to the use of
wrong origin before.

(cherry picked from commit 169fb2c7f5)
2016-04-10 20:53:15 +02:00
Micha Ahrweiler
fe7186ce88 Make OK button default in wxGTK wxMessageDialog by default
Under wxGTK the default button in wxMessageDialog with style wxOK was set to
"Cancel", whether the wxOK_DEFAULT style was specified or not.

Now it is set to "OK", as expected, and wxCANCEL_DEFAULT needs to be
explicitly specified to focus the "Cancel" one.

See https://github.com/wxWidgets/wxWidgets/pull/267

(cherry picked from commit a374801465)
2016-04-07 15:58:28 +02:00
Václav Slavík
f2c95c1d5c Fix wxCheckListBox checkbox rendering under RTL
When running under a RTL locale, checkboxes should not be mirrored, but
should keep the same appearence in both RTL and LTR layouts.

(cherry picked from commit 22f0801378)
2016-04-06 18:11:54 +02:00
Steve Browne
7b224881d0 Restore cwd even if wxFileDialog is cancelled in wxMSW
Sometimes the file dialog changes the current directory even if it is
cancelled, so restore it in any case, not only after successful return.

See https://github.com/wxWidgets/wxWidgets/pull/263

(cherry picked from commit ceaa840d7b)
2016-04-01 03:41:20 +02:00
İsmail Dönmez
f358979d35 Check for C/POSIX locale just after we truncate language string
This way we can correctly detect C.UTF-8 as C locale.

See https://github.com/wxWidgets/wxWidgets/pull/262

(cherry picked from commit 467dc72fc2)
2016-03-30 17:49:45 +02:00