1
0
Dominique Leuenberger 2021-06-16 18:33:17 +00:00 committed by Git OBS Bridge
commit b7e3cf8feb
7 changed files with 38 additions and 379 deletions

View File

@ -1,179 +0,0 @@
From 93860ce690d7a8d9f9a4d900aa45fdd4839d01b5 Mon Sep 17 00:00:00 2001
From: Vadim Zeitlin <vadim@wxwidgets.org>
Date: Sun, 23 Aug 2020 02:44:25 +0200
Subject: [PATCH 1/2] Don't use wxASCII_STR() inside wxART_MAKE_XXX_ID macros
This changed the type of the art and client ID values, which broke
compatibility with existing code, notably in wxPython (see
https://github.com/wxWidgets/wxWidgets/pull/1996), and the attempts to
fix this compatibility broke it with all the existing code using
wxART_MAKE_ART_ID() or wxART_MAKE_CLIENT_ID() for their own IDs.
Keep things simple and just define the macros as they were defined
before 4552009805 (Merge branch 'pr1312-no-unsafe-wxstring-conv',
2020-07-20), except for wxART_MAKE_CLIENT_ID_FROM_STR() whose argument
and produced value was already of wxString type, and use wxASCII_STR()
at the place of use of wxART_XXX constants in wx code.
This is obviously not ideal as it will require using wxASCII_STR() in
the application code as well, but seems to be the least evil.
---
include/wx/artprov.h | 12 ++++++------
include/wx/xrc/xmlres.h | 10 +++++-----
include/wx/xrc/xmlreshandler.h | 20 ++++++++++----------
3 files changed, 21 insertions(+), 21 deletions(-)
diff --git a/include/wx/artprov.h b/include/wx/artprov.h
index b54597659b..6dd2850a82 100644
--- a/include/wx/artprov.h
+++ b/include/wx/artprov.h
@@ -28,9 +28,9 @@ typedef wxString wxArtClient;
typedef wxString wxArtID;
#define wxART_MAKE_CLIENT_ID_FROM_STR(id) ((id) + wxASCII_STR("_C"))
-#define wxART_MAKE_CLIENT_ID(id) wxASCII_STR(#id "_C")
+#define wxART_MAKE_CLIENT_ID(id) (#id "_C")
#define wxART_MAKE_ART_ID_FROM_STR(id) (id)
-#define wxART_MAKE_ART_ID(id) wxASCII_STR(#id)
+#define wxART_MAKE_ART_ID(id) (#id)
// ----------------------------------------------------------------------------
// Art clients
@@ -154,13 +154,13 @@ public:
// Query the providers for bitmap with given ID and return it. Return
// wxNullBitmap if no provider provides it.
static wxBitmap GetBitmap(const wxArtID& id,
- const wxArtClient& client = wxART_OTHER,
+ const wxArtClient& client = wxASCII_STR(wxART_OTHER),
const wxSize& size = wxDefaultSize);
// Query the providers for icon with given ID and return it. Return
// wxNullIcon if no provider provides it.
static wxIcon GetIcon(const wxArtID& id,
- const wxArtClient& client = wxART_OTHER,
+ const wxArtClient& client = wxASCII_STR(wxART_OTHER),
const wxSize& size = wxDefaultSize);
// Helper used by GetMessageBoxIcon(): return the art id corresponding to
@@ -173,13 +173,13 @@ public:
// can be set)
static wxIcon GetMessageBoxIcon(int flags)
{
- return GetIcon(GetMessageBoxIconId(flags), wxART_MESSAGE_BOX);
+ return GetIcon(GetMessageBoxIconId(flags), wxASCII_STR(wxART_MESSAGE_BOX));
}
// Query the providers for iconbundle with given ID and return it. Return
// wxNullIconBundle if no provider provides it.
static wxIconBundle GetIconBundle(const wxArtID& id,
- const wxArtClient& client = wxART_OTHER);
+ const wxArtClient& client = wxASCII_STR(wxART_OTHER));
// Gets native size for given 'client' or wxDefaultSize if it doesn't
// have native equivalent
diff --git a/include/wx/xrc/xmlres.h b/include/wx/xrc/xmlres.h
index 8b4710b676..6507afe6d9 100644
--- a/include/wx/xrc/xmlres.h
+++ b/include/wx/xrc/xmlres.h
@@ -565,27 +565,27 @@ public:
// Gets a bitmap.
wxBitmap GetBitmap(const wxString& param = wxT("bitmap"),
- const wxArtClient& defaultArtClient = wxART_OTHER,
+ const wxArtClient& defaultArtClient = wxASCII_STR(wxART_OTHER),
wxSize size = wxDefaultSize) wxOVERRIDE;
// Gets a bitmap from an XmlNode.
wxBitmap GetBitmap(const wxXmlNode* node,
- const wxArtClient& defaultArtClient = wxART_OTHER,
+ const wxArtClient& defaultArtClient = wxASCII_STR(wxART_OTHER),
wxSize size = wxDefaultSize) wxOVERRIDE;
// Gets an icon.
wxIcon GetIcon(const wxString& param = wxT("icon"),
- const wxArtClient& defaultArtClient = wxART_OTHER,
+ const wxArtClient& defaultArtClient = wxASCII_STR(wxART_OTHER),
wxSize size = wxDefaultSize) wxOVERRIDE;
// Gets an icon from an XmlNode.
wxIcon GetIcon(const wxXmlNode* node,
- const wxArtClient& defaultArtClient = wxART_OTHER,
+ const wxArtClient& defaultArtClient = wxASCII_STR(wxART_OTHER),
wxSize size = wxDefaultSize) wxOVERRIDE;
// Gets an icon bundle.
wxIconBundle GetIconBundle(const wxString& param,
- const wxArtClient& defaultArtClient = wxART_OTHER) wxOVERRIDE;
+ const wxArtClient& defaultArtClient = wxASCII_STR(wxART_OTHER)) wxOVERRIDE;
// Gets an image list.
wxImageList *GetImageList(const wxString& param = wxT("imagelist")) wxOVERRIDE;
diff --git a/include/wx/xrc/xmlreshandler.h b/include/wx/xrc/xmlreshandler.h
index b478356d6d..7f132b99a9 100644
--- a/include/wx/xrc/xmlreshandler.h
+++ b/include/wx/xrc/xmlreshandler.h
@@ -85,19 +85,19 @@ public:
virtual wxSize GetPairInts(const wxString& param) = 0;
virtual wxDirection GetDirection(const wxString& param, wxDirection dir = wxLEFT) = 0;
virtual wxBitmap GetBitmap(const wxString& param = wxT("bitmap"),
- const wxArtClient& defaultArtClient = wxART_OTHER,
+ const wxArtClient& defaultArtClient = wxASCII_STR(wxART_OTHER),
wxSize size = wxDefaultSize) = 0;
virtual wxBitmap GetBitmap(const wxXmlNode* node,
- const wxArtClient& defaultArtClient = wxART_OTHER,
+ const wxArtClient& defaultArtClient = wxASCII_STR(wxART_OTHER),
wxSize size = wxDefaultSize) = 0;
virtual wxIcon GetIcon(const wxString& param = wxT("icon"),
- const wxArtClient& defaultArtClient = wxART_OTHER,
+ const wxArtClient& defaultArtClient = wxASCII_STR(wxART_OTHER),
wxSize size = wxDefaultSize) = 0;
virtual wxIcon GetIcon(const wxXmlNode* node,
- const wxArtClient& defaultArtClient = wxART_OTHER,
+ const wxArtClient& defaultArtClient = wxASCII_STR(wxART_OTHER),
wxSize size = wxDefaultSize) = 0;
virtual wxIconBundle GetIconBundle(const wxString& param,
- const wxArtClient& defaultArtClient = wxART_OTHER) = 0;
+ const wxArtClient& defaultArtClient = wxASCII_STR(wxART_OTHER)) = 0;
virtual wxImageList *GetImageList(const wxString& param = wxT("imagelist")) = 0;
#if wxUSE_ANIMATIONCTRL
@@ -321,31 +321,31 @@ protected:
return GetImpl()->GetDirection(param, dir);
}
wxBitmap GetBitmap(const wxString& param = wxT("bitmap"),
- const wxArtClient& defaultArtClient = wxART_OTHER,
+ const wxArtClient& defaultArtClient = wxASCII_STR(wxART_OTHER),
wxSize size = wxDefaultSize)
{
return GetImpl()->GetBitmap(param, defaultArtClient, size);
}
wxBitmap GetBitmap(const wxXmlNode* node,
- const wxArtClient& defaultArtClient = wxART_OTHER,
+ const wxArtClient& defaultArtClient = wxASCII_STR(wxART_OTHER),
wxSize size = wxDefaultSize)
{
return GetImpl()->GetBitmap(node, defaultArtClient, size);
}
wxIcon GetIcon(const wxString& param = wxT("icon"),
- const wxArtClient& defaultArtClient = wxART_OTHER,
+ const wxArtClient& defaultArtClient = wxASCII_STR(wxART_OTHER),
wxSize size = wxDefaultSize)
{
return GetImpl()->GetIcon(param, defaultArtClient, size);
}
wxIcon GetIcon(const wxXmlNode* node,
- const wxArtClient& defaultArtClient = wxART_OTHER,
+ const wxArtClient& defaultArtClient = wxASCII_STR(wxART_OTHER),
wxSize size = wxDefaultSize)
{
return GetImpl()->GetIcon(node, defaultArtClient, size);
}
wxIconBundle GetIconBundle(const wxString& param,
- const wxArtClient& defaultArtClient = wxART_OTHER)
+ const wxArtClient& defaultArtClient = wxASCII_STR(wxART_OTHER))
{
return GetImpl()->GetIconBundle(param, defaultArtClient);
}
--
2.28.0

View File

@ -1,184 +0,0 @@
From 74b7f31ebab4a35e9b80dccca6f6688a27361d07 Mon Sep 17 00:00:00 2001
From: Vadim Zeitlin <vadim@wxwidgets.org>
Date: Tue, 25 Aug 2020 16:49:24 +0200
Subject: [PATCH 2/2] Fix documented type of wxART_XXX constants
They're (now, and had always been before the recent changes) string
literals, i.e. of type "const char *", rather than "wxString".
---
interface/wx/artprov.h | 152 +++++++++++++++++++++--------------------
1 file changed, 78 insertions(+), 74 deletions(-)
diff --git a/interface/wx/artprov.h b/interface/wx/artprov.h
index e8c848452f..8f34231527 100644
--- a/interface/wx/artprov.h
+++ b/interface/wx/artprov.h
@@ -16,80 +16,80 @@ typedef wxString wxArtClient;
typedef wxString wxArtID;
-wxArtClient wxART_TOOLBAR;
-wxArtClient wxART_MENU;
-wxArtClient wxART_FRAME_ICON;
-
-wxArtClient wxART_CMN_DIALOG;
-wxArtClient wxART_HELP_BROWSER;
-wxArtClient wxART_MESSAGE_BOX;
-wxArtClient wxART_BUTTON;
-wxArtClient wxART_LIST;
-
-wxArtClient wxART_OTHER;
-
-
-wxArtID wxART_ADD_BOOKMARK;
-wxArtID wxART_DEL_BOOKMARK;
-wxArtID wxART_HELP_SIDE_PANEL;
-wxArtID wxART_HELP_SETTINGS;
-wxArtID wxART_HELP_BOOK;
-wxArtID wxART_HELP_FOLDER;
-wxArtID wxART_HELP_PAGE;
-wxArtID wxART_GO_BACK;
-wxArtID wxART_GO_FORWARD;
-wxArtID wxART_GO_UP;
-wxArtID wxART_GO_DOWN;
-wxArtID wxART_GO_TO_PARENT;
-wxArtID wxART_GO_HOME;
-wxArtID wxART_GOTO_FIRST;
-wxArtID wxART_GOTO_LAST;
-wxArtID wxART_FILE_OPEN;
-wxArtID wxART_FILE_SAVE;
-wxArtID wxART_FILE_SAVE_AS;
-wxArtID wxART_PRINT;
-wxArtID wxART_HELP;
-wxArtID wxART_TIP;
-wxArtID wxART_REPORT_VIEW;
-wxArtID wxART_LIST_VIEW;
-wxArtID wxART_NEW_DIR;
-wxArtID wxART_HARDDISK;
-wxArtID wxART_FLOPPY;
-wxArtID wxART_CDROM;
-wxArtID wxART_REMOVABLE;
-wxArtID wxART_FOLDER;
-wxArtID wxART_FOLDER_OPEN;
-wxArtID wxART_GO_DIR_UP;
-wxArtID wxART_EXECUTABLE_FILE;
-wxArtID wxART_NORMAL_FILE;
-wxArtID wxART_TICK_MARK;
-wxArtID wxART_CROSS_MARK;
-wxArtID wxART_ERROR;
-wxArtID wxART_QUESTION;
-wxArtID wxART_WARNING;
-wxArtID wxART_INFORMATION;
-wxArtID wxART_MISSING_IMAGE;
-
-wxArtID wxART_COPY;
-wxArtID wxART_CUT;
-wxArtID wxART_PASTE;
-wxArtID wxART_DELETE;
-wxArtID wxART_NEW;
-
-wxArtID wxART_UNDO;
-wxArtID wxART_REDO;
-
-wxArtID wxART_PLUS;
-wxArtID wxART_MINUS;
-
-wxArtID wxART_CLOSE;
-wxArtID wxART_QUIT;
-
-wxArtID wxART_FIND;
-wxArtID wxART_FIND_AND_REPLACE;
-
-wxArtID wxART_FULL_SCREEN;
-wxArtID wxART_EDIT;
+const char* wxART_TOOLBAR;
+const char* wxART_MENU;
+const char* wxART_FRAME_ICON;
+
+const char* wxART_CMN_DIALOG;
+const char* wxART_HELP_BROWSER;
+const char* wxART_MESSAGE_BOX;
+const char* wxART_BUTTON;
+const char* wxART_LIST;
+
+const char* wxART_OTHER;
+
+
+const char* wxART_ADD_BOOKMARK;
+const char* wxART_DEL_BOOKMARK;
+const char* wxART_HELP_SIDE_PANEL;
+const char* wxART_HELP_SETTINGS;
+const char* wxART_HELP_BOOK;
+const char* wxART_HELP_FOLDER;
+const char* wxART_HELP_PAGE;
+const char* wxART_GO_BACK;
+const char* wxART_GO_FORWARD;
+const char* wxART_GO_UP;
+const char* wxART_GO_DOWN;
+const char* wxART_GO_TO_PARENT;
+const char* wxART_GO_HOME;
+const char* wxART_GOTO_FIRST;
+const char* wxART_GOTO_LAST;
+const char* wxART_FILE_OPEN;
+const char* wxART_FILE_SAVE;
+const char* wxART_FILE_SAVE_AS;
+const char* wxART_PRINT;
+const char* wxART_HELP;
+const char* wxART_TIP;
+const char* wxART_REPORT_VIEW;
+const char* wxART_LIST_VIEW;
+const char* wxART_NEW_DIR;
+const char* wxART_HARDDISK;
+const char* wxART_FLOPPY;
+const char* wxART_CDROM;
+const char* wxART_REMOVABLE;
+const char* wxART_FOLDER;
+const char* wxART_FOLDER_OPEN;
+const char* wxART_GO_DIR_UP;
+const char* wxART_EXECUTABLE_FILE;
+const char* wxART_NORMAL_FILE;
+const char* wxART_TICK_MARK;
+const char* wxART_CROSS_MARK;
+const char* wxART_ERROR;
+const char* wxART_QUESTION;
+const char* wxART_WARNING;
+const char* wxART_INFORMATION;
+const char* wxART_MISSING_IMAGE;
+
+const char* wxART_COPY;
+const char* wxART_CUT;
+const char* wxART_PASTE;
+const char* wxART_DELETE;
+const char* wxART_NEW;
+
+const char* wxART_UNDO;
+const char* wxART_REDO;
+
+const char* wxART_PLUS;
+const char* wxART_MINUS;
+
+const char* wxART_CLOSE;
+const char* wxART_QUIT;
+
+const char* wxART_FIND;
+const char* wxART_FIND_AND_REPLACE;
+
+const char* wxART_FULL_SCREEN;
+const char* wxART_EDIT;
/**
@@ -200,6 +200,10 @@ wxArtID wxART_EDIT;
</td></tr>
</table>
+ @note When building with @c wxNO_IMPLICIT_WXSTRING_ENCODING defined (see
+ @ref overview_string for more details), you need to explicitly use
+ wxASCII_STR() around these constants.
+
Additionally, any string recognized by custom art providers registered using
wxArtProvider::Push may be used.
--
2.28.0

View File

@ -38,11 +38,11 @@ Index: wxWidgets-3.1.0.2244/Makefile.in
COND_wxUSE_REGEX_builtin___wxregex___depname = \ COND_wxUSE_REGEX_builtin___wxregex___depname = \
$(LIBDIRNAME)/$(LIBPREFIX)wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)-$(WX_RELEASE)$(HOST_SUFFIX)$(LIBEXT) $(LIBDIRNAME)/$(LIBPREFIX)wxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)-$(WX_RELEASE)$(HOST_SUFFIX)$(LIBEXT)
@@ -13775,7 +13776,7 @@ COND_MONOLITHIC_0_SHARED_1_USE_GUI_1_USE_HTML_1___htmldll_library_link_LIBR_0 \ @@ -13775,7 +13776,7 @@ COND_MONOLITHIC_0_SHARED_1_USE_GUI_1_USE_HTML_1___htmldll_library_link_LIBR_0 \
@COND_PLATFORM_MACOSX_1_USE_SOVERSION_1@ = .4.0.0.$(SO_SUFFIX) @COND_PLATFORM_MACOSX_1_USE_SOVERSION_1@ = .5.0.0.$(SO_SUFFIX)
@COND_USE_SOVERCYGWIN_1_USE_SOVERSION_1@dll___targetsuf3 = -4.$(SO_SUFFIX) @COND_USE_SOVERCYGWIN_1_USE_SOVERSION_1@dll___targetsuf3 = -5.$(SO_SUFFIX)
@COND_USE_SOVERSION_0@dll___targetsuf3 = .$(SO_SUFFIX) @COND_USE_SOVERSION_0@dll___targetsuf3 = .$(SO_SUFFIX)
-@COND_USE_SOVERSION_1_USE_SOVERSOLARIS_1@dll___targetsuf3 = .$(SO_SUFFIX).4 -@COND_USE_SOVERSION_1_USE_SOVERSOLARIS_1@dll___targetsuf3 = .$(SO_SUFFIX).5
+@COND_USE_SOVERSION_1_USE_SOVERSOLARIS_1@dll___targetsuf3 = .$(SO_SUFFIX).4.0.0 +@COND_USE_SOVERSION_1_USE_SOVERSOLARIS_1@dll___targetsuf3 = .$(SO_SUFFIX).5.0.0
@COND_TOOLKIT_MSW@__RCDEFDIR_p = --include-dir \ @COND_TOOLKIT_MSW@__RCDEFDIR_p = --include-dir \
@COND_TOOLKIT_MSW@ $(LIBDIRNAME)/wx/include/$(TOOLCHAIN_FULLNAME) @COND_TOOLKIT_MSW@ $(LIBDIRNAME)/wx/include/$(TOOLCHAIN_FULLNAME)
@COND_USE_GUI_1_wxUSE_LIBTIFF_builtin@__LIB_TIFF_p \ @COND_USE_GUI_1_wxUSE_LIBTIFF_builtin@__LIB_TIFF_p \

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:3ca3a19a14b407d0cdda507a7930c2e84ae1c8e74f946e0144d2fa7d881f1a94
size 21581661

3
wxWidgets-3.1.5.tar.bz2 Normal file
View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:d7b3666de33aa5c10ea41bb9405c40326e1aeb74ee725bb88f90f1d50270a224
size 22220762

View File

@ -1,3 +1,29 @@
-------------------------------------------------------------------
Sun Jun 6 11:09:48 UTC 2021 - Antoine Belvire <antoine.belvire@opensuse.org>
- Update to version 3.1.5:
* New wxWebRequest and related classes provide a simple way to
use HTTPS and HTTP/2 from wxWidgets applications using native
libraries or libcurl.
* Support EGL in wxGLCanvas and Wayland in wxMediaCtrl under
Linux.
* Many appearance and other fixes for macOS 11.
* More improvements to wxGrid UI, API and performance.
* wxImage improvements: add alpha support in Paste() and
clipboard support.
* API additions: wxPersistentComboBox, wxFileName::ResolveLink(),
wxFileHistory::SetMenuPathStyle(), wxString::utf8_string(),
wxEVT_FULLSCREEN.
* Improvements: wxConfig now supports 64-bit integers, wxLog uses
millisecond resolution in timestamps, XRC files can be loaded
from URLs.
* Yet more bug fixes, fixes for API inconsistencies and
optimizations, notably in wxDataViewCtrl, wxListCtrl,
wxPropertyGrid.
- Remove patches fixed upstream:
* 0001-Don-t-use-wxASCII_STR-inside-wxART_MAKE_XXX_ID-macro.patch.
* 0002-Fix-documented-type-of-wxART_XXX-constants.patch.
------------------------------------------------------------------- -------------------------------------------------------------------
Mon Nov 16 14:02:11 UTC 2020 - Jan Engelhardt <jengelh@inai.de> Mon Nov 16 14:02:11 UTC 2020 - Jan Engelhardt <jengelh@inai.de>

View File

@ -1,7 +1,7 @@
# #
# spec file for package wxWidgets-3_2 # spec file for package wxWidgets-3_2
# #
# Copyright (c) 2020 SUSE LLC # Copyright (c) 2021 SUSE LLC
# #
# All modifications and additions to the file contributed by third parties # All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed # remain the property of their copyright owners, unless otherwise agreed
@ -65,12 +65,12 @@ Name: wxQt-3_2
# Use default debug level, enabling exceptions # Use default debug level, enabling exceptions
# Other valid values: yes/no/max # Other valid values: yes/no/max
%define wx_debug %nil %define wx_debug %nil
%define psonum 4_0_0 %define psonum 5_0_0
%define sonum 4.0.0 %define sonum 5.0.0
Version: 3.1.4 Version: 3.1.5
Release: 0 Release: 0
%define wx_minor 3.1 %define wx_minor 3.1
%define wx_micro 3.1.4 %define wx_micro 3.1.5
Summary: C++ Library for Cross-Platform Development Summary: C++ Library for Cross-Platform Development
License: LGPL-2.1-or-later WITH WxWindows-exception-3.1 License: LGPL-2.1-or-later WITH WxWindows-exception-3.1
Group: Development/Libraries/C and C++ Group: Development/Libraries/C and C++
@ -82,10 +82,6 @@ Source5: wxWidgets-3_2-rpmlintrc
# identify and backport wxPython fixes to wxWidgets. # identify and backport wxPython fixes to wxWidgets.
Source6: wxpython-mkdiff.sh Source6: wxpython-mkdiff.sh
Patch1: soversion.diff Patch1: soversion.diff
# PATCH-FIX-UPSTREAM
Patch2: 0001-Don-t-use-wxASCII_STR-inside-wxART_MAKE_XXX_ID-macro.patch
# PATCH-FIX-UPSTREAM
Patch3: 0002-Fix-documented-type-of-wxART_XXX-constants.patch
BuildRequires: autoconf BuildRequires: autoconf
BuildRequires: cppunit-devel BuildRequires: cppunit-devel
BuildRequires: gcc-c++ BuildRequires: gcc-c++