Compare commits
78 commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
abfe490c57 | ||
|
|
799544a732 | ||
|
|
e85d636fde | ||
|
|
b676a6c2be | ||
|
|
067227958a | ||
|
|
e2ac132014 | ||
|
|
0fafbd88d1 | ||
|
|
6165d7c42a | ||
|
|
a8ca135bc1 | ||
|
|
64cf806507 | ||
|
|
9b33e9c28e | ||
|
|
e6508ded9b | ||
|
|
5deb323f7e | ||
|
|
dab268033e | ||
|
|
b6ad472238 | ||
|
|
4ce19f9b88 | ||
|
|
3f46e867bf | ||
|
|
dbbdf22dc2 | ||
|
|
bede873a1b | ||
|
|
ec013c8106 | ||
|
|
d2d9b90405 | ||
|
|
7cee207065 | ||
|
|
b72e5fd82f | ||
|
|
a713dad573 | ||
|
|
83dd8d3718 | ||
|
|
299b0b6e24 | ||
|
|
852c9171ac | ||
|
|
4357d1a9e1 | ||
|
|
dc9ff32ab1 | ||
|
|
d77224ec01 | ||
|
|
7e5a11a94f | ||
|
|
ce9624b2a3 | ||
|
|
de064a8931 | ||
|
|
48f2dc65e7 | ||
|
|
2b38f2180e | ||
| 35d1c2fde3 | |||
| 6984897584 | |||
|
|
5e85989070 | ||
|
|
976afdc457 | ||
|
|
2dc94ae936 | ||
|
|
19f9cdbd94 | ||
|
|
24e848fad8 | ||
|
|
4962199795 | ||
|
|
8b651366bb | ||
|
|
7df1c4ef77 | ||
|
|
b28d699dc4 | ||
|
|
1d26276d39 | ||
|
|
e31717383b | ||
|
|
a692ac1de9 | ||
|
|
37c4987152 | ||
|
|
8d3cddc5cb | ||
|
|
863bf5ef67 | ||
|
|
fe24b6b223 | ||
|
|
244ea7febf | ||
|
|
965da34c1a | ||
|
|
484b3a8841 | ||
|
|
627621447b | ||
|
|
fb9013626a | ||
|
|
37d5bdf016 | ||
|
|
fe5a6f06ce | ||
|
|
095c4c4b53 | ||
|
|
a0614b960f | ||
|
|
6ddfa9d786 | ||
|
|
3cf7211485 | ||
|
|
7793bd74b2 | ||
|
|
e523d939e9 | ||
|
|
84f8915874 | ||
|
|
a2cf67754a | ||
|
|
b6b7424828 | ||
|
|
cb22fbe1a5 | ||
|
|
e712f1cac9 | ||
|
|
8b9de376d3 | ||
|
|
263c5a5b31 | ||
|
|
5c3df2730b | ||
|
|
92c277c27c | ||
|
|
a9e6f4a999 | ||
|
|
b10eb1dfb6 | ||
|
|
0c7f9b37af |
10 changed files with 1 additions and 737 deletions
6
.gitignore
vendored
6
.gitignore
vendored
|
|
@ -1,6 +0,0 @@
|
|||
/wxWidgets-3.0.0-docs-html.tar.bz2
|
||||
/wxWidgets-3.0.0.tar.bz2
|
||||
/wxWidgets-3.0.1-docs-html.tar.bz2
|
||||
/wxWidgets-3.0.1.tar.bz2
|
||||
/wxWidgets-3.0.2-docs-html.tar.bz2
|
||||
/wxWidgets-3.0.2.tar.bz2
|
||||
1
dead.package
Normal file
1
dead.package
Normal file
|
|
@ -0,0 +1 @@
|
|||
Replaced by wxGTK (wxWidgets 3.2)
|
||||
2
sources
2
sources
|
|
@ -1,2 +0,0 @@
|
|||
67844da5ed54c1a09d8d4ebe32a5e00a wxWidgets-3.0.2-docs-html.tar.bz2
|
||||
ba4cd1f3853d0cd49134c5ae028ad080 wxWidgets-3.0.2.tar.bz2
|
||||
45
wx-config
45
wx-config
|
|
@ -1,45 +0,0 @@
|
|||
#! /bin/sh
|
||||
#
|
||||
# Multilib-aware wrapper for the wx-config script
|
||||
#
|
||||
# Usage: wx-config [--arch <arch>] <regular wx-config options>
|
||||
#
|
||||
|
||||
version=3.0
|
||||
|
||||
if [ $# -ge 2 ]; then
|
||||
if [ $1 = "--arch" ]; then
|
||||
arch=$2
|
||||
shift 2
|
||||
fi
|
||||
fi
|
||||
|
||||
if [ -z $arch ]; then
|
||||
arch=`uname -m`
|
||||
fi
|
||||
|
||||
case $arch in
|
||||
i?86|ppc|s390|sparc|arm*|ia64|mips|mipsel)
|
||||
libdir=/usr/lib
|
||||
;;
|
||||
x86_64|ppc64|s390x|sparc64|aarch64|ppc64le|mips64*)
|
||||
libdir=/usr/lib64
|
||||
;;
|
||||
*)
|
||||
echo "Unsupported architecture '$arch'"
|
||||
exit 8
|
||||
;;
|
||||
esac
|
||||
|
||||
wxconfig=$libdir/wx/config/gtk3-unicode-$version
|
||||
# special case when using 32-bit userspace and 64-bit kernel
|
||||
if [ ! -f $wxconfig -a \( $arch = ppc64 -o $arch = sparc64 \) ]; then
|
||||
wxconfig=/usr/lib/wx/config/gtk3-unicode-$version
|
||||
fi
|
||||
|
||||
if [ -x $wxconfig ]; then
|
||||
exec $wxconfig $@
|
||||
else
|
||||
echo "wxWidgets3-devel isn't installed for architecture '$arch'"
|
||||
exit 9
|
||||
fi
|
||||
|
|
@ -1,14 +0,0 @@
|
|||
--- wxWidgets-3.0.2/src/common/appbase.cpp.abicheck 2015-05-28 12:36:40.697163073 +0900
|
||||
+++ wxWidgets-3.0.2/src/common/appbase.cpp 2015-05-28 12:38:30.597154298 +0900
|
||||
@@ -762,10 +762,7 @@
|
||||
msg.Printf(wxT("Mismatch between the program and library build versions detected.\nThe library used %s,\nand %s used %s."),
|
||||
lib.c_str(), progName.c_str(), prog.c_str());
|
||||
|
||||
- wxLogFatalError(msg.c_str());
|
||||
-
|
||||
- // normally wxLogFatalError doesn't return
|
||||
- return false;
|
||||
+ wxLogWarning(msg.c_str());
|
||||
}
|
||||
|
||||
return true;
|
||||
|
|
@ -1,38 +0,0 @@
|
|||
diff -rupN wxWidgets-3.0.2-orig/src/gtk/renderer.cpp wxWidgets-3.0.2/src/gtk/renderer.cpp
|
||||
--- wxWidgets-3.0.2-orig/src/gtk/renderer.cpp 2015-11-05 19:57:31.075151404 -0500
|
||||
+++ wxWidgets-3.0.2/src/gtk/renderer.cpp 2015-11-05 20:37:56.230764763 -0500
|
||||
@@ -41,6 +41,10 @@
|
||||
#include "wx/gtk/private.h"
|
||||
#include "wx/gtk/private/gtk2-compat.h"
|
||||
|
||||
+#if defined(__WXGTK3__) && !GTK_CHECK_VERSION(3,14,0)
|
||||
+ #define GTK_STATE_FLAG_CHECKED (1 << 11)
|
||||
+#endif
|
||||
+
|
||||
// ----------------------------------------------------------------------------
|
||||
// wxRendererGTK: our wxRendererNative implementation
|
||||
// ----------------------------------------------------------------------------
|
||||
@@ -551,7 +555,11 @@ wxRendererGTK::DrawCheckBox(wxWindow* wi
|
||||
{
|
||||
int stateFlags = GTK_STATE_FLAG_NORMAL;
|
||||
if (flags & wxCONTROL_CHECKED)
|
||||
+ {
|
||||
stateFlags = GTK_STATE_FLAG_ACTIVE;
|
||||
+ if (gtk_check_version(3,14,0) == NULL)
|
||||
+ stateFlags = GTK_STATE_FLAG_CHECKED;
|
||||
+ }
|
||||
if (flags & wxCONTROL_DISABLED)
|
||||
stateFlags |= GTK_STATE_FLAG_INSENSITIVE;
|
||||
if (flags & wxCONTROL_UNDETERMINED)
|
||||
@@ -866,7 +874,11 @@ void wxRendererGTK::DrawRadioBitmap(wxWi
|
||||
#ifdef __WXGTK3__
|
||||
int state = GTK_STATE_FLAG_NORMAL;
|
||||
if (flags & wxCONTROL_CHECKED)
|
||||
+ {
|
||||
state = GTK_STATE_FLAG_ACTIVE;
|
||||
+ if (gtk_check_version(3,14,0) == NULL)
|
||||
+ state = GTK_STATE_FLAG_CHECKED;
|
||||
+ }
|
||||
else if (flags & wxCONTROL_UNDETERMINED)
|
||||
state = GTK_STATE_FLAG_INCONSISTENT;
|
||||
if (flags & wxCONTROL_DISABLED)
|
||||
|
|
@ -1,14 +0,0 @@
|
|||
diff -rupN wxWidgets-3.0.2-orig/src/gtk/spinbutt.cpp wxWidgets-3.0.2/src/gtk/spinbutt.cpp
|
||||
--- wxWidgets-3.0.2-orig/src/gtk/spinbutt.cpp 2014-10-06 17:33:44.000000000 -0400
|
||||
+++ wxWidgets-3.0.2/src/gtk/spinbutt.cpp 2015-08-22 10:44:00.743403904 -0400
|
||||
@@ -92,6 +92,10 @@ bool wxSpinButton::Create(wxWindow *pare
|
||||
g_object_ref(m_widget);
|
||||
|
||||
gtk_entry_set_width_chars(GTK_ENTRY(m_widget), 0);
|
||||
+#if GTK_CHECK_VERSION(3,12,0)
|
||||
+ if (gtk_check_version(3,12,0) == NULL)
|
||||
+ gtk_entry_set_max_width_chars(GTK_ENTRY(m_widget), 0);
|
||||
+#endif
|
||||
gtk_spin_button_set_wrap( GTK_SPIN_BUTTON(m_widget),
|
||||
(int)(m_windowStyle & wxSP_WRAP) );
|
||||
|
||||
|
|
@ -1,155 +0,0 @@
|
|||
diff -rupN wxWidgets-3.0.2-orig/src/generic/grid.cpp wxWidgets-3.0.2/src/generic/grid.cpp
|
||||
--- wxWidgets-3.0.2-orig/src/generic/grid.cpp 2014-10-06 17:33:44.000000000 -0400
|
||||
+++ wxWidgets-3.0.2/src/generic/grid.cpp 2015-06-22 11:50:16.359029017 -0400
|
||||
@@ -2114,7 +2114,8 @@ void wxGridWindow::OnFocus(wxFocusEvent&
|
||||
m_owner->GetGridCursorCol());
|
||||
const wxRect cursor =
|
||||
m_owner->BlockToDeviceRect(cursorCoords, cursorCoords);
|
||||
- Refresh(true, &cursor);
|
||||
+ if (cursor != wxGridNoCellRect)
|
||||
+ Refresh(true, &cursor);
|
||||
}
|
||||
|
||||
if ( !m_owner->GetEventHandler()->ProcessEvent( event ) )
|
||||
diff -rupN wxWidgets-3.0.2-orig/src/generic/listctrl.cpp wxWidgets-3.0.2/src/generic/listctrl.cpp
|
||||
--- wxWidgets-3.0.2-orig/src/generic/listctrl.cpp 2014-10-06 17:33:44.000000000 -0400
|
||||
+++ wxWidgets-3.0.2/src/generic/listctrl.cpp 2015-06-22 12:12:26.838603542 -0400
|
||||
@@ -1935,6 +1935,13 @@ void wxListMainWindow::RefreshLines( siz
|
||||
size_t visibleFrom, visibleTo;
|
||||
GetVisibleLinesRange(&visibleFrom, &visibleTo);
|
||||
|
||||
+ if ( lineFrom > visibleTo || lineTo < visibleFrom )
|
||||
+ {
|
||||
+ // None of these lines are currently visible at all, don't bother
|
||||
+ // doing anything.
|
||||
+ return;
|
||||
+ }
|
||||
+
|
||||
if ( lineFrom < visibleFrom )
|
||||
lineFrom = visibleFrom;
|
||||
if ( lineTo > visibleTo )
|
||||
diff -rupN wxWidgets-3.0.2-orig/src/gtk/aboutdlg.cpp wxWidgets-3.0.2/src/gtk/aboutdlg.cpp
|
||||
--- wxWidgets-3.0.2-orig/src/gtk/aboutdlg.cpp 2014-10-06 17:33:44.000000000 -0400
|
||||
+++ wxWidgets-3.0.2/src/gtk/aboutdlg.cpp 2015-06-22 12:09:00.951644896 -0400
|
||||
@@ -23,7 +23,7 @@
|
||||
#include "wx/aboutdlg.h"
|
||||
|
||||
#ifndef WX_PRECOMP
|
||||
- #include "wx/utils.h" // for wxLaunchDefaultBrowser()
|
||||
+ #include "wx/window.h"
|
||||
#endif //WX_PRECOMP
|
||||
|
||||
#include <gtk/gtk.h>
|
||||
@@ -131,7 +131,7 @@ static void wxGtkAboutDialogOnLink(GtkAb
|
||||
}
|
||||
#endif
|
||||
|
||||
-void wxAboutBox(const wxAboutDialogInfo& info, wxWindow* WXUNUSED(parent))
|
||||
+void wxAboutBox(const wxAboutDialogInfo& info, wxWindow* parent)
|
||||
{
|
||||
// don't create another dialog if one is already present
|
||||
if ( !gs_aboutDialog )
|
||||
@@ -235,6 +235,11 @@ void wxAboutBox(const wxAboutDialogInfo&
|
||||
g_signal_connect(dlg, "response",
|
||||
G_CALLBACK(wxGtkAboutDialogOnClose), NULL);
|
||||
|
||||
+ GtkWindow* gtkParent = NULL;
|
||||
+ if (parent && parent->m_widget)
|
||||
+ gtkParent = (GtkWindow*)gtk_widget_get_ancestor(parent->m_widget, GTK_TYPE_WINDOW);
|
||||
+ gtk_window_set_transient_for(GTK_WINDOW(dlg), gtkParent);
|
||||
+
|
||||
gtk_window_present(GTK_WINDOW(dlg));
|
||||
}
|
||||
|
||||
diff -rupN wxWidgets-3.0.2-orig/src/gtk/filedlg.cpp wxWidgets-3.0.2/src/gtk/filedlg.cpp
|
||||
--- wxWidgets-3.0.2-orig/src/gtk/filedlg.cpp 2014-10-06 17:33:44.000000000 -0400
|
||||
+++ wxWidgets-3.0.2/src/gtk/filedlg.cpp 2015-06-22 12:16:47.386285719 -0400
|
||||
@@ -187,7 +187,8 @@ bool wxFileDialog::Create(wxWindow *pare
|
||||
const wxSize& sz,
|
||||
const wxString& name)
|
||||
{
|
||||
- parent = GetParentForModalDialog(parent, style);
|
||||
+ // wxFD_MULTIPLE has the same value as wxDIALOG_NO_PARENT
|
||||
+ parent = GetParentForModalDialog(parent, style & ~wxFD_MULTIPLE);
|
||||
|
||||
if (!wxFileDialogBase::Create(parent, message, defaultDir, defaultFileName,
|
||||
wildCard, style, pos, sz, name))
|
||||
diff -rupN wxWidgets-3.0.2-orig/src/gtk/fontdlg.cpp wxWidgets-3.0.2/src/gtk/fontdlg.cpp
|
||||
--- wxWidgets-3.0.2-orig/src/gtk/fontdlg.cpp 2014-10-06 17:33:44.000000000 -0400
|
||||
+++ wxWidgets-3.0.2/src/gtk/fontdlg.cpp 2015-06-22 11:51:23.827727490 -0400
|
||||
@@ -78,6 +78,7 @@ bool wxFontDialog::DoCreate(wxWindow *pa
|
||||
gtk_parent = GTK_WINDOW(parent->m_widget);
|
||||
|
||||
#if GTK_CHECK_VERSION(3,2,0)
|
||||
+ g_type_ensure(PANGO_TYPE_FONT_FACE);
|
||||
if (gtk_check_version(3,2,0) == NULL)
|
||||
m_widget = gtk_font_chooser_dialog_new(wxGTK_CONV(message), gtk_parent);
|
||||
else
|
||||
diff -rupN wxWidgets-3.0.2-orig/src/gtk/print.cpp wxWidgets-3.0.2/src/gtk/print.cpp
|
||||
--- wxWidgets-3.0.2-orig/src/gtk/print.cpp 2014-10-06 17:33:44.000000000 -0400
|
||||
+++ wxWidgets-3.0.2/src/gtk/print.cpp 2015-06-22 12:01:37.173889476 -0400
|
||||
@@ -32,7 +32,6 @@
|
||||
#include "wx/fontutil.h"
|
||||
#include "wx/dynlib.h"
|
||||
#include "wx/paper.h"
|
||||
-#include "wx/scopeguard.h"
|
||||
#include "wx/modalhook.h"
|
||||
|
||||
#include <gtk/gtk.h>
|
||||
@@ -612,6 +611,11 @@ wxGtkPrintDialog::wxGtkPrintDialog( wxWi
|
||||
|
||||
m_parent = parent;
|
||||
SetShowDialog(true);
|
||||
+
|
||||
+ const wxPrintData& printData = m_printDialogData.GetPrintData();
|
||||
+ wxGtkPrintNativeData* native =
|
||||
+ static_cast<wxGtkPrintNativeData*>(printData.GetNativeData());
|
||||
+ native->SetPrintJob(gtk_print_operation_new());
|
||||
}
|
||||
|
||||
wxGtkPrintDialog::wxGtkPrintDialog( wxWindow *parent, wxPrintData *data )
|
||||
@@ -625,11 +629,22 @@ wxGtkPrintDialog::wxGtkPrintDialog( wxWi
|
||||
|
||||
m_parent = parent;
|
||||
SetShowDialog(true);
|
||||
+
|
||||
+ const wxPrintData& printData = m_printDialogData.GetPrintData();
|
||||
+ wxGtkPrintNativeData* native =
|
||||
+ static_cast<wxGtkPrintNativeData*>(printData.GetNativeData());
|
||||
+ native->SetPrintJob(gtk_print_operation_new());
|
||||
}
|
||||
|
||||
|
||||
wxGtkPrintDialog::~wxGtkPrintDialog()
|
||||
{
|
||||
+ const wxPrintData& printData = m_printDialogData.GetPrintData();
|
||||
+ wxGtkPrintNativeData* native =
|
||||
+ static_cast<wxGtkPrintNativeData*>(printData.GetNativeData());
|
||||
+ GtkPrintOperation* printOp = native->GetPrintJob();
|
||||
+ g_object_unref(printOp);
|
||||
+ native->SetPrintJob(NULL);
|
||||
}
|
||||
|
||||
// This is called even if we actually don't want the dialog to appear.
|
||||
@@ -921,10 +936,9 @@ bool wxGtkPrinter::Print(wxWindow *paren
|
||||
wxPrintData printdata = GetPrintDialogData().GetPrintData();
|
||||
wxGtkPrintNativeData *native = (wxGtkPrintNativeData*) printdata.GetNativeData();
|
||||
|
||||
- wxGtkObject<GtkPrintOperation> printOp(gtk_print_operation_new());
|
||||
- native->SetPrintJob(printOp);
|
||||
- wxON_BLOCK_EXIT_OBJ1(*native, wxGtkPrintNativeData::SetPrintJob,
|
||||
- static_cast<GtkPrintOperation*>(NULL));
|
||||
+ // wxGtkPrintDialog needs to be created first as it creates the PrintOp
|
||||
+ wxGtkPrintDialog dialog(parent, &m_printDialogData);
|
||||
+ GtkPrintOperation* printOp = native->GetPrintJob();
|
||||
|
||||
wxPrinterToGtkData dataToSend;
|
||||
dataToSend.printer = this;
|
||||
@@ -937,7 +951,6 @@ bool wxGtkPrinter::Print(wxWindow *paren
|
||||
|
||||
// This is used to setup the DC and
|
||||
// show the dialog if desired
|
||||
- wxGtkPrintDialog dialog( parent, &m_printDialogData );
|
||||
dialog.SetPrintDC(m_dc);
|
||||
dialog.SetShowDialog(prompt);
|
||||
|
||||
|
|
@ -1,108 +0,0 @@
|
|||
diff -rupN wxWidgets-3.0.2/src/gtk/toplevel.cpp wxWidgets-3.0.2-wayland/src/gtk/toplevel.cpp
|
||||
--- wxWidgets-3.0.2/src/gtk/toplevel.cpp 2014-10-06 17:33:44.000000000 -0400
|
||||
+++ wxWidgets-3.0.2-wayland/src/gtk/toplevel.cpp 2015-12-31 14:48:25.873812357 -0500
|
||||
@@ -456,8 +456,12 @@ gtk_frame_window_state_callback( GtkWidg
|
||||
bool wxGetFrameExtents(GdkWindow* window, int* left, int* right, int* top, int* bottom)
|
||||
{
|
||||
#ifdef GDK_WINDOWING_X11
|
||||
- static GdkAtom property = gdk_atom_intern("_NET_FRAME_EXTENTS", false);
|
||||
GdkDisplay* display = gdk_window_get_display(window);
|
||||
+
|
||||
+ if (!GDK_IS_X11_DISPLAY(display))
|
||||
+ return false;
|
||||
+
|
||||
+ static GdkAtom property = gdk_atom_intern("_NET_FRAME_EXTENTS", false);
|
||||
Atom xproperty = gdk_x11_atom_to_xatom_for_display(display, property);
|
||||
Atom type;
|
||||
int format;
|
||||
@@ -852,10 +856,19 @@ bool wxTopLevelWindowGTK::ShowFullScreen
|
||||
|
||||
m_fsIsShowing = show;
|
||||
|
||||
+ wxX11FullScreenMethod method = wxX11_FS_WMSPEC;
|
||||
+ Display* xdpy = NULL;
|
||||
+ Window xroot = None;
|
||||
+
|
||||
#ifdef GDK_WINDOWING_X11
|
||||
- Display* xdpy = GDK_DISPLAY_XDISPLAY(gtk_widget_get_display(m_widget));
|
||||
- Window xroot = GDK_WINDOW_XID(gtk_widget_get_root_window(m_widget));
|
||||
- wxX11FullScreenMethod method = wxGetFullScreenMethodX11(xdpy, (WXWindow)xroot);
|
||||
+ GdkDisplay *display = gtk_widget_get_display(m_widget);
|
||||
+
|
||||
+ if (GDK_IS_X11_DISPLAY(display))
|
||||
+ {
|
||||
+ xdpy = GDK_DISPLAY_XDISPLAY(gtk_widget_get_display(m_widget));
|
||||
+ xroot = GDK_WINDOW_XID(gtk_widget_get_root_window(m_widget));
|
||||
+ method = wxGetFullScreenMethodX11(xdpy, (WXWindow)xroot);
|
||||
+ }
|
||||
|
||||
// NB: gtk_window_fullscreen() uses freedesktop.org's WMspec extensions
|
||||
// to switch to fullscreen, which is not always available. We must
|
||||
@@ -870,7 +883,7 @@ bool wxTopLevelWindowGTK::ShowFullScreen
|
||||
gtk_window_unfullscreen( GTK_WINDOW( m_widget ) );
|
||||
}
|
||||
#ifdef GDK_WINDOWING_X11
|
||||
- else
|
||||
+ else if (xdpy != NULL)
|
||||
{
|
||||
GdkWindow* window = gtk_widget_get_window(m_widget);
|
||||
Window xid = GDK_WINDOW_XID(window);
|
||||
@@ -958,6 +971,7 @@ bool wxTopLevelWindowGTK::Show( bool sho
|
||||
deferShow = m_deferShowAllowed &&
|
||||
gs_requestFrameExtentsStatus != RFE_STATUS_BROKEN &&
|
||||
!gtk_widget_get_realized(m_widget) &&
|
||||
+ GDK_IS_X11_DISPLAY(gtk_widget_get_display(m_widget)) &&
|
||||
g_signal_handler_find(m_widget,
|
||||
GSignalMatchType(G_SIGNAL_MATCH_ID | G_SIGNAL_MATCH_DATA),
|
||||
g_signal_lookup("property_notify_event", GTK_TYPE_WIDGET),
|
||||
diff -rupN wxWidgets-3.0.2/src/gtk/window.cpp wxWidgets-3.0.2-wayland/src/gtk/window.cpp
|
||||
--- wxWidgets-3.0.2/src/gtk/window.cpp 2014-10-06 17:33:44.000000000 -0400
|
||||
+++ wxWidgets-3.0.2-wayland/src/gtk/window.cpp 2015-12-31 14:48:31.522812743 -0500
|
||||
@@ -780,28 +780,31 @@ wxTranslateGTKKeyEventToWx(wxKeyEvent& e
|
||||
}
|
||||
|
||||
#ifdef GDK_WINDOWING_X11
|
||||
- // we want to always get the same key code when the same key is
|
||||
- // pressed regardless of the state of the modifiers, i.e. on a
|
||||
- // standard US keyboard pressing '5' or '%' ('5' key with
|
||||
- // Shift) should result in the same key code in OnKeyDown():
|
||||
- // '5' (although OnChar() will get either '5' or '%').
|
||||
- //
|
||||
- // to do it we first translate keysym to keycode (== scan code)
|
||||
- // and then back but always using the lower register
|
||||
- Display *dpy = (Display *)wxGetDisplay();
|
||||
- KeyCode keycode = XKeysymToKeycode(dpy, keysym);
|
||||
+ if (GDK_IS_X11_DISPLAY(gdk_window_get_display(gdk_event->window)))
|
||||
+ {
|
||||
+ // we want to always get the same key code when the same key is
|
||||
+ // pressed regardless of the state of the modifiers, i.e. on a
|
||||
+ // standard US keyboard pressing '5' or '%' ('5' key with
|
||||
+ // Shift) should result in the same key code in OnKeyDown():
|
||||
+ // '5' (although OnChar() will get either '5' or '%').
|
||||
+ //
|
||||
+ // to do it we first translate keysym to keycode (== scan code)
|
||||
+ // and then back but always using the lower register
|
||||
+ Display *dpy = (Display *)wxGetDisplay();
|
||||
+ KeyCode keycode = XKeysymToKeycode(dpy, keysym);
|
||||
|
||||
- wxLogTrace(TRACE_KEYS, wxT("\t-> keycode %d"), keycode);
|
||||
+ wxLogTrace(TRACE_KEYS, wxT("\t-> keycode %d"), keycode);
|
||||
|
||||
#ifdef HAVE_X11_XKBLIB_H
|
||||
- KeySym keysymNormalized = XkbKeycodeToKeysym(dpy, keycode, 0, 0);
|
||||
+ KeySym keysymNormalized = XkbKeycodeToKeysym(dpy, keycode, 0, 0);
|
||||
#else
|
||||
- KeySym keysymNormalized = XKeycodeToKeysym(dpy, keycode, 0);
|
||||
+ KeySym keysymNormalized = XKeycodeToKeysym(dpy, keycode, 0);
|
||||
#endif
|
||||
|
||||
- // use the normalized, i.e. lower register, keysym if we've
|
||||
- // got one
|
||||
- key_code = keysymNormalized ? keysymNormalized : keysym;
|
||||
+ // use the normalized, i.e. lower register, keysym if we've
|
||||
+ // got one
|
||||
+ key_code = keysymNormalized ? keysymNormalized : keysym;
|
||||
+ }
|
||||
#else
|
||||
key_code = keysym;
|
||||
#endif
|
||||
355
wxGTK3.spec
355
wxGTK3.spec
|
|
@ -1,355 +0,0 @@
|
|||
%global srcname wxWidgets
|
||||
%global wxgtkname wxGTK3
|
||||
%global wxbasename wxBase3
|
||||
#RHEL 6 does not have gtk3
|
||||
#RHEL prior to 6 is unsupported by this package
|
||||
%if 0%{?el6}
|
||||
%global gtkver 2
|
||||
%else
|
||||
%global gtkver 3
|
||||
%endif
|
||||
|
||||
Name: %{wxgtkname}
|
||||
Version: 3.0.2
|
||||
Release: 14%{?dist}
|
||||
Summary: GTK port of the wxWidgets GUI library
|
||||
License: wxWidgets
|
||||
Group: System Environment/Libraries
|
||||
URL: http://www.wxwidgets.org/
|
||||
Source0: http://downloads.sf.net/wxwindows/%{srcname}-%{version}.tar.bz2
|
||||
Source1: http://downloads.sf.net/wxwindows/%{srcname}-%{version}-docs-html.tar.bz2
|
||||
Source10: wx-config
|
||||
# https://bugzilla.redhat.com/show_bug.cgi?id=1225148
|
||||
# remove abort when ABI check fails
|
||||
# Backport from wxGTK
|
||||
Patch0: %{name}-%{version}-abicheck.patch
|
||||
# This is a collection of fixes from upstream
|
||||
# to fix warnings and crashes. See bug for details:
|
||||
# https://bugzilla.redhat.com/show_bug.cgi?id=1234211
|
||||
Patch1: %{name}-%{version}-upstreamfixes.patch
|
||||
# This fixes the spinbutton on gtk 3.12+
|
||||
# For more details, see the upstream commit:
|
||||
# https://github.com/wxWidgets/wxWidgets/commit/312ae4c92cec95954557347c2b7a9e24d4398a59
|
||||
Patch2: %{name}-%{version}-spibuttfix.patch
|
||||
# This fixes checkbox/radiobutton on gtk 3.14+
|
||||
# For more details, see the upstream commit:
|
||||
# https://github.com/wxWidgets/wxWidgets/commit/c1d150ed1228c155054cf1fa90932ced7371e6a4
|
||||
Patch3: %{name}-%{version}-checkradio.patch
|
||||
# This fixes some wayland issues with GTK3
|
||||
# For more details, see the upstream bug:
|
||||
# http://trac.wxwidgets.org/ticket/16688
|
||||
Patch4: %{name}-%{version}-wayland.patch
|
||||
BuildRequires: gtk%{gtkver}-devel
|
||||
#Note webkitgtk (GTK2) does not appear to be supported
|
||||
%if %{gtkver} == 3
|
||||
BuildRequires: webkitgtk3-devel
|
||||
%endif
|
||||
BuildRequires: zlib-devel
|
||||
BuildRequires: libpng-devel
|
||||
BuildRequires: libjpeg-devel
|
||||
BuildRequires: libtiff-devel
|
||||
BuildRequires: expat-devel
|
||||
BuildRequires: SDL-devel
|
||||
BuildRequires: libGLU-devel
|
||||
BuildRequires: libSM-devel
|
||||
BuildRequires: gstreamer-plugins-base-devel
|
||||
BuildRequires: GConf2-devel
|
||||
BuildRequires: gettext
|
||||
BuildRequires: cppunit-devel
|
||||
BuildRequires: libmspack-devel
|
||||
|
||||
Provides: %{srcname} = %{version}-%{release}
|
||||
Provides: bundled(scintilla) = 3.2.1
|
||||
Requires: %{wxbasename}%{?_isa} = %{version}-%{release}
|
||||
|
||||
%description
|
||||
wxWidgets is the GTK port of the C++ cross-platform wxWidgets
|
||||
GUI library, offering classes for all common GUI controls as well as a
|
||||
comprehensive set of helper classes for most common application tasks,
|
||||
ranging from networking to HTML display and image manipulation.
|
||||
|
||||
|
||||
%package devel
|
||||
Group: Development/Libraries
|
||||
Summary: Development files for the wxGTK3 library
|
||||
Requires: %{name}%{?_isa} = %{version}-%{release}
|
||||
Requires: %{name}-gl = %{version}-%{release}
|
||||
Requires: %{name}-media = %{version}-%{release}
|
||||
Requires: %{wxbasename} = %{version}-%{release}
|
||||
Requires: gtk%{gtkver}-devel
|
||||
Requires: libGLU-devel
|
||||
Provides: %{srcname}-devel = %{version}-%{release}
|
||||
|
||||
%description devel
|
||||
This package include files needed to link with the wxGTK3 library.
|
||||
wxWidgets is the GTK port of the C++ cross-platform wxWidgets
|
||||
GUI library, offering classes for all common GUI controls as well as a
|
||||
comprehensive set of helper classes for most common application tasks,
|
||||
ranging from networking to HTML display and image manipulation.
|
||||
|
||||
|
||||
%package gl
|
||||
Summary: OpenGL add-on for the wxWidgets library
|
||||
Group: System Environment/Libraries
|
||||
Requires: %{name}%{?_isa} = %{version}-%{release}
|
||||
|
||||
%description gl
|
||||
OpenGL (a 3D graphics API) add-on for the wxWidgets library.
|
||||
wxWidgets is the GTK port of the C++ cross-platform wxWidgets
|
||||
GUI library, offering classes for all common GUI controls as well as a
|
||||
comprehensive set of helper classes for most common application tasks,
|
||||
ranging from networking to HTML display and image manipulation.
|
||||
|
||||
|
||||
%package media
|
||||
Summary: Multimedia add-on for the wxWidgets library
|
||||
Group: System Environment/Libraries
|
||||
Requires: %{name}%{?_isa} = %{version}-%{release}
|
||||
|
||||
%description media
|
||||
Multimedia add-on for the wxWidgets library.
|
||||
wxWidgets is the GTK port of the C++ cross-platform wxWidgets
|
||||
GUI library, offering classes for all common GUI controls as well as a
|
||||
comprehensive set of helper classes for most common application tasks,
|
||||
ranging from networking to HTML display and image manipulation.
|
||||
|
||||
|
||||
%package -n %{wxbasename}
|
||||
Summary: Non-GUI support classes from the wxWidgets library
|
||||
Group: System Environment/Libraries
|
||||
|
||||
%description -n %{wxbasename}
|
||||
Every wxWidgets application must link against this library. It contains
|
||||
mandatory classes that any wxWidgets code depends on (like wxString) and
|
||||
portability classes that abstract differences between platforms. wxBase can
|
||||
be used to develop console mode applications -- it does not require any GUI
|
||||
libraries or the X Window System.
|
||||
|
||||
|
||||
%package docs
|
||||
Group: Development/Libraries
|
||||
Summary: Documentation for the wxGTK3 library
|
||||
Requires: %{name} = %{version}-%{release}
|
||||
Provides: %{srcname}-docs = %{version}-%{release}
|
||||
BuildArch: noarch
|
||||
|
||||
%description docs
|
||||
This package provides documentation for the %{srcname} library.
|
||||
|
||||
|
||||
%prep
|
||||
%setup -q -n %{srcname}-%{version} -a 1
|
||||
%patch0 -p1 -b .abicheck
|
||||
%patch1 -p1 -b .upstreamfixes
|
||||
%patch2 -p1 -b .spinbutt
|
||||
%patch3 -p1 -b .checkradio
|
||||
%patch4 -p1 -b .wayland
|
||||
|
||||
# patch some installed files to avoid conflicts with 2.8.*
|
||||
sed -i -e 's|aclocal)|aclocal/wxwin3.m4)|' Makefile.in
|
||||
sed -i -e 's|wxstd.mo|wxstd3.mo|' Makefile.in
|
||||
sed -i -e 's|wxmsw.mo|wxmsw3.mo|' Makefile.in
|
||||
|
||||
# rename docs directory
|
||||
mv %{srcname}-%{version} html
|
||||
|
||||
|
||||
# fix plugin dir for 64-bit
|
||||
sed -i -e 's|/usr/lib\b|%{_libdir}|' wx-config.in configure
|
||||
sed -i -e 's|/lib|/%{_lib}|' src/unix/stdpaths.cpp
|
||||
|
||||
|
||||
%build
|
||||
# likely still dereferences type-punned pointers
|
||||
CFLAGS="$RPM_OPT_FLAGS -fno-strict-aliasing"
|
||||
CXXFLAGS="$RPM_OPT_FLAGS -fno-strict-aliasing"
|
||||
# fix unused-direct-shlib-dependency error:
|
||||
export LDFLAGS="-Wl,--as-needed"
|
||||
|
||||
%configure \
|
||||
--with-gtk=%{gtkver} \
|
||||
--with-opengl \
|
||||
--with-sdl \
|
||||
--with-gnomeprint \
|
||||
--with-libmspack \
|
||||
--enable-intl \
|
||||
--enable-no_deps \
|
||||
--disable-rpath \
|
||||
--enable-ipv6
|
||||
|
||||
make %{?_smp_mflags}
|
||||
|
||||
%install
|
||||
%makeinstall
|
||||
|
||||
# install our multilib-aware wrapper
|
||||
##Remove installed
|
||||
rm %{buildroot}%{_bindir}/wx-config
|
||||
##Install new and symlink
|
||||
install -p -D -m 755 %{SOURCE10} %{buildroot}%{_libexecdir}/%{name}/wx-config
|
||||
ln -s ../..%{_libexecdir}/%{name}/wx-config %{buildroot}%{_bindir}/wx-config-3.0
|
||||
##If gtk2
|
||||
%if %{gtkver} == 2
|
||||
sed -i -e 's|gtk3|gtk2|' %{buildroot}%{_libexecdir}/%{name}/wx-config
|
||||
%endif
|
||||
|
||||
#Move wxrc to libexec and symlink (avoid conflict with wxGTK)
|
||||
mv %{buildroot}%{_bindir}/wxrc* %{buildroot}%{_libexecdir}/%{name}
|
||||
ln -s ../..%{_libexecdir}/%{name}/wxrc-3.0 %{buildroot}%{_bindir}/wxrc-3.0
|
||||
|
||||
# move bakefiles to avoid conflicts with 2.8.*
|
||||
mkdir %{buildroot}%{_datadir}/bakefile/presets/wx3
|
||||
mv %{buildroot}%{_datadir}/bakefile/presets/*.* %{buildroot}%{_datadir}/bakefile/presets/wx3
|
||||
|
||||
%find_lang wxstd3
|
||||
%find_lang wxmsw3
|
||||
cat wxmsw3.lang >> wxstd3.lang
|
||||
|
||||
%check
|
||||
pushd tests
|
||||
make %{?_smp_mflags} test
|
||||
popd
|
||||
|
||||
%post -p /sbin/ldconfig
|
||||
%postun -p /sbin/ldconfig
|
||||
|
||||
%post gl -p /sbin/ldconfig
|
||||
%postun gl -p /sbin/ldconfig
|
||||
|
||||
%post media -p /sbin/ldconfig
|
||||
%postun media -p /sbin/ldconfig
|
||||
|
||||
%post -n %{wxbasename} -p /sbin/ldconfig
|
||||
%postun -n %{wxbasename} -p /sbin/ldconfig
|
||||
|
||||
%files -f wxstd3.lang
|
||||
%doc docs/changes.txt docs/gpl.txt docs/lgpl.txt docs/licence.txt
|
||||
%doc docs/licendoc.txt docs/preamble.txt docs/readme.txt
|
||||
%{_libdir}/libwx_gtk%{gtkver}u_adv-*.so.*
|
||||
%{_libdir}/libwx_gtk%{gtkver}u_aui-*.so.*
|
||||
%{_libdir}/libwx_gtk%{gtkver}u_core-*.so.*
|
||||
%{_libdir}/libwx_gtk%{gtkver}u_html-*.so.*
|
||||
%{_libdir}/libwx_gtk%{gtkver}u_propgrid-*.so.*
|
||||
%{_libdir}/libwx_gtk%{gtkver}u_qa-*.so.*
|
||||
%{_libdir}/libwx_gtk%{gtkver}u_ribbon-*.so.*
|
||||
%{_libdir}/libwx_gtk%{gtkver}u_richtext-*.so.*
|
||||
%{_libdir}/libwx_gtk%{gtkver}u_stc-*.so.*
|
||||
%if %{gtkver} == 3
|
||||
%{_libdir}/libwx_gtk%{gtkver}u_webview-*.so.*
|
||||
%endif
|
||||
%{_libdir}/libwx_gtk%{gtkver}u_xrc-*.so.*
|
||||
|
||||
%files devel
|
||||
%{_bindir}/wxrc-3.0
|
||||
%{_bindir}/wx-config-3.0
|
||||
%{_includedir}/wx-3.0
|
||||
%{_libdir}/libwx_*.so
|
||||
%{_libdir}/wx
|
||||
%{_datadir}/aclocal/wxwin3.m4
|
||||
%{_datadir}/bakefile/presets/wx3
|
||||
#Exclude some python bitecode
|
||||
%exclude %{_datadir}/bakefile/presets/wx3/*.pyc
|
||||
%exclude %{_datadir}/bakefile/presets/wx3/*.pyo
|
||||
%{_libexecdir}/%{name}
|
||||
|
||||
%files gl
|
||||
%{_libdir}/libwx_gtk%{gtkver}u_gl-*.so.*
|
||||
|
||||
%files media
|
||||
%{_libdir}/libwx_gtk%{gtkver}u_media-*.so.*
|
||||
|
||||
%files -n %{wxbasename}
|
||||
%doc docs/changes.txt docs/gpl.txt docs/lgpl.txt docs/licence.txt
|
||||
%doc docs/licendoc.txt docs/preamble.txt docs/readme.txt
|
||||
%{_libdir}/libwx_baseu-*.so.*
|
||||
%{_libdir}/libwx_baseu_net-*.so.*
|
||||
%{_libdir}/libwx_baseu_xml-*.so.*
|
||||
|
||||
%files docs
|
||||
%doc html
|
||||
|
||||
%changelog
|
||||
* Mon Feb 22 2016 Jeremy Newton <alexjnewt AT hotmail DOT com> - 3.0.2-14
|
||||
- Should actually fix RH#1294712
|
||||
|
||||
* Fri Feb 05 2016 Fedora Release Engineering <releng@fedoraproject.org> - 3.0.2-13
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild
|
||||
|
||||
* Thu Dec 31 2015 Jeremy Newton <alexjnewt AT hotmail DOT com> - 3.0.2-12
|
||||
- Remove python artifacts in bakefile dir, causes multilib devel conflict RH#1294712
|
||||
- Fix package devel not owning created wx3 backfile preset dir
|
||||
- Add support for MIPS to wx-config RH#1294895
|
||||
- Wayland Patch
|
||||
|
||||
* Thu Nov 5 2015 Jeremy Newton <alexjnewt AT hotmail DOT com> - 3.0.2-11
|
||||
- Added patch to fix checkbox and radio button issues for f21 onwards
|
||||
|
||||
* Sun Nov 1 2015 Jeremy Newton <alexjnewt AT hotmail DOT com> - 3.0.2-10
|
||||
- Removed depreciated/retired libgnomeprintui22
|
||||
|
||||
* Sat Aug 22 2015 Jeremy Newton <alexjnewt AT hotmail DOT com> - 3.0.2-9
|
||||
- Include spinbutton patch from upstream
|
||||
|
||||
* Mon Jun 22 2015 Jeremy Newton <alexjnewt AT hotmail DOT com> - 3.0.2-8
|
||||
- Include some upstream patches to fix crashes and warnings
|
||||
|
||||
* Fri Jun 19 2015 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 3.0.2-7
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild
|
||||
|
||||
* Thu May 28 2015 Mamoru TASAKA <mtasaka@fedoraproject.org> - 3.0.2-6
|
||||
- Don't abort on ABI check, backport from wxGTK
|
||||
|
||||
* Mon May 04 2015 Jason L Tibbitts III <tibbs@math.uh.edu> - 3.0.2-5
|
||||
- Indicate that this package bundles scintilla 3.2.1.
|
||||
|
||||
* Thu Feb 26 2015 Jeremy Newton <alexjnewt AT hotmail DOT com> - 3.0.2-4
|
||||
- Bump to rebuild, fix bug #1210239
|
||||
|
||||
* Thu Feb 26 2015 Jeremy Newton <alexjnewt AT hotmail DOT com> - 3.0.2-3
|
||||
- Bump to rebuild for gcc 5.0 to fix some issues
|
||||
|
||||
* Tue Nov 04 2014 Jeremy Newton <alexjnewt AT hotmail DOT com> - 3.0.2-2
|
||||
- Moving things around again, hopefully fixing RH#1124402
|
||||
- Adding symlinks to avoid breaking things
|
||||
|
||||
* Tue Nov 04 2014 Jeremy Newton <alexjnewt AT hotmail DOT com> - 3.0.2-1
|
||||
- Update to 3.0.2
|
||||
|
||||
* Mon Nov 03 2014 Marcin Juszkiewicz <mjuszkiewicz@redhat.com> - 3.0.1-5
|
||||
- Add aarch64 and ppc64le to list of 64-bit architectures
|
||||
|
||||
* Tue Sep 30 2014 Jeremy Newton <alexjnewt AT hotmail DOT com> - 3.0.1-4
|
||||
- Add conflict with wxgtk-devel again, temporary fix until it can be resolved
|
||||
|
||||
* Tue Sep 30 2014 Jeremy Newton <alexjnewt AT hotmail DOT com> - 3.0.1-3
|
||||
- Avoid gtk warnings, fixes RH#1147995
|
||||
- Moving wxrc and wx-config to libexec instead of renaming
|
||||
- Misc changes and spec error fixes, fixes RH#1124402
|
||||
|
||||
* Sat Jul 5 2014 Jeremy Newton <alexjnewt AT hotmail DOT com> - 3.0.1-1
|
||||
- Bump to 3.0.1 RH#1076617
|
||||
|
||||
* Tue Mar 18 2014 Jeremy Newton <alexjnewt AT hotmail DOT com> - 3.0.0-6
|
||||
- Removed disable-catch_segvs, see RH#1076617
|
||||
|
||||
* Mon Mar 17 2014 Jeremy Newton <alexjnewt AT hotmail DOT com> - 3.0.0-5
|
||||
- Renable combat28 - without it causes bugs RH#1076617 and a few others
|
||||
|
||||
* Wed Feb 19 2014 Jeremy Newton <alexjnewt AT hotmail DOT com> - 3.0.0-4
|
||||
- Fixed GTK3 bug with wx-config
|
||||
- Fixed a unused-direct-shlib-dependency error
|
||||
|
||||
* Mon Feb 17 2014 Jeremy Newton <alexjnewt AT hotmail DOT com> - 3.0.0-3
|
||||
- Added patch to avoid build fail on gtk 3.10+
|
||||
- Reverted patching to make devel package compatible with wxGTK-devel
|
||||
- Added combatibility for RHEL 6+
|
||||
- Changed all mention of GTK3 and GTK2 to GTK for consistency
|
||||
|
||||
* Mon Feb 10 2014 Jeremy Newton <alexjnewt AT hotmail DOT com> - 3.0.0-2
|
||||
- Changed to build against gtk3
|
||||
- Add webkit to build requires
|
||||
- Removed patching to make devel package compatible with wxGTK-devel
|
||||
- Disable 2.8.* combatibility (redundant functionality)
|
||||
|
||||
* Sat Jan 4 2014 Jeremy Newton <alexjnewt AT hotmail DOT com> - 3.0.0-1
|
||||
- Initial build of wxwidgets version 3, mostly based on wxGTK spec
|
||||
Loading…
Add table
Add a link
Reference in a new issue