Commit Graph

58827 Commits

Author SHA1 Message Date
Václav Slavík
ed8c3feab3 wxGTK: Don't right-align text by default in wxDVC
wxDataViewTextRenderer::SetAlignment didn't consider the posibility of
alignment being -1, causing the align & wxALIGN_RIGHT test to succeed
and the text to be right-aligned if explicit alignment wasn't provided.

This fix is only partial in that it simply does nothing in this case.
The correct thing to do is to determine and apply alignment later, once
it's known, but that's not possible to do on the 3.0 branch while
preserving binary compatibility.

(inspired by a6be5bdae3)
2016-10-21 17:56:36 +02:00
Václav Slavík
34527f7473 Fix wxNullVariant handling in wxDataViewBitmapRenderer
In both the generic and GTK+ implementations, setting the value of a
bitmap column to wxNullVariant resulted in the bitmap, if set for some
rows, being repeated on the rows with null value.

(cherry picked from commit f3b8dac3b7)
2016-10-19 17:16:54 +02:00
Václav Slavík
4e7f160100 wxGTK: Handle null bitmaps in wxDataViewBitmapRenderer
Consistently with other implementations, accept wxNullBitmap and
wxNullIcon in wxDataViewBitmapRenderer if the column shouldn't show any
icon.

(cherry picked from commit ae93a83e76)
2016-10-08 17:01:57 +02:00
mirh
2a21297d41 Don't use thread-safe statics with MSVS when targeting XP
Disable thread-safe initialization for static local variables in Visual Studio
2015 when XP toolset is used as this results in crashes when using DLLs under
XP, see #13116.

See #17403.

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

(cherry picked from commit 26a58e9d48)
2016-09-29 01:37:08 +02:00
Vadim Zeitlin
d77661c73b Fix string iteration logic in wxFTP::Pwd()
wxString iterators can't be dereferenced once they reach the end of the
string, so compare them with end rather than checking if the value they point
to is non-NUL.

This makes wxFTP::Pwd() actually work, which was apparently broken since quite
some time (perhaps ever since c9f7896861 9+
years ago).

See #17679.

(cherry picked from commit d0c57dbef0)
2016-09-25 01:27:37 +02:00
Vadim Zeitlin
7f6d9166a2 Connect to the FTP server in a single place in wxFTP unit test
As all tests need a valid connection, just do it once in the test set up
instead of duplicating the call to Connect() in all tests.

No real changes.

(cherry picked from commit 461d0b2005)
2016-09-25 01:25:43 +02:00
Tim Kosse
59ef01d95c Do not return empty tokens when parsing XDG_DATA_HOME and XDG_DATA_DIRS. This fixes an assert where wxString::Last would have been called on an empty string.
(cherry picked from commit 255b2adea2)
2016-09-19 16:16:09 +02:00
Scott Talbert
98065821bb Fix wxGetKeyState() on non-X11 wxGTK backends (e.g., Wayland)
wxGetKeyState() does not currently work on non-X11 GTK backends, and in some
cases it has been reported to crash.  It seems that the most likely use case
for wxGetKeyState() is to query the modifier keys, so on non-X11 backends, use
GTK+ calls to retrieve the modifier key state.

Non-modifier keys are not currently implemented, update the documentation to
mention this.

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

(this is a combined backport of 1033fb048d,
9f9c09e24a and
a18fe083cc from master)
2016-09-13 13:24:12 +02:00
Scott Talbert
fcb8497def Document wxHLB_XXX constants for wxHtmlListBox styles
Add missing #define's to htmllbox interface header.

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

(cherry picked from commit de1aff4117)
2016-09-09 23:46:36 +02:00
Pete Bannister
d4ae8219d9 Fix rendering of owner-drawn multi-column menus in wxMSW
Compute the item rectangle bounds correctly for the items in non-first column.

See #17072.

(cherry picked from commit 61083f4871)
2016-09-09 23:46:32 +02:00
Paul Cornett
48841ad703 Remove incorrect g_object_ref on wxMenuBar
Should probably have been removed as part of 9ff9d30 (r55288)

(backport of 7986ccf039)
2016-08-31 10:45:49 -07:00
Paul Cornett
786f778b71 Save and restore GtkStyleContext in a few places that were not doing it
Does not fix any known problem, but seems prudent

(backport of 5d04f41d47)
2016-08-31 10:39:57 -07:00
Paul Cornett
ed54a746b0 Remove run-time dependencies on GTK3 backends for Wayland, Mir, Broadway
This allows running with a GTK+ library that was built with different backends
than the one wxWidgets was built with. Since GTK3 provides no way to determine
the backends available at run-time, avoid referencing symbols in the backends
by checking the type name of the GdkDisplay, on the assumption that they are
unlikely to ever be changed. The X11 backend is still required at run-time if
it was available at build-time, although this dependency could also be removed.

(cherry picked from commit 1ba59a410f)
2016-08-31 10:25:34 -07:00
Stefan Csomor
817bd0076f Don't include QuickTime headers unnecessarily
This should fix compilation under macOS Sierra (10.12).

See #17639.

(cherry picked from commit f6a2d1caef)
2016-08-27 18:02:58 +02:00
samurajj
e1e9482005 Fix error reporting for wxCopyFile() under Unix
Check if copying file actually succeeded, any IO errors that could happen in
it were previously just completely ignored.

See #17638.

(cherry picked from commit a93dcc531c)
2016-08-22 14:18:55 +02:00
Vadim Zeitlin
f252e56e88 Fix wxBitmap ctor from XBM in wxGTK
Width and height were exchanged in the loops, so the conversion code didn't
work correctly and overflowed the pixel buffer (due to extra padding in the
row stride) for non-square bitmaps. It also resulted in a completely wrong
bitmap appearance, but somehow this managed to go unnoticed, unlike the memory
errors.

See #17633.

(cherry picked from commit f9740e8180)
2016-08-21 14:49:07 +02:00
Andy Robinson
3550b50461 Fix format specifiers used for size_t values in wxFileConfig
Fix assert failures when reporting errors in config files under 64 bit systems
where "%d" can't be used to output a "size_t" value.

See #17630.

(cherry picked from commit 75e254fce7)
2016-08-19 22:46:10 +02:00
Scott Talbert
238a948ed0 Fix wxNativeFontInfo::InitFromFont() when using Pango
Use pango_font_description_copy() to make a lossless copy of the original font
instead of doing it using wxWidgets API which is less direct and, in addition,
currently is completely broken as SetXXX() methods don't create the Pango font
description if it doesn't exist as they ought to.

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

(cherry picked from commit dbe2a1c2fd)
2016-08-10 15:05:10 +02:00
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