Use "new" GDK keysym names
Old names are no longer available with GTK+4
This commit is contained in:
@@ -38,6 +38,7 @@
|
||||
#include <ctype.h>
|
||||
|
||||
#include <gtk/gtk.h>
|
||||
#include <gdk/gdkkeysyms.h>
|
||||
#include "wx/gtk/private.h"
|
||||
#include "wx/gtk/private/gtk2-compat.h"
|
||||
#include "wx/gtk/private/event.h"
|
||||
@@ -52,11 +53,6 @@ using namespace wxGTKImpl;
|
||||
typedef guint KeySym;
|
||||
#endif
|
||||
|
||||
#include <gdk/gdkkeysyms.h>
|
||||
#ifdef __WXGTK3__
|
||||
#include <gdk/gdkkeysyms-compat.h>
|
||||
#endif
|
||||
|
||||
// gdk_window_set_composited() is only supported since 2.12
|
||||
#define wxGTK_HAS_COMPOSITING_SUPPORT (GTK_CHECK_VERSION(2,12,0) && wxUSE_CAIRO)
|
||||
|
||||
@@ -558,311 +554,311 @@ static long wxTranslateKeySymToWXKey(KeySym keysym, bool isChar)
|
||||
switch ( keysym )
|
||||
{
|
||||
// Shift, Control and Alt don't generate the CHAR events at all
|
||||
case GDK_Shift_L:
|
||||
case GDK_Shift_R:
|
||||
case GDK_KEY_Shift_L:
|
||||
case GDK_KEY_Shift_R:
|
||||
key_code = isChar ? 0 : WXK_SHIFT;
|
||||
break;
|
||||
case GDK_Control_L:
|
||||
case GDK_Control_R:
|
||||
case GDK_KEY_Control_L:
|
||||
case GDK_KEY_Control_R:
|
||||
key_code = isChar ? 0 : WXK_CONTROL;
|
||||
break;
|
||||
case GDK_Meta_L:
|
||||
case GDK_Meta_R:
|
||||
case GDK_Alt_L:
|
||||
case GDK_Alt_R:
|
||||
case GDK_Super_L:
|
||||
case GDK_Super_R:
|
||||
case GDK_KEY_Meta_L:
|
||||
case GDK_KEY_Meta_R:
|
||||
case GDK_KEY_Alt_L:
|
||||
case GDK_KEY_Alt_R:
|
||||
case GDK_KEY_Super_L:
|
||||
case GDK_KEY_Super_R:
|
||||
key_code = isChar ? 0 : WXK_ALT;
|
||||
break;
|
||||
|
||||
// neither do the toggle modifies
|
||||
case GDK_Scroll_Lock:
|
||||
case GDK_KEY_Scroll_Lock:
|
||||
key_code = isChar ? 0 : WXK_SCROLL;
|
||||
break;
|
||||
|
||||
case GDK_Caps_Lock:
|
||||
case GDK_KEY_Caps_Lock:
|
||||
key_code = isChar ? 0 : WXK_CAPITAL;
|
||||
break;
|
||||
|
||||
case GDK_Num_Lock:
|
||||
case GDK_KEY_Num_Lock:
|
||||
key_code = isChar ? 0 : WXK_NUMLOCK;
|
||||
break;
|
||||
|
||||
|
||||
// various other special keys
|
||||
case GDK_Menu:
|
||||
case GDK_KEY_Menu:
|
||||
key_code = WXK_MENU;
|
||||
break;
|
||||
|
||||
case GDK_Help:
|
||||
case GDK_KEY_Help:
|
||||
key_code = WXK_HELP;
|
||||
break;
|
||||
|
||||
case GDK_BackSpace:
|
||||
case GDK_KEY_BackSpace:
|
||||
key_code = WXK_BACK;
|
||||
break;
|
||||
|
||||
case GDK_ISO_Left_Tab:
|
||||
case GDK_Tab:
|
||||
case GDK_KEY_ISO_Left_Tab:
|
||||
case GDK_KEY_Tab:
|
||||
key_code = WXK_TAB;
|
||||
break;
|
||||
|
||||
case GDK_Linefeed:
|
||||
case GDK_Return:
|
||||
case GDK_KEY_Linefeed:
|
||||
case GDK_KEY_Return:
|
||||
key_code = WXK_RETURN;
|
||||
break;
|
||||
|
||||
case GDK_Clear:
|
||||
case GDK_KEY_Clear:
|
||||
key_code = WXK_CLEAR;
|
||||
break;
|
||||
|
||||
case GDK_Pause:
|
||||
case GDK_KEY_Pause:
|
||||
key_code = WXK_PAUSE;
|
||||
break;
|
||||
|
||||
case GDK_Select:
|
||||
case GDK_KEY_Select:
|
||||
key_code = WXK_SELECT;
|
||||
break;
|
||||
|
||||
case GDK_Print:
|
||||
case GDK_KEY_Print:
|
||||
key_code = WXK_PRINT;
|
||||
break;
|
||||
|
||||
case GDK_Execute:
|
||||
case GDK_KEY_Execute:
|
||||
key_code = WXK_EXECUTE;
|
||||
break;
|
||||
|
||||
case GDK_Escape:
|
||||
case GDK_KEY_Escape:
|
||||
key_code = WXK_ESCAPE;
|
||||
break;
|
||||
|
||||
// cursor and other extended keyboard keys
|
||||
case GDK_Delete:
|
||||
case GDK_KEY_Delete:
|
||||
key_code = WXK_DELETE;
|
||||
break;
|
||||
|
||||
case GDK_Home:
|
||||
case GDK_KEY_Home:
|
||||
key_code = WXK_HOME;
|
||||
break;
|
||||
|
||||
case GDK_Left:
|
||||
case GDK_KEY_Left:
|
||||
key_code = WXK_LEFT;
|
||||
break;
|
||||
|
||||
case GDK_Up:
|
||||
case GDK_KEY_Up:
|
||||
key_code = WXK_UP;
|
||||
break;
|
||||
|
||||
case GDK_Right:
|
||||
case GDK_KEY_Right:
|
||||
key_code = WXK_RIGHT;
|
||||
break;
|
||||
|
||||
case GDK_Down:
|
||||
case GDK_KEY_Down:
|
||||
key_code = WXK_DOWN;
|
||||
break;
|
||||
|
||||
case GDK_Prior: // == GDK_Page_Up
|
||||
case GDK_KEY_Prior: // == GDK_KEY_Page_Up
|
||||
key_code = WXK_PAGEUP;
|
||||
break;
|
||||
|
||||
case GDK_Next: // == GDK_Page_Down
|
||||
case GDK_KEY_Next: // == GDK_KEY_Page_Down
|
||||
key_code = WXK_PAGEDOWN;
|
||||
break;
|
||||
|
||||
case GDK_End:
|
||||
case GDK_KEY_End:
|
||||
key_code = WXK_END;
|
||||
break;
|
||||
|
||||
case GDK_Begin:
|
||||
case GDK_KEY_Begin:
|
||||
key_code = WXK_HOME;
|
||||
break;
|
||||
|
||||
case GDK_Insert:
|
||||
case GDK_KEY_Insert:
|
||||
key_code = WXK_INSERT;
|
||||
break;
|
||||
|
||||
|
||||
// numpad keys
|
||||
case GDK_KP_0:
|
||||
case GDK_KP_1:
|
||||
case GDK_KP_2:
|
||||
case GDK_KP_3:
|
||||
case GDK_KP_4:
|
||||
case GDK_KP_5:
|
||||
case GDK_KP_6:
|
||||
case GDK_KP_7:
|
||||
case GDK_KP_8:
|
||||
case GDK_KP_9:
|
||||
key_code = (isChar ? '0' : int(WXK_NUMPAD0)) + keysym - GDK_KP_0;
|
||||
case GDK_KEY_KP_0:
|
||||
case GDK_KEY_KP_1:
|
||||
case GDK_KEY_KP_2:
|
||||
case GDK_KEY_KP_3:
|
||||
case GDK_KEY_KP_4:
|
||||
case GDK_KEY_KP_5:
|
||||
case GDK_KEY_KP_6:
|
||||
case GDK_KEY_KP_7:
|
||||
case GDK_KEY_KP_8:
|
||||
case GDK_KEY_KP_9:
|
||||
key_code = (isChar ? '0' : int(WXK_NUMPAD0)) + keysym - GDK_KEY_KP_0;
|
||||
break;
|
||||
|
||||
case GDK_KP_Space:
|
||||
case GDK_KEY_KP_Space:
|
||||
key_code = isChar ? ' ' : int(WXK_NUMPAD_SPACE);
|
||||
break;
|
||||
|
||||
case GDK_KP_Tab:
|
||||
case GDK_KEY_KP_Tab:
|
||||
key_code = isChar ? WXK_TAB : WXK_NUMPAD_TAB;
|
||||
break;
|
||||
|
||||
case GDK_KP_Enter:
|
||||
case GDK_KEY_KP_Enter:
|
||||
key_code = isChar ? WXK_RETURN : WXK_NUMPAD_ENTER;
|
||||
break;
|
||||
|
||||
case GDK_KP_F1:
|
||||
case GDK_KEY_KP_F1:
|
||||
key_code = isChar ? WXK_F1 : WXK_NUMPAD_F1;
|
||||
break;
|
||||
|
||||
case GDK_KP_F2:
|
||||
case GDK_KEY_KP_F2:
|
||||
key_code = isChar ? WXK_F2 : WXK_NUMPAD_F2;
|
||||
break;
|
||||
|
||||
case GDK_KP_F3:
|
||||
case GDK_KEY_KP_F3:
|
||||
key_code = isChar ? WXK_F3 : WXK_NUMPAD_F3;
|
||||
break;
|
||||
|
||||
case GDK_KP_F4:
|
||||
case GDK_KEY_KP_F4:
|
||||
key_code = isChar ? WXK_F4 : WXK_NUMPAD_F4;
|
||||
break;
|
||||
|
||||
case GDK_KP_Home:
|
||||
case GDK_KEY_KP_Home:
|
||||
key_code = isChar ? WXK_HOME : WXK_NUMPAD_HOME;
|
||||
break;
|
||||
|
||||
case GDK_KP_Left:
|
||||
case GDK_KEY_KP_Left:
|
||||
key_code = isChar ? WXK_LEFT : WXK_NUMPAD_LEFT;
|
||||
break;
|
||||
|
||||
case GDK_KP_Up:
|
||||
case GDK_KEY_KP_Up:
|
||||
key_code = isChar ? WXK_UP : WXK_NUMPAD_UP;
|
||||
break;
|
||||
|
||||
case GDK_KP_Right:
|
||||
case GDK_KEY_KP_Right:
|
||||
key_code = isChar ? WXK_RIGHT : WXK_NUMPAD_RIGHT;
|
||||
break;
|
||||
|
||||
case GDK_KP_Down:
|
||||
case GDK_KEY_KP_Down:
|
||||
key_code = isChar ? WXK_DOWN : WXK_NUMPAD_DOWN;
|
||||
break;
|
||||
|
||||
case GDK_KP_Prior: // == GDK_KP_Page_Up
|
||||
case GDK_KEY_KP_Prior: // == GDK_KP_Page_Up
|
||||
key_code = isChar ? WXK_PAGEUP : WXK_NUMPAD_PAGEUP;
|
||||
break;
|
||||
|
||||
case GDK_KP_Next: // == GDK_KP_Page_Down
|
||||
case GDK_KEY_KP_Next: // == GDK_KP_Page_Down
|
||||
key_code = isChar ? WXK_PAGEDOWN : WXK_NUMPAD_PAGEDOWN;
|
||||
break;
|
||||
|
||||
case GDK_KP_End:
|
||||
case GDK_KEY_KP_End:
|
||||
key_code = isChar ? WXK_END : WXK_NUMPAD_END;
|
||||
break;
|
||||
|
||||
case GDK_KP_Begin:
|
||||
case GDK_KEY_KP_Begin:
|
||||
key_code = isChar ? WXK_HOME : WXK_NUMPAD_BEGIN;
|
||||
break;
|
||||
|
||||
case GDK_KP_Insert:
|
||||
case GDK_KEY_KP_Insert:
|
||||
key_code = isChar ? WXK_INSERT : WXK_NUMPAD_INSERT;
|
||||
break;
|
||||
|
||||
case GDK_KP_Delete:
|
||||
case GDK_KEY_KP_Delete:
|
||||
key_code = isChar ? WXK_DELETE : WXK_NUMPAD_DELETE;
|
||||
break;
|
||||
|
||||
case GDK_KP_Equal:
|
||||
case GDK_KEY_KP_Equal:
|
||||
key_code = isChar ? '=' : int(WXK_NUMPAD_EQUAL);
|
||||
break;
|
||||
|
||||
case GDK_KP_Multiply:
|
||||
case GDK_KEY_KP_Multiply:
|
||||
key_code = isChar ? '*' : int(WXK_NUMPAD_MULTIPLY);
|
||||
break;
|
||||
|
||||
case GDK_KP_Add:
|
||||
case GDK_KEY_KP_Add:
|
||||
key_code = isChar ? '+' : int(WXK_NUMPAD_ADD);
|
||||
break;
|
||||
|
||||
case GDK_KP_Separator:
|
||||
case GDK_KEY_KP_Separator:
|
||||
// FIXME: what is this?
|
||||
key_code = isChar ? '.' : int(WXK_NUMPAD_SEPARATOR);
|
||||
break;
|
||||
|
||||
case GDK_KP_Subtract:
|
||||
case GDK_KEY_KP_Subtract:
|
||||
key_code = isChar ? '-' : int(WXK_NUMPAD_SUBTRACT);
|
||||
break;
|
||||
|
||||
case GDK_KP_Decimal:
|
||||
case GDK_KEY_KP_Decimal:
|
||||
key_code = isChar ? '.' : int(WXK_NUMPAD_DECIMAL);
|
||||
break;
|
||||
|
||||
case GDK_KP_Divide:
|
||||
case GDK_KEY_KP_Divide:
|
||||
key_code = isChar ? '/' : int(WXK_NUMPAD_DIVIDE);
|
||||
break;
|
||||
|
||||
|
||||
// function keys
|
||||
case GDK_F1:
|
||||
case GDK_F2:
|
||||
case GDK_F3:
|
||||
case GDK_F4:
|
||||
case GDK_F5:
|
||||
case GDK_F6:
|
||||
case GDK_F7:
|
||||
case GDK_F8:
|
||||
case GDK_F9:
|
||||
case GDK_F10:
|
||||
case GDK_F11:
|
||||
case GDK_F12:
|
||||
key_code = WXK_F1 + keysym - GDK_F1;
|
||||
case GDK_KEY_F1:
|
||||
case GDK_KEY_F2:
|
||||
case GDK_KEY_F3:
|
||||
case GDK_KEY_F4:
|
||||
case GDK_KEY_F5:
|
||||
case GDK_KEY_F6:
|
||||
case GDK_KEY_F7:
|
||||
case GDK_KEY_F8:
|
||||
case GDK_KEY_F9:
|
||||
case GDK_KEY_F10:
|
||||
case GDK_KEY_F11:
|
||||
case GDK_KEY_F12:
|
||||
key_code = WXK_F1 + keysym - GDK_KEY_F1;
|
||||
break;
|
||||
#if GTK_CHECK_VERSION(2,18,0)
|
||||
case GDK_Back:
|
||||
case GDK_KEY_Back:
|
||||
key_code = WXK_BROWSER_BACK;
|
||||
break;
|
||||
case GDK_Forward:
|
||||
case GDK_KEY_Forward:
|
||||
key_code = WXK_BROWSER_FORWARD;
|
||||
break;
|
||||
case GDK_Refresh:
|
||||
case GDK_KEY_Refresh:
|
||||
key_code = WXK_BROWSER_REFRESH;
|
||||
break;
|
||||
case GDK_Stop:
|
||||
case GDK_KEY_Stop:
|
||||
key_code = WXK_BROWSER_STOP;
|
||||
break;
|
||||
case GDK_Search:
|
||||
case GDK_KEY_Search:
|
||||
key_code = WXK_BROWSER_SEARCH;
|
||||
break;
|
||||
case GDK_Favorites:
|
||||
case GDK_KEY_Favorites:
|
||||
key_code = WXK_BROWSER_FAVORITES;
|
||||
break;
|
||||
case GDK_HomePage:
|
||||
case GDK_KEY_HomePage:
|
||||
key_code = WXK_BROWSER_HOME;
|
||||
break;
|
||||
case GDK_AudioMute:
|
||||
case GDK_KEY_AudioMute:
|
||||
key_code = WXK_VOLUME_MUTE;
|
||||
break;
|
||||
case GDK_AudioLowerVolume:
|
||||
case GDK_KEY_AudioLowerVolume:
|
||||
key_code = WXK_VOLUME_DOWN;
|
||||
break;
|
||||
case GDK_AudioRaiseVolume:
|
||||
case GDK_KEY_AudioRaiseVolume:
|
||||
key_code = WXK_VOLUME_UP;
|
||||
break;
|
||||
case GDK_AudioNext:
|
||||
case GDK_KEY_AudioNext:
|
||||
key_code = WXK_MEDIA_NEXT_TRACK;
|
||||
break;
|
||||
case GDK_AudioPrev:
|
||||
case GDK_KEY_AudioPrev:
|
||||
key_code = WXK_MEDIA_PREV_TRACK;
|
||||
break;
|
||||
case GDK_AudioStop:
|
||||
case GDK_KEY_AudioStop:
|
||||
key_code = WXK_MEDIA_STOP;
|
||||
break;
|
||||
case GDK_AudioPlay:
|
||||
case GDK_KEY_AudioPlay:
|
||||
key_code = WXK_MEDIA_PLAY_PAUSE;
|
||||
break;
|
||||
case GDK_Mail:
|
||||
case GDK_KEY_Mail:
|
||||
key_code = WXK_LAUNCH_MAIL;
|
||||
break;
|
||||
case GDK_LaunchA:
|
||||
case GDK_KEY_LaunchA:
|
||||
key_code = WXK_LAUNCH_APP1;
|
||||
break;
|
||||
case GDK_LaunchB:
|
||||
case GDK_KEY_LaunchB:
|
||||
key_code = WXK_LAUNCH_APP2;
|
||||
break;
|
||||
#endif // GTK_CHECK_VERSION(2,18,0)
|
||||
@@ -920,25 +916,25 @@ static void wxFillOtherKeyEventFields(wxKeyEvent& event,
|
||||
const bool isPress = gdk_event->type == GDK_KEY_PRESS;
|
||||
switch ( gdk_event->keyval )
|
||||
{
|
||||
case GDK_Shift_L:
|
||||
case GDK_Shift_R:
|
||||
case GDK_KEY_Shift_L:
|
||||
case GDK_KEY_Shift_R:
|
||||
event.m_shiftDown = isPress;
|
||||
break;
|
||||
|
||||
case GDK_Control_L:
|
||||
case GDK_Control_R:
|
||||
case GDK_KEY_Control_L:
|
||||
case GDK_KEY_Control_R:
|
||||
event.m_controlDown = isPress;
|
||||
break;
|
||||
|
||||
case GDK_Alt_L:
|
||||
case GDK_Alt_R:
|
||||
case GDK_KEY_Alt_L:
|
||||
case GDK_KEY_Alt_R:
|
||||
event.m_altDown = isPress;
|
||||
break;
|
||||
|
||||
case GDK_Meta_L:
|
||||
case GDK_Meta_R:
|
||||
case GDK_Super_L:
|
||||
case GDK_Super_R:
|
||||
case GDK_KEY_Meta_L:
|
||||
case GDK_KEY_Meta_R:
|
||||
case GDK_KEY_Super_L:
|
||||
case GDK_KEY_Super_R:
|
||||
event.m_metaDown = isPress;
|
||||
break;
|
||||
}
|
||||
@@ -2556,8 +2552,8 @@ void wxWindowGTK::GTKCreateScrolledWindowWith(GtkWidget* view)
|
||||
bindings = gtk_binding_set_by_class(G_OBJECT_GET_CLASS(m_widget));
|
||||
if ( bindings )
|
||||
{
|
||||
gtk_binding_entry_remove(bindings, GDK_Page_Up, GDK_CONTROL_MASK);
|
||||
gtk_binding_entry_remove(bindings, GDK_Page_Down, GDK_CONTROL_MASK);
|
||||
gtk_binding_entry_remove(bindings, GDK_KEY_Page_Up, GDK_CONTROL_MASK);
|
||||
gtk_binding_entry_remove(bindings, GDK_KEY_Page_Down, GDK_CONTROL_MASK);
|
||||
}
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user