gdk4-sys 0.5.5

FFI bindings of GDK 4
Documentation
// This file was generated by gir (https://github.com/gtk-rs/gir)
// from gir-files (https://github.com/gtk-rs/gir-files)
// DO NOT EDIT

#![allow(non_camel_case_types, non_upper_case_globals, non_snake_case)]
#![allow(
    clippy::approx_constant,
    clippy::type_complexity,
    clippy::unreadable_literal,
    clippy::upper_case_acronyms
)]
#![cfg_attr(feature = "dox", feature(doc_cfg))]

#[allow(unused_imports)]
use libc::{
    c_char, c_double, c_float, c_int, c_long, c_short, c_uchar, c_uint, c_ulong, c_ushort, c_void,
    intptr_t, size_t, ssize_t, uintptr_t, FILE,
};

#[allow(unused_imports)]
use glib::{gboolean, gconstpointer, gpointer, GType};

// Enums
pub type GdkAxisUse = c_int;
pub const GDK_AXIS_IGNORE: GdkAxisUse = 0;
pub const GDK_AXIS_X: GdkAxisUse = 1;
pub const GDK_AXIS_Y: GdkAxisUse = 2;
pub const GDK_AXIS_DELTA_X: GdkAxisUse = 3;
pub const GDK_AXIS_DELTA_Y: GdkAxisUse = 4;
pub const GDK_AXIS_PRESSURE: GdkAxisUse = 5;
pub const GDK_AXIS_XTILT: GdkAxisUse = 6;
pub const GDK_AXIS_YTILT: GdkAxisUse = 7;
pub const GDK_AXIS_WHEEL: GdkAxisUse = 8;
pub const GDK_AXIS_DISTANCE: GdkAxisUse = 9;
pub const GDK_AXIS_ROTATION: GdkAxisUse = 10;
pub const GDK_AXIS_SLIDER: GdkAxisUse = 11;
pub const GDK_AXIS_LAST: GdkAxisUse = 12;

pub type GdkCrossingMode = c_int;
pub const GDK_CROSSING_NORMAL: GdkCrossingMode = 0;
pub const GDK_CROSSING_GRAB: GdkCrossingMode = 1;
pub const GDK_CROSSING_UNGRAB: GdkCrossingMode = 2;
pub const GDK_CROSSING_GTK_GRAB: GdkCrossingMode = 3;
pub const GDK_CROSSING_GTK_UNGRAB: GdkCrossingMode = 4;
pub const GDK_CROSSING_STATE_CHANGED: GdkCrossingMode = 5;
pub const GDK_CROSSING_TOUCH_BEGIN: GdkCrossingMode = 6;
pub const GDK_CROSSING_TOUCH_END: GdkCrossingMode = 7;
pub const GDK_CROSSING_DEVICE_SWITCH: GdkCrossingMode = 8;

pub type GdkDevicePadFeature = c_int;
pub const GDK_DEVICE_PAD_FEATURE_BUTTON: GdkDevicePadFeature = 0;
pub const GDK_DEVICE_PAD_FEATURE_RING: GdkDevicePadFeature = 1;
pub const GDK_DEVICE_PAD_FEATURE_STRIP: GdkDevicePadFeature = 2;

pub type GdkDeviceToolType = c_int;
pub const GDK_DEVICE_TOOL_TYPE_UNKNOWN: GdkDeviceToolType = 0;
pub const GDK_DEVICE_TOOL_TYPE_PEN: GdkDeviceToolType = 1;
pub const GDK_DEVICE_TOOL_TYPE_ERASER: GdkDeviceToolType = 2;
pub const GDK_DEVICE_TOOL_TYPE_BRUSH: GdkDeviceToolType = 3;
pub const GDK_DEVICE_TOOL_TYPE_PENCIL: GdkDeviceToolType = 4;
pub const GDK_DEVICE_TOOL_TYPE_AIRBRUSH: GdkDeviceToolType = 5;
pub const GDK_DEVICE_TOOL_TYPE_MOUSE: GdkDeviceToolType = 6;
pub const GDK_DEVICE_TOOL_TYPE_LENS: GdkDeviceToolType = 7;

pub type GdkDragCancelReason = c_int;
pub const GDK_DRAG_CANCEL_NO_TARGET: GdkDragCancelReason = 0;
pub const GDK_DRAG_CANCEL_USER_CANCELLED: GdkDragCancelReason = 1;
pub const GDK_DRAG_CANCEL_ERROR: GdkDragCancelReason = 2;

pub type GdkEventType = c_int;
pub const GDK_DELETE: GdkEventType = 0;
pub const GDK_MOTION_NOTIFY: GdkEventType = 1;
pub const GDK_BUTTON_PRESS: GdkEventType = 2;
pub const GDK_BUTTON_RELEASE: GdkEventType = 3;
pub const GDK_KEY_PRESS: GdkEventType = 4;
pub const GDK_KEY_RELEASE: GdkEventType = 5;
pub const GDK_ENTER_NOTIFY: GdkEventType = 6;
pub const GDK_LEAVE_NOTIFY: GdkEventType = 7;
pub const GDK_FOCUS_CHANGE: GdkEventType = 8;
pub const GDK_PROXIMITY_IN: GdkEventType = 9;
pub const GDK_PROXIMITY_OUT: GdkEventType = 10;
pub const GDK_DRAG_ENTER: GdkEventType = 11;
pub const GDK_DRAG_LEAVE: GdkEventType = 12;
pub const GDK_DRAG_MOTION: GdkEventType = 13;
pub const GDK_DROP_START: GdkEventType = 14;
pub const GDK_SCROLL: GdkEventType = 15;
pub const GDK_GRAB_BROKEN: GdkEventType = 16;
pub const GDK_TOUCH_BEGIN: GdkEventType = 17;
pub const GDK_TOUCH_UPDATE: GdkEventType = 18;
pub const GDK_TOUCH_END: GdkEventType = 19;
pub const GDK_TOUCH_CANCEL: GdkEventType = 20;
pub const GDK_TOUCHPAD_SWIPE: GdkEventType = 21;
pub const GDK_TOUCHPAD_PINCH: GdkEventType = 22;
pub const GDK_PAD_BUTTON_PRESS: GdkEventType = 23;
pub const GDK_PAD_BUTTON_RELEASE: GdkEventType = 24;
pub const GDK_PAD_RING: GdkEventType = 25;
pub const GDK_PAD_STRIP: GdkEventType = 26;
pub const GDK_PAD_GROUP_MODE: GdkEventType = 27;
pub const GDK_TOUCHPAD_HOLD: GdkEventType = 28;
pub const GDK_EVENT_LAST: GdkEventType = 29;

pub type GdkFullscreenMode = c_int;
pub const GDK_FULLSCREEN_ON_CURRENT_MONITOR: GdkFullscreenMode = 0;
pub const GDK_FULLSCREEN_ON_ALL_MONITORS: GdkFullscreenMode = 1;

pub type GdkGLError = c_int;
pub const GDK_GL_ERROR_NOT_AVAILABLE: GdkGLError = 0;
pub const GDK_GL_ERROR_UNSUPPORTED_FORMAT: GdkGLError = 1;
pub const GDK_GL_ERROR_UNSUPPORTED_PROFILE: GdkGLError = 2;
pub const GDK_GL_ERROR_COMPILATION_FAILED: GdkGLError = 3;
pub const GDK_GL_ERROR_LINK_FAILED: GdkGLError = 4;

pub type GdkGravity = c_int;
pub const GDK_GRAVITY_NORTH_WEST: GdkGravity = 1;
pub const GDK_GRAVITY_NORTH: GdkGravity = 2;
pub const GDK_GRAVITY_NORTH_EAST: GdkGravity = 3;
pub const GDK_GRAVITY_WEST: GdkGravity = 4;
pub const GDK_GRAVITY_CENTER: GdkGravity = 5;
pub const GDK_GRAVITY_EAST: GdkGravity = 6;
pub const GDK_GRAVITY_SOUTH_WEST: GdkGravity = 7;
pub const GDK_GRAVITY_SOUTH: GdkGravity = 8;
pub const GDK_GRAVITY_SOUTH_EAST: GdkGravity = 9;
pub const GDK_GRAVITY_STATIC: GdkGravity = 10;

pub type GdkInputSource = c_int;
pub const GDK_SOURCE_MOUSE: GdkInputSource = 0;
pub const GDK_SOURCE_PEN: GdkInputSource = 1;
pub const GDK_SOURCE_KEYBOARD: GdkInputSource = 2;
pub const GDK_SOURCE_TOUCHSCREEN: GdkInputSource = 3;
pub const GDK_SOURCE_TOUCHPAD: GdkInputSource = 4;
pub const GDK_SOURCE_TRACKPOINT: GdkInputSource = 5;
pub const GDK_SOURCE_TABLET_PAD: GdkInputSource = 6;

pub type GdkKeyMatch = c_int;
pub const GDK_KEY_MATCH_NONE: GdkKeyMatch = 0;
pub const GDK_KEY_MATCH_PARTIAL: GdkKeyMatch = 1;
pub const GDK_KEY_MATCH_EXACT: GdkKeyMatch = 2;

pub type GdkMemoryFormat = c_int;
pub const GDK_MEMORY_B8G8R8A8_PREMULTIPLIED: GdkMemoryFormat = 0;
pub const GDK_MEMORY_A8R8G8B8_PREMULTIPLIED: GdkMemoryFormat = 1;
pub const GDK_MEMORY_R8G8B8A8_PREMULTIPLIED: GdkMemoryFormat = 2;
pub const GDK_MEMORY_B8G8R8A8: GdkMemoryFormat = 3;
pub const GDK_MEMORY_A8R8G8B8: GdkMemoryFormat = 4;
pub const GDK_MEMORY_R8G8B8A8: GdkMemoryFormat = 5;
pub const GDK_MEMORY_A8B8G8R8: GdkMemoryFormat = 6;
pub const GDK_MEMORY_R8G8B8: GdkMemoryFormat = 7;
pub const GDK_MEMORY_B8G8R8: GdkMemoryFormat = 8;
pub const GDK_MEMORY_R16G16B16: GdkMemoryFormat = 9;
pub const GDK_MEMORY_R16G16B16A16_PREMULTIPLIED: GdkMemoryFormat = 10;
pub const GDK_MEMORY_R16G16B16A16: GdkMemoryFormat = 11;
pub const GDK_MEMORY_R16G16B16_FLOAT: GdkMemoryFormat = 12;
pub const GDK_MEMORY_R16G16B16A16_FLOAT_PREMULTIPLIED: GdkMemoryFormat = 13;
pub const GDK_MEMORY_R16G16B16A16_FLOAT: GdkMemoryFormat = 14;
pub const GDK_MEMORY_R32G32B32_FLOAT: GdkMemoryFormat = 15;
pub const GDK_MEMORY_R32G32B32A32_FLOAT_PREMULTIPLIED: GdkMemoryFormat = 16;
pub const GDK_MEMORY_R32G32B32A32_FLOAT: GdkMemoryFormat = 17;
pub const GDK_MEMORY_N_FORMATS: GdkMemoryFormat = 18;

pub type GdkNotifyType = c_int;
pub const GDK_NOTIFY_ANCESTOR: GdkNotifyType = 0;
pub const GDK_NOTIFY_VIRTUAL: GdkNotifyType = 1;
pub const GDK_NOTIFY_INFERIOR: GdkNotifyType = 2;
pub const GDK_NOTIFY_NONLINEAR: GdkNotifyType = 3;
pub const GDK_NOTIFY_NONLINEAR_VIRTUAL: GdkNotifyType = 4;
pub const GDK_NOTIFY_UNKNOWN: GdkNotifyType = 5;

pub type GdkScrollDirection = c_int;
pub const GDK_SCROLL_UP: GdkScrollDirection = 0;
pub const GDK_SCROLL_DOWN: GdkScrollDirection = 1;
pub const GDK_SCROLL_LEFT: GdkScrollDirection = 2;
pub const GDK_SCROLL_RIGHT: GdkScrollDirection = 3;
pub const GDK_SCROLL_SMOOTH: GdkScrollDirection = 4;

pub type GdkScrollUnit = c_int;
pub const GDK_SCROLL_UNIT_WHEEL: GdkScrollUnit = 0;
pub const GDK_SCROLL_UNIT_SURFACE: GdkScrollUnit = 1;

pub type GdkSubpixelLayout = c_int;
pub const GDK_SUBPIXEL_LAYOUT_UNKNOWN: GdkSubpixelLayout = 0;
pub const GDK_SUBPIXEL_LAYOUT_NONE: GdkSubpixelLayout = 1;
pub const GDK_SUBPIXEL_LAYOUT_HORIZONTAL_RGB: GdkSubpixelLayout = 2;
pub const GDK_SUBPIXEL_LAYOUT_HORIZONTAL_BGR: GdkSubpixelLayout = 3;
pub const GDK_SUBPIXEL_LAYOUT_VERTICAL_RGB: GdkSubpixelLayout = 4;
pub const GDK_SUBPIXEL_LAYOUT_VERTICAL_BGR: GdkSubpixelLayout = 5;

pub type GdkSurfaceEdge = c_int;
pub const GDK_SURFACE_EDGE_NORTH_WEST: GdkSurfaceEdge = 0;
pub const GDK_SURFACE_EDGE_NORTH: GdkSurfaceEdge = 1;
pub const GDK_SURFACE_EDGE_NORTH_EAST: GdkSurfaceEdge = 2;
pub const GDK_SURFACE_EDGE_WEST: GdkSurfaceEdge = 3;
pub const GDK_SURFACE_EDGE_EAST: GdkSurfaceEdge = 4;
pub const GDK_SURFACE_EDGE_SOUTH_WEST: GdkSurfaceEdge = 5;
pub const GDK_SURFACE_EDGE_SOUTH: GdkSurfaceEdge = 6;
pub const GDK_SURFACE_EDGE_SOUTH_EAST: GdkSurfaceEdge = 7;

pub type GdkTextureError = c_int;
pub const GDK_TEXTURE_ERROR_TOO_LARGE: GdkTextureError = 0;
pub const GDK_TEXTURE_ERROR_CORRUPT_IMAGE: GdkTextureError = 1;
pub const GDK_TEXTURE_ERROR_UNSUPPORTED_CONTENT: GdkTextureError = 2;
pub const GDK_TEXTURE_ERROR_UNSUPPORTED_FORMAT: GdkTextureError = 3;

pub type GdkTitlebarGesture = c_int;
pub const GDK_TITLEBAR_GESTURE_DOUBLE_CLICK: GdkTitlebarGesture = 1;
pub const GDK_TITLEBAR_GESTURE_RIGHT_CLICK: GdkTitlebarGesture = 2;
pub const GDK_TITLEBAR_GESTURE_MIDDLE_CLICK: GdkTitlebarGesture = 3;

pub type GdkTouchpadGesturePhase = c_int;
pub const GDK_TOUCHPAD_GESTURE_PHASE_BEGIN: GdkTouchpadGesturePhase = 0;
pub const GDK_TOUCHPAD_GESTURE_PHASE_UPDATE: GdkTouchpadGesturePhase = 1;
pub const GDK_TOUCHPAD_GESTURE_PHASE_END: GdkTouchpadGesturePhase = 2;
pub const GDK_TOUCHPAD_GESTURE_PHASE_CANCEL: GdkTouchpadGesturePhase = 3;

pub type GdkVulkanError = c_int;
pub const GDK_VULKAN_ERROR_UNSUPPORTED: GdkVulkanError = 0;
pub const GDK_VULKAN_ERROR_NOT_AVAILABLE: GdkVulkanError = 1;

// Constants
pub const GDK_ACTION_ALL: c_int = 7;
pub const GDK_BUTTON_MIDDLE: c_int = 2;
pub const GDK_BUTTON_PRIMARY: c_int = 1;
pub const GDK_BUTTON_SECONDARY: c_int = 3;
pub const GDK_CURRENT_TIME: c_int = 0;
pub const GDK_EVENT_PROPAGATE: gboolean = glib::GFALSE;
pub const GDK_EVENT_STOP: gboolean = glib::GTRUE;
pub const GDK_KEY_0: c_int = 48;
pub const GDK_KEY_1: c_int = 49;
pub const GDK_KEY_2: c_int = 50;
pub const GDK_KEY_3: c_int = 51;
pub const GDK_KEY_3270_AltCursor: c_int = 64784;
pub const GDK_KEY_3270_Attn: c_int = 64782;
pub const GDK_KEY_3270_BackTab: c_int = 64773;
pub const GDK_KEY_3270_ChangeScreen: c_int = 64793;
pub const GDK_KEY_3270_Copy: c_int = 64789;
pub const GDK_KEY_3270_CursorBlink: c_int = 64783;
pub const GDK_KEY_3270_CursorSelect: c_int = 64796;
pub const GDK_KEY_3270_DeleteWord: c_int = 64794;
pub const GDK_KEY_3270_Duplicate: c_int = 64769;
pub const GDK_KEY_3270_Enter: c_int = 64798;
pub const GDK_KEY_3270_EraseEOF: c_int = 64774;
pub const GDK_KEY_3270_EraseInput: c_int = 64775;
pub const GDK_KEY_3270_ExSelect: c_int = 64795;
pub const GDK_KEY_3270_FieldMark: c_int = 64770;
pub const GDK_KEY_3270_Ident: c_int = 64787;
pub const GDK_KEY_3270_Jump: c_int = 64786;
pub const GDK_KEY_3270_KeyClick: c_int = 64785;
pub const GDK_KEY_3270_Left2: c_int = 64772;
pub const GDK_KEY_3270_PA1: c_int = 64778;
pub const GDK_KEY_3270_PA2: c_int = 64779;
pub const GDK_KEY_3270_PA3: c_int = 64780;
pub const GDK_KEY_3270_Play: c_int = 64790;
pub const GDK_KEY_3270_PrintScreen: c_int = 64797;
pub const GDK_KEY_3270_Quit: c_int = 64777;
pub const GDK_KEY_3270_Record: c_int = 64792;
pub const GDK_KEY_3270_Reset: c_int = 64776;
pub const GDK_KEY_3270_Right2: c_int = 64771;
pub const GDK_KEY_3270_Rule: c_int = 64788;
pub const GDK_KEY_3270_Setup: c_int = 64791;
pub const GDK_KEY_3270_Test: c_int = 64781;
pub const GDK_KEY_4: c_int = 52;
pub const GDK_KEY_5: c_int = 53;
pub const GDK_KEY_6: c_int = 54;
pub const GDK_KEY_7: c_int = 55;
pub const GDK_KEY_8: c_int = 56;
pub const GDK_KEY_9: c_int = 57;
pub const GDK_KEY_A: c_int = 65;
pub const GDK_KEY_AE: c_int = 198;
pub const GDK_KEY_Aacute: c_int = 193;
pub const GDK_KEY_Abelowdot: c_int = 16785056;
pub const GDK_KEY_Abreve: c_int = 451;
pub const GDK_KEY_Abreveacute: c_int = 16785070;
pub const GDK_KEY_Abrevebelowdot: c_int = 16785078;
pub const GDK_KEY_Abrevegrave: c_int = 16785072;
pub const GDK_KEY_Abrevehook: c_int = 16785074;
pub const GDK_KEY_Abrevetilde: c_int = 16785076;
pub const GDK_KEY_AccessX_Enable: c_int = 65136;
pub const GDK_KEY_AccessX_Feedback_Enable: c_int = 65137;
pub const GDK_KEY_Acircumflex: c_int = 194;
pub const GDK_KEY_Acircumflexacute: c_int = 16785060;
pub const GDK_KEY_Acircumflexbelowdot: c_int = 16785068;
pub const GDK_KEY_Acircumflexgrave: c_int = 16785062;
pub const GDK_KEY_Acircumflexhook: c_int = 16785064;
pub const GDK_KEY_Acircumflextilde: c_int = 16785066;
pub const GDK_KEY_AddFavorite: c_int = 269025081;
pub const GDK_KEY_Adiaeresis: c_int = 196;
pub const GDK_KEY_Agrave: c_int = 192;
pub const GDK_KEY_Ahook: c_int = 16785058;
pub const GDK_KEY_Alt_L: c_int = 65513;
pub const GDK_KEY_Alt_R: c_int = 65514;
pub const GDK_KEY_Amacron: c_int = 960;
pub const GDK_KEY_Aogonek: c_int = 417;
pub const GDK_KEY_ApplicationLeft: c_int = 269025104;
pub const GDK_KEY_ApplicationRight: c_int = 269025105;
pub const GDK_KEY_Arabic_0: c_int = 16778848;
pub const GDK_KEY_Arabic_1: c_int = 16778849;
pub const GDK_KEY_Arabic_2: c_int = 16778850;
pub const GDK_KEY_Arabic_3: c_int = 16778851;
pub const GDK_KEY_Arabic_4: c_int = 16778852;
pub const GDK_KEY_Arabic_5: c_int = 16778853;
pub const GDK_KEY_Arabic_6: c_int = 16778854;
pub const GDK_KEY_Arabic_7: c_int = 16778855;
pub const GDK_KEY_Arabic_8: c_int = 16778856;
pub const GDK_KEY_Arabic_9: c_int = 16778857;
pub const GDK_KEY_Arabic_ain: c_int = 1497;
pub const GDK_KEY_Arabic_alef: c_int = 1479;
pub const GDK_KEY_Arabic_alefmaksura: c_int = 1513;
pub const GDK_KEY_Arabic_beh: c_int = 1480;
pub const GDK_KEY_Arabic_comma: c_int = 1452;
pub const GDK_KEY_Arabic_dad: c_int = 1494;
pub const GDK_KEY_Arabic_dal: c_int = 1487;
pub const GDK_KEY_Arabic_damma: c_int = 1519;
pub const GDK_KEY_Arabic_dammatan: c_int = 1516;
pub const GDK_KEY_Arabic_ddal: c_int = 16778888;
pub const GDK_KEY_Arabic_farsi_yeh: c_int = 16778956;
pub const GDK_KEY_Arabic_fatha: c_int = 1518;
pub const GDK_KEY_Arabic_fathatan: c_int = 1515;
pub const GDK_KEY_Arabic_feh: c_int = 1505;
pub const GDK_KEY_Arabic_fullstop: c_int = 16778964;
pub const GDK_KEY_Arabic_gaf: c_int = 16778927;
pub const GDK_KEY_Arabic_ghain: c_int = 1498;
pub const GDK_KEY_Arabic_ha: c_int = 1511;
pub const GDK_KEY_Arabic_hah: c_int = 1485;
pub const GDK_KEY_Arabic_hamza: c_int = 1473;
pub const GDK_KEY_Arabic_hamza_above: c_int = 16778836;
pub const GDK_KEY_Arabic_hamza_below: c_int = 16778837;
pub const GDK_KEY_Arabic_hamzaonalef: c_int = 1475;
pub const GDK_KEY_Arabic_hamzaonwaw: c_int = 1476;
pub const GDK_KEY_Arabic_hamzaonyeh: c_int = 1478;
pub const GDK_KEY_Arabic_hamzaunderalef: c_int = 1477;
pub const GDK_KEY_Arabic_heh: c_int = 1511;
pub const GDK_KEY_Arabic_heh_doachashmee: c_int = 16778942;
pub const GDK_KEY_Arabic_heh_goal: c_int = 16778945;
pub const GDK_KEY_Arabic_jeem: c_int = 1484;
pub const GDK_KEY_Arabic_jeh: c_int = 16778904;
pub const GDK_KEY_Arabic_kaf: c_int = 1507;
pub const GDK_KEY_Arabic_kasra: c_int = 1520;
pub const GDK_KEY_Arabic_kasratan: c_int = 1517;
pub const GDK_KEY_Arabic_keheh: c_int = 16778921;
pub const GDK_KEY_Arabic_khah: c_int = 1486;
pub const GDK_KEY_Arabic_lam: c_int = 1508;
pub const GDK_KEY_Arabic_madda_above: c_int = 16778835;
pub const GDK_KEY_Arabic_maddaonalef: c_int = 1474;
pub const GDK_KEY_Arabic_meem: c_int = 1509;
pub const GDK_KEY_Arabic_noon: c_int = 1510;
pub const GDK_KEY_Arabic_noon_ghunna: c_int = 16778938;
pub const GDK_KEY_Arabic_peh: c_int = 16778878;
pub const GDK_KEY_Arabic_percent: c_int = 16778858;
pub const GDK_KEY_Arabic_qaf: c_int = 1506;
pub const GDK_KEY_Arabic_question_mark: c_int = 1471;
pub const GDK_KEY_Arabic_ra: c_int = 1489;
pub const GDK_KEY_Arabic_rreh: c_int = 16778897;
pub const GDK_KEY_Arabic_sad: c_int = 1493;
pub const GDK_KEY_Arabic_seen: c_int = 1491;
pub const GDK_KEY_Arabic_semicolon: c_int = 1467;
pub const GDK_KEY_Arabic_shadda: c_int = 1521;
pub const GDK_KEY_Arabic_sheen: c_int = 1492;
pub const GDK_KEY_Arabic_sukun: c_int = 1522;
pub const GDK_KEY_Arabic_superscript_alef: c_int = 16778864;
pub const GDK_KEY_Arabic_switch: c_int = 65406;
pub const GDK_KEY_Arabic_tah: c_int = 1495;
pub const GDK_KEY_Arabic_tatweel: c_int = 1504;
pub const GDK_KEY_Arabic_tcheh: c_int = 16778886;
pub const GDK_KEY_Arabic_teh: c_int = 1482;
pub const GDK_KEY_Arabic_tehmarbuta: c_int = 1481;
pub const GDK_KEY_Arabic_thal: c_int = 1488;
pub const GDK_KEY_Arabic_theh: c_int = 1483;
pub const GDK_KEY_Arabic_tteh: c_int = 16778873;
pub const GDK_KEY_Arabic_veh: c_int = 16778916;
pub const GDK_KEY_Arabic_waw: c_int = 1512;
pub const GDK_KEY_Arabic_yeh: c_int = 1514;
pub const GDK_KEY_Arabic_yeh_baree: c_int = 16778962;
pub const GDK_KEY_Arabic_zah: c_int = 1496;
pub const GDK_KEY_Arabic_zain: c_int = 1490;
pub const GDK_KEY_Aring: c_int = 197;
pub const GDK_KEY_Armenian_AT: c_int = 16778552;
pub const GDK_KEY_Armenian_AYB: c_int = 16778545;
pub const GDK_KEY_Armenian_BEN: c_int = 16778546;
pub const GDK_KEY_Armenian_CHA: c_int = 16778569;
pub const GDK_KEY_Armenian_DA: c_int = 16778548;
pub const GDK_KEY_Armenian_DZA: c_int = 16778561;
pub const GDK_KEY_Armenian_E: c_int = 16778551;
pub const GDK_KEY_Armenian_FE: c_int = 16778582;
pub const GDK_KEY_Armenian_GHAT: c_int = 16778562;
pub const GDK_KEY_Armenian_GIM: c_int = 16778547;
pub const GDK_KEY_Armenian_HI: c_int = 16778565;
pub const GDK_KEY_Armenian_HO: c_int = 16778560;
pub const GDK_KEY_Armenian_INI: c_int = 16778555;
pub const GDK_KEY_Armenian_JE: c_int = 16778571;
pub const GDK_KEY_Armenian_KE: c_int = 16778580;
pub const GDK_KEY_Armenian_KEN: c_int = 16778559;
pub const GDK_KEY_Armenian_KHE: c_int = 16778557;
pub const GDK_KEY_Armenian_LYUN: c_int = 16778556;
pub const GDK_KEY_Armenian_MEN: c_int = 16778564;
pub const GDK_KEY_Armenian_NU: c_int = 16778566;
pub const GDK_KEY_Armenian_O: c_int = 16778581;
pub const GDK_KEY_Armenian_PE: c_int = 16778570;
pub const GDK_KEY_Armenian_PYUR: c_int = 16778579;
pub const GDK_KEY_Armenian_RA: c_int = 16778572;
pub const GDK_KEY_Armenian_RE: c_int = 16778576;
pub const GDK_KEY_Armenian_SE: c_int = 16778573;
pub const GDK_KEY_Armenian_SHA: c_int = 16778567;
pub const GDK_KEY_Armenian_TCHE: c_int = 16778563;
pub const GDK_KEY_Armenian_TO: c_int = 16778553;
pub const GDK_KEY_Armenian_TSA: c_int = 16778558;
pub const GDK_KEY_Armenian_TSO: c_int = 16778577;
pub const GDK_KEY_Armenian_TYUN: c_int = 16778575;
pub const GDK_KEY_Armenian_VEV: c_int = 16778574;
pub const GDK_KEY_Armenian_VO: c_int = 16778568;
pub const GDK_KEY_Armenian_VYUN: c_int = 16778578;
pub const GDK_KEY_Armenian_YECH: c_int = 16778549;
pub const GDK_KEY_Armenian_ZA: c_int = 16778550;
pub const GDK_KEY_Armenian_ZHE: c_int = 16778554;
pub const GDK_KEY_Armenian_accent: c_int = 16778587;
pub const GDK_KEY_Armenian_amanak: c_int = 16778588;
pub const GDK_KEY_Armenian_apostrophe: c_int = 16778586;
pub const GDK_KEY_Armenian_at: c_int = 16778600;
pub const GDK_KEY_Armenian_ayb: c_int = 16778593;
pub const GDK_KEY_Armenian_ben: c_int = 16778594;
pub const GDK_KEY_Armenian_but: c_int = 16778589;
pub const GDK_KEY_Armenian_cha: c_int = 16778617;
pub const GDK_KEY_Armenian_da: c_int = 16778596;
pub const GDK_KEY_Armenian_dza: c_int = 16778609;
pub const GDK_KEY_Armenian_e: c_int = 16778599;
pub const GDK_KEY_Armenian_exclam: c_int = 16778588;
pub const GDK_KEY_Armenian_fe: c_int = 16778630;
pub const GDK_KEY_Armenian_full_stop: c_int = 16778633;
pub const GDK_KEY_Armenian_ghat: c_int = 16778610;
pub const GDK_KEY_Armenian_gim: c_int = 16778595;
pub const GDK_KEY_Armenian_hi: c_int = 16778613;
pub const GDK_KEY_Armenian_ho: c_int = 16778608;
pub const GDK_KEY_Armenian_hyphen: c_int = 16778634;
pub const GDK_KEY_Armenian_ini: c_int = 16778603;
pub const GDK_KEY_Armenian_je: c_int = 16778619;
pub const GDK_KEY_Armenian_ke: c_int = 16778628;
pub const GDK_KEY_Armenian_ken: c_int = 16778607;
pub const GDK_KEY_Armenian_khe: c_int = 16778605;
pub const GDK_KEY_Armenian_ligature_ew: c_int = 16778631;
pub const GDK_KEY_Armenian_lyun: c_int = 16778604;
pub const GDK_KEY_Armenian_men: c_int = 16778612;
pub const GDK_KEY_Armenian_nu: c_int = 16778614;
pub const GDK_KEY_Armenian_o: c_int = 16778629;
pub const GDK_KEY_Armenian_paruyk: c_int = 16778590;
pub const GDK_KEY_Armenian_pe: c_int = 16778618;
pub const GDK_KEY_Armenian_pyur: c_int = 16778627;
pub const GDK_KEY_Armenian_question: c_int = 16778590;
pub const GDK_KEY_Armenian_ra: c_int = 16778620;
pub const GDK_KEY_Armenian_re: c_int = 16778624;
pub const GDK_KEY_Armenian_se: c_int = 16778621;
pub const GDK_KEY_Armenian_separation_mark: c_int = 16778589;
pub const GDK_KEY_Armenian_sha: c_int = 16778615;
pub const GDK_KEY_Armenian_shesht: c_int = 16778587;
pub const GDK_KEY_Armenian_tche: c_int = 16778611;
pub const GDK_KEY_Armenian_to: c_int = 16778601;
pub const GDK_KEY_Armenian_tsa: c_int = 16778606;
pub const GDK_KEY_Armenian_tso: c_int = 16778625;
pub const GDK_KEY_Armenian_tyun: c_int = 16778623;
pub const GDK_KEY_Armenian_verjaket: c_int = 16778633;
pub const GDK_KEY_Armenian_vev: c_int = 16778622;
pub const GDK_KEY_Armenian_vo: c_int = 16778616;
pub const GDK_KEY_Armenian_vyun: c_int = 16778626;
pub const GDK_KEY_Armenian_yech: c_int = 16778597;
pub const GDK_KEY_Armenian_yentamna: c_int = 16778634;
pub const GDK_KEY_Armenian_za: c_int = 16778598;
pub const GDK_KEY_Armenian_zhe: c_int = 16778602;
pub const GDK_KEY_Atilde: c_int = 195;
pub const GDK_KEY_AudibleBell_Enable: c_int = 65146;
pub const GDK_KEY_AudioCycleTrack: c_int = 269025179;
pub const GDK_KEY_AudioForward: c_int = 269025175;
pub const GDK_KEY_AudioLowerVolume: c_int = 269025041;
pub const GDK_KEY_AudioMedia: c_int = 269025074;
pub const GDK_KEY_AudioMicMute: c_int = 269025202;
pub const GDK_KEY_AudioMute: c_int = 269025042;
pub const GDK_KEY_AudioNext: c_int = 269025047;
pub const GDK_KEY_AudioPause: c_int = 269025073;
pub const GDK_KEY_AudioPlay: c_int = 269025044;
pub const GDK_KEY_AudioPreset: c_int = 269025206;
pub const GDK_KEY_AudioPrev: c_int = 269025046;
pub const GDK_KEY_AudioRaiseVolume: c_int = 269025043;
pub const GDK_KEY_AudioRandomPlay: c_int = 269025177;
pub const GDK_KEY_AudioRecord: c_int = 269025052;
pub const GDK_KEY_AudioRepeat: c_int = 269025176;
pub const GDK_KEY_AudioRewind: c_int = 269025086;
pub const GDK_KEY_AudioStop: c_int = 269025045;
pub const GDK_KEY_Away: c_int = 269025165;
pub const GDK_KEY_B: c_int = 66;
pub const GDK_KEY_Babovedot: c_int = 16784898;
pub const GDK_KEY_Back: c_int = 269025062;
pub const GDK_KEY_BackForward: c_int = 269025087;
pub const GDK_KEY_BackSpace: c_int = 65288;
pub const GDK_KEY_Battery: c_int = 269025171;
pub const GDK_KEY_Begin: c_int = 65368;
pub const GDK_KEY_Blue: c_int = 269025190;
pub const GDK_KEY_Bluetooth: c_int = 269025172;
pub const GDK_KEY_Book: c_int = 269025106;
pub const GDK_KEY_BounceKeys_Enable: c_int = 65140;
pub const GDK_KEY_Break: c_int = 65387;
pub const GDK_KEY_BrightnessAdjust: c_int = 269025083;
pub const GDK_KEY_Byelorussian_SHORTU: c_int = 1726;
pub const GDK_KEY_Byelorussian_shortu: c_int = 1710;
pub const GDK_KEY_C: c_int = 67;
pub const GDK_KEY_CD: c_int = 269025107;
pub const GDK_KEY_CH: c_int = 65186;
pub const GDK_KEY_C_H: c_int = 65189;
pub const GDK_KEY_C_h: c_int = 65188;
pub const GDK_KEY_Cabovedot: c_int = 709;
pub const GDK_KEY_Cacute: c_int = 454;
pub const GDK_KEY_Calculator: c_int = 269025053;
pub const GDK_KEY_Calendar: c_int = 269025056;
pub const GDK_KEY_Cancel: c_int = 65385;
pub const GDK_KEY_Caps_Lock: c_int = 65509;
pub const GDK_KEY_Ccaron: c_int = 456;
pub const GDK_KEY_Ccedilla: c_int = 199;
pub const GDK_KEY_Ccircumflex: c_int = 710;
pub const GDK_KEY_Ch: c_int = 65185;
pub const GDK_KEY_Clear: c_int = 65291;
pub const GDK_KEY_ClearGrab: c_int = 269024801;
pub const GDK_KEY_Close: c_int = 269025110;
pub const GDK_KEY_Codeinput: c_int = 65335;
pub const GDK_KEY_ColonSign: c_int = 16785569;
pub const GDK_KEY_Community: c_int = 269025085;
pub const GDK_KEY_ContrastAdjust: c_int = 269025058;
pub const GDK_KEY_Control_L: c_int = 65507;
pub const GDK_KEY_Control_R: c_int = 65508;
pub const GDK_KEY_Copy: c_int = 269025111;
pub const GDK_KEY_CruzeiroSign: c_int = 16785570;
pub const GDK_KEY_Cut: c_int = 269025112;
pub const GDK_KEY_CycleAngle: c_int = 269025180;
pub const GDK_KEY_Cyrillic_A: c_int = 1761;
pub const GDK_KEY_Cyrillic_BE: c_int = 1762;
pub const GDK_KEY_Cyrillic_CHE: c_int = 1790;
pub const GDK_KEY_Cyrillic_CHE_descender: c_int = 16778422;
pub const GDK_KEY_Cyrillic_CHE_vertstroke: c_int = 16778424;
pub const GDK_KEY_Cyrillic_DE: c_int = 1764;
pub const GDK_KEY_Cyrillic_DZHE: c_int = 1727;
pub const GDK_KEY_Cyrillic_E: c_int = 1788;
pub const GDK_KEY_Cyrillic_EF: c_int = 1766;
pub const GDK_KEY_Cyrillic_EL: c_int = 1772;
pub const GDK_KEY_Cyrillic_EM: c_int = 1773;
pub const GDK_KEY_Cyrillic_EN: c_int = 1774;
pub const GDK_KEY_Cyrillic_EN_descender: c_int = 16778402;
pub const GDK_KEY_Cyrillic_ER: c_int = 1778;
pub const GDK_KEY_Cyrillic_ES: c_int = 1779;
pub const GDK_KEY_Cyrillic_GHE: c_int = 1767;
pub const GDK_KEY_Cyrillic_GHE_bar: c_int = 16778386;
pub const GDK_KEY_Cyrillic_HA: c_int = 1768;
pub const GDK_KEY_Cyrillic_HARDSIGN: c_int = 1791;
pub const GDK_KEY_Cyrillic_HA_descender: c_int = 16778418;
pub const GDK_KEY_Cyrillic_I: c_int = 1769;
pub const GDK_KEY_Cyrillic_IE: c_int = 1765;
pub const GDK_KEY_Cyrillic_IO: c_int = 1715;
pub const GDK_KEY_Cyrillic_I_macron: c_int = 16778466;
pub const GDK_KEY_Cyrillic_JE: c_int = 1720;
pub const GDK_KEY_Cyrillic_KA: c_int = 1771;
pub const GDK_KEY_Cyrillic_KA_descender: c_int = 16778394;
pub const GDK_KEY_Cyrillic_KA_vertstroke: c_int = 16778396;
pub const GDK_KEY_Cyrillic_LJE: c_int = 1721;
pub const GDK_KEY_Cyrillic_NJE: c_int = 1722;
pub const GDK_KEY_Cyrillic_O: c_int = 1775;
pub const GDK_KEY_Cyrillic_O_bar: c_int = 16778472;
pub const GDK_KEY_Cyrillic_PE: c_int = 1776;
pub const GDK_KEY_Cyrillic_SCHWA: c_int = 16778456;
pub const GDK_KEY_Cyrillic_SHA: c_int = 1787;
pub const GDK_KEY_Cyrillic_SHCHA: c_int = 1789;
pub const GDK_KEY_Cyrillic_SHHA: c_int = 16778426;
pub const GDK_KEY_Cyrillic_SHORTI: c_int = 1770;
pub const GDK_KEY_Cyrillic_SOFTSIGN: c_int = 1784;
pub const GDK_KEY_Cyrillic_TE: c_int = 1780;
pub const GDK_KEY_Cyrillic_TSE: c_int = 1763;
pub const GDK_KEY_Cyrillic_U: c_int = 1781;
pub const GDK_KEY_Cyrillic_U_macron: c_int = 16778478;
pub const GDK_KEY_Cyrillic_U_straight: c_int = 16778414;
pub const GDK_KEY_Cyrillic_U_straight_bar: c_int = 16778416;
pub const GDK_KEY_Cyrillic_VE: c_int = 1783;
pub const GDK_KEY_Cyrillic_YA: c_int = 1777;
pub const GDK_KEY_Cyrillic_YERU: c_int = 1785;
pub const GDK_KEY_Cyrillic_YU: c_int = 1760;
pub const GDK_KEY_Cyrillic_ZE: c_int = 1786;
pub const GDK_KEY_Cyrillic_ZHE: c_int = 1782;
pub const GDK_KEY_Cyrillic_ZHE_descender: c_int = 16778390;
pub const GDK_KEY_Cyrillic_a: c_int = 1729;
pub const GDK_KEY_Cyrillic_be: c_int = 1730;
pub const GDK_KEY_Cyrillic_che: c_int = 1758;
pub const GDK_KEY_Cyrillic_che_descender: c_int = 16778423;
pub const GDK_KEY_Cyrillic_che_vertstroke: c_int = 16778425;
pub const GDK_KEY_Cyrillic_de: c_int = 1732;
pub const GDK_KEY_Cyrillic_dzhe: c_int = 1711;
pub const GDK_KEY_Cyrillic_e: c_int = 1756;
pub const GDK_KEY_Cyrillic_ef: c_int = 1734;
pub const GDK_KEY_Cyrillic_el: c_int = 1740;
pub const GDK_KEY_Cyrillic_em: c_int = 1741;
pub const GDK_KEY_Cyrillic_en: c_int = 1742;
pub const GDK_KEY_Cyrillic_en_descender: c_int = 16778403;
pub const GDK_KEY_Cyrillic_er: c_int = 1746;
pub const GDK_KEY_Cyrillic_es: c_int = 1747;
pub const GDK_KEY_Cyrillic_ghe: c_int = 1735;
pub const GDK_KEY_Cyrillic_ghe_bar: c_int = 16778387;
pub const GDK_KEY_Cyrillic_ha: c_int = 1736;
pub const GDK_KEY_Cyrillic_ha_descender: c_int = 16778419;
pub const GDK_KEY_Cyrillic_hardsign: c_int = 1759;
pub const GDK_KEY_Cyrillic_i: c_int = 1737;
pub const GDK_KEY_Cyrillic_i_macron: c_int = 16778467;
pub const GDK_KEY_Cyrillic_ie: c_int = 1733;
pub const GDK_KEY_Cyrillic_io: c_int = 1699;
pub const GDK_KEY_Cyrillic_je: c_int = 1704;
pub const GDK_KEY_Cyrillic_ka: c_int = 1739;
pub const GDK_KEY_Cyrillic_ka_descender: c_int = 16778395;
pub const GDK_KEY_Cyrillic_ka_vertstroke: c_int = 16778397;
pub const GDK_KEY_Cyrillic_lje: c_int = 1705;
pub const GDK_KEY_Cyrillic_nje: c_int = 1706;
pub const GDK_KEY_Cyrillic_o: c_int = 1743;
pub const GDK_KEY_Cyrillic_o_bar: c_int = 16778473;
pub const GDK_KEY_Cyrillic_pe: c_int = 1744;
pub const GDK_KEY_Cyrillic_schwa: c_int = 16778457;
pub const GDK_KEY_Cyrillic_sha: c_int = 1755;
pub const GDK_KEY_Cyrillic_shcha: c_int = 1757;
pub const GDK_KEY_Cyrillic_shha: c_int = 16778427;
pub const GDK_KEY_Cyrillic_shorti: c_int = 1738;
pub const GDK_KEY_Cyrillic_softsign: c_int = 1752;
pub const GDK_KEY_Cyrillic_te: c_int = 1748;
pub const GDK_KEY_Cyrillic_tse: c_int = 1731;
pub const GDK_KEY_Cyrillic_u: c_int = 1749;
pub const GDK_KEY_Cyrillic_u_macron: c_int = 16778479;
pub const GDK_KEY_Cyrillic_u_straight: c_int = 16778415;
pub const GDK_KEY_Cyrillic_u_straight_bar: c_int = 16778417;
pub const GDK_KEY_Cyrillic_ve: c_int = 1751;
pub const GDK_KEY_Cyrillic_ya: c_int = 1745;
pub const GDK_KEY_Cyrillic_yeru: c_int = 1753;
pub const GDK_KEY_Cyrillic_yu: c_int = 1728;
pub const GDK_KEY_Cyrillic_ze: c_int = 1754;
pub const GDK_KEY_Cyrillic_zhe: c_int = 1750;
pub const GDK_KEY_Cyrillic_zhe_descender: c_int = 16778391;
pub const GDK_KEY_D: c_int = 68;
pub const GDK_KEY_DOS: c_int = 269025114;
pub const GDK_KEY_Dabovedot: c_int = 16784906;
pub const GDK_KEY_Dcaron: c_int = 463;
pub const GDK_KEY_Delete: c_int = 65535;
pub const GDK_KEY_Display: c_int = 269025113;
pub const GDK_KEY_Documents: c_int = 269025115;
pub const GDK_KEY_DongSign: c_int = 16785579;
pub const GDK_KEY_Down: c_int = 65364;
pub const GDK_KEY_Dstroke: c_int = 464;
pub const GDK_KEY_E: c_int = 69;
pub const GDK_KEY_ENG: c_int = 957;
pub const GDK_KEY_ETH: c_int = 208;
pub const GDK_KEY_EZH: c_int = 16777655;
pub const GDK_KEY_Eabovedot: c_int = 972;
pub const GDK_KEY_Eacute: c_int = 201;
pub const GDK_KEY_Ebelowdot: c_int = 16785080;
pub const GDK_KEY_Ecaron: c_int = 460;
pub const GDK_KEY_Ecircumflex: c_int = 202;
pub const GDK_KEY_Ecircumflexacute: c_int = 16785086;
pub const GDK_KEY_Ecircumflexbelowdot: c_int = 16785094;
pub const GDK_KEY_Ecircumflexgrave: c_int = 16785088;
pub const GDK_KEY_Ecircumflexhook: c_int = 16785090;
pub const GDK_KEY_Ecircumflextilde: c_int = 16785092;
pub const GDK_KEY_EcuSign: c_int = 16785568;
pub const GDK_KEY_Ediaeresis: c_int = 203;
pub const GDK_KEY_Egrave: c_int = 200;
pub const GDK_KEY_Ehook: c_int = 16785082;
pub const GDK_KEY_Eisu_Shift: c_int = 65327;
pub const GDK_KEY_Eisu_toggle: c_int = 65328;
pub const GDK_KEY_Eject: c_int = 269025068;
pub const GDK_KEY_Emacron: c_int = 938;
pub const GDK_KEY_End: c_int = 65367;
pub const GDK_KEY_Eogonek: c_int = 458;
pub const GDK_KEY_Escape: c_int = 65307;
pub const GDK_KEY_Eth: c_int = 208;
pub const GDK_KEY_Etilde: c_int = 16785084;
pub const GDK_KEY_EuroSign: c_int = 8364;
pub const GDK_KEY_Excel: c_int = 269025116;
pub const GDK_KEY_Execute: c_int = 65378;
pub const GDK_KEY_Explorer: c_int = 269025117;
pub const GDK_KEY_F: c_int = 70;
pub const GDK_KEY_F1: c_int = 65470;
pub const GDK_KEY_F10: c_int = 65479;
pub const GDK_KEY_F11: c_int = 65480;
pub const GDK_KEY_F12: c_int = 65481;
pub const GDK_KEY_F13: c_int = 65482;
pub const GDK_KEY_F14: c_int = 65483;
pub const GDK_KEY_F15: c_int = 65484;
pub const GDK_KEY_F16: c_int = 65485;
pub const GDK_KEY_F17: c_int = 65486;
pub const GDK_KEY_F18: c_int = 65487;
pub const GDK_KEY_F19: c_int = 65488;
pub const GDK_KEY_F2: c_int = 65471;
pub const GDK_KEY_F20: c_int = 65489;
pub const GDK_KEY_F21: c_int = 65490;
pub const GDK_KEY_F22: c_int = 65491;
pub const GDK_KEY_F23: c_int = 65492;
pub const GDK_KEY_F24: c_int = 65493;
pub const GDK_KEY_F25: c_int = 65494;
pub const GDK_KEY_F26: c_int = 65495;
pub const GDK_KEY_F27: c_int = 65496;
pub const GDK_KEY_F28: c_int = 65497;
pub const GDK_KEY_F29: c_int = 65498;
pub const GDK_KEY_F3: c_int = 65472;
pub const GDK_KEY_F30: c_int = 65499;
pub const GDK_KEY_F31: c_int = 65500;
pub const GDK_KEY_F32: c_int = 65501;
pub const GDK_KEY_F33: c_int = 65502;
pub const GDK_KEY_F34: c_int = 65503;
pub const GDK_KEY_F35: c_int = 65504;
pub const GDK_KEY_F4: c_int = 65473;
pub const GDK_KEY_F5: c_int = 65474;
pub const GDK_KEY_F6: c_int = 65475;
pub const GDK_KEY_F7: c_int = 65476;
pub const GDK_KEY_F8: c_int = 65477;
pub const GDK_KEY_F9: c_int = 65478;
pub const GDK_KEY_FFrancSign: c_int = 16785571;
pub const GDK_KEY_Fabovedot: c_int = 16784926;
pub const GDK_KEY_Farsi_0: c_int = 16778992;
pub const GDK_KEY_Farsi_1: c_int = 16778993;
pub const GDK_KEY_Farsi_2: c_int = 16778994;
pub const GDK_KEY_Farsi_3: c_int = 16778995;
pub const GDK_KEY_Farsi_4: c_int = 16778996;
pub const GDK_KEY_Farsi_5: c_int = 16778997;
pub const GDK_KEY_Farsi_6: c_int = 16778998;
pub const GDK_KEY_Farsi_7: c_int = 16778999;
pub const GDK_KEY_Farsi_8: c_int = 16779000;
pub const GDK_KEY_Farsi_9: c_int = 16779001;
pub const GDK_KEY_Farsi_yeh: c_int = 16778956;
pub const GDK_KEY_Favorites: c_int = 269025072;
pub const GDK_KEY_Finance: c_int = 269025084;
pub const GDK_KEY_Find: c_int = 65384;
pub const GDK_KEY_First_Virtual_Screen: c_int = 65232;
pub const GDK_KEY_Forward: c_int = 269025063;
pub const GDK_KEY_FrameBack: c_int = 269025181;
pub const GDK_KEY_FrameForward: c_int = 269025182;
pub const GDK_KEY_G: c_int = 71;
pub const GDK_KEY_Gabovedot: c_int = 725;
pub const GDK_KEY_Game: c_int = 269025118;
pub const GDK_KEY_Gbreve: c_int = 683;
pub const GDK_KEY_Gcaron: c_int = 16777702;
pub const GDK_KEY_Gcedilla: c_int = 939;
pub const GDK_KEY_Gcircumflex: c_int = 728;
pub const GDK_KEY_Georgian_an: c_int = 16781520;
pub const GDK_KEY_Georgian_ban: c_int = 16781521;
pub const GDK_KEY_Georgian_can: c_int = 16781546;
pub const GDK_KEY_Georgian_char: c_int = 16781549;
pub const GDK_KEY_Georgian_chin: c_int = 16781545;
pub const GDK_KEY_Georgian_cil: c_int = 16781548;
pub const GDK_KEY_Georgian_don: c_int = 16781523;
pub const GDK_KEY_Georgian_en: c_int = 16781524;
pub const GDK_KEY_Georgian_fi: c_int = 16781558;
pub const GDK_KEY_Georgian_gan: c_int = 16781522;
pub const GDK_KEY_Georgian_ghan: c_int = 16781542;
pub const GDK_KEY_Georgian_hae: c_int = 16781552;
pub const GDK_KEY_Georgian_har: c_int = 16781556;
pub const GDK_KEY_Georgian_he: c_int = 16781553;
pub const GDK_KEY_Georgian_hie: c_int = 16781554;
pub const GDK_KEY_Georgian_hoe: c_int = 16781557;
pub const GDK_KEY_Georgian_in: c_int = 16781528;
pub const GDK_KEY_Georgian_jhan: c_int = 16781551;
pub const GDK_KEY_Georgian_jil: c_int = 16781547;
pub const GDK_KEY_Georgian_kan: c_int = 16781529;
pub const GDK_KEY_Georgian_khar: c_int = 16781541;
pub const GDK_KEY_Georgian_las: c_int = 16781530;
pub const GDK_KEY_Georgian_man: c_int = 16781531;
pub const GDK_KEY_Georgian_nar: c_int = 16781532;
pub const GDK_KEY_Georgian_on: c_int = 16781533;
pub const GDK_KEY_Georgian_par: c_int = 16781534;
pub const GDK_KEY_Georgian_phar: c_int = 16781540;
pub const GDK_KEY_Georgian_qar: c_int = 16781543;
pub const GDK_KEY_Georgian_rae: c_int = 16781536;
pub const GDK_KEY_Georgian_san: c_int = 16781537;
pub const GDK_KEY_Georgian_shin: c_int = 16781544;
pub const GDK_KEY_Georgian_tan: c_int = 16781527;
pub const GDK_KEY_Georgian_tar: c_int = 16781538;
pub const GDK_KEY_Georgian_un: c_int = 16781539;
pub const GDK_KEY_Georgian_vin: c_int = 16781525;
pub const GDK_KEY_Georgian_we: c_int = 16781555;
pub const GDK_KEY_Georgian_xan: c_int = 16781550;
pub const GDK_KEY_Georgian_zen: c_int = 16781526;
pub const GDK_KEY_Georgian_zhar: c_int = 16781535;
pub const GDK_KEY_Go: c_int = 269025119;
pub const GDK_KEY_Greek_ALPHA: c_int = 1985;
pub const GDK_KEY_Greek_ALPHAaccent: c_int = 1953;
pub const GDK_KEY_Greek_BETA: c_int = 1986;
pub const GDK_KEY_Greek_CHI: c_int = 2007;
pub const GDK_KEY_Greek_DELTA: c_int = 1988;
pub const GDK_KEY_Greek_EPSILON: c_int = 1989;
pub const GDK_KEY_Greek_EPSILONaccent: c_int = 1954;
pub const GDK_KEY_Greek_ETA: c_int = 1991;
pub const GDK_KEY_Greek_ETAaccent: c_int = 1955;
pub const GDK_KEY_Greek_GAMMA: c_int = 1987;
pub const GDK_KEY_Greek_IOTA: c_int = 1993;
pub const GDK_KEY_Greek_IOTAaccent: c_int = 1956;
pub const GDK_KEY_Greek_IOTAdiaeresis: c_int = 1957;
pub const GDK_KEY_Greek_IOTAdieresis: c_int = 1957;
pub const GDK_KEY_Greek_KAPPA: c_int = 1994;
pub const GDK_KEY_Greek_LAMBDA: c_int = 1995;
pub const GDK_KEY_Greek_LAMDA: c_int = 1995;
pub const GDK_KEY_Greek_MU: c_int = 1996;
pub const GDK_KEY_Greek_NU: c_int = 1997;
pub const GDK_KEY_Greek_OMEGA: c_int = 2009;
pub const GDK_KEY_Greek_OMEGAaccent: c_int = 1963;
pub const GDK_KEY_Greek_OMICRON: c_int = 1999;
pub const GDK_KEY_Greek_OMICRONaccent: c_int = 1959;
pub const GDK_KEY_Greek_PHI: c_int = 2006;
pub const GDK_KEY_Greek_PI: c_int = 2000;
pub const GDK_KEY_Greek_PSI: c_int = 2008;
pub const GDK_KEY_Greek_RHO: c_int = 2001;
pub const GDK_KEY_Greek_SIGMA: c_int = 2002;
pub const GDK_KEY_Greek_TAU: c_int = 2004;
pub const GDK_KEY_Greek_THETA: c_int = 1992;
pub const GDK_KEY_Greek_UPSILON: c_int = 2005;
pub const GDK_KEY_Greek_UPSILONaccent: c_int = 1960;
pub const GDK_KEY_Greek_UPSILONdieresis: c_int = 1961;
pub const GDK_KEY_Greek_XI: c_int = 1998;
pub const GDK_KEY_Greek_ZETA: c_int = 1990;
pub const GDK_KEY_Greek_accentdieresis: c_int = 1966;
pub const GDK_KEY_Greek_alpha: c_int = 2017;
pub const GDK_KEY_Greek_alphaaccent: c_int = 1969;
pub const GDK_KEY_Greek_beta: c_int = 2018;
pub const GDK_KEY_Greek_chi: c_int = 2039;
pub const GDK_KEY_Greek_delta: c_int = 2020;
pub const GDK_KEY_Greek_epsilon: c_int = 2021;
pub const GDK_KEY_Greek_epsilonaccent: c_int = 1970;
pub const GDK_KEY_Greek_eta: c_int = 2023;
pub const GDK_KEY_Greek_etaaccent: c_int = 1971;
pub const GDK_KEY_Greek_finalsmallsigma: c_int = 2035;
pub const GDK_KEY_Greek_gamma: c_int = 2019;
pub const GDK_KEY_Greek_horizbar: c_int = 1967;
pub const GDK_KEY_Greek_iota: c_int = 2025;
pub const GDK_KEY_Greek_iotaaccent: c_int = 1972;
pub const GDK_KEY_Greek_iotaaccentdieresis: c_int = 1974;
pub const GDK_KEY_Greek_iotadieresis: c_int = 1973;
pub const GDK_KEY_Greek_kappa: c_int = 2026;
pub const GDK_KEY_Greek_lambda: c_int = 2027;
pub const GDK_KEY_Greek_lamda: c_int = 2027;
pub const GDK_KEY_Greek_mu: c_int = 2028;
pub const GDK_KEY_Greek_nu: c_int = 2029;
pub const GDK_KEY_Greek_omega: c_int = 2041;
pub const GDK_KEY_Greek_omegaaccent: c_int = 1979;
pub const GDK_KEY_Greek_omicron: c_int = 2031;
pub const GDK_KEY_Greek_omicronaccent: c_int = 1975;
pub const GDK_KEY_Greek_phi: c_int = 2038;
pub const GDK_KEY_Greek_pi: c_int = 2032;
pub const GDK_KEY_Greek_psi: c_int = 2040;
pub const GDK_KEY_Greek_rho: c_int = 2033;
pub const GDK_KEY_Greek_sigma: c_int = 2034;
pub const GDK_KEY_Greek_switch: c_int = 65406;
pub const GDK_KEY_Greek_tau: c_int = 2036;
pub const GDK_KEY_Greek_theta: c_int = 2024;
pub const GDK_KEY_Greek_upsilon: c_int = 2037;
pub const GDK_KEY_Greek_upsilonaccent: c_int = 1976;
pub const GDK_KEY_Greek_upsilonaccentdieresis: c_int = 1978;
pub const GDK_KEY_Greek_upsilondieresis: c_int = 1977;
pub const GDK_KEY_Greek_xi: c_int = 2030;
pub const GDK_KEY_Greek_zeta: c_int = 2022;
pub const GDK_KEY_Green: c_int = 269025188;
pub const GDK_KEY_H: c_int = 72;
pub const GDK_KEY_Hangul: c_int = 65329;
pub const GDK_KEY_Hangul_A: c_int = 3775;
pub const GDK_KEY_Hangul_AE: c_int = 3776;
pub const GDK_KEY_Hangul_AraeA: c_int = 3830;
pub const GDK_KEY_Hangul_AraeAE: c_int = 3831;
pub const GDK_KEY_Hangul_Banja: c_int = 65337;
pub const GDK_KEY_Hangul_Cieuc: c_int = 3770;
pub const GDK_KEY_Hangul_Codeinput: c_int = 65335;
pub const GDK_KEY_Hangul_Dikeud: c_int = 3751;
pub const GDK_KEY_Hangul_E: c_int = 3780;
pub const GDK_KEY_Hangul_EO: c_int = 3779;
pub const GDK_KEY_Hangul_EU: c_int = 3793;
pub const GDK_KEY_Hangul_End: c_int = 65331;
pub const GDK_KEY_Hangul_Hanja: c_int = 65332;
pub const GDK_KEY_Hangul_Hieuh: c_int = 3774;
pub const GDK_KEY_Hangul_I: c_int = 3795;
pub const GDK_KEY_Hangul_Ieung: c_int = 3767;
pub const GDK_KEY_Hangul_J_Cieuc: c_int = 3818;
pub const GDK_KEY_Hangul_J_Dikeud: c_int = 3802;
pub const GDK_KEY_Hangul_J_Hieuh: c_int = 3822;
pub const GDK_KEY_Hangul_J_Ieung: c_int = 3816;
pub const GDK_KEY_Hangul_J_Jieuj: c_int = 3817;
pub const GDK_KEY_Hangul_J_Khieuq: c_int = 3819;
pub const GDK_KEY_Hangul_J_Kiyeog: c_int = 3796;
pub const GDK_KEY_Hangul_J_KiyeogSios: c_int = 3798;
pub const GDK_KEY_Hangul_J_KkogjiDalrinIeung: c_int = 3833;
pub const GDK_KEY_Hangul_J_Mieum: c_int = 3811;
pub const GDK_KEY_Hangul_J_Nieun: c_int = 3799;
pub const GDK_KEY_Hangul_J_NieunHieuh: c_int = 3801;
pub const GDK_KEY_Hangul_J_NieunJieuj: c_int = 3800;
pub const GDK_KEY_Hangul_J_PanSios: c_int = 3832;
pub const GDK_KEY_Hangul_J_Phieuf: c_int = 3821;
pub const GDK_KEY_Hangul_J_Pieub: c_int = 3812;
pub const GDK_KEY_Hangul_J_PieubSios: c_int = 3813;
pub const GDK_KEY_Hangul_J_Rieul: c_int = 3803;
pub const GDK_KEY_Hangul_J_RieulHieuh: c_int = 3810;
pub const GDK_KEY_Hangul_J_RieulKiyeog: c_int = 3804;
pub const GDK_KEY_Hangul_J_RieulMieum: c_int = 3805;
pub const GDK_KEY_Hangul_J_RieulPhieuf: c_int = 3809;
pub const GDK_KEY_Hangul_J_RieulPieub: c_int = 3806;
pub const GDK_KEY_Hangul_J_RieulSios: c_int = 3807;
pub const GDK_KEY_Hangul_J_RieulTieut: c_int = 3808;
pub const GDK_KEY_Hangul_J_Sios: c_int = 3814;
pub const GDK_KEY_Hangul_J_SsangKiyeog: c_int = 3797;
pub const GDK_KEY_Hangul_J_SsangSios: c_int = 3815;
pub const GDK_KEY_Hangul_J_Tieut: c_int = 3820;
pub const GDK_KEY_Hangul_J_YeorinHieuh: c_int = 3834;
pub const GDK_KEY_Hangul_Jamo: c_int = 65333;
pub const GDK_KEY_Hangul_Jeonja: c_int = 65336;
pub const GDK_KEY_Hangul_Jieuj: c_int = 3768;
pub const GDK_KEY_Hangul_Khieuq: c_int = 3771;
pub const GDK_KEY_Hangul_Kiyeog: c_int = 3745;
pub const GDK_KEY_Hangul_KiyeogSios: c_int = 3747;
pub const GDK_KEY_Hangul_KkogjiDalrinIeung: c_int = 3827;
pub const GDK_KEY_Hangul_Mieum: c_int = 3761;
pub const GDK_KEY_Hangul_MultipleCandidate: c_int = 65341;
pub const GDK_KEY_Hangul_Nieun: c_int = 3748;
pub const GDK_KEY_Hangul_NieunHieuh: c_int = 3750;
pub const GDK_KEY_Hangul_NieunJieuj: c_int = 3749;
pub const GDK_KEY_Hangul_O: c_int = 3783;
pub const GDK_KEY_Hangul_OE: c_int = 3786;
pub const GDK_KEY_Hangul_PanSios: c_int = 3826;
pub const GDK_KEY_Hangul_Phieuf: c_int = 3773;
pub const GDK_KEY_Hangul_Pieub: c_int = 3762;
pub const GDK_KEY_Hangul_PieubSios: c_int = 3764;
pub const GDK_KEY_Hangul_PostHanja: c_int = 65339;
pub const GDK_KEY_Hangul_PreHanja: c_int = 65338;
pub const GDK_KEY_Hangul_PreviousCandidate: c_int = 65342;
pub const GDK_KEY_Hangul_Rieul: c_int = 3753;
pub const GDK_KEY_Hangul_RieulHieuh: c_int = 3760;
pub const GDK_KEY_Hangul_RieulKiyeog: c_int = 3754;
pub const GDK_KEY_Hangul_RieulMieum: c_int = 3755;
pub const GDK_KEY_Hangul_RieulPhieuf: c_int = 3759;
pub const GDK_KEY_Hangul_RieulPieub: c_int = 3756;
pub const GDK_KEY_Hangul_RieulSios: c_int = 3757;
pub const GDK_KEY_Hangul_RieulTieut: c_int = 3758;
pub const GDK_KEY_Hangul_RieulYeorinHieuh: c_int = 3823;
pub const GDK_KEY_Hangul_Romaja: c_int = 65334;
pub const GDK_KEY_Hangul_SingleCandidate: c_int = 65340;
pub const GDK_KEY_Hangul_Sios: c_int = 3765;
pub const GDK_KEY_Hangul_Special: c_int = 65343;
pub const GDK_KEY_Hangul_SsangDikeud: c_int = 3752;
pub const GDK_KEY_Hangul_SsangJieuj: c_int = 3769;
pub const GDK_KEY_Hangul_SsangKiyeog: c_int = 3746;
pub const GDK_KEY_Hangul_SsangPieub: c_int = 3763;
pub const GDK_KEY_Hangul_SsangSios: c_int = 3766;
pub const GDK_KEY_Hangul_Start: c_int = 65330;
pub const GDK_KEY_Hangul_SunkyeongeumMieum: c_int = 3824;
pub const GDK_KEY_Hangul_SunkyeongeumPhieuf: c_int = 3828;
pub const GDK_KEY_Hangul_SunkyeongeumPieub: c_int = 3825;
pub const GDK_KEY_Hangul_Tieut: c_int = 3772;
pub const GDK_KEY_Hangul_U: c_int = 3788;
pub const GDK_KEY_Hangul_WA: c_int = 3784;
pub const GDK_KEY_Hangul_WAE: c_int = 3785;
pub const GDK_KEY_Hangul_WE: c_int = 3790;
pub const GDK_KEY_Hangul_WEO: c_int = 3789;
pub const GDK_KEY_Hangul_WI: c_int = 3791;
pub const GDK_KEY_Hangul_YA: c_int = 3777;
pub const GDK_KEY_Hangul_YAE: c_int = 3778;
pub const GDK_KEY_Hangul_YE: c_int = 3782;
pub const GDK_KEY_Hangul_YEO: c_int = 3781;
pub const GDK_KEY_Hangul_YI: c_int = 3794;
pub const GDK_KEY_Hangul_YO: c_int = 3787;
pub const GDK_KEY_Hangul_YU: c_int = 3792;
pub const GDK_KEY_Hangul_YeorinHieuh: c_int = 3829;
pub const GDK_KEY_Hangul_switch: c_int = 65406;
pub const GDK_KEY_Hankaku: c_int = 65321;
pub const GDK_KEY_Hcircumflex: c_int = 678;
pub const GDK_KEY_Hebrew_switch: c_int = 65406;
pub const GDK_KEY_Help: c_int = 65386;
pub const GDK_KEY_Henkan: c_int = 65315;
pub const GDK_KEY_Henkan_Mode: c_int = 65315;
pub const GDK_KEY_Hibernate: c_int = 269025192;
pub const GDK_KEY_Hiragana: c_int = 65317;
pub const GDK_KEY_Hiragana_Katakana: c_int = 65319;
pub const GDK_KEY_History: c_int = 269025079;
pub const GDK_KEY_Home: c_int = 65360;
pub const GDK_KEY_HomePage: c_int = 269025048;
pub const GDK_KEY_HotLinks: c_int = 269025082;
pub const GDK_KEY_Hstroke: c_int = 673;
pub const GDK_KEY_Hyper_L: c_int = 65517;
pub const GDK_KEY_Hyper_R: c_int = 65518;
pub const GDK_KEY_I: c_int = 73;
pub const GDK_KEY_ISO_Center_Object: c_int = 65075;
pub const GDK_KEY_ISO_Continuous_Underline: c_int = 65072;
pub const GDK_KEY_ISO_Discontinuous_Underline: c_int = 65073;
pub const GDK_KEY_ISO_Emphasize: c_int = 65074;
pub const GDK_KEY_ISO_Enter: c_int = 65076;
pub const GDK_KEY_ISO_Fast_Cursor_Down: c_int = 65071;
pub const GDK_KEY_ISO_Fast_Cursor_Left: c_int = 65068;
pub const GDK_KEY_ISO_Fast_Cursor_Right: c_int = 65069;
pub const GDK_KEY_ISO_Fast_Cursor_Up: c_int = 65070;
pub const GDK_KEY_ISO_First_Group: c_int = 65036;
pub const GDK_KEY_ISO_First_Group_Lock: c_int = 65037;
pub const GDK_KEY_ISO_Group_Latch: c_int = 65030;
pub const GDK_KEY_ISO_Group_Lock: c_int = 65031;
pub const GDK_KEY_ISO_Group_Shift: c_int = 65406;
pub const GDK_KEY_ISO_Last_Group: c_int = 65038;
pub const GDK_KEY_ISO_Last_Group_Lock: c_int = 65039;
pub const GDK_KEY_ISO_Left_Tab: c_int = 65056;
pub const GDK_KEY_ISO_Level2_Latch: c_int = 65026;
pub const GDK_KEY_ISO_Level3_Latch: c_int = 65028;
pub const GDK_KEY_ISO_Level3_Lock: c_int = 65029;
pub const GDK_KEY_ISO_Level3_Shift: c_int = 65027;
pub const GDK_KEY_ISO_Level5_Latch: c_int = 65042;
pub const GDK_KEY_ISO_Level5_Lock: c_int = 65043;
pub const GDK_KEY_ISO_Level5_Shift: c_int = 65041;
pub const GDK_KEY_ISO_Lock: c_int = 65025;
pub const GDK_KEY_ISO_Move_Line_Down: c_int = 65058;
pub const GDK_KEY_ISO_Move_Line_Up: c_int = 65057;
pub const GDK_KEY_ISO_Next_Group: c_int = 65032;
pub const GDK_KEY_ISO_Next_Group_Lock: c_int = 65033;
pub const GDK_KEY_ISO_Partial_Line_Down: c_int = 65060;
pub const GDK_KEY_ISO_Partial_Line_Up: c_int = 65059;
pub const GDK_KEY_ISO_Partial_Space_Left: c_int = 65061;
pub const GDK_KEY_ISO_Partial_Space_Right: c_int = 65062;
pub const GDK_KEY_ISO_Prev_Group: c_int = 65034;
pub const GDK_KEY_ISO_Prev_Group_Lock: c_int = 65035;
pub const GDK_KEY_ISO_Release_Both_Margins: c_int = 65067;
pub const GDK_KEY_ISO_Release_Margin_Left: c_int = 65065;
pub const GDK_KEY_ISO_Release_Margin_Right: c_int = 65066;
pub const GDK_KEY_ISO_Set_Margin_Left: c_int = 65063;
pub const GDK_KEY_ISO_Set_Margin_Right: c_int = 65064;
pub const GDK_KEY_Iabovedot: c_int = 681;
pub const GDK_KEY_Iacute: c_int = 205;
pub const GDK_KEY_Ibelowdot: c_int = 16785098;
pub const GDK_KEY_Ibreve: c_int = 16777516;
pub const GDK_KEY_Icircumflex: c_int = 206;
pub const GDK_KEY_Idiaeresis: c_int = 207;
pub const GDK_KEY_Igrave: c_int = 204;
pub const GDK_KEY_Ihook: c_int = 16785096;
pub const GDK_KEY_Imacron: c_int = 975;
pub const GDK_KEY_Insert: c_int = 65379;
pub const GDK_KEY_Iogonek: c_int = 967;
pub const GDK_KEY_Itilde: c_int = 933;
pub const GDK_KEY_J: c_int = 74;
pub const GDK_KEY_Jcircumflex: c_int = 684;
pub const GDK_KEY_K: c_int = 75;
pub const GDK_KEY_KP_0: c_int = 65456;
pub const GDK_KEY_KP_1: c_int = 65457;
pub const GDK_KEY_KP_2: c_int = 65458;
pub const GDK_KEY_KP_3: c_int = 65459;
pub const GDK_KEY_KP_4: c_int = 65460;
pub const GDK_KEY_KP_5: c_int = 65461;
pub const GDK_KEY_KP_6: c_int = 65462;
pub const GDK_KEY_KP_7: c_int = 65463;
pub const GDK_KEY_KP_8: c_int = 65464;
pub const GDK_KEY_KP_9: c_int = 65465;
pub const GDK_KEY_KP_Add: c_int = 65451;
pub const GDK_KEY_KP_Begin: c_int = 65437;
pub const GDK_KEY_KP_Decimal: c_int = 65454;
pub const GDK_KEY_KP_Delete: c_int = 65439;
pub const GDK_KEY_KP_Divide: c_int = 65455;
pub const GDK_KEY_KP_Down: c_int = 65433;
pub const GDK_KEY_KP_End: c_int = 65436;
pub const GDK_KEY_KP_Enter: c_int = 65421;
pub const GDK_KEY_KP_Equal: c_int = 65469;
pub const GDK_KEY_KP_F1: c_int = 65425;
pub const GDK_KEY_KP_F2: c_int = 65426;
pub const GDK_KEY_KP_F3: c_int = 65427;
pub const GDK_KEY_KP_F4: c_int = 65428;
pub const GDK_KEY_KP_Home: c_int = 65429;
pub const GDK_KEY_KP_Insert: c_int = 65438;
pub const GDK_KEY_KP_Left: c_int = 65430;
pub const GDK_KEY_KP_Multiply: c_int = 65450;
pub const GDK_KEY_KP_Next: c_int = 65435;
pub const GDK_KEY_KP_Page_Down: c_int = 65435;
pub const GDK_KEY_KP_Page_Up: c_int = 65434;
pub const GDK_KEY_KP_Prior: c_int = 65434;
pub const GDK_KEY_KP_Right: c_int = 65432;
pub const GDK_KEY_KP_Separator: c_int = 65452;
pub const GDK_KEY_KP_Space: c_int = 65408;
pub const GDK_KEY_KP_Subtract: c_int = 65453;
pub const GDK_KEY_KP_Tab: c_int = 65417;
pub const GDK_KEY_KP_Up: c_int = 65431;
pub const GDK_KEY_Kana_Lock: c_int = 65325;
pub const GDK_KEY_Kana_Shift: c_int = 65326;
pub const GDK_KEY_Kanji: c_int = 65313;
pub const GDK_KEY_Kanji_Bangou: c_int = 65335;
pub const GDK_KEY_Katakana: c_int = 65318;
pub const GDK_KEY_KbdBrightnessDown: c_int = 269025030;
pub const GDK_KEY_KbdBrightnessUp: c_int = 269025029;
pub const GDK_KEY_KbdLightOnOff: c_int = 269025028;
pub const GDK_KEY_Kcedilla: c_int = 979;
pub const GDK_KEY_Keyboard: c_int = 269025203;
pub const GDK_KEY_Korean_Won: c_int = 3839;
pub const GDK_KEY_L: c_int = 76;
pub const GDK_KEY_L1: c_int = 65480;
pub const GDK_KEY_L10: c_int = 65489;
pub const GDK_KEY_L2: c_int = 65481;
pub const GDK_KEY_L3: c_int = 65482;
pub const GDK_KEY_L4: c_int = 65483;
pub const GDK_KEY_L5: c_int = 65484;
pub const GDK_KEY_L6: c_int = 65485;
pub const GDK_KEY_L7: c_int = 65486;
pub const GDK_KEY_L8: c_int = 65487;
pub const GDK_KEY_L9: c_int = 65488;
pub const GDK_KEY_Lacute: c_int = 453;
pub const GDK_KEY_Last_Virtual_Screen: c_int = 65236;
pub const GDK_KEY_Launch0: c_int = 269025088;
pub const GDK_KEY_Launch1: c_int = 269025089;
pub const GDK_KEY_Launch2: c_int = 269025090;
pub const GDK_KEY_Launch3: c_int = 269025091;
pub const GDK_KEY_Launch4: c_int = 269025092;
pub const GDK_KEY_Launch5: c_int = 269025093;
pub const GDK_KEY_Launch6: c_int = 269025094;
pub const GDK_KEY_Launch7: c_int = 269025095;
pub const GDK_KEY_Launch8: c_int = 269025096;
pub const GDK_KEY_Launch9: c_int = 269025097;
pub const GDK_KEY_LaunchA: c_int = 269025098;
pub const GDK_KEY_LaunchB: c_int = 269025099;
pub const GDK_KEY_LaunchC: c_int = 269025100;
pub const GDK_KEY_LaunchD: c_int = 269025101;
pub const GDK_KEY_LaunchE: c_int = 269025102;
pub const GDK_KEY_LaunchF: c_int = 269025103;
pub const GDK_KEY_Lbelowdot: c_int = 16784950;
pub const GDK_KEY_Lcaron: c_int = 421;
pub const GDK_KEY_Lcedilla: c_int = 934;
pub const GDK_KEY_Left: c_int = 65361;
pub const GDK_KEY_LightBulb: c_int = 269025077;
pub const GDK_KEY_Linefeed: c_int = 65290;
pub const GDK_KEY_LiraSign: c_int = 16785572;
pub const GDK_KEY_LogGrabInfo: c_int = 269024805;
pub const GDK_KEY_LogOff: c_int = 269025121;
pub const GDK_KEY_LogWindowTree: c_int = 269024804;
pub const GDK_KEY_Lstroke: c_int = 419;
pub const GDK_KEY_M: c_int = 77;
pub const GDK_KEY_Mabovedot: c_int = 16784960;
pub const GDK_KEY_Macedonia_DSE: c_int = 1717;
pub const GDK_KEY_Macedonia_GJE: c_int = 1714;
pub const GDK_KEY_Macedonia_KJE: c_int = 1724;
pub const GDK_KEY_Macedonia_dse: c_int = 1701;
pub const GDK_KEY_Macedonia_gje: c_int = 1698;
pub const GDK_KEY_Macedonia_kje: c_int = 1708;
pub const GDK_KEY_Mae_Koho: c_int = 65342;
pub const GDK_KEY_Mail: c_int = 269025049;
pub const GDK_KEY_MailForward: c_int = 269025168;
pub const GDK_KEY_Market: c_int = 269025122;
pub const GDK_KEY_Massyo: c_int = 65324;
pub const GDK_KEY_Meeting: c_int = 269025123;
pub const GDK_KEY_Memo: c_int = 269025054;
pub const GDK_KEY_Menu: c_int = 65383;
pub const GDK_KEY_MenuKB: c_int = 269025125;
pub const GDK_KEY_MenuPB: c_int = 269025126;
pub const GDK_KEY_Messenger: c_int = 269025166;
pub const GDK_KEY_Meta_L: c_int = 65511;
pub const GDK_KEY_Meta_R: c_int = 65512;
pub const GDK_KEY_MillSign: c_int = 16785573;
pub const GDK_KEY_ModeLock: c_int = 269025025;
pub const GDK_KEY_Mode_switch: c_int = 65406;
pub const GDK_KEY_MonBrightnessDown: c_int = 269025027;
pub const GDK_KEY_MonBrightnessUp: c_int = 269025026;
pub const GDK_KEY_MouseKeys_Accel_Enable: c_int = 65143;
pub const GDK_KEY_MouseKeys_Enable: c_int = 65142;
pub const GDK_KEY_Muhenkan: c_int = 65314;
pub const GDK_KEY_Multi_key: c_int = 65312;
pub const GDK_KEY_MultipleCandidate: c_int = 65341;
pub const GDK_KEY_Music: c_int = 269025170;
pub const GDK_KEY_MyComputer: c_int = 269025075;
pub const GDK_KEY_MySites: c_int = 269025127;
pub const GDK_KEY_N: c_int = 78;
pub const GDK_KEY_Nacute: c_int = 465;
pub const GDK_KEY_NairaSign: c_int = 16785574;
pub const GDK_KEY_Ncaron: c_int = 466;
pub const GDK_KEY_Ncedilla: c_int = 977;
pub const GDK_KEY_New: c_int = 269025128;
pub const GDK_KEY_NewSheqelSign: c_int = 16785578;
pub const GDK_KEY_News: c_int = 269025129;
pub const GDK_KEY_Next: c_int = 65366;
pub const GDK_KEY_Next_VMode: c_int = 269024802;
pub const GDK_KEY_Next_Virtual_Screen: c_int = 65234;
pub const GDK_KEY_Ntilde: c_int = 209;
pub const GDK_KEY_Num_Lock: c_int = 65407;
pub const GDK_KEY_O: c_int = 79;
pub const GDK_KEY_OE: c_int = 5052;
pub const GDK_KEY_Oacute: c_int = 211;
pub const GDK_KEY_Obarred: c_int = 16777631;
pub const GDK_KEY_Obelowdot: c_int = 16785100;
pub const GDK_KEY_Ocaron: c_int = 16777681;
pub const GDK_KEY_Ocircumflex: c_int = 212;
pub const GDK_KEY_Ocircumflexacute: c_int = 16785104;
pub const GDK_KEY_Ocircumflexbelowdot: c_int = 16785112;
pub const GDK_KEY_Ocircumflexgrave: c_int = 16785106;
pub const GDK_KEY_Ocircumflexhook: c_int = 16785108;
pub const GDK_KEY_Ocircumflextilde: c_int = 16785110;
pub const GDK_KEY_Odiaeresis: c_int = 214;
pub const GDK_KEY_Odoubleacute: c_int = 469;
pub const GDK_KEY_OfficeHome: c_int = 269025130;
pub const GDK_KEY_Ograve: c_int = 210;
pub const GDK_KEY_Ohook: c_int = 16785102;
pub const GDK_KEY_Ohorn: c_int = 16777632;
pub const GDK_KEY_Ohornacute: c_int = 16785114;
pub const GDK_KEY_Ohornbelowdot: c_int = 16785122;
pub const GDK_KEY_Ohorngrave: c_int = 16785116;
pub const GDK_KEY_Ohornhook: c_int = 16785118;
pub const GDK_KEY_Ohorntilde: c_int = 16785120;
pub const GDK_KEY_Omacron: c_int = 978;
pub const GDK_KEY_Ooblique: c_int = 216;
pub const GDK_KEY_Open: c_int = 269025131;
pub const GDK_KEY_OpenURL: c_int = 269025080;
pub const GDK_KEY_Option: c_int = 269025132;
pub const GDK_KEY_Oslash: c_int = 216;
pub const GDK_KEY_Otilde: c_int = 213;
pub const GDK_KEY_Overlay1_Enable: c_int = 65144;
pub const GDK_KEY_Overlay2_Enable: c_int = 65145;
pub const GDK_KEY_P: c_int = 80;
pub const GDK_KEY_Pabovedot: c_int = 16784982;
pub const GDK_KEY_Page_Down: c_int = 65366;
pub const GDK_KEY_Page_Up: c_int = 65365;
pub const GDK_KEY_Paste: c_int = 269025133;
pub const GDK_KEY_Pause: c_int = 65299;
pub const GDK_KEY_PesetaSign: c_int = 16785575;
pub const GDK_KEY_Phone: c_int = 269025134;
pub const GDK_KEY_Pictures: c_int = 269025169;
pub const GDK_KEY_Pointer_Accelerate: c_int = 65274;
pub const GDK_KEY_Pointer_Button1: c_int = 65257;
pub const GDK_KEY_Pointer_Button2: c_int = 65258;
pub const GDK_KEY_Pointer_Button3: c_int = 65259;
pub const GDK_KEY_Pointer_Button4: c_int = 65260;
pub const GDK_KEY_Pointer_Button5: c_int = 65261;
pub const GDK_KEY_Pointer_Button_Dflt: c_int = 65256;
pub const GDK_KEY_Pointer_DblClick1: c_int = 65263;
pub const GDK_KEY_Pointer_DblClick2: c_int = 65264;
pub const GDK_KEY_Pointer_DblClick3: c_int = 65265;
pub const GDK_KEY_Pointer_DblClick4: c_int = 65266;
pub const GDK_KEY_Pointer_DblClick5: c_int = 65267;
pub const GDK_KEY_Pointer_DblClick_Dflt: c_int = 65262;
pub const GDK_KEY_Pointer_DfltBtnNext: c_int = 65275;
pub const GDK_KEY_Pointer_DfltBtnPrev: c_int = 65276;
pub const GDK_KEY_Pointer_Down: c_int = 65251;
pub const GDK_KEY_Pointer_DownLeft: c_int = 65254;
pub const GDK_KEY_Pointer_DownRight: c_int = 65255;
pub const GDK_KEY_Pointer_Drag1: c_int = 65269;
pub const GDK_KEY_Pointer_Drag2: c_int = 65270;
pub const GDK_KEY_Pointer_Drag3: c_int = 65271;
pub const GDK_KEY_Pointer_Drag4: c_int = 65272;
pub const GDK_KEY_Pointer_Drag5: c_int = 65277;
pub const GDK_KEY_Pointer_Drag_Dflt: c_int = 65268;
pub const GDK_KEY_Pointer_EnableKeys: c_int = 65273;
pub const GDK_KEY_Pointer_Left: c_int = 65248;
pub const GDK_KEY_Pointer_Right: c_int = 65249;
pub const GDK_KEY_Pointer_Up: c_int = 65250;
pub const GDK_KEY_Pointer_UpLeft: c_int = 65252;
pub const GDK_KEY_Pointer_UpRight: c_int = 65253;
pub const GDK_KEY_PowerDown: c_int = 269025057;
pub const GDK_KEY_PowerOff: c_int = 269025066;
pub const GDK_KEY_Prev_VMode: c_int = 269024803;
pub const GDK_KEY_Prev_Virtual_Screen: c_int = 65233;
pub const GDK_KEY_PreviousCandidate: c_int = 65342;
pub const GDK_KEY_Print: c_int = 65377;
pub const GDK_KEY_Prior: c_int = 65365;
pub const GDK_KEY_Q: c_int = 81;
pub const GDK_KEY_R: c_int = 82;
pub const GDK_KEY_R1: c_int = 65490;
pub const GDK_KEY_R10: c_int = 65499;
pub const GDK_KEY_R11: c_int = 65500;
pub const GDK_KEY_R12: c_int = 65501;
pub const GDK_KEY_R13: c_int = 65502;
pub const GDK_KEY_R14: c_int = 65503;
pub const GDK_KEY_R15: c_int = 65504;
pub const GDK_KEY_R2: c_int = 65491;
pub const GDK_KEY_R3: c_int = 65492;
pub const GDK_KEY_R4: c_int = 65493;
pub const GDK_KEY_R5: c_int = 65494;
pub const GDK_KEY_R6: c_int = 65495;
pub const GDK_KEY_R7: c_int = 65496;
pub const GDK_KEY_R8: c_int = 65497;
pub const GDK_KEY_R9: c_int = 65498;
pub const GDK_KEY_RFKill: c_int = 269025205;
pub const GDK_KEY_Racute: c_int = 448;
pub const GDK_KEY_Rcaron: c_int = 472;
pub const GDK_KEY_Rcedilla: c_int = 931;
pub const GDK_KEY_Red: c_int = 269025187;
pub const GDK_KEY_Redo: c_int = 65382;
pub const GDK_KEY_Refresh: c_int = 269025065;
pub const GDK_KEY_Reload: c_int = 269025139;
pub const GDK_KEY_RepeatKeys_Enable: c_int = 65138;
pub const GDK_KEY_Reply: c_int = 269025138;
pub const GDK_KEY_Return: c_int = 65293;
pub const GDK_KEY_Right: c_int = 65363;
pub const GDK_KEY_RockerDown: c_int = 269025060;
pub const GDK_KEY_RockerEnter: c_int = 269025061;
pub const GDK_KEY_RockerUp: c_int = 269025059;
pub const GDK_KEY_Romaji: c_int = 65316;
pub const GDK_KEY_RotateWindows: c_int = 269025140;
pub const GDK_KEY_RotationKB: c_int = 269025142;
pub const GDK_KEY_RotationPB: c_int = 269025141;
pub const GDK_KEY_RupeeSign: c_int = 16785576;
pub const GDK_KEY_S: c_int = 83;
pub const GDK_KEY_SCHWA: c_int = 16777615;
pub const GDK_KEY_Sabovedot: c_int = 16784992;
pub const GDK_KEY_Sacute: c_int = 422;
pub const GDK_KEY_Save: c_int = 269025143;
pub const GDK_KEY_Scaron: c_int = 425;
pub const GDK_KEY_Scedilla: c_int = 426;
pub const GDK_KEY_Scircumflex: c_int = 734;
pub const GDK_KEY_ScreenSaver: c_int = 269025069;
pub const GDK_KEY_ScrollClick: c_int = 269025146;
pub const GDK_KEY_ScrollDown: c_int = 269025145;
pub const GDK_KEY_ScrollUp: c_int = 269025144;
pub const GDK_KEY_Scroll_Lock: c_int = 65300;
pub const GDK_KEY_Search: c_int = 269025051;
pub const GDK_KEY_Select: c_int = 65376;
pub const GDK_KEY_SelectButton: c_int = 269025184;
pub const GDK_KEY_Send: c_int = 269025147;
pub const GDK_KEY_Serbian_DJE: c_int = 1713;
pub const GDK_KEY_Serbian_DZE: c_int = 1727;
pub const GDK_KEY_Serbian_JE: c_int = 1720;
pub const GDK_KEY_Serbian_LJE: c_int = 1721;
pub const GDK_KEY_Serbian_NJE: c_int = 1722;
pub const GDK_KEY_Serbian_TSHE: c_int = 1723;
pub const GDK_KEY_Serbian_dje: c_int = 1697;
pub const GDK_KEY_Serbian_dze: c_int = 1711;
pub const GDK_KEY_Serbian_je: c_int = 1704;
pub const GDK_KEY_Serbian_lje: c_int = 1705;
pub const GDK_KEY_Serbian_nje: c_int = 1706;
pub const GDK_KEY_Serbian_tshe: c_int = 1707;
pub const GDK_KEY_Shift_L: c_int = 65505;
pub const GDK_KEY_Shift_Lock: c_int = 65510;
pub const GDK_KEY_Shift_R: c_int = 65506;
pub const GDK_KEY_Shop: c_int = 269025078;
pub const GDK_KEY_SingleCandidate: c_int = 65340;
pub const GDK_KEY_Sinh_a: c_int = 16780677;
pub const GDK_KEY_Sinh_aa: c_int = 16780678;
pub const GDK_KEY_Sinh_aa2: c_int = 16780751;
pub const GDK_KEY_Sinh_ae: c_int = 16780679;
pub const GDK_KEY_Sinh_ae2: c_int = 16780752;
pub const GDK_KEY_Sinh_aee: c_int = 16780680;
pub const GDK_KEY_Sinh_aee2: c_int = 16780753;
pub const GDK_KEY_Sinh_ai: c_int = 16780691;
pub const GDK_KEY_Sinh_ai2: c_int = 16780763;
pub const GDK_KEY_Sinh_al: c_int = 16780746;
pub const GDK_KEY_Sinh_au: c_int = 16780694;
pub const GDK_KEY_Sinh_au2: c_int = 16780766;
pub const GDK_KEY_Sinh_ba: c_int = 16780726;
pub const GDK_KEY_Sinh_bha: c_int = 16780727;
pub const GDK_KEY_Sinh_ca: c_int = 16780704;
pub const GDK_KEY_Sinh_cha: c_int = 16780705;
pub const GDK_KEY_Sinh_dda: c_int = 16780713;
pub const GDK_KEY_Sinh_ddha: c_int = 16780714;
pub const GDK_KEY_Sinh_dha: c_int = 16780719;
pub const GDK_KEY_Sinh_dhha: c_int = 16780720;
pub const GDK_KEY_Sinh_e: c_int = 16780689;
pub const GDK_KEY_Sinh_e2: c_int = 16780761;
pub const GDK_KEY_Sinh_ee: c_int = 16780690;
pub const GDK_KEY_Sinh_ee2: c_int = 16780762;
pub const GDK_KEY_Sinh_fa: c_int = 16780742;
pub const GDK_KEY_Sinh_ga: c_int = 16780700;
pub const GDK_KEY_Sinh_gha: c_int = 16780701;
pub const GDK_KEY_Sinh_h2: c_int = 16780675;
pub const GDK_KEY_Sinh_ha: c_int = 16780740;
pub const GDK_KEY_Sinh_i: c_int = 16780681;
pub const GDK_KEY_Sinh_i2: c_int = 16780754;
pub const GDK_KEY_Sinh_ii: c_int = 16780682;
pub const GDK_KEY_Sinh_ii2: c_int = 16780755;
pub const GDK_KEY_Sinh_ja: c_int = 16780706;
pub const GDK_KEY_Sinh_jha: c_int = 16780707;
pub const GDK_KEY_Sinh_jnya: c_int = 16780709;
pub const GDK_KEY_Sinh_ka: c_int = 16780698;
pub const GDK_KEY_Sinh_kha: c_int = 16780699;
pub const GDK_KEY_Sinh_kunddaliya: c_int = 16780788;
pub const GDK_KEY_Sinh_la: c_int = 16780733;
pub const GDK_KEY_Sinh_lla: c_int = 16780741;
pub const GDK_KEY_Sinh_lu: c_int = 16780687;
pub const GDK_KEY_Sinh_lu2: c_int = 16780767;
pub const GDK_KEY_Sinh_luu: c_int = 16780688;
pub const GDK_KEY_Sinh_luu2: c_int = 16780787;
pub const GDK_KEY_Sinh_ma: c_int = 16780728;
pub const GDK_KEY_Sinh_mba: c_int = 16780729;
pub const GDK_KEY_Sinh_na: c_int = 16780721;
pub const GDK_KEY_Sinh_ndda: c_int = 16780716;
pub const GDK_KEY_Sinh_ndha: c_int = 16780723;
pub const GDK_KEY_Sinh_ng: c_int = 16780674;
pub const GDK_KEY_Sinh_ng2: c_int = 16780702;
pub const GDK_KEY_Sinh_nga: c_int = 16780703;
pub const GDK_KEY_Sinh_nja: c_int = 16780710;
pub const GDK_KEY_Sinh_nna: c_int = 16780715;
pub const GDK_KEY_Sinh_nya: c_int = 16780708;
pub const GDK_KEY_Sinh_o: c_int = 16780692;
pub const GDK_KEY_Sinh_o2: c_int = 16780764;
pub const GDK_KEY_Sinh_oo: c_int = 16780693;
pub const GDK_KEY_Sinh_oo2: c_int = 16780765;
pub const GDK_KEY_Sinh_pa: c_int = 16780724;
pub const GDK_KEY_Sinh_pha: c_int = 16780725;
pub const GDK_KEY_Sinh_ra: c_int = 16780731;
pub const GDK_KEY_Sinh_ri: c_int = 16780685;
pub const GDK_KEY_Sinh_rii: c_int = 16780686;
pub const GDK_KEY_Sinh_ru2: c_int = 16780760;
pub const GDK_KEY_Sinh_ruu2: c_int = 16780786;
pub const GDK_KEY_Sinh_sa: c_int = 16780739;
pub const GDK_KEY_Sinh_sha: c_int = 16780737;
pub const GDK_KEY_Sinh_ssha: c_int = 16780738;
pub const GDK_KEY_Sinh_tha: c_int = 16780717;
pub const GDK_KEY_Sinh_thha: c_int = 16780718;
pub const GDK_KEY_Sinh_tta: c_int = 16780711;
pub const GDK_KEY_Sinh_ttha: c_int = 16780712;
pub const GDK_KEY_Sinh_u: c_int = 16780683;
pub const GDK_KEY_Sinh_u2: c_int = 16780756;
pub const GDK_KEY_Sinh_uu: c_int = 16780684;
pub const GDK_KEY_Sinh_uu2: c_int = 16780758;
pub const GDK_KEY_Sinh_va: c_int = 16780736;
pub const GDK_KEY_Sinh_ya: c_int = 16780730;
pub const GDK_KEY_Sleep: c_int = 269025071;
pub const GDK_KEY_SlowKeys_Enable: c_int = 65139;
pub const GDK_KEY_Spell: c_int = 269025148;
pub const GDK_KEY_SplitScreen: c_int = 269025149;
pub const GDK_KEY_Standby: c_int = 269025040;
pub const GDK_KEY_Start: c_int = 269025050;
pub const GDK_KEY_StickyKeys_Enable: c_int = 65141;
pub const GDK_KEY_Stop: c_int = 269025064;
pub const GDK_KEY_Subtitle: c_int = 269025178;
pub const GDK_KEY_Super_L: c_int = 65515;
pub const GDK_KEY_Super_R: c_int = 65516;
pub const GDK_KEY_Support: c_int = 269025150;
pub const GDK_KEY_Suspend: c_int = 269025191;
pub const GDK_KEY_Switch_VT_1: c_int = 269024769;
pub const GDK_KEY_Switch_VT_10: c_int = 269024778;
pub const GDK_KEY_Switch_VT_11: c_int = 269024779;
pub const GDK_KEY_Switch_VT_12: c_int = 269024780;
pub const GDK_KEY_Switch_VT_2: c_int = 269024770;
pub const GDK_KEY_Switch_VT_3: c_int = 269024771;
pub const GDK_KEY_Switch_VT_4: c_int = 269024772;
pub const GDK_KEY_Switch_VT_5: c_int = 269024773;
pub const GDK_KEY_Switch_VT_6: c_int = 269024774;
pub const GDK_KEY_Switch_VT_7: c_int = 269024775;
pub const GDK_KEY_Switch_VT_8: c_int = 269024776;
pub const GDK_KEY_Switch_VT_9: c_int = 269024777;
pub const GDK_KEY_Sys_Req: c_int = 65301;
pub const GDK_KEY_T: c_int = 84;
pub const GDK_KEY_THORN: c_int = 222;
pub const GDK_KEY_Tab: c_int = 65289;
pub const GDK_KEY_Tabovedot: c_int = 16785002;
pub const GDK_KEY_TaskPane: c_int = 269025151;
pub const GDK_KEY_Tcaron: c_int = 427;
pub const GDK_KEY_Tcedilla: c_int = 478;
pub const GDK_KEY_Terminal: c_int = 269025152;
pub const GDK_KEY_Terminate_Server: c_int = 65237;
pub const GDK_KEY_Thai_baht: c_int = 3551;
pub const GDK_KEY_Thai_bobaimai: c_int = 3514;
pub const GDK_KEY_Thai_chochan: c_int = 3496;
pub const GDK_KEY_Thai_chochang: c_int = 3498;
pub const GDK_KEY_Thai_choching: c_int = 3497;
pub const GDK_KEY_Thai_chochoe: c_int = 3500;
pub const GDK_KEY_Thai_dochada: c_int = 3502;
pub const GDK_KEY_Thai_dodek: c_int = 3508;
pub const GDK_KEY_Thai_fofa: c_int = 3517;
pub const GDK_KEY_Thai_fofan: c_int = 3519;
pub const GDK_KEY_Thai_hohip: c_int = 3531;
pub const GDK_KEY_Thai_honokhuk: c_int = 3534;
pub const GDK_KEY_Thai_khokhai: c_int = 3490;
pub const GDK_KEY_Thai_khokhon: c_int = 3493;
pub const GDK_KEY_Thai_khokhuat: c_int = 3491;
pub const GDK_KEY_Thai_khokhwai: c_int = 3492;
pub const GDK_KEY_Thai_khorakhang: c_int = 3494;
pub const GDK_KEY_Thai_kokai: c_int = 3489;
pub const GDK_KEY_Thai_lakkhangyao: c_int = 3557;
pub const GDK_KEY_Thai_lekchet: c_int = 3575;
pub const GDK_KEY_Thai_lekha: c_int = 3573;
pub const GDK_KEY_Thai_lekhok: c_int = 3574;
pub const GDK_KEY_Thai_lekkao: c_int = 3577;
pub const GDK_KEY_Thai_leknung: c_int = 3569;
pub const GDK_KEY_Thai_lekpaet: c_int = 3576;
pub const GDK_KEY_Thai_leksam: c_int = 3571;
pub const GDK_KEY_Thai_leksi: c_int = 3572;
pub const GDK_KEY_Thai_leksong: c_int = 3570;
pub const GDK_KEY_Thai_leksun: c_int = 3568;
pub const GDK_KEY_Thai_lochula: c_int = 3532;
pub const GDK_KEY_Thai_loling: c_int = 3525;
pub const GDK_KEY_Thai_lu: c_int = 3526;
pub const GDK_KEY_Thai_maichattawa: c_int = 3563;
pub const GDK_KEY_Thai_maiek: c_int = 3560;
pub const GDK_KEY_Thai_maihanakat: c_int = 3537;
pub const GDK_KEY_Thai_maihanakat_maitho: c_int = 3550;
pub const GDK_KEY_Thai_maitaikhu: c_int = 3559;
pub const GDK_KEY_Thai_maitho: c_int = 3561;
pub const GDK_KEY_Thai_maitri: c_int = 3562;
pub const GDK_KEY_Thai_maiyamok: c_int = 3558;
pub const GDK_KEY_Thai_moma: c_int = 3521;
pub const GDK_KEY_Thai_ngongu: c_int = 3495;
pub const GDK_KEY_Thai_nikhahit: c_int = 3565;
pub const GDK_KEY_Thai_nonen: c_int = 3507;
pub const GDK_KEY_Thai_nonu: c_int = 3513;
pub const GDK_KEY_Thai_oang: c_int = 3533;
pub const GDK_KEY_Thai_paiyannoi: c_int = 3535;
pub const GDK_KEY_Thai_phinthu: c_int = 3546;
pub const GDK_KEY_Thai_phophan: c_int = 3518;
pub const GDK_KEY_Thai_phophung: c_int = 3516;
pub const GDK_KEY_Thai_phosamphao: c_int = 3520;
pub const GDK_KEY_Thai_popla: c_int = 3515;
pub const GDK_KEY_Thai_rorua: c_int = 3523;
pub const GDK_KEY_Thai_ru: c_int = 3524;
pub const GDK_KEY_Thai_saraa: c_int = 3536;
pub const GDK_KEY_Thai_saraaa: c_int = 3538;
pub const GDK_KEY_Thai_saraae: c_int = 3553;
pub const GDK_KEY_Thai_saraaimaimalai: c_int = 3556;
pub const GDK_KEY_Thai_saraaimaimuan: c_int = 3555;
pub const GDK_KEY_Thai_saraam: c_int = 3539;
pub const GDK_KEY_Thai_sarae: c_int = 3552;
pub const GDK_KEY_Thai_sarai: c_int = 3540;
pub const GDK_KEY_Thai_saraii: c_int = 3541;
pub const GDK_KEY_Thai_sarao: c_int = 3554;
pub const GDK_KEY_Thai_sarau: c_int = 3544;
pub const GDK_KEY_Thai_saraue: c_int = 3542;
pub const GDK_KEY_Thai_sarauee: c_int = 3543;
pub const GDK_KEY_Thai_sarauu: c_int = 3545;
pub const GDK_KEY_Thai_sorusi: c_int = 3529;
pub const GDK_KEY_Thai_sosala: c_int = 3528;
pub const GDK_KEY_Thai_soso: c_int = 3499;
pub const GDK_KEY_Thai_sosua: c_int = 3530;
pub const GDK_KEY_Thai_thanthakhat: c_int = 3564;
pub const GDK_KEY_Thai_thonangmontho: c_int = 3505;
pub const GDK_KEY_Thai_thophuthao: c_int = 3506;
pub const GDK_KEY_Thai_thothahan: c_int = 3511;
pub const GDK_KEY_Thai_thothan: c_int = 3504;
pub const GDK_KEY_Thai_thothong: c_int = 3512;
pub const GDK_KEY_Thai_thothung: c_int = 3510;
pub const GDK_KEY_Thai_topatak: c_int = 3503;
pub const GDK_KEY_Thai_totao: c_int = 3509;
pub const GDK_KEY_Thai_wowaen: c_int = 3527;
pub const GDK_KEY_Thai_yoyak: c_int = 3522;
pub const GDK_KEY_Thai_yoying: c_int = 3501;
pub const GDK_KEY_Thorn: c_int = 222;
pub const GDK_KEY_Time: c_int = 269025183;
pub const GDK_KEY_ToDoList: c_int = 269025055;
pub const GDK_KEY_Tools: c_int = 269025153;
pub const GDK_KEY_TopMenu: c_int = 269025186;
pub const GDK_KEY_TouchpadOff: c_int = 269025201;
pub const GDK_KEY_TouchpadOn: c_int = 269025200;
pub const GDK_KEY_TouchpadToggle: c_int = 269025193;
pub const GDK_KEY_Touroku: c_int = 65323;
pub const GDK_KEY_Travel: c_int = 269025154;
pub const GDK_KEY_Tslash: c_int = 940;
pub const GDK_KEY_U: c_int = 85;
pub const GDK_KEY_UWB: c_int = 269025174;
pub const GDK_KEY_Uacute: c_int = 218;
pub const GDK_KEY_Ubelowdot: c_int = 16785124;
pub const GDK_KEY_Ubreve: c_int = 733;
pub const GDK_KEY_Ucircumflex: c_int = 219;
pub const GDK_KEY_Udiaeresis: c_int = 220;
pub const GDK_KEY_Udoubleacute: c_int = 475;
pub const GDK_KEY_Ugrave: c_int = 217;
pub const GDK_KEY_Uhook: c_int = 16785126;
pub const GDK_KEY_Uhorn: c_int = 16777647;
pub const GDK_KEY_Uhornacute: c_int = 16785128;
pub const GDK_KEY_Uhornbelowdot: c_int = 16785136;
pub const GDK_KEY_Uhorngrave: c_int = 16785130;
pub const GDK_KEY_Uhornhook: c_int = 16785132;
pub const GDK_KEY_Uhorntilde: c_int = 16785134;
pub const GDK_KEY_Ukrainian_GHE_WITH_UPTURN: c_int = 1725;
pub const GDK_KEY_Ukrainian_I: c_int = 1718;
pub const GDK_KEY_Ukrainian_IE: c_int = 1716;
pub const GDK_KEY_Ukrainian_YI: c_int = 1719;
pub const GDK_KEY_Ukrainian_ghe_with_upturn: c_int = 1709;
pub const GDK_KEY_Ukrainian_i: c_int = 1702;
pub const GDK_KEY_Ukrainian_ie: c_int = 1700;
pub const GDK_KEY_Ukrainian_yi: c_int = 1703;
pub const GDK_KEY_Ukranian_I: c_int = 1718;
pub const GDK_KEY_Ukranian_JE: c_int = 1716;
pub const GDK_KEY_Ukranian_YI: c_int = 1719;
pub const GDK_KEY_Ukranian_i: c_int = 1702;
pub const GDK_KEY_Ukranian_je: c_int = 1700;
pub const GDK_KEY_Ukranian_yi: c_int = 1703;
pub const GDK_KEY_Umacron: c_int = 990;
pub const GDK_KEY_Undo: c_int = 65381;
pub const GDK_KEY_Ungrab: c_int = 269024800;
pub const GDK_KEY_Uogonek: c_int = 985;
pub const GDK_KEY_Up: c_int = 65362;
pub const GDK_KEY_Uring: c_int = 473;
pub const GDK_KEY_User1KB: c_int = 269025157;
pub const GDK_KEY_User2KB: c_int = 269025158;
pub const GDK_KEY_UserPB: c_int = 269025156;
pub const GDK_KEY_Utilde: c_int = 989;
pub const GDK_KEY_V: c_int = 86;
pub const GDK_KEY_VendorHome: c_int = 269025076;
pub const GDK_KEY_Video: c_int = 269025159;
pub const GDK_KEY_View: c_int = 269025185;
pub const GDK_KEY_VoidSymbol: c_int = 16777215;
pub const GDK_KEY_W: c_int = 87;
pub const GDK_KEY_WLAN: c_int = 269025173;
pub const GDK_KEY_WWAN: c_int = 269025204;
pub const GDK_KEY_WWW: c_int = 269025070;
pub const GDK_KEY_Wacute: c_int = 16785026;
pub const GDK_KEY_WakeUp: c_int = 269025067;
pub const GDK_KEY_Wcircumflex: c_int = 16777588;
pub const GDK_KEY_Wdiaeresis: c_int = 16785028;
pub const GDK_KEY_WebCam: c_int = 269025167;
pub const GDK_KEY_Wgrave: c_int = 16785024;
pub const GDK_KEY_WheelButton: c_int = 269025160;
pub const GDK_KEY_WindowClear: c_int = 269025109;
pub const GDK_KEY_WonSign: c_int = 16785577;
pub const GDK_KEY_Word: c_int = 269025161;
pub const GDK_KEY_X: c_int = 88;
pub const GDK_KEY_Xabovedot: c_int = 16785034;
pub const GDK_KEY_Xfer: c_int = 269025162;
pub const GDK_KEY_Y: c_int = 89;
pub const GDK_KEY_Yacute: c_int = 221;
pub const GDK_KEY_Ybelowdot: c_int = 16785140;
pub const GDK_KEY_Ycircumflex: c_int = 16777590;
pub const GDK_KEY_Ydiaeresis: c_int = 5054;
pub const GDK_KEY_Yellow: c_int = 269025189;
pub const GDK_KEY_Ygrave: c_int = 16785138;
pub const GDK_KEY_Yhook: c_int = 16785142;
pub const GDK_KEY_Ytilde: c_int = 16785144;
pub const GDK_KEY_Z: c_int = 90;
pub const GDK_KEY_Zabovedot: c_int = 431;
pub const GDK_KEY_Zacute: c_int = 428;
pub const GDK_KEY_Zcaron: c_int = 430;
pub const GDK_KEY_Zen_Koho: c_int = 65341;
pub const GDK_KEY_Zenkaku: c_int = 65320;
pub const GDK_KEY_Zenkaku_Hankaku: c_int = 65322;
pub const GDK_KEY_ZoomIn: c_int = 269025163;
pub const GDK_KEY_ZoomOut: c_int = 269025164;
pub const GDK_KEY_Zstroke: c_int = 16777653;
pub const GDK_KEY_a: c_int = 97;
pub const GDK_KEY_aacute: c_int = 225;
pub const GDK_KEY_abelowdot: c_int = 16785057;
pub const GDK_KEY_abovedot: c_int = 511;
pub const GDK_KEY_abreve: c_int = 483;
pub const GDK_KEY_abreveacute: c_int = 16785071;
pub const GDK_KEY_abrevebelowdot: c_int = 16785079;
pub const GDK_KEY_abrevegrave: c_int = 16785073;
pub const GDK_KEY_abrevehook: c_int = 16785075;
pub const GDK_KEY_abrevetilde: c_int = 16785077;
pub const GDK_KEY_acircumflex: c_int = 226;
pub const GDK_KEY_acircumflexacute: c_int = 16785061;
pub const GDK_KEY_acircumflexbelowdot: c_int = 16785069;
pub const GDK_KEY_acircumflexgrave: c_int = 16785063;
pub const GDK_KEY_acircumflexhook: c_int = 16785065;
pub const GDK_KEY_acircumflextilde: c_int = 16785067;
pub const GDK_KEY_acute: c_int = 180;
pub const GDK_KEY_adiaeresis: c_int = 228;
pub const GDK_KEY_ae: c_int = 230;
pub const GDK_KEY_agrave: c_int = 224;
pub const GDK_KEY_ahook: c_int = 16785059;
pub const GDK_KEY_amacron: c_int = 992;
pub const GDK_KEY_ampersand: c_int = 38;
pub const GDK_KEY_aogonek: c_int = 433;
pub const GDK_KEY_apostrophe: c_int = 39;
pub const GDK_KEY_approxeq: c_int = 16785992;
pub const GDK_KEY_approximate: c_int = 2248;
pub const GDK_KEY_aring: c_int = 229;
pub const GDK_KEY_asciicircum: c_int = 94;
pub const GDK_KEY_asciitilde: c_int = 126;
pub const GDK_KEY_asterisk: c_int = 42;
pub const GDK_KEY_at: c_int = 64;
pub const GDK_KEY_atilde: c_int = 227;
pub const GDK_KEY_b: c_int = 98;
pub const GDK_KEY_babovedot: c_int = 16784899;
pub const GDK_KEY_backslash: c_int = 92;
pub const GDK_KEY_ballotcross: c_int = 2804;
pub const GDK_KEY_bar: c_int = 124;
pub const GDK_KEY_because: c_int = 16785973;
pub const GDK_KEY_blank: c_int = 2527;
pub const GDK_KEY_botintegral: c_int = 2213;
pub const GDK_KEY_botleftparens: c_int = 2220;
pub const GDK_KEY_botleftsqbracket: c_int = 2216;
pub const GDK_KEY_botleftsummation: c_int = 2226;
pub const GDK_KEY_botrightparens: c_int = 2222;
pub const GDK_KEY_botrightsqbracket: c_int = 2218;
pub const GDK_KEY_botrightsummation: c_int = 2230;
pub const GDK_KEY_bott: c_int = 2550;
pub const GDK_KEY_botvertsummationconnector: c_int = 2228;
pub const GDK_KEY_braceleft: c_int = 123;
pub const GDK_KEY_braceright: c_int = 125;
pub const GDK_KEY_bracketleft: c_int = 91;
pub const GDK_KEY_bracketright: c_int = 93;
pub const GDK_KEY_braille_blank: c_int = 16787456;
pub const GDK_KEY_braille_dot_1: c_int = 65521;
pub const GDK_KEY_braille_dot_10: c_int = 65530;
pub const GDK_KEY_braille_dot_2: c_int = 65522;
pub const GDK_KEY_braille_dot_3: c_int = 65523;
pub const GDK_KEY_braille_dot_4: c_int = 65524;
pub const GDK_KEY_braille_dot_5: c_int = 65525;
pub const GDK_KEY_braille_dot_6: c_int = 65526;
pub const GDK_KEY_braille_dot_7: c_int = 65527;
pub const GDK_KEY_braille_dot_8: c_int = 65528;
pub const GDK_KEY_braille_dot_9: c_int = 65529;
pub const GDK_KEY_braille_dots_1: c_int = 16787457;
pub const GDK_KEY_braille_dots_12: c_int = 16787459;
pub const GDK_KEY_braille_dots_123: c_int = 16787463;
pub const GDK_KEY_braille_dots_1234: c_int = 16787471;
pub const GDK_KEY_braille_dots_12345: c_int = 16787487;
pub const GDK_KEY_braille_dots_123456: c_int = 16787519;
pub const GDK_KEY_braille_dots_1234567: c_int = 16787583;
pub const GDK_KEY_braille_dots_12345678: c_int = 16787711;
pub const GDK_KEY_braille_dots_1234568: c_int = 16787647;
pub const GDK_KEY_braille_dots_123457: c_int = 16787551;
pub const GDK_KEY_braille_dots_1234578: c_int = 16787679;
pub const GDK_KEY_braille_dots_123458: c_int = 16787615;
pub const GDK_KEY_braille_dots_12346: c_int = 16787503;
pub const GDK_KEY_braille_dots_123467: c_int = 16787567;
pub const GDK_KEY_braille_dots_1234678: c_int = 16787695;
pub const GDK_KEY_braille_dots_123468: c_int = 16787631;
pub const GDK_KEY_braille_dots_12347: c_int = 16787535;
pub const GDK_KEY_braille_dots_123478: c_int = 16787663;
pub const GDK_KEY_braille_dots_12348: c_int = 16787599;
pub const GDK_KEY_braille_dots_1235: c_int = 16787479;
pub const GDK_KEY_braille_dots_12356: c_int = 16787511;
pub const GDK_KEY_braille_dots_123567: c_int = 16787575;
pub const GDK_KEY_braille_dots_1235678: c_int = 16787703;
pub const GDK_KEY_braille_dots_123568: c_int = 16787639;
pub const GDK_KEY_braille_dots_12357: c_int = 16787543;
pub const GDK_KEY_braille_dots_123578: c_int = 16787671;
pub const GDK_KEY_braille_dots_12358: c_int = 16787607;
pub const GDK_KEY_braille_dots_1236: c_int = 16787495;
pub const GDK_KEY_braille_dots_12367: c_int = 16787559;
pub const GDK_KEY_braille_dots_123678: c_int = 16787687;
pub const GDK_KEY_braille_dots_12368: c_int = 16787623;
pub const GDK_KEY_braille_dots_1237: c_int = 16787527;
pub const GDK_KEY_braille_dots_12378: c_int = 16787655;
pub const GDK_KEY_braille_dots_1238: c_int = 16787591;
pub const GDK_KEY_braille_dots_124: c_int = 16787467;
pub const GDK_KEY_braille_dots_1245: c_int = 16787483;
pub const GDK_KEY_braille_dots_12456: c_int = 16787515;
pub const GDK_KEY_braille_dots_124567: c_int = 16787579;
pub const GDK_KEY_braille_dots_1245678: c_int = 16787707;
pub const GDK_KEY_braille_dots_124568: c_int = 16787643;
pub const GDK_KEY_braille_dots_12457: c_int = 16787547;
pub const GDK_KEY_braille_dots_124578: c_int = 16787675;
pub const GDK_KEY_braille_dots_12458: c_int = 16787611;
pub const GDK_KEY_braille_dots_1246: c_int = 16787499;
pub const GDK_KEY_braille_dots_12467: c_int = 16787563;
pub const GDK_KEY_braille_dots_124678: c_int = 16787691;
pub const GDK_KEY_braille_dots_12468: c_int = 16787627;
pub const GDK_KEY_braille_dots_1247: c_int = 16787531;
pub const GDK_KEY_braille_dots_12478: c_int = 16787659;
pub const GDK_KEY_braille_dots_1248: c_int = 16787595;
pub const GDK_KEY_braille_dots_125: c_int = 16787475;
pub const GDK_KEY_braille_dots_1256: c_int = 16787507;
pub const GDK_KEY_braille_dots_12567: c_int = 16787571;
pub const GDK_KEY_braille_dots_125678: c_int = 16787699;
pub const GDK_KEY_braille_dots_12568: c_int = 16787635;
pub const GDK_KEY_braille_dots_1257: c_int = 16787539;
pub const GDK_KEY_braille_dots_12578: c_int = 16787667;
pub const GDK_KEY_braille_dots_1258: c_int = 16787603;
pub const GDK_KEY_braille_dots_126: c_int = 16787491;
pub const GDK_KEY_braille_dots_1267: c_int = 16787555;
pub const GDK_KEY_braille_dots_12678: c_int = 16787683;
pub const GDK_KEY_braille_dots_1268: c_int = 16787619;
pub const GDK_KEY_braille_dots_127: c_int = 16787523;
pub const GDK_KEY_braille_dots_1278: c_int = 16787651;
pub const GDK_KEY_braille_dots_128: c_int = 16787587;
pub const GDK_KEY_braille_dots_13: c_int = 16787461;
pub const GDK_KEY_braille_dots_134: c_int = 16787469;
pub const GDK_KEY_braille_dots_1345: c_int = 16787485;
pub const GDK_KEY_braille_dots_13456: c_int = 16787517;
pub const GDK_KEY_braille_dots_134567: c_int = 16787581;
pub const GDK_KEY_braille_dots_1345678: c_int = 16787709;
pub const GDK_KEY_braille_dots_134568: c_int = 16787645;
pub const GDK_KEY_braille_dots_13457: c_int = 16787549;
pub const GDK_KEY_braille_dots_134578: c_int = 16787677;
pub const GDK_KEY_braille_dots_13458: c_int = 16787613;
pub const GDK_KEY_braille_dots_1346: c_int = 16787501;
pub const GDK_KEY_braille_dots_13467: c_int = 16787565;
pub const GDK_KEY_braille_dots_134678: c_int = 16787693;
pub const GDK_KEY_braille_dots_13468: c_int = 16787629;
pub const GDK_KEY_braille_dots_1347: c_int = 16787533;
pub const GDK_KEY_braille_dots_13478: c_int = 16787661;
pub const GDK_KEY_braille_dots_1348: c_int = 16787597;
pub const GDK_KEY_braille_dots_135: c_int = 16787477;
pub const GDK_KEY_braille_dots_1356: c_int = 16787509;
pub const GDK_KEY_braille_dots_13567: c_int = 16787573;
pub const GDK_KEY_braille_dots_135678: c_int = 16787701;
pub const GDK_KEY_braille_dots_13568: c_int = 16787637;
pub const GDK_KEY_braille_dots_1357: c_int = 16787541;
pub const GDK_KEY_braille_dots_13578: c_int = 16787669;
pub const GDK_KEY_braille_dots_1358: c_int = 16787605;
pub const GDK_KEY_braille_dots_136: c_int = 16787493;
pub const GDK_KEY_braille_dots_1367: c_int = 16787557;
pub const GDK_KEY_braille_dots_13678: c_int = 16787685;
pub const GDK_KEY_braille_dots_1368: c_int = 16787621;
pub const GDK_KEY_braille_dots_137: c_int = 16787525;
pub const GDK_KEY_braille_dots_1378: c_int = 16787653;
pub const GDK_KEY_braille_dots_138: c_int = 16787589;
pub const GDK_KEY_braille_dots_14: c_int = 16787465;
pub const GDK_KEY_braille_dots_145: c_int = 16787481;
pub const GDK_KEY_braille_dots_1456: c_int = 16787513;
pub const GDK_KEY_braille_dots_14567: c_int = 16787577;
pub const GDK_KEY_braille_dots_145678: c_int = 16787705;
pub const GDK_KEY_braille_dots_14568: c_int = 16787641;
pub const GDK_KEY_braille_dots_1457: c_int = 16787545;
pub const GDK_KEY_braille_dots_14578: c_int = 16787673;
pub const GDK_KEY_braille_dots_1458: c_int = 16787609;
pub const GDK_KEY_braille_dots_146: c_int = 16787497;
pub const GDK_KEY_braille_dots_1467: c_int = 16787561;
pub const GDK_KEY_braille_dots_14678: c_int = 16787689;
pub const GDK_KEY_braille_dots_1468: c_int = 16787625;
pub const GDK_KEY_braille_dots_147: c_int = 16787529;
pub const GDK_KEY_braille_dots_1478: c_int = 16787657;
pub const GDK_KEY_braille_dots_148: c_int = 16787593;
pub const GDK_KEY_braille_dots_15: c_int = 16787473;
pub const GDK_KEY_braille_dots_156: c_int = 16787505;
pub const GDK_KEY_braille_dots_1567: c_int = 16787569;
pub const GDK_KEY_braille_dots_15678: c_int = 16787697;
pub const GDK_KEY_braille_dots_1568: c_int = 16787633;
pub const GDK_KEY_braille_dots_157: c_int = 16787537;
pub const GDK_KEY_braille_dots_1578: c_int = 16787665;
pub const GDK_KEY_braille_dots_158: c_int = 16787601;
pub const GDK_KEY_braille_dots_16: c_int = 16787489;
pub const GDK_KEY_braille_dots_167: c_int = 16787553;
pub const GDK_KEY_braille_dots_1678: c_int = 16787681;
pub const GDK_KEY_braille_dots_168: c_int = 16787617;
pub const GDK_KEY_braille_dots_17: c_int = 16787521;
pub const GDK_KEY_braille_dots_178: c_int = 16787649;
pub const GDK_KEY_braille_dots_18: c_int = 16787585;
pub const GDK_KEY_braille_dots_2: c_int = 16787458;
pub const GDK_KEY_braille_dots_23: c_int = 16787462;
pub const GDK_KEY_braille_dots_234: c_int = 16787470;
pub const GDK_KEY_braille_dots_2345: c_int = 16787486;
pub const GDK_KEY_braille_dots_23456: c_int = 16787518;
pub const GDK_KEY_braille_dots_234567: c_int = 16787582;
pub const GDK_KEY_braille_dots_2345678: c_int = 16787710;
pub const GDK_KEY_braille_dots_234568: c_int = 16787646;
pub const GDK_KEY_braille_dots_23457: c_int = 16787550;
pub const GDK_KEY_braille_dots_234578: c_int = 16787678;
pub const GDK_KEY_braille_dots_23458: c_int = 16787614;
pub const GDK_KEY_braille_dots_2346: c_int = 16787502;
pub const GDK_KEY_braille_dots_23467: c_int = 16787566;
pub const GDK_KEY_braille_dots_234678: c_int = 16787694;
pub const GDK_KEY_braille_dots_23468: c_int = 16787630;
pub const GDK_KEY_braille_dots_2347: c_int = 16787534;
pub const GDK_KEY_braille_dots_23478: c_int = 16787662;
pub const GDK_KEY_braille_dots_2348: c_int = 16787598;
pub const GDK_KEY_braille_dots_235: c_int = 16787478;
pub const GDK_KEY_braille_dots_2356: c_int = 16787510;
pub const GDK_KEY_braille_dots_23567: c_int = 16787574;
pub const GDK_KEY_braille_dots_235678: c_int = 16787702;
pub const GDK_KEY_braille_dots_23568: c_int = 16787638;
pub const GDK_KEY_braille_dots_2357: c_int = 16787542;
pub const GDK_KEY_braille_dots_23578: c_int = 16787670;
pub const GDK_KEY_braille_dots_2358: c_int = 16787606;
pub const GDK_KEY_braille_dots_236: c_int = 16787494;
pub const GDK_KEY_braille_dots_2367: c_int = 16787558;
pub const GDK_KEY_braille_dots_23678: c_int = 16787686;
pub const GDK_KEY_braille_dots_2368: c_int = 16787622;
pub const GDK_KEY_braille_dots_237: c_int = 16787526;
pub const GDK_KEY_braille_dots_2378: c_int = 16787654;
pub const GDK_KEY_braille_dots_238: c_int = 16787590;
pub const GDK_KEY_braille_dots_24: c_int = 16787466;
pub const GDK_KEY_braille_dots_245: c_int = 16787482;
pub const GDK_KEY_braille_dots_2456: c_int = 16787514;
pub const GDK_KEY_braille_dots_24567: c_int = 16787578;
pub const GDK_KEY_braille_dots_245678: c_int = 16787706;
pub const GDK_KEY_braille_dots_24568: c_int = 16787642;
pub const GDK_KEY_braille_dots_2457: c_int = 16787546;
pub const GDK_KEY_braille_dots_24578: c_int = 16787674;
pub const GDK_KEY_braille_dots_2458: c_int = 16787610;
pub const GDK_KEY_braille_dots_246: c_int = 16787498;
pub const GDK_KEY_braille_dots_2467: c_int = 16787562;
pub const GDK_KEY_braille_dots_24678: c_int = 16787690;
pub const GDK_KEY_braille_dots_2468: c_int = 16787626;
pub const GDK_KEY_braille_dots_247: c_int = 16787530;
pub const GDK_KEY_braille_dots_2478: c_int = 16787658;
pub const GDK_KEY_braille_dots_248: c_int = 16787594;
pub const GDK_KEY_braille_dots_25: c_int = 16787474;
pub const GDK_KEY_braille_dots_256: c_int = 16787506;
pub const GDK_KEY_braille_dots_2567: c_int = 16787570;
pub const GDK_KEY_braille_dots_25678: c_int = 16787698;
pub const GDK_KEY_braille_dots_2568: c_int = 16787634;
pub const GDK_KEY_braille_dots_257: c_int = 16787538;
pub const GDK_KEY_braille_dots_2578: c_int = 16787666;
pub const GDK_KEY_braille_dots_258: c_int = 16787602;
pub const GDK_KEY_braille_dots_26: c_int = 16787490;
pub const GDK_KEY_braille_dots_267: c_int = 16787554;
pub const GDK_KEY_braille_dots_2678: c_int = 16787682;
pub const GDK_KEY_braille_dots_268: c_int = 16787618;
pub const GDK_KEY_braille_dots_27: c_int = 16787522;
pub const GDK_KEY_braille_dots_278: c_int = 16787650;
pub const GDK_KEY_braille_dots_28: c_int = 16787586;
pub const GDK_KEY_braille_dots_3: c_int = 16787460;
pub const GDK_KEY_braille_dots_34: c_int = 16787468;
pub const GDK_KEY_braille_dots_345: c_int = 16787484;
pub const GDK_KEY_braille_dots_3456: c_int = 16787516;
pub const GDK_KEY_braille_dots_34567: c_int = 16787580;
pub const GDK_KEY_braille_dots_345678: c_int = 16787708;
pub const GDK_KEY_braille_dots_34568: c_int = 16787644;
pub const GDK_KEY_braille_dots_3457: c_int = 16787548;
pub const GDK_KEY_braille_dots_34578: c_int = 16787676;
pub const GDK_KEY_braille_dots_3458: c_int = 16787612;
pub const GDK_KEY_braille_dots_346: c_int = 16787500;
pub const GDK_KEY_braille_dots_3467: c_int = 16787564;
pub const GDK_KEY_braille_dots_34678: c_int = 16787692;
pub const GDK_KEY_braille_dots_3468: c_int = 16787628;
pub const GDK_KEY_braille_dots_347: c_int = 16787532;
pub const GDK_KEY_braille_dots_3478: c_int = 16787660;
pub const GDK_KEY_braille_dots_348: c_int = 16787596;
pub const GDK_KEY_braille_dots_35: c_int = 16787476;
pub const GDK_KEY_braille_dots_356: c_int = 16787508;
pub const GDK_KEY_braille_dots_3567: c_int = 16787572;
pub const GDK_KEY_braille_dots_35678: c_int = 16787700;
pub const GDK_KEY_braille_dots_3568: c_int = 16787636;
pub const GDK_KEY_braille_dots_357: c_int = 16787540;
pub const GDK_KEY_braille_dots_3578: c_int = 16787668;
pub const GDK_KEY_braille_dots_358: c_int = 16787604;
pub const GDK_KEY_braille_dots_36: c_int = 16787492;
pub const GDK_KEY_braille_dots_367: c_int = 16787556;
pub const GDK_KEY_braille_dots_3678: c_int = 16787684;
pub const GDK_KEY_braille_dots_368: c_int = 16787620;
pub const GDK_KEY_braille_dots_37: c_int = 16787524;
pub const GDK_KEY_braille_dots_378: c_int = 16787652;
pub const GDK_KEY_braille_dots_38: c_int = 16787588;
pub const GDK_KEY_braille_dots_4: c_int = 16787464;
pub const GDK_KEY_braille_dots_45: c_int = 16787480;
pub const GDK_KEY_braille_dots_456: c_int = 16787512;
pub const GDK_KEY_braille_dots_4567: c_int = 16787576;
pub const GDK_KEY_braille_dots_45678: c_int = 16787704;
pub const GDK_KEY_braille_dots_4568: c_int = 16787640;
pub const GDK_KEY_braille_dots_457: c_int = 16787544;
pub const GDK_KEY_braille_dots_4578: c_int = 16787672;
pub const GDK_KEY_braille_dots_458: c_int = 16787608;
pub const GDK_KEY_braille_dots_46: c_int = 16787496;
pub const GDK_KEY_braille_dots_467: c_int = 16787560;
pub const GDK_KEY_braille_dots_4678: c_int = 16787688;
pub const GDK_KEY_braille_dots_468: c_int = 16787624;
pub const GDK_KEY_braille_dots_47: c_int = 16787528;
pub const GDK_KEY_braille_dots_478: c_int = 16787656;
pub const GDK_KEY_braille_dots_48: c_int = 16787592;
pub const GDK_KEY_braille_dots_5: c_int = 16787472;
pub const GDK_KEY_braille_dots_56: c_int = 16787504;
pub const GDK_KEY_braille_dots_567: c_int = 16787568;
pub const GDK_KEY_braille_dots_5678: c_int = 16787696;
pub const GDK_KEY_braille_dots_568: c_int = 16787632;
pub const GDK_KEY_braille_dots_57: c_int = 16787536;
pub const GDK_KEY_braille_dots_578: c_int = 16787664;
pub const GDK_KEY_braille_dots_58: c_int = 16787600;
pub const GDK_KEY_braille_dots_6: c_int = 16787488;
pub const GDK_KEY_braille_dots_67: c_int = 16787552;
pub const GDK_KEY_braille_dots_678: c_int = 16787680;
pub const GDK_KEY_braille_dots_68: c_int = 16787616;
pub const GDK_KEY_braille_dots_7: c_int = 16787520;
pub const GDK_KEY_braille_dots_78: c_int = 16787648;
pub const GDK_KEY_braille_dots_8: c_int = 16787584;
pub const GDK_KEY_breve: c_int = 418;
pub const GDK_KEY_brokenbar: c_int = 166;
pub const GDK_KEY_c: c_int = 99;
pub const GDK_KEY_c_h: c_int = 65187;
pub const GDK_KEY_cabovedot: c_int = 741;
pub const GDK_KEY_cacute: c_int = 486;
pub const GDK_KEY_careof: c_int = 2744;
pub const GDK_KEY_caret: c_int = 2812;
pub const GDK_KEY_caron: c_int = 439;
pub const GDK_KEY_ccaron: c_int = 488;
pub const GDK_KEY_ccedilla: c_int = 231;
pub const GDK_KEY_ccircumflex: c_int = 742;
pub const GDK_KEY_cedilla: c_int = 184;
pub const GDK_KEY_cent: c_int = 162;
pub const GDK_KEY_ch: c_int = 65184;
pub const GDK_KEY_checkerboard: c_int = 2529;
pub const GDK_KEY_checkmark: c_int = 2803;
pub const GDK_KEY_circle: c_int = 3023;
pub const GDK_KEY_club: c_int = 2796;
pub const GDK_KEY_colon: c_int = 58;
pub const GDK_KEY_comma: c_int = 44;
pub const GDK_KEY_containsas: c_int = 16785931;
pub const GDK_KEY_copyright: c_int = 169;
pub const GDK_KEY_cr: c_int = 2532;
pub const GDK_KEY_crossinglines: c_int = 2542;
pub const GDK_KEY_cuberoot: c_int = 16785947;
pub const GDK_KEY_currency: c_int = 164;
pub const GDK_KEY_cursor: c_int = 2815;
pub const GDK_KEY_d: c_int = 100;
pub const GDK_KEY_dabovedot: c_int = 16784907;
pub const GDK_KEY_dagger: c_int = 2801;
pub const GDK_KEY_dcaron: c_int = 495;
pub const GDK_KEY_dead_A: c_int = 65153;
pub const GDK_KEY_dead_E: c_int = 65155;
pub const GDK_KEY_dead_I: c_int = 65157;
pub const GDK_KEY_dead_O: c_int = 65159;
pub const GDK_KEY_dead_U: c_int = 65161;
pub const GDK_KEY_dead_a: c_int = 65152;
pub const GDK_KEY_dead_abovecomma: c_int = 65124;
pub const GDK_KEY_dead_abovedot: c_int = 65110;
pub const GDK_KEY_dead_abovereversedcomma: c_int = 65125;
pub const GDK_KEY_dead_abovering: c_int = 65112;
pub const GDK_KEY_dead_aboveverticalline: c_int = 65169;
pub const GDK_KEY_dead_acute: c_int = 65105;
pub const GDK_KEY_dead_belowbreve: c_int = 65131;
pub const GDK_KEY_dead_belowcircumflex: c_int = 65129;
pub const GDK_KEY_dead_belowcomma: c_int = 65134;
pub const GDK_KEY_dead_belowdiaeresis: c_int = 65132;
pub const GDK_KEY_dead_belowdot: c_int = 65120;
pub const GDK_KEY_dead_belowmacron: c_int = 65128;
pub const GDK_KEY_dead_belowring: c_int = 65127;
pub const GDK_KEY_dead_belowtilde: c_int = 65130;
pub const GDK_KEY_dead_belowverticalline: c_int = 65170;
pub const GDK_KEY_dead_breve: c_int = 65109;
pub const GDK_KEY_dead_capital_schwa: c_int = 65163;
pub const GDK_KEY_dead_caron: c_int = 65114;
pub const GDK_KEY_dead_cedilla: c_int = 65115;
pub const GDK_KEY_dead_circumflex: c_int = 65106;
pub const GDK_KEY_dead_currency: c_int = 65135;
pub const GDK_KEY_dead_dasia: c_int = 65125;
pub const GDK_KEY_dead_diaeresis: c_int = 65111;
pub const GDK_KEY_dead_doubleacute: c_int = 65113;
pub const GDK_KEY_dead_doublegrave: c_int = 65126;
pub const GDK_KEY_dead_e: c_int = 65154;
pub const GDK_KEY_dead_grave: c_int = 65104;
pub const GDK_KEY_dead_greek: c_int = 65164;
pub const GDK_KEY_dead_hook: c_int = 65121;
pub const GDK_KEY_dead_horn: c_int = 65122;
pub const GDK_KEY_dead_i: c_int = 65156;
pub const GDK_KEY_dead_invertedbreve: c_int = 65133;
pub const GDK_KEY_dead_iota: c_int = 65117;
pub const GDK_KEY_dead_longsolidusoverlay: c_int = 65171;
pub const GDK_KEY_dead_lowline: c_int = 65168;
pub const GDK_KEY_dead_macron: c_int = 65108;
pub const GDK_KEY_dead_o: c_int = 65158;
pub const GDK_KEY_dead_ogonek: c_int = 65116;
pub const GDK_KEY_dead_perispomeni: c_int = 65107;
pub const GDK_KEY_dead_psili: c_int = 65124;
pub const GDK_KEY_dead_semivoiced_sound: c_int = 65119;
pub const GDK_KEY_dead_small_schwa: c_int = 65162;
pub const GDK_KEY_dead_stroke: c_int = 65123;
pub const GDK_KEY_dead_tilde: c_int = 65107;
pub const GDK_KEY_dead_u: c_int = 65160;
pub const GDK_KEY_dead_voiced_sound: c_int = 65118;
pub const GDK_KEY_decimalpoint: c_int = 2749;
pub const GDK_KEY_degree: c_int = 176;
pub const GDK_KEY_diaeresis: c_int = 168;
pub const GDK_KEY_diamond: c_int = 2797;
pub const GDK_KEY_digitspace: c_int = 2725;
pub const GDK_KEY_dintegral: c_int = 16785964;
pub const GDK_KEY_division: c_int = 247;
pub const GDK_KEY_dollar: c_int = 36;
pub const GDK_KEY_doubbaselinedot: c_int = 2735;
pub const GDK_KEY_doubleacute: c_int = 445;
pub const GDK_KEY_doubledagger: c_int = 2802;
pub const GDK_KEY_doublelowquotemark: c_int = 2814;
pub const GDK_KEY_downarrow: c_int = 2302;
pub const GDK_KEY_downcaret: c_int = 2984;
pub const GDK_KEY_downshoe: c_int = 3030;
pub const GDK_KEY_downstile: c_int = 3012;
pub const GDK_KEY_downtack: c_int = 3010;
pub const GDK_KEY_dstroke: c_int = 496;
pub const GDK_KEY_e: c_int = 101;
pub const GDK_KEY_eabovedot: c_int = 1004;
pub const GDK_KEY_eacute: c_int = 233;
pub const GDK_KEY_ebelowdot: c_int = 16785081;
pub const GDK_KEY_ecaron: c_int = 492;
pub const GDK_KEY_ecircumflex: c_int = 234;
pub const GDK_KEY_ecircumflexacute: c_int = 16785087;
pub const GDK_KEY_ecircumflexbelowdot: c_int = 16785095;
pub const GDK_KEY_ecircumflexgrave: c_int = 16785089;
pub const GDK_KEY_ecircumflexhook: c_int = 16785091;
pub const GDK_KEY_ecircumflextilde: c_int = 16785093;
pub const GDK_KEY_ediaeresis: c_int = 235;
pub const GDK_KEY_egrave: c_int = 232;
pub const GDK_KEY_ehook: c_int = 16785083;
pub const GDK_KEY_eightsubscript: c_int = 16785544;
pub const GDK_KEY_eightsuperior: c_int = 16785528;
pub const GDK_KEY_elementof: c_int = 16785928;
pub const GDK_KEY_ellipsis: c_int = 2734;
pub const GDK_KEY_em3space: c_int = 2723;
pub const GDK_KEY_em4space: c_int = 2724;
pub const GDK_KEY_emacron: c_int = 954;
pub const GDK_KEY_emdash: c_int = 2729;
pub const GDK_KEY_emfilledcircle: c_int = 2782;
pub const GDK_KEY_emfilledrect: c_int = 2783;
pub const GDK_KEY_emopencircle: c_int = 2766;
pub const GDK_KEY_emopenrectangle: c_int = 2767;
pub const GDK_KEY_emptyset: c_int = 16785925;
pub const GDK_KEY_emspace: c_int = 2721;
pub const GDK_KEY_endash: c_int = 2730;
pub const GDK_KEY_enfilledcircbullet: c_int = 2790;
pub const GDK_KEY_enfilledsqbullet: c_int = 2791;
pub const GDK_KEY_eng: c_int = 959;
pub const GDK_KEY_enopencircbullet: c_int = 2784;
pub const GDK_KEY_enopensquarebullet: c_int = 2785;
pub const GDK_KEY_enspace: c_int = 2722;
pub const GDK_KEY_eogonek: c_int = 490;
pub const GDK_KEY_equal: c_int = 61;
pub const GDK_KEY_eth: c_int = 240;
pub const GDK_KEY_etilde: c_int = 16785085;
pub const GDK_KEY_exclam: c_int = 33;
pub const GDK_KEY_exclamdown: c_int = 161;
pub const GDK_KEY_ezh: c_int = 16777874;
pub const GDK_KEY_f: c_int = 102;
pub const GDK_KEY_fabovedot: c_int = 16784927;
pub const GDK_KEY_femalesymbol: c_int = 2808;
pub const GDK_KEY_ff: c_int = 2531;
pub const GDK_KEY_figdash: c_int = 2747;
pub const GDK_KEY_filledlefttribullet: c_int = 2780;
pub const GDK_KEY_filledrectbullet: c_int = 2779;
pub const GDK_KEY_filledrighttribullet: c_int = 2781;
pub const GDK_KEY_filledtribulletdown: c_int = 2793;
pub const GDK_KEY_filledtribulletup: c_int = 2792;
pub const GDK_KEY_fiveeighths: c_int = 2757;
pub const GDK_KEY_fivesixths: c_int = 2743;
pub const GDK_KEY_fivesubscript: c_int = 16785541;
pub const GDK_KEY_fivesuperior: c_int = 16785525;
pub const GDK_KEY_fourfifths: c_int = 2741;
pub const GDK_KEY_foursubscript: c_int = 16785540;
pub const GDK_KEY_foursuperior: c_int = 16785524;
pub const GDK_KEY_fourthroot: c_int = 16785948;
pub const GDK_KEY_function: c_int = 2294;
pub const GDK_KEY_g: c_int = 103;
pub const GDK_KEY_gabovedot: c_int = 757;
pub const GDK_KEY_gbreve: c_int = 699;
pub const GDK_KEY_gcaron: c_int = 16777703;
pub const GDK_KEY_gcedilla: c_int = 955;
pub const GDK_KEY_gcircumflex: c_int = 760;
pub const GDK_KEY_grave: c_int = 96;
pub const GDK_KEY_greater: c_int = 62;
pub const GDK_KEY_greaterthanequal: c_int = 2238;
pub const GDK_KEY_guillemotleft: c_int = 171;
pub const GDK_KEY_guillemotright: c_int = 187;
pub const GDK_KEY_h: c_int = 104;
pub const GDK_KEY_hairspace: c_int = 2728;
pub const GDK_KEY_hcircumflex: c_int = 694;
pub const GDK_KEY_heart: c_int = 2798;
pub const GDK_KEY_hebrew_aleph: c_int = 3296;
pub const GDK_KEY_hebrew_ayin: c_int = 3314;
pub const GDK_KEY_hebrew_bet: c_int = 3297;
pub const GDK_KEY_hebrew_beth: c_int = 3297;
pub const GDK_KEY_hebrew_chet: c_int = 3303;
pub const GDK_KEY_hebrew_dalet: c_int = 3299;
pub const GDK_KEY_hebrew_daleth: c_int = 3299;
pub const GDK_KEY_hebrew_doublelowline: c_int = 3295;
pub const GDK_KEY_hebrew_finalkaph: c_int = 3306;
pub const GDK_KEY_hebrew_finalmem: c_int = 3309;
pub const GDK_KEY_hebrew_finalnun: c_int = 3311;
pub const GDK_KEY_hebrew_finalpe: c_int = 3315;
pub const GDK_KEY_hebrew_finalzade: c_int = 3317;
pub const GDK_KEY_hebrew_finalzadi: c_int = 3317;
pub const GDK_KEY_hebrew_gimel: c_int = 3298;
pub const GDK_KEY_hebrew_gimmel: c_int = 3298;
pub const GDK_KEY_hebrew_he: c_int = 3300;
pub const GDK_KEY_hebrew_het: c_int = 3303;
pub const GDK_KEY_hebrew_kaph: c_int = 3307;
pub const GDK_KEY_hebrew_kuf: c_int = 3319;
pub const GDK_KEY_hebrew_lamed: c_int = 3308;
pub const GDK_KEY_hebrew_mem: c_int = 3310;
pub const GDK_KEY_hebrew_nun: c_int = 3312;
pub const GDK_KEY_hebrew_pe: c_int = 3316;
pub const GDK_KEY_hebrew_qoph: c_int = 3319;
pub const GDK_KEY_hebrew_resh: c_int = 3320;
pub const GDK_KEY_hebrew_samech: c_int = 3313;
pub const GDK_KEY_hebrew_samekh: c_int = 3313;
pub const GDK_KEY_hebrew_shin: c_int = 3321;
pub const GDK_KEY_hebrew_taf: c_int = 3322;
pub const GDK_KEY_hebrew_taw: c_int = 3322;
pub const GDK_KEY_hebrew_tet: c_int = 3304;
pub const GDK_KEY_hebrew_teth: c_int = 3304;
pub const GDK_KEY_hebrew_waw: c_int = 3301;
pub const GDK_KEY_hebrew_yod: c_int = 3305;
pub const GDK_KEY_hebrew_zade: c_int = 3318;
pub const GDK_KEY_hebrew_zadi: c_int = 3318;
pub const GDK_KEY_hebrew_zain: c_int = 3302;
pub const GDK_KEY_hebrew_zayin: c_int = 3302;
pub const GDK_KEY_hexagram: c_int = 2778;
pub const GDK_KEY_horizconnector: c_int = 2211;
pub const GDK_KEY_horizlinescan1: c_int = 2543;
pub const GDK_KEY_horizlinescan3: c_int = 2544;
pub const GDK_KEY_horizlinescan5: c_int = 2545;
pub const GDK_KEY_horizlinescan7: c_int = 2546;
pub const GDK_KEY_horizlinescan9: c_int = 2547;
pub const GDK_KEY_hstroke: c_int = 689;
pub const GDK_KEY_ht: c_int = 2530;
pub const GDK_KEY_hyphen: c_int = 173;
pub const GDK_KEY_i: c_int = 105;
pub const GDK_KEY_iTouch: c_int = 269025120;
pub const GDK_KEY_iacute: c_int = 237;
pub const GDK_KEY_ibelowdot: c_int = 16785099;
pub const GDK_KEY_ibreve: c_int = 16777517;
pub const GDK_KEY_icircumflex: c_int = 238;
pub const GDK_KEY_identical: c_int = 2255;
pub const GDK_KEY_idiaeresis: c_int = 239;
pub const GDK_KEY_idotless: c_int = 697;
pub const GDK_KEY_ifonlyif: c_int = 2253;
pub const GDK_KEY_igrave: c_int = 236;
pub const GDK_KEY_ihook: c_int = 16785097;
pub const GDK_KEY_imacron: c_int = 1007;
pub const GDK_KEY_implies: c_int = 2254;
pub const GDK_KEY_includedin: c_int = 2266;
pub const GDK_KEY_includes: c_int = 2267;
pub const GDK_KEY_infinity: c_int = 2242;
pub const GDK_KEY_integral: c_int = 2239;
pub const GDK_KEY_intersection: c_int = 2268;
pub const GDK_KEY_iogonek: c_int = 999;
pub const GDK_KEY_itilde: c_int = 949;
pub const GDK_KEY_j: c_int = 106;
pub const GDK_KEY_jcircumflex: c_int = 700;
pub const GDK_KEY_jot: c_int = 3018;
pub const GDK_KEY_k: c_int = 107;
pub const GDK_KEY_kana_A: c_int = 1201;
pub const GDK_KEY_kana_CHI: c_int = 1217;
pub const GDK_KEY_kana_E: c_int = 1204;
pub const GDK_KEY_kana_FU: c_int = 1228;
pub const GDK_KEY_kana_HA: c_int = 1226;
pub const GDK_KEY_kana_HE: c_int = 1229;
pub const GDK_KEY_kana_HI: c_int = 1227;
pub const GDK_KEY_kana_HO: c_int = 1230;
pub const GDK_KEY_kana_HU: c_int = 1228;
pub const GDK_KEY_kana_I: c_int = 1202;
pub const GDK_KEY_kana_KA: c_int = 1206;
pub const GDK_KEY_kana_KE: c_int = 1209;
pub const GDK_KEY_kana_KI: c_int = 1207;
pub const GDK_KEY_kana_KO: c_int = 1210;
pub const GDK_KEY_kana_KU: c_int = 1208;
pub const GDK_KEY_kana_MA: c_int = 1231;
pub const GDK_KEY_kana_ME: c_int = 1234;
pub const GDK_KEY_kana_MI: c_int = 1232;
pub const GDK_KEY_kana_MO: c_int = 1235;
pub const GDK_KEY_kana_MU: c_int = 1233;
pub const GDK_KEY_kana_N: c_int = 1245;
pub const GDK_KEY_kana_NA: c_int = 1221;
pub const GDK_KEY_kana_NE: c_int = 1224;
pub const GDK_KEY_kana_NI: c_int = 1222;
pub const GDK_KEY_kana_NO: c_int = 1225;
pub const GDK_KEY_kana_NU: c_int = 1223;
pub const GDK_KEY_kana_O: c_int = 1205;
pub const GDK_KEY_kana_RA: c_int = 1239;
pub const GDK_KEY_kana_RE: c_int = 1242;
pub const GDK_KEY_kana_RI: c_int = 1240;
pub const GDK_KEY_kana_RO: c_int = 1243;
pub const GDK_KEY_kana_RU: c_int = 1241;
pub const GDK_KEY_kana_SA: c_int = 1211;
pub const GDK_KEY_kana_SE: c_int = 1214;
pub const GDK_KEY_kana_SHI: c_int = 1212;
pub const GDK_KEY_kana_SO: c_int = 1215;
pub const GDK_KEY_kana_SU: c_int = 1213;
pub const GDK_KEY_kana_TA: c_int = 1216;
pub const GDK_KEY_kana_TE: c_int = 1219;
pub const GDK_KEY_kana_TI: c_int = 1217;
pub const GDK_KEY_kana_TO: c_int = 1220;
pub const GDK_KEY_kana_TSU: c_int = 1218;
pub const GDK_KEY_kana_TU: c_int = 1218;
pub const GDK_KEY_kana_U: c_int = 1203;
pub const GDK_KEY_kana_WA: c_int = 1244;
pub const GDK_KEY_kana_WO: c_int = 1190;
pub const GDK_KEY_kana_YA: c_int = 1236;
pub const GDK_KEY_kana_YO: c_int = 1238;
pub const GDK_KEY_kana_YU: c_int = 1237;
pub const GDK_KEY_kana_a: c_int = 1191;
pub const GDK_KEY_kana_closingbracket: c_int = 1187;
pub const GDK_KEY_kana_comma: c_int = 1188;
pub const GDK_KEY_kana_conjunctive: c_int = 1189;
pub const GDK_KEY_kana_e: c_int = 1194;
pub const GDK_KEY_kana_fullstop: c_int = 1185;
pub const GDK_KEY_kana_i: c_int = 1192;
pub const GDK_KEY_kana_middledot: c_int = 1189;
pub const GDK_KEY_kana_o: c_int = 1195;
pub const GDK_KEY_kana_openingbracket: c_int = 1186;
pub const GDK_KEY_kana_switch: c_int = 65406;
pub const GDK_KEY_kana_tsu: c_int = 1199;
pub const GDK_KEY_kana_tu: c_int = 1199;
pub const GDK_KEY_kana_u: c_int = 1193;
pub const GDK_KEY_kana_ya: c_int = 1196;
pub const GDK_KEY_kana_yo: c_int = 1198;
pub const GDK_KEY_kana_yu: c_int = 1197;
pub const GDK_KEY_kappa: c_int = 930;
pub const GDK_KEY_kcedilla: c_int = 1011;
pub const GDK_KEY_kra: c_int = 930;
pub const GDK_KEY_l: c_int = 108;
pub const GDK_KEY_lacute: c_int = 485;
pub const GDK_KEY_latincross: c_int = 2777;
pub const GDK_KEY_lbelowdot: c_int = 16784951;
pub const GDK_KEY_lcaron: c_int = 437;
pub const GDK_KEY_lcedilla: c_int = 950;
pub const GDK_KEY_leftanglebracket: c_int = 2748;
pub const GDK_KEY_leftarrow: c_int = 2299;
pub const GDK_KEY_leftcaret: c_int = 2979;
pub const GDK_KEY_leftdoublequotemark: c_int = 2770;
pub const GDK_KEY_leftmiddlecurlybrace: c_int = 2223;
pub const GDK_KEY_leftopentriangle: c_int = 2764;
pub const GDK_KEY_leftpointer: c_int = 2794;
pub const GDK_KEY_leftradical: c_int = 2209;
pub const GDK_KEY_leftshoe: c_int = 3034;
pub const GDK_KEY_leftsinglequotemark: c_int = 2768;
pub const GDK_KEY_leftt: c_int = 2548;
pub const GDK_KEY_lefttack: c_int = 3036;
pub const GDK_KEY_less: c_int = 60;
pub const GDK_KEY_lessthanequal: c_int = 2236;
pub const GDK_KEY_lf: c_int = 2533;
pub const GDK_KEY_logicaland: c_int = 2270;
pub const GDK_KEY_logicalor: c_int = 2271;
pub const GDK_KEY_lowleftcorner: c_int = 2541;
pub const GDK_KEY_lowrightcorner: c_int = 2538;
pub const GDK_KEY_lstroke: c_int = 435;
pub const GDK_KEY_m: c_int = 109;
pub const GDK_KEY_mabovedot: c_int = 16784961;
pub const GDK_KEY_macron: c_int = 175;
pub const GDK_KEY_malesymbol: c_int = 2807;
pub const GDK_KEY_maltesecross: c_int = 2800;
pub const GDK_KEY_marker: c_int = 2751;
pub const GDK_KEY_masculine: c_int = 186;
pub const GDK_KEY_minus: c_int = 45;
pub const GDK_KEY_minutes: c_int = 2774;
pub const GDK_KEY_mu: c_int = 181;
pub const GDK_KEY_multiply: c_int = 215;
pub const GDK_KEY_musicalflat: c_int = 2806;
pub const GDK_KEY_musicalsharp: c_int = 2805;
pub const GDK_KEY_n: c_int = 110;
pub const GDK_KEY_nabla: c_int = 2245;
pub const GDK_KEY_nacute: c_int = 497;
pub const GDK_KEY_ncaron: c_int = 498;
pub const GDK_KEY_ncedilla: c_int = 1009;
pub const GDK_KEY_ninesubscript: c_int = 16785545;
pub const GDK_KEY_ninesuperior: c_int = 16785529;
pub const GDK_KEY_nl: c_int = 2536;
pub const GDK_KEY_nobreakspace: c_int = 160;
pub const GDK_KEY_notapproxeq: c_int = 16785991;
pub const GDK_KEY_notelementof: c_int = 16785929;
pub const GDK_KEY_notequal: c_int = 2237;
pub const GDK_KEY_notidentical: c_int = 16786018;
pub const GDK_KEY_notsign: c_int = 172;
pub const GDK_KEY_ntilde: c_int = 241;
pub const GDK_KEY_numbersign: c_int = 35;
pub const GDK_KEY_numerosign: c_int = 1712;
pub const GDK_KEY_o: c_int = 111;
pub const GDK_KEY_oacute: c_int = 243;
pub const GDK_KEY_obarred: c_int = 16777845;
pub const GDK_KEY_obelowdot: c_int = 16785101;
pub const GDK_KEY_ocaron: c_int = 16777682;
pub const GDK_KEY_ocircumflex: c_int = 244;
pub const GDK_KEY_ocircumflexacute: c_int = 16785105;
pub const GDK_KEY_ocircumflexbelowdot: c_int = 16785113;
pub const GDK_KEY_ocircumflexgrave: c_int = 16785107;
pub const GDK_KEY_ocircumflexhook: c_int = 16785109;
pub const GDK_KEY_ocircumflextilde: c_int = 16785111;
pub const GDK_KEY_odiaeresis: c_int = 246;
pub const GDK_KEY_odoubleacute: c_int = 501;
pub const GDK_KEY_oe: c_int = 5053;
pub const GDK_KEY_ogonek: c_int = 434;
pub const GDK_KEY_ograve: c_int = 242;
pub const GDK_KEY_ohook: c_int = 16785103;
pub const GDK_KEY_ohorn: c_int = 16777633;
pub const GDK_KEY_ohornacute: c_int = 16785115;
pub const GDK_KEY_ohornbelowdot: c_int = 16785123;
pub const GDK_KEY_ohorngrave: c_int = 16785117;
pub const GDK_KEY_ohornhook: c_int = 16785119;
pub const GDK_KEY_ohorntilde: c_int = 16785121;
pub const GDK_KEY_omacron: c_int = 1010;
pub const GDK_KEY_oneeighth: c_int = 2755;
pub const GDK_KEY_onefifth: c_int = 2738;
pub const GDK_KEY_onehalf: c_int = 189;
pub const GDK_KEY_onequarter: c_int = 188;
pub const GDK_KEY_onesixth: c_int = 2742;
pub const GDK_KEY_onesubscript: c_int = 16785537;
pub const GDK_KEY_onesuperior: c_int = 185;
pub const GDK_KEY_onethird: c_int = 2736;
pub const GDK_KEY_ooblique: c_int = 248;
pub const GDK_KEY_openrectbullet: c_int = 2786;
pub const GDK_KEY_openstar: c_int = 2789;
pub const GDK_KEY_opentribulletdown: c_int = 2788;
pub const GDK_KEY_opentribulletup: c_int = 2787;
pub const GDK_KEY_ordfeminine: c_int = 170;
pub const GDK_KEY_oslash: c_int = 248;
pub const GDK_KEY_otilde: c_int = 245;
pub const GDK_KEY_overbar: c_int = 3008;
pub const GDK_KEY_overline: c_int = 1150;
pub const GDK_KEY_p: c_int = 112;
pub const GDK_KEY_pabovedot: c_int = 16784983;
pub const GDK_KEY_paragraph: c_int = 182;
pub const GDK_KEY_parenleft: c_int = 40;
pub const GDK_KEY_parenright: c_int = 41;
pub const GDK_KEY_partdifferential: c_int = 16785922;
pub const GDK_KEY_partialderivative: c_int = 2287;
pub const GDK_KEY_percent: c_int = 37;
pub const GDK_KEY_period: c_int = 46;
pub const GDK_KEY_periodcentered: c_int = 183;
pub const GDK_KEY_permille: c_int = 2773;
pub const GDK_KEY_phonographcopyright: c_int = 2811;
pub const GDK_KEY_plus: c_int = 43;
pub const GDK_KEY_plusminus: c_int = 177;
pub const GDK_KEY_prescription: c_int = 2772;
pub const GDK_KEY_prolongedsound: c_int = 1200;
pub const GDK_KEY_punctspace: c_int = 2726;
pub const GDK_KEY_q: c_int = 113;
pub const GDK_KEY_quad: c_int = 3020;
pub const GDK_KEY_question: c_int = 63;
pub const GDK_KEY_questiondown: c_int = 191;
pub const GDK_KEY_quotedbl: c_int = 34;
pub const GDK_KEY_quoteleft: c_int = 96;
pub const GDK_KEY_quoteright: c_int = 39;
pub const GDK_KEY_r: c_int = 114;
pub const GDK_KEY_racute: c_int = 480;
pub const GDK_KEY_radical: c_int = 2262;
pub const GDK_KEY_rcaron: c_int = 504;
pub const GDK_KEY_rcedilla: c_int = 947;
pub const GDK_KEY_registered: c_int = 174;
pub const GDK_KEY_rightanglebracket: c_int = 2750;
pub const GDK_KEY_rightarrow: c_int = 2301;
pub const GDK_KEY_rightcaret: c_int = 2982;
pub const GDK_KEY_rightdoublequotemark: c_int = 2771;
pub const GDK_KEY_rightmiddlecurlybrace: c_int = 2224;
pub const GDK_KEY_rightmiddlesummation: c_int = 2231;
pub const GDK_KEY_rightopentriangle: c_int = 2765;
pub const GDK_KEY_rightpointer: c_int = 2795;
pub const GDK_KEY_rightshoe: c_int = 3032;
pub const GDK_KEY_rightsinglequotemark: c_int = 2769;
pub const GDK_KEY_rightt: c_int = 2549;
pub const GDK_KEY_righttack: c_int = 3068;
pub const GDK_KEY_s: c_int = 115;
pub const GDK_KEY_sabovedot: c_int = 16784993;
pub const GDK_KEY_sacute: c_int = 438;
pub const GDK_KEY_scaron: c_int = 441;
pub const GDK_KEY_scedilla: c_int = 442;
pub const GDK_KEY_schwa: c_int = 16777817;
pub const GDK_KEY_scircumflex: c_int = 766;
pub const GDK_KEY_script_switch: c_int = 65406;
pub const GDK_KEY_seconds: c_int = 2775;
pub const GDK_KEY_section: c_int = 167;
pub const GDK_KEY_semicolon: c_int = 59;
pub const GDK_KEY_semivoicedsound: c_int = 1247;
pub const GDK_KEY_seveneighths: c_int = 2758;
pub const GDK_KEY_sevensubscript: c_int = 16785543;
pub const GDK_KEY_sevensuperior: c_int = 16785527;
pub const GDK_KEY_signaturemark: c_int = 2762;
pub const GDK_KEY_signifblank: c_int = 2732;
pub const GDK_KEY_similarequal: c_int = 2249;
pub const GDK_KEY_singlelowquotemark: c_int = 2813;
pub const GDK_KEY_sixsubscript: c_int = 16785542;
pub const GDK_KEY_sixsuperior: c_int = 16785526;
pub const GDK_KEY_slash: c_int = 47;
pub const GDK_KEY_soliddiamond: c_int = 2528;
pub const GDK_KEY_space: c_int = 32;
pub const GDK_KEY_squareroot: c_int = 16785946;
pub const GDK_KEY_ssharp: c_int = 223;
pub const GDK_KEY_sterling: c_int = 163;
pub const GDK_KEY_stricteq: c_int = 16786019;
pub const GDK_KEY_t: c_int = 116;
pub const GDK_KEY_tabovedot: c_int = 16785003;
pub const GDK_KEY_tcaron: c_int = 443;
pub const GDK_KEY_tcedilla: c_int = 510;
pub const GDK_KEY_telephone: c_int = 2809;
pub const GDK_KEY_telephonerecorder: c_int = 2810;
pub const GDK_KEY_therefore: c_int = 2240;
pub const GDK_KEY_thinspace: c_int = 2727;
pub const GDK_KEY_thorn: c_int = 254;
pub const GDK_KEY_threeeighths: c_int = 2756;
pub const GDK_KEY_threefifths: c_int = 2740;
pub const GDK_KEY_threequarters: c_int = 190;
pub const GDK_KEY_threesubscript: c_int = 16785539;
pub const GDK_KEY_threesuperior: c_int = 179;
pub const GDK_KEY_tintegral: c_int = 16785965;
pub const GDK_KEY_topintegral: c_int = 2212;
pub const GDK_KEY_topleftparens: c_int = 2219;
pub const GDK_KEY_topleftradical: c_int = 2210;
pub const GDK_KEY_topleftsqbracket: c_int = 2215;
pub const GDK_KEY_topleftsummation: c_int = 2225;
pub const GDK_KEY_toprightparens: c_int = 2221;
pub const GDK_KEY_toprightsqbracket: c_int = 2217;
pub const GDK_KEY_toprightsummation: c_int = 2229;
pub const GDK_KEY_topt: c_int = 2551;
pub const GDK_KEY_topvertsummationconnector: c_int = 2227;
pub const GDK_KEY_trademark: c_int = 2761;
pub const GDK_KEY_trademarkincircle: c_int = 2763;
pub const GDK_KEY_tslash: c_int = 956;
pub const GDK_KEY_twofifths: c_int = 2739;
pub const GDK_KEY_twosubscript: c_int = 16785538;
pub const GDK_KEY_twosuperior: c_int = 178;
pub const GDK_KEY_twothirds: c_int = 2737;
pub const GDK_KEY_u: c_int = 117;
pub const GDK_KEY_uacute: c_int = 250;
pub const GDK_KEY_ubelowdot: c_int = 16785125;
pub const GDK_KEY_ubreve: c_int = 765;
pub const GDK_KEY_ucircumflex: c_int = 251;
pub const GDK_KEY_udiaeresis: c_int = 252;
pub const GDK_KEY_udoubleacute: c_int = 507;
pub const GDK_KEY_ugrave: c_int = 249;
pub const GDK_KEY_uhook: c_int = 16785127;
pub const GDK_KEY_uhorn: c_int = 16777648;
pub const GDK_KEY_uhornacute: c_int = 16785129;
pub const GDK_KEY_uhornbelowdot: c_int = 16785137;
pub const GDK_KEY_uhorngrave: c_int = 16785131;
pub const GDK_KEY_uhornhook: c_int = 16785133;
pub const GDK_KEY_uhorntilde: c_int = 16785135;
pub const GDK_KEY_umacron: c_int = 1022;
pub const GDK_KEY_underbar: c_int = 3014;
pub const GDK_KEY_underscore: c_int = 95;
pub const GDK_KEY_union: c_int = 2269;
pub const GDK_KEY_uogonek: c_int = 1017;
pub const GDK_KEY_uparrow: c_int = 2300;
pub const GDK_KEY_upcaret: c_int = 2985;
pub const GDK_KEY_upleftcorner: c_int = 2540;
pub const GDK_KEY_uprightcorner: c_int = 2539;
pub const GDK_KEY_upshoe: c_int = 3011;
pub const GDK_KEY_upstile: c_int = 3027;
pub const GDK_KEY_uptack: c_int = 3022;
pub const GDK_KEY_uring: c_int = 505;
pub const GDK_KEY_utilde: c_int = 1021;
pub const GDK_KEY_v: c_int = 118;
pub const GDK_KEY_variation: c_int = 2241;
pub const GDK_KEY_vertbar: c_int = 2552;
pub const GDK_KEY_vertconnector: c_int = 2214;
pub const GDK_KEY_voicedsound: c_int = 1246;
pub const GDK_KEY_vt: c_int = 2537;
pub const GDK_KEY_w: c_int = 119;
pub const GDK_KEY_wacute: c_int = 16785027;
pub const GDK_KEY_wcircumflex: c_int = 16777589;
pub const GDK_KEY_wdiaeresis: c_int = 16785029;
pub const GDK_KEY_wgrave: c_int = 16785025;
pub const GDK_KEY_x: c_int = 120;
pub const GDK_KEY_xabovedot: c_int = 16785035;
pub const GDK_KEY_y: c_int = 121;
pub const GDK_KEY_yacute: c_int = 253;
pub const GDK_KEY_ybelowdot: c_int = 16785141;
pub const GDK_KEY_ycircumflex: c_int = 16777591;
pub const GDK_KEY_ydiaeresis: c_int = 255;
pub const GDK_KEY_yen: c_int = 165;
pub const GDK_KEY_ygrave: c_int = 16785139;
pub const GDK_KEY_yhook: c_int = 16785143;
pub const GDK_KEY_ytilde: c_int = 16785145;
pub const GDK_KEY_z: c_int = 122;
pub const GDK_KEY_zabovedot: c_int = 447;
pub const GDK_KEY_zacute: c_int = 444;
pub const GDK_KEY_zcaron: c_int = 446;
pub const GDK_KEY_zerosubscript: c_int = 16785536;
pub const GDK_KEY_zerosuperior: c_int = 16785520;
pub const GDK_KEY_zstroke: c_int = 16777654;
pub const GDK_MODIFIER_MASK: c_int = 469769999;
pub const GDK_PRIORITY_REDRAW: c_int = 120;

// Flags
pub type GdkAnchorHints = c_uint;
pub const GDK_ANCHOR_FLIP_X: GdkAnchorHints = 1;
pub const GDK_ANCHOR_FLIP_Y: GdkAnchorHints = 2;
pub const GDK_ANCHOR_SLIDE_X: GdkAnchorHints = 4;
pub const GDK_ANCHOR_SLIDE_Y: GdkAnchorHints = 8;
pub const GDK_ANCHOR_RESIZE_X: GdkAnchorHints = 16;
pub const GDK_ANCHOR_RESIZE_Y: GdkAnchorHints = 32;
pub const GDK_ANCHOR_FLIP: GdkAnchorHints = 3;
pub const GDK_ANCHOR_SLIDE: GdkAnchorHints = 12;
pub const GDK_ANCHOR_RESIZE: GdkAnchorHints = 48;

pub type GdkAxisFlags = c_uint;
pub const GDK_AXIS_FLAG_X: GdkAxisFlags = 2;
pub const GDK_AXIS_FLAG_Y: GdkAxisFlags = 4;
pub const GDK_AXIS_FLAG_DELTA_X: GdkAxisFlags = 8;
pub const GDK_AXIS_FLAG_DELTA_Y: GdkAxisFlags = 16;
pub const GDK_AXIS_FLAG_PRESSURE: GdkAxisFlags = 32;
pub const GDK_AXIS_FLAG_XTILT: GdkAxisFlags = 64;
pub const GDK_AXIS_FLAG_YTILT: GdkAxisFlags = 128;
pub const GDK_AXIS_FLAG_WHEEL: GdkAxisFlags = 256;
pub const GDK_AXIS_FLAG_DISTANCE: GdkAxisFlags = 512;
pub const GDK_AXIS_FLAG_ROTATION: GdkAxisFlags = 1024;
pub const GDK_AXIS_FLAG_SLIDER: GdkAxisFlags = 2048;

pub type GdkDragAction = c_uint;
pub const GDK_ACTION_COPY: GdkDragAction = 1;
pub const GDK_ACTION_MOVE: GdkDragAction = 2;
pub const GDK_ACTION_LINK: GdkDragAction = 4;
pub const GDK_ACTION_ASK: GdkDragAction = 8;

pub type GdkFrameClockPhase = c_uint;
pub const GDK_FRAME_CLOCK_PHASE_NONE: GdkFrameClockPhase = 0;
pub const GDK_FRAME_CLOCK_PHASE_FLUSH_EVENTS: GdkFrameClockPhase = 1;
pub const GDK_FRAME_CLOCK_PHASE_BEFORE_PAINT: GdkFrameClockPhase = 2;
pub const GDK_FRAME_CLOCK_PHASE_UPDATE: GdkFrameClockPhase = 4;
pub const GDK_FRAME_CLOCK_PHASE_LAYOUT: GdkFrameClockPhase = 8;
pub const GDK_FRAME_CLOCK_PHASE_PAINT: GdkFrameClockPhase = 16;
pub const GDK_FRAME_CLOCK_PHASE_RESUME_EVENTS: GdkFrameClockPhase = 32;
pub const GDK_FRAME_CLOCK_PHASE_AFTER_PAINT: GdkFrameClockPhase = 64;

pub type GdkGLAPI = c_uint;
pub const GDK_GL_API_GL: GdkGLAPI = 1;
pub const GDK_GL_API_GLES: GdkGLAPI = 2;

pub type GdkModifierType = c_uint;
pub const GDK_SHIFT_MASK: GdkModifierType = 1;
pub const GDK_LOCK_MASK: GdkModifierType = 2;
pub const GDK_CONTROL_MASK: GdkModifierType = 4;
pub const GDK_ALT_MASK: GdkModifierType = 8;
pub const GDK_BUTTON1_MASK: GdkModifierType = 256;
pub const GDK_BUTTON2_MASK: GdkModifierType = 512;
pub const GDK_BUTTON3_MASK: GdkModifierType = 1024;
pub const GDK_BUTTON4_MASK: GdkModifierType = 2048;
pub const GDK_BUTTON5_MASK: GdkModifierType = 4096;
pub const GDK_SUPER_MASK: GdkModifierType = 67108864;
pub const GDK_HYPER_MASK: GdkModifierType = 134217728;
pub const GDK_META_MASK: GdkModifierType = 268435456;

pub type GdkPaintableFlags = c_uint;
pub const GDK_PAINTABLE_STATIC_SIZE: GdkPaintableFlags = 1;
pub const GDK_PAINTABLE_STATIC_CONTENTS: GdkPaintableFlags = 2;

pub type GdkSeatCapabilities = c_uint;
pub const GDK_SEAT_CAPABILITY_NONE: GdkSeatCapabilities = 0;
pub const GDK_SEAT_CAPABILITY_POINTER: GdkSeatCapabilities = 1;
pub const GDK_SEAT_CAPABILITY_TOUCH: GdkSeatCapabilities = 2;
pub const GDK_SEAT_CAPABILITY_TABLET_STYLUS: GdkSeatCapabilities = 4;
pub const GDK_SEAT_CAPABILITY_KEYBOARD: GdkSeatCapabilities = 8;
pub const GDK_SEAT_CAPABILITY_TABLET_PAD: GdkSeatCapabilities = 16;
pub const GDK_SEAT_CAPABILITY_ALL_POINTING: GdkSeatCapabilities = 7;
pub const GDK_SEAT_CAPABILITY_ALL: GdkSeatCapabilities = 15;

pub type GdkToplevelState = c_uint;
pub const GDK_TOPLEVEL_STATE_MINIMIZED: GdkToplevelState = 1;
pub const GDK_TOPLEVEL_STATE_MAXIMIZED: GdkToplevelState = 2;
pub const GDK_TOPLEVEL_STATE_STICKY: GdkToplevelState = 4;
pub const GDK_TOPLEVEL_STATE_FULLSCREEN: GdkToplevelState = 8;
pub const GDK_TOPLEVEL_STATE_ABOVE: GdkToplevelState = 16;
pub const GDK_TOPLEVEL_STATE_BELOW: GdkToplevelState = 32;
pub const GDK_TOPLEVEL_STATE_FOCUSED: GdkToplevelState = 64;
pub const GDK_TOPLEVEL_STATE_TILED: GdkToplevelState = 128;
pub const GDK_TOPLEVEL_STATE_TOP_TILED: GdkToplevelState = 256;
pub const GDK_TOPLEVEL_STATE_TOP_RESIZABLE: GdkToplevelState = 512;
pub const GDK_TOPLEVEL_STATE_RIGHT_TILED: GdkToplevelState = 1024;
pub const GDK_TOPLEVEL_STATE_RIGHT_RESIZABLE: GdkToplevelState = 2048;
pub const GDK_TOPLEVEL_STATE_BOTTOM_TILED: GdkToplevelState = 4096;
pub const GDK_TOPLEVEL_STATE_BOTTOM_RESIZABLE: GdkToplevelState = 8192;
pub const GDK_TOPLEVEL_STATE_LEFT_TILED: GdkToplevelState = 16384;
pub const GDK_TOPLEVEL_STATE_LEFT_RESIZABLE: GdkToplevelState = 32768;

// Callbacks
pub type GdkContentDeserializeFunc = Option<unsafe extern "C" fn(*mut GdkContentDeserializer)>;
pub type GdkContentSerializeFunc = Option<unsafe extern "C" fn(*mut GdkContentSerializer)>;

// Records
#[repr(C)]
pub struct GdkContentFormats {
    _data: [u8; 0],
    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
}

impl ::std::fmt::Debug for GdkContentFormats {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        f.debug_struct(&format!("GdkContentFormats @ {self:p}"))
            .finish()
    }
}

#[repr(C)]
pub struct GdkContentFormatsBuilder {
    _data: [u8; 0],
    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
}

impl ::std::fmt::Debug for GdkContentFormatsBuilder {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        f.debug_struct(&format!("GdkContentFormatsBuilder @ {self:p}"))
            .finish()
    }
}

#[derive(Copy, Clone)]
#[repr(C)]
pub struct GdkContentProviderClass {
    pub parent_class: gobject::GObjectClass,
    pub content_changed: Option<unsafe extern "C" fn(*mut GdkContentProvider)>,
    pub attach_clipboard: Option<unsafe extern "C" fn(*mut GdkContentProvider, *mut GdkClipboard)>,
    pub detach_clipboard: Option<unsafe extern "C" fn(*mut GdkContentProvider, *mut GdkClipboard)>,
    pub ref_formats:
        Option<unsafe extern "C" fn(*mut GdkContentProvider) -> *mut GdkContentFormats>,
    pub ref_storable_formats:
        Option<unsafe extern "C" fn(*mut GdkContentProvider) -> *mut GdkContentFormats>,
    pub write_mime_type_async: Option<
        unsafe extern "C" fn(
            *mut GdkContentProvider,
            *const c_char,
            *mut gio::GOutputStream,
            c_int,
            *mut gio::GCancellable,
            gio::GAsyncReadyCallback,
            gpointer,
        ),
    >,
    pub write_mime_type_finish: Option<
        unsafe extern "C" fn(
            *mut GdkContentProvider,
            *mut gio::GAsyncResult,
            *mut *mut glib::GError,
        ) -> gboolean,
    >,
    pub get_value: Option<
        unsafe extern "C" fn(
            *mut GdkContentProvider,
            *mut gobject::GValue,
            *mut *mut glib::GError,
        ) -> gboolean,
    >,
    pub padding: [gpointer; 8],
}

impl ::std::fmt::Debug for GdkContentProviderClass {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        f.debug_struct(&format!("GdkContentProviderClass @ {self:p}"))
            .field("parent_class", &self.parent_class)
            .field("content_changed", &self.content_changed)
            .field("attach_clipboard", &self.attach_clipboard)
            .field("detach_clipboard", &self.detach_clipboard)
            .field("ref_formats", &self.ref_formats)
            .field("ref_storable_formats", &self.ref_storable_formats)
            .field("write_mime_type_async", &self.write_mime_type_async)
            .field("write_mime_type_finish", &self.write_mime_type_finish)
            .field("get_value", &self.get_value)
            .finish()
    }
}

#[repr(C)]
pub struct _GdkDevicePadInterface {
    _data: [u8; 0],
    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
}

pub type GdkDevicePadInterface = *mut _GdkDevicePadInterface;

#[repr(C)]
pub struct _GdkDragSurfaceInterface {
    _data: [u8; 0],
    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
}

pub type GdkDragSurfaceInterface = *mut _GdkDragSurfaceInterface;

#[repr(C)]
pub struct GdkEventSequence {
    _data: [u8; 0],
    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
}

impl ::std::fmt::Debug for GdkEventSequence {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        f.debug_struct(&format!("GdkEventSequence @ {self:p}"))
            .finish()
    }
}

#[repr(C)]
pub struct GdkFileList {
    _data: [u8; 0],
    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
}

impl ::std::fmt::Debug for GdkFileList {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        f.debug_struct(&format!("GdkFileList @ {self:p}")).finish()
    }
}

#[repr(C)]
pub struct _GdkFrameClockClass {
    _data: [u8; 0],
    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
}

pub type GdkFrameClockClass = *mut _GdkFrameClockClass;

#[repr(C)]
pub struct _GdkFrameClockPrivate {
    _data: [u8; 0],
    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
}

pub type GdkFrameClockPrivate = *mut _GdkFrameClockPrivate;

#[repr(C)]
pub struct GdkFrameTimings {
    _data: [u8; 0],
    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
}

impl ::std::fmt::Debug for GdkFrameTimings {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        f.debug_struct(&format!("GdkFrameTimings @ {self:p}"))
            .finish()
    }
}

#[repr(C)]
pub struct _GdkGLTextureClass {
    _data: [u8; 0],
    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
}

pub type GdkGLTextureClass = *mut _GdkGLTextureClass;

#[derive(Copy, Clone)]
#[repr(C)]
pub struct GdkKeymapKey {
    pub keycode: c_uint,
    pub group: c_int,
    pub level: c_int,
}

impl ::std::fmt::Debug for GdkKeymapKey {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        f.debug_struct(&format!("GdkKeymapKey @ {self:p}"))
            .field("keycode", &self.keycode)
            .field("group", &self.group)
            .field("level", &self.level)
            .finish()
    }
}

#[repr(C)]
pub struct _GdkMemoryTextureClass {
    _data: [u8; 0],
    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
}

pub type GdkMemoryTextureClass = *mut _GdkMemoryTextureClass;

#[repr(C)]
pub struct _GdkMonitorClass {
    _data: [u8; 0],
    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
}

pub type GdkMonitorClass = *mut _GdkMonitorClass;

#[derive(Copy, Clone)]
#[repr(C)]
pub struct GdkPaintableInterface {
    pub g_iface: gobject::GTypeInterface,
    pub snapshot:
        Option<unsafe extern "C" fn(*mut GdkPaintable, *mut GdkSnapshot, c_double, c_double)>,
    pub get_current_image: Option<unsafe extern "C" fn(*mut GdkPaintable) -> *mut GdkPaintable>,
    pub get_flags: Option<unsafe extern "C" fn(*mut GdkPaintable) -> GdkPaintableFlags>,
    pub get_intrinsic_width: Option<unsafe extern "C" fn(*mut GdkPaintable) -> c_int>,
    pub get_intrinsic_height: Option<unsafe extern "C" fn(*mut GdkPaintable) -> c_int>,
    pub get_intrinsic_aspect_ratio: Option<unsafe extern "C" fn(*mut GdkPaintable) -> c_double>,
}

impl ::std::fmt::Debug for GdkPaintableInterface {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        f.debug_struct(&format!("GdkPaintableInterface @ {self:p}"))
            .field("snapshot", &self.snapshot)
            .field("get_current_image", &self.get_current_image)
            .field("get_flags", &self.get_flags)
            .field("get_intrinsic_width", &self.get_intrinsic_width)
            .field("get_intrinsic_height", &self.get_intrinsic_height)
            .field(
                "get_intrinsic_aspect_ratio",
                &self.get_intrinsic_aspect_ratio,
            )
            .finish()
    }
}

#[repr(C)]
pub struct _GdkPopupInterface {
    _data: [u8; 0],
    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
}

pub type GdkPopupInterface = *mut _GdkPopupInterface;

#[repr(C)]
pub struct GdkPopupLayout {
    _data: [u8; 0],
    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
}

impl ::std::fmt::Debug for GdkPopupLayout {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        f.debug_struct(&format!("GdkPopupLayout @ {self:p}"))
            .finish()
    }
}

#[derive(Copy, Clone)]
#[repr(C)]
pub struct GdkRGBA {
    pub red: c_float,
    pub green: c_float,
    pub blue: c_float,
    pub alpha: c_float,
}

impl ::std::fmt::Debug for GdkRGBA {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        f.debug_struct(&format!("GdkRGBA @ {self:p}"))
            .field("red", &self.red)
            .field("green", &self.green)
            .field("blue", &self.blue)
            .field("alpha", &self.alpha)
            .finish()
    }
}

#[derive(Copy, Clone)]
#[repr(C)]
pub struct GdkRectangle {
    pub x: c_int,
    pub y: c_int,
    pub width: c_int,
    pub height: c_int,
}

impl ::std::fmt::Debug for GdkRectangle {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        f.debug_struct(&format!("GdkRectangle @ {self:p}"))
            .field("x", &self.x)
            .field("y", &self.y)
            .field("width", &self.width)
            .field("height", &self.height)
            .finish()
    }
}

#[repr(C)]
pub struct _GdkSnapshotClass {
    _data: [u8; 0],
    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
}

pub type GdkSnapshotClass = *mut _GdkSnapshotClass;

#[repr(C)]
pub struct _GdkSurfaceClass {
    _data: [u8; 0],
    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
}

pub type GdkSurfaceClass = *mut _GdkSurfaceClass;

#[repr(C)]
pub struct _GdkTextureClass {
    _data: [u8; 0],
    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
}

pub type GdkTextureClass = *mut _GdkTextureClass;

#[derive(Copy, Clone)]
#[repr(C)]
pub struct GdkTimeCoord {
    pub time: u32,
    pub flags: GdkAxisFlags,
    pub axes: [c_double; 12],
}

impl ::std::fmt::Debug for GdkTimeCoord {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        f.debug_struct(&format!("GdkTimeCoord @ {self:p}"))
            .field("time", &self.time)
            .field("flags", &self.flags)
            .field("axes", &self.axes)
            .finish()
    }
}

#[repr(C)]
pub struct _GdkToplevelInterface {
    _data: [u8; 0],
    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
}

pub type GdkToplevelInterface = *mut _GdkToplevelInterface;

#[repr(C)]
pub struct GdkToplevelLayout {
    _data: [u8; 0],
    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
}

impl ::std::fmt::Debug for GdkToplevelLayout {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        f.debug_struct(&format!("GdkToplevelLayout @ {self:p}"))
            .finish()
    }
}

#[repr(C)]
pub struct _GdkToplevelSize {
    _data: [u8; 0],
    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
}

pub type GdkToplevelSize = *mut _GdkToplevelSize;

// Classes
#[repr(C)]
pub struct GdkAppLaunchContext {
    _data: [u8; 0],
    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
}

impl ::std::fmt::Debug for GdkAppLaunchContext {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        f.debug_struct(&format!("GdkAppLaunchContext @ {self:p}"))
            .finish()
    }
}

#[repr(C)]
pub struct GdkButtonEvent {
    _data: [u8; 0],
    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
}

impl ::std::fmt::Debug for GdkButtonEvent {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        f.debug_struct(&format!("GdkButtonEvent @ {self:p}"))
            .finish()
    }
}

#[repr(C)]
pub struct GdkCairoContext {
    _data: [u8; 0],
    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
}

impl ::std::fmt::Debug for GdkCairoContext {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        f.debug_struct(&format!("GdkCairoContext @ {self:p}"))
            .finish()
    }
}

#[repr(C)]
pub struct GdkClipboard {
    _data: [u8; 0],
    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
}

impl ::std::fmt::Debug for GdkClipboard {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        f.debug_struct(&format!("GdkClipboard @ {self:p}")).finish()
    }
}

#[repr(C)]
pub struct GdkContentDeserializer {
    _data: [u8; 0],
    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
}

impl ::std::fmt::Debug for GdkContentDeserializer {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        f.debug_struct(&format!("GdkContentDeserializer @ {self:p}"))
            .finish()
    }
}

#[derive(Copy, Clone)]
#[repr(C)]
pub struct GdkContentProvider {
    pub parent: gobject::GObject,
}

impl ::std::fmt::Debug for GdkContentProvider {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        f.debug_struct(&format!("GdkContentProvider @ {self:p}"))
            .field("parent", &self.parent)
            .finish()
    }
}

#[repr(C)]
pub struct GdkContentSerializer {
    _data: [u8; 0],
    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
}

impl ::std::fmt::Debug for GdkContentSerializer {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        f.debug_struct(&format!("GdkContentSerializer @ {self:p}"))
            .finish()
    }
}

#[repr(C)]
pub struct GdkCrossingEvent {
    _data: [u8; 0],
    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
}

impl ::std::fmt::Debug for GdkCrossingEvent {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        f.debug_struct(&format!("GdkCrossingEvent @ {self:p}"))
            .finish()
    }
}

#[repr(C)]
pub struct GdkCursor {
    _data: [u8; 0],
    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
}

impl ::std::fmt::Debug for GdkCursor {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        f.debug_struct(&format!("GdkCursor @ {self:p}")).finish()
    }
}

#[repr(C)]
pub struct GdkDNDEvent {
    _data: [u8; 0],
    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
}

impl ::std::fmt::Debug for GdkDNDEvent {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        f.debug_struct(&format!("GdkDNDEvent @ {self:p}")).finish()
    }
}

#[repr(C)]
pub struct GdkDeleteEvent {
    _data: [u8; 0],
    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
}

impl ::std::fmt::Debug for GdkDeleteEvent {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        f.debug_struct(&format!("GdkDeleteEvent @ {self:p}"))
            .finish()
    }
}

#[repr(C)]
pub struct GdkDevice {
    _data: [u8; 0],
    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
}

impl ::std::fmt::Debug for GdkDevice {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        f.debug_struct(&format!("GdkDevice @ {self:p}")).finish()
    }
}

#[repr(C)]
pub struct GdkDeviceTool {
    _data: [u8; 0],
    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
}

impl ::std::fmt::Debug for GdkDeviceTool {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        f.debug_struct(&format!("GdkDeviceTool @ {self:p}"))
            .finish()
    }
}

#[repr(C)]
pub struct GdkDisplay {
    _data: [u8; 0],
    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
}

impl ::std::fmt::Debug for GdkDisplay {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        f.debug_struct(&format!("GdkDisplay @ {self:p}")).finish()
    }
}

#[repr(C)]
pub struct GdkDisplayManager {
    _data: [u8; 0],
    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
}

impl ::std::fmt::Debug for GdkDisplayManager {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        f.debug_struct(&format!("GdkDisplayManager @ {self:p}"))
            .finish()
    }
}

#[repr(C)]
pub struct GdkDrag {
    _data: [u8; 0],
    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
}

impl ::std::fmt::Debug for GdkDrag {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        f.debug_struct(&format!("GdkDrag @ {self:p}")).finish()
    }
}

#[repr(C)]
pub struct GdkDrawContext {
    _data: [u8; 0],
    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
}

impl ::std::fmt::Debug for GdkDrawContext {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        f.debug_struct(&format!("GdkDrawContext @ {self:p}"))
            .finish()
    }
}

#[repr(C)]
pub struct GdkDrop {
    _data: [u8; 0],
    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
}

impl ::std::fmt::Debug for GdkDrop {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        f.debug_struct(&format!("GdkDrop @ {self:p}")).finish()
    }
}

#[repr(C)]
pub struct GdkEvent {
    _data: [u8; 0],
    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
}

impl ::std::fmt::Debug for GdkEvent {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        f.debug_struct(&format!("GdkEvent @ {self:p}")).finish()
    }
}

#[repr(C)]
pub struct GdkFocusEvent {
    _data: [u8; 0],
    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
}

impl ::std::fmt::Debug for GdkFocusEvent {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        f.debug_struct(&format!("GdkFocusEvent @ {self:p}"))
            .finish()
    }
}

#[repr(C)]
pub struct GdkFrameClock {
    _data: [u8; 0],
    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
}

impl ::std::fmt::Debug for GdkFrameClock {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        f.debug_struct(&format!("GdkFrameClock @ {self:p}"))
            .finish()
    }
}

#[repr(C)]
pub struct GdkGLContext {
    _data: [u8; 0],
    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
}

impl ::std::fmt::Debug for GdkGLContext {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        f.debug_struct(&format!("GdkGLContext @ {self:p}")).finish()
    }
}

#[repr(C)]
pub struct GdkGLTexture {
    _data: [u8; 0],
    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
}

impl ::std::fmt::Debug for GdkGLTexture {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        f.debug_struct(&format!("GdkGLTexture @ {self:p}")).finish()
    }
}

#[repr(C)]
pub struct GdkGrabBrokenEvent {
    _data: [u8; 0],
    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
}

impl ::std::fmt::Debug for GdkGrabBrokenEvent {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        f.debug_struct(&format!("GdkGrabBrokenEvent @ {self:p}"))
            .finish()
    }
}

#[repr(C)]
pub struct GdkKeyEvent {
    _data: [u8; 0],
    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
}

impl ::std::fmt::Debug for GdkKeyEvent {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        f.debug_struct(&format!("GdkKeyEvent @ {self:p}")).finish()
    }
}

#[repr(C)]
pub struct GdkMemoryTexture {
    _data: [u8; 0],
    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
}

impl ::std::fmt::Debug for GdkMemoryTexture {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        f.debug_struct(&format!("GdkMemoryTexture @ {self:p}"))
            .finish()
    }
}

#[repr(C)]
pub struct GdkMonitor {
    _data: [u8; 0],
    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
}

impl ::std::fmt::Debug for GdkMonitor {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        f.debug_struct(&format!("GdkMonitor @ {self:p}")).finish()
    }
}

#[repr(C)]
pub struct GdkMotionEvent {
    _data: [u8; 0],
    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
}

impl ::std::fmt::Debug for GdkMotionEvent {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        f.debug_struct(&format!("GdkMotionEvent @ {self:p}"))
            .finish()
    }
}

#[repr(C)]
pub struct GdkPadEvent {
    _data: [u8; 0],
    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
}

impl ::std::fmt::Debug for GdkPadEvent {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        f.debug_struct(&format!("GdkPadEvent @ {self:p}")).finish()
    }
}

#[repr(C)]
pub struct GdkProximityEvent {
    _data: [u8; 0],
    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
}

impl ::std::fmt::Debug for GdkProximityEvent {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        f.debug_struct(&format!("GdkProximityEvent @ {self:p}"))
            .finish()
    }
}

#[repr(C)]
pub struct GdkScrollEvent {
    _data: [u8; 0],
    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
}

impl ::std::fmt::Debug for GdkScrollEvent {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        f.debug_struct(&format!("GdkScrollEvent @ {self:p}"))
            .finish()
    }
}

#[derive(Copy, Clone)]
#[repr(C)]
pub struct GdkSeat {
    pub parent_instance: gobject::GObject,
}

impl ::std::fmt::Debug for GdkSeat {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        f.debug_struct(&format!("GdkSeat @ {self:p}"))
            .field("parent_instance", &self.parent_instance)
            .finish()
    }
}

#[repr(C)]
pub struct GdkSnapshot {
    _data: [u8; 0],
    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
}

impl ::std::fmt::Debug for GdkSnapshot {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        f.debug_struct(&format!("GdkSnapshot @ {self:p}")).finish()
    }
}

#[repr(C)]
pub struct GdkSurface {
    _data: [u8; 0],
    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
}

impl ::std::fmt::Debug for GdkSurface {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        f.debug_struct(&format!("GdkSurface @ {self:p}")).finish()
    }
}

#[repr(C)]
pub struct GdkTexture {
    _data: [u8; 0],
    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
}

impl ::std::fmt::Debug for GdkTexture {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        f.debug_struct(&format!("GdkTexture @ {self:p}")).finish()
    }
}

#[repr(C)]
pub struct GdkTouchEvent {
    _data: [u8; 0],
    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
}

impl ::std::fmt::Debug for GdkTouchEvent {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        f.debug_struct(&format!("GdkTouchEvent @ {self:p}"))
            .finish()
    }
}

#[repr(C)]
pub struct GdkTouchpadEvent {
    _data: [u8; 0],
    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
}

impl ::std::fmt::Debug for GdkTouchpadEvent {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        f.debug_struct(&format!("GdkTouchpadEvent @ {self:p}"))
            .finish()
    }
}

#[repr(C)]
pub struct GdkVulkanContext {
    _data: [u8; 0],
    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
}

impl ::std::fmt::Debug for GdkVulkanContext {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        f.debug_struct(&format!("GdkVulkanContext @ {self:p}"))
            .finish()
    }
}

// Interfaces
#[repr(C)]
pub struct GdkDevicePad {
    _data: [u8; 0],
    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
}

impl ::std::fmt::Debug for GdkDevicePad {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        write!(f, "GdkDevicePad @ {self:p}")
    }
}

#[repr(C)]
pub struct GdkDragSurface {
    _data: [u8; 0],
    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
}

impl ::std::fmt::Debug for GdkDragSurface {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        write!(f, "GdkDragSurface @ {self:p}")
    }
}

#[repr(C)]
pub struct GdkPaintable {
    _data: [u8; 0],
    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
}

impl ::std::fmt::Debug for GdkPaintable {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        write!(f, "GdkPaintable @ {self:p}")
    }
}

#[repr(C)]
pub struct GdkPopup {
    _data: [u8; 0],
    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
}

impl ::std::fmt::Debug for GdkPopup {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        write!(f, "GdkPopup @ {self:p}")
    }
}

#[repr(C)]
pub struct GdkToplevel {
    _data: [u8; 0],
    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
}

impl ::std::fmt::Debug for GdkToplevel {
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
        write!(f, "GdkToplevel @ {self:p}")
    }
}

#[link(name = "gtk-4")]
extern "C" {

    //=========================================================================
    // GdkAxisUse
    //=========================================================================
    pub fn gdk_axis_use_get_type() -> GType;

    //=========================================================================
    // GdkCrossingMode
    //=========================================================================
    pub fn gdk_crossing_mode_get_type() -> GType;

    //=========================================================================
    // GdkDevicePadFeature
    //=========================================================================
    pub fn gdk_device_pad_feature_get_type() -> GType;

    //=========================================================================
    // GdkDeviceToolType
    //=========================================================================
    pub fn gdk_device_tool_type_get_type() -> GType;

    //=========================================================================
    // GdkDragCancelReason
    //=========================================================================
    pub fn gdk_drag_cancel_reason_get_type() -> GType;

    //=========================================================================
    // GdkEventType
    //=========================================================================
    pub fn gdk_event_type_get_type() -> GType;

    //=========================================================================
    // GdkFullscreenMode
    //=========================================================================
    pub fn gdk_fullscreen_mode_get_type() -> GType;

    //=========================================================================
    // GdkGLError
    //=========================================================================
    pub fn gdk_gl_error_get_type() -> GType;
    pub fn gdk_gl_error_quark() -> glib::GQuark;

    //=========================================================================
    // GdkGravity
    //=========================================================================
    pub fn gdk_gravity_get_type() -> GType;

    //=========================================================================
    // GdkInputSource
    //=========================================================================
    pub fn gdk_input_source_get_type() -> GType;

    //=========================================================================
    // GdkKeyMatch
    //=========================================================================
    pub fn gdk_key_match_get_type() -> GType;

    //=========================================================================
    // GdkMemoryFormat
    //=========================================================================
    pub fn gdk_memory_format_get_type() -> GType;

    //=========================================================================
    // GdkNotifyType
    //=========================================================================
    pub fn gdk_notify_type_get_type() -> GType;

    //=========================================================================
    // GdkScrollDirection
    //=========================================================================
    pub fn gdk_scroll_direction_get_type() -> GType;

    //=========================================================================
    // GdkScrollUnit
    //=========================================================================
    #[cfg(any(feature = "v4_8", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v4_8")))]
    pub fn gdk_scroll_unit_get_type() -> GType;

    //=========================================================================
    // GdkSubpixelLayout
    //=========================================================================
    pub fn gdk_subpixel_layout_get_type() -> GType;

    //=========================================================================
    // GdkSurfaceEdge
    //=========================================================================
    pub fn gdk_surface_edge_get_type() -> GType;

    //=========================================================================
    // GdkTextureError
    //=========================================================================
    #[cfg(any(feature = "v4_6", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v4_6")))]
    pub fn gdk_texture_error_get_type() -> GType;
    #[cfg(any(feature = "v4_6", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v4_6")))]
    pub fn gdk_texture_error_quark() -> glib::GQuark;

    //=========================================================================
    // GdkTitlebarGesture
    //=========================================================================
    #[cfg(any(feature = "v4_4", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v4_4")))]
    pub fn gdk_titlebar_gesture_get_type() -> GType;

    //=========================================================================
    // GdkTouchpadGesturePhase
    //=========================================================================
    pub fn gdk_touchpad_gesture_phase_get_type() -> GType;

    //=========================================================================
    // GdkVulkanError
    //=========================================================================
    pub fn gdk_vulkan_error_get_type() -> GType;
    pub fn gdk_vulkan_error_quark() -> glib::GQuark;

    //=========================================================================
    // GdkAnchorHints
    //=========================================================================
    pub fn gdk_anchor_hints_get_type() -> GType;

    //=========================================================================
    // GdkAxisFlags
    //=========================================================================
    pub fn gdk_axis_flags_get_type() -> GType;

    //=========================================================================
    // GdkDragAction
    //=========================================================================
    pub fn gdk_drag_action_get_type() -> GType;
    pub fn gdk_drag_action_is_unique(action: GdkDragAction) -> gboolean;

    //=========================================================================
    // GdkFrameClockPhase
    //=========================================================================
    pub fn gdk_frame_clock_phase_get_type() -> GType;

    //=========================================================================
    // GdkGLAPI
    //=========================================================================
    #[cfg(any(feature = "v4_6", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v4_6")))]
    pub fn gdk_gl_api_get_type() -> GType;

    //=========================================================================
    // GdkModifierType
    //=========================================================================
    pub fn gdk_modifier_type_get_type() -> GType;

    //=========================================================================
    // GdkPaintableFlags
    //=========================================================================
    pub fn gdk_paintable_flags_get_type() -> GType;

    //=========================================================================
    // GdkSeatCapabilities
    //=========================================================================
    pub fn gdk_seat_capabilities_get_type() -> GType;

    //=========================================================================
    // GdkToplevelState
    //=========================================================================
    pub fn gdk_toplevel_state_get_type() -> GType;

    //=========================================================================
    // GdkContentFormats
    //=========================================================================
    pub fn gdk_content_formats_get_type() -> GType;
    pub fn gdk_content_formats_new(
        mime_types: *mut *const c_char,
        n_mime_types: c_uint,
    ) -> *mut GdkContentFormats;
    pub fn gdk_content_formats_new_for_gtype(type_: GType) -> *mut GdkContentFormats;
    pub fn gdk_content_formats_contain_gtype(
        formats: *const GdkContentFormats,
        type_: GType,
    ) -> gboolean;
    pub fn gdk_content_formats_contain_mime_type(
        formats: *const GdkContentFormats,
        mime_type: *const c_char,
    ) -> gboolean;
    pub fn gdk_content_formats_get_gtypes(
        formats: *const GdkContentFormats,
        n_gtypes: *mut size_t,
    ) -> *const GType;
    pub fn gdk_content_formats_get_mime_types(
        formats: *const GdkContentFormats,
        n_mime_types: *mut size_t,
    ) -> *const *const c_char;
    pub fn gdk_content_formats_match(
        first: *const GdkContentFormats,
        second: *const GdkContentFormats,
    ) -> gboolean;
    pub fn gdk_content_formats_match_gtype(
        first: *const GdkContentFormats,
        second: *const GdkContentFormats,
    ) -> GType;
    pub fn gdk_content_formats_match_mime_type(
        first: *const GdkContentFormats,
        second: *const GdkContentFormats,
    ) -> *const c_char;
    pub fn gdk_content_formats_print(formats: *mut GdkContentFormats, string: *mut glib::GString);
    pub fn gdk_content_formats_ref(formats: *mut GdkContentFormats) -> *mut GdkContentFormats;
    pub fn gdk_content_formats_to_string(formats: *mut GdkContentFormats) -> *mut c_char;
    pub fn gdk_content_formats_union(
        first: *mut GdkContentFormats,
        second: *const GdkContentFormats,
    ) -> *mut GdkContentFormats;
    pub fn gdk_content_formats_union_deserialize_gtypes(
        formats: *mut GdkContentFormats,
    ) -> *mut GdkContentFormats;
    pub fn gdk_content_formats_union_deserialize_mime_types(
        formats: *mut GdkContentFormats,
    ) -> *mut GdkContentFormats;
    pub fn gdk_content_formats_union_serialize_gtypes(
        formats: *mut GdkContentFormats,
    ) -> *mut GdkContentFormats;
    pub fn gdk_content_formats_union_serialize_mime_types(
        formats: *mut GdkContentFormats,
    ) -> *mut GdkContentFormats;
    pub fn gdk_content_formats_unref(formats: *mut GdkContentFormats);
    #[cfg(any(feature = "v4_4", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v4_4")))]
    pub fn gdk_content_formats_parse(string: *const c_char) -> *mut GdkContentFormats;

    //=========================================================================
    // GdkContentFormatsBuilder
    //=========================================================================
    pub fn gdk_content_formats_builder_get_type() -> GType;
    pub fn gdk_content_formats_builder_new() -> *mut GdkContentFormatsBuilder;
    pub fn gdk_content_formats_builder_add_formats(
        builder: *mut GdkContentFormatsBuilder,
        formats: *const GdkContentFormats,
    );
    pub fn gdk_content_formats_builder_add_gtype(
        builder: *mut GdkContentFormatsBuilder,
        type_: GType,
    );
    pub fn gdk_content_formats_builder_add_mime_type(
        builder: *mut GdkContentFormatsBuilder,
        mime_type: *const c_char,
    );
    pub fn gdk_content_formats_builder_free_to_formats(
        builder: *mut GdkContentFormatsBuilder,
    ) -> *mut GdkContentFormats;
    pub fn gdk_content_formats_builder_ref(
        builder: *mut GdkContentFormatsBuilder,
    ) -> *mut GdkContentFormatsBuilder;
    pub fn gdk_content_formats_builder_to_formats(
        builder: *mut GdkContentFormatsBuilder,
    ) -> *mut GdkContentFormats;
    pub fn gdk_content_formats_builder_unref(builder: *mut GdkContentFormatsBuilder);

    //=========================================================================
    // GdkEventSequence
    //=========================================================================
    pub fn gdk_event_sequence_get_type() -> GType;

    //=========================================================================
    // GdkFileList
    //=========================================================================
    #[cfg(any(feature = "v4_6", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v4_6")))]
    pub fn gdk_file_list_get_type() -> GType;
    #[cfg(any(feature = "v4_8", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v4_8")))]
    pub fn gdk_file_list_new_from_array(
        files: *mut *mut gio::GFile,
        n_files: size_t,
    ) -> *mut GdkFileList;
    #[cfg(any(feature = "v4_8", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v4_8")))]
    pub fn gdk_file_list_new_from_list(files: *mut glib::GSList) -> *mut GdkFileList;
    #[cfg(any(feature = "v4_6", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v4_6")))]
    pub fn gdk_file_list_get_files(file_list: *mut GdkFileList) -> *mut glib::GSList;

    //=========================================================================
    // GdkFrameTimings
    //=========================================================================
    pub fn gdk_frame_timings_get_type() -> GType;
    pub fn gdk_frame_timings_get_complete(timings: *mut GdkFrameTimings) -> gboolean;
    pub fn gdk_frame_timings_get_frame_counter(timings: *mut GdkFrameTimings) -> i64;
    pub fn gdk_frame_timings_get_frame_time(timings: *mut GdkFrameTimings) -> i64;
    pub fn gdk_frame_timings_get_predicted_presentation_time(timings: *mut GdkFrameTimings) -> i64;
    pub fn gdk_frame_timings_get_presentation_time(timings: *mut GdkFrameTimings) -> i64;
    pub fn gdk_frame_timings_get_refresh_interval(timings: *mut GdkFrameTimings) -> i64;
    pub fn gdk_frame_timings_ref(timings: *mut GdkFrameTimings) -> *mut GdkFrameTimings;
    pub fn gdk_frame_timings_unref(timings: *mut GdkFrameTimings);

    //=========================================================================
    // GdkPopupLayout
    //=========================================================================
    pub fn gdk_popup_layout_get_type() -> GType;
    pub fn gdk_popup_layout_new(
        anchor_rect: *const GdkRectangle,
        rect_anchor: GdkGravity,
        surface_anchor: GdkGravity,
    ) -> *mut GdkPopupLayout;
    pub fn gdk_popup_layout_copy(layout: *mut GdkPopupLayout) -> *mut GdkPopupLayout;
    pub fn gdk_popup_layout_equal(
        layout: *mut GdkPopupLayout,
        other: *mut GdkPopupLayout,
    ) -> gboolean;
    pub fn gdk_popup_layout_get_anchor_hints(layout: *mut GdkPopupLayout) -> GdkAnchorHints;
    pub fn gdk_popup_layout_get_anchor_rect(layout: *mut GdkPopupLayout) -> *const GdkRectangle;
    pub fn gdk_popup_layout_get_offset(layout: *mut GdkPopupLayout, dx: *mut c_int, dy: *mut c_int);
    pub fn gdk_popup_layout_get_rect_anchor(layout: *mut GdkPopupLayout) -> GdkGravity;
    #[cfg(any(feature = "v4_2", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v4_2")))]
    pub fn gdk_popup_layout_get_shadow_width(
        layout: *mut GdkPopupLayout,
        left: *mut c_int,
        right: *mut c_int,
        top: *mut c_int,
        bottom: *mut c_int,
    );
    pub fn gdk_popup_layout_get_surface_anchor(layout: *mut GdkPopupLayout) -> GdkGravity;
    pub fn gdk_popup_layout_ref(layout: *mut GdkPopupLayout) -> *mut GdkPopupLayout;
    pub fn gdk_popup_layout_set_anchor_hints(
        layout: *mut GdkPopupLayout,
        anchor_hints: GdkAnchorHints,
    );
    pub fn gdk_popup_layout_set_anchor_rect(
        layout: *mut GdkPopupLayout,
        anchor_rect: *const GdkRectangle,
    );
    pub fn gdk_popup_layout_set_offset(layout: *mut GdkPopupLayout, dx: c_int, dy: c_int);
    pub fn gdk_popup_layout_set_rect_anchor(layout: *mut GdkPopupLayout, anchor: GdkGravity);
    #[cfg(any(feature = "v4_2", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v4_2")))]
    pub fn gdk_popup_layout_set_shadow_width(
        layout: *mut GdkPopupLayout,
        left: c_int,
        right: c_int,
        top: c_int,
        bottom: c_int,
    );
    pub fn gdk_popup_layout_set_surface_anchor(layout: *mut GdkPopupLayout, anchor: GdkGravity);
    pub fn gdk_popup_layout_unref(layout: *mut GdkPopupLayout);

    //=========================================================================
    // GdkRGBA
    //=========================================================================
    pub fn gdk_rgba_get_type() -> GType;
    pub fn gdk_rgba_copy(rgba: *const GdkRGBA) -> *mut GdkRGBA;
    pub fn gdk_rgba_equal(p1: gconstpointer, p2: gconstpointer) -> gboolean;
    pub fn gdk_rgba_free(rgba: *mut GdkRGBA);
    pub fn gdk_rgba_hash(p: gconstpointer) -> c_uint;
    pub fn gdk_rgba_is_clear(rgba: *const GdkRGBA) -> gboolean;
    pub fn gdk_rgba_is_opaque(rgba: *const GdkRGBA) -> gboolean;
    pub fn gdk_rgba_parse(rgba: *mut GdkRGBA, spec: *const c_char) -> gboolean;
    pub fn gdk_rgba_to_string(rgba: *const GdkRGBA) -> *mut c_char;

    //=========================================================================
    // GdkRectangle
    //=========================================================================
    pub fn gdk_rectangle_get_type() -> GType;
    pub fn gdk_rectangle_contains_point(rect: *const GdkRectangle, x: c_int, y: c_int) -> gboolean;
    pub fn gdk_rectangle_equal(rect1: *const GdkRectangle, rect2: *const GdkRectangle) -> gboolean;
    pub fn gdk_rectangle_intersect(
        src1: *const GdkRectangle,
        src2: *const GdkRectangle,
        dest: *mut GdkRectangle,
    ) -> gboolean;
    pub fn gdk_rectangle_union(
        src1: *const GdkRectangle,
        src2: *const GdkRectangle,
        dest: *mut GdkRectangle,
    );

    //=========================================================================
    // GdkToplevelLayout
    //=========================================================================
    pub fn gdk_toplevel_layout_get_type() -> GType;
    pub fn gdk_toplevel_layout_new() -> *mut GdkToplevelLayout;
    pub fn gdk_toplevel_layout_copy(layout: *mut GdkToplevelLayout) -> *mut GdkToplevelLayout;
    pub fn gdk_toplevel_layout_equal(
        layout: *mut GdkToplevelLayout,
        other: *mut GdkToplevelLayout,
    ) -> gboolean;
    pub fn gdk_toplevel_layout_get_fullscreen(
        layout: *mut GdkToplevelLayout,
        fullscreen: *mut gboolean,
    ) -> gboolean;
    pub fn gdk_toplevel_layout_get_fullscreen_monitor(
        layout: *mut GdkToplevelLayout,
    ) -> *mut GdkMonitor;
    pub fn gdk_toplevel_layout_get_maximized(
        layout: *mut GdkToplevelLayout,
        maximized: *mut gboolean,
    ) -> gboolean;
    pub fn gdk_toplevel_layout_get_resizable(layout: *mut GdkToplevelLayout) -> gboolean;
    pub fn gdk_toplevel_layout_ref(layout: *mut GdkToplevelLayout) -> *mut GdkToplevelLayout;
    pub fn gdk_toplevel_layout_set_fullscreen(
        layout: *mut GdkToplevelLayout,
        fullscreen: gboolean,
        monitor: *mut GdkMonitor,
    );
    pub fn gdk_toplevel_layout_set_maximized(layout: *mut GdkToplevelLayout, maximized: gboolean);
    pub fn gdk_toplevel_layout_set_resizable(layout: *mut GdkToplevelLayout, resizable: gboolean);
    pub fn gdk_toplevel_layout_unref(layout: *mut GdkToplevelLayout);

    //=========================================================================
    // GdkToplevelSize
    //=========================================================================
    pub fn gdk_toplevel_size_get_bounds(
        size: *mut GdkToplevelSize,
        bounds_width: *mut c_int,
        bounds_height: *mut c_int,
    );
    pub fn gdk_toplevel_size_set_min_size(
        size: *mut GdkToplevelSize,
        min_width: c_int,
        min_height: c_int,
    );
    pub fn gdk_toplevel_size_set_shadow_width(
        size: *mut GdkToplevelSize,
        left: c_int,
        right: c_int,
        top: c_int,
        bottom: c_int,
    );
    pub fn gdk_toplevel_size_set_size(size: *mut GdkToplevelSize, width: c_int, height: c_int);

    //=========================================================================
    // GdkAppLaunchContext
    //=========================================================================
    pub fn gdk_app_launch_context_get_type() -> GType;
    pub fn gdk_app_launch_context_get_display(context: *mut GdkAppLaunchContext)
        -> *mut GdkDisplay;
    pub fn gdk_app_launch_context_set_desktop(context: *mut GdkAppLaunchContext, desktop: c_int);
    pub fn gdk_app_launch_context_set_icon(
        context: *mut GdkAppLaunchContext,
        icon: *mut gio::GIcon,
    );
    pub fn gdk_app_launch_context_set_icon_name(
        context: *mut GdkAppLaunchContext,
        icon_name: *const c_char,
    );
    pub fn gdk_app_launch_context_set_timestamp(context: *mut GdkAppLaunchContext, timestamp: u32);

    //=========================================================================
    // GdkButtonEvent
    //=========================================================================
    pub fn gdk_button_event_get_type() -> GType;
    pub fn gdk_button_event_get_button(event: *mut GdkButtonEvent) -> c_uint;

    //=========================================================================
    // GdkCairoContext
    //=========================================================================
    pub fn gdk_cairo_context_get_type() -> GType;
    pub fn gdk_cairo_context_cairo_create(self_: *mut GdkCairoContext) -> *mut cairo::cairo_t;

    //=========================================================================
    // GdkClipboard
    //=========================================================================
    pub fn gdk_clipboard_get_type() -> GType;
    pub fn gdk_clipboard_get_content(clipboard: *mut GdkClipboard) -> *mut GdkContentProvider;
    pub fn gdk_clipboard_get_display(clipboard: *mut GdkClipboard) -> *mut GdkDisplay;
    pub fn gdk_clipboard_get_formats(clipboard: *mut GdkClipboard) -> *mut GdkContentFormats;
    pub fn gdk_clipboard_is_local(clipboard: *mut GdkClipboard) -> gboolean;
    pub fn gdk_clipboard_read_async(
        clipboard: *mut GdkClipboard,
        mime_types: *mut *const c_char,
        io_priority: c_int,
        cancellable: *mut gio::GCancellable,
        callback: gio::GAsyncReadyCallback,
        user_data: gpointer,
    );
    pub fn gdk_clipboard_read_finish(
        clipboard: *mut GdkClipboard,
        result: *mut gio::GAsyncResult,
        out_mime_type: *mut *const c_char,
        error: *mut *mut glib::GError,
    ) -> *mut gio::GInputStream;
    pub fn gdk_clipboard_read_text_async(
        clipboard: *mut GdkClipboard,
        cancellable: *mut gio::GCancellable,
        callback: gio::GAsyncReadyCallback,
        user_data: gpointer,
    );
    pub fn gdk_clipboard_read_text_finish(
        clipboard: *mut GdkClipboard,
        result: *mut gio::GAsyncResult,
        error: *mut *mut glib::GError,
    ) -> *mut c_char;
    pub fn gdk_clipboard_read_texture_async(
        clipboard: *mut GdkClipboard,
        cancellable: *mut gio::GCancellable,
        callback: gio::GAsyncReadyCallback,
        user_data: gpointer,
    );
    pub fn gdk_clipboard_read_texture_finish(
        clipboard: *mut GdkClipboard,
        result: *mut gio::GAsyncResult,
        error: *mut *mut glib::GError,
    ) -> *mut GdkTexture;
    pub fn gdk_clipboard_read_value_async(
        clipboard: *mut GdkClipboard,
        type_: GType,
        io_priority: c_int,
        cancellable: *mut gio::GCancellable,
        callback: gio::GAsyncReadyCallback,
        user_data: gpointer,
    );
    pub fn gdk_clipboard_read_value_finish(
        clipboard: *mut GdkClipboard,
        result: *mut gio::GAsyncResult,
        error: *mut *mut glib::GError,
    ) -> *const gobject::GValue;
    pub fn gdk_clipboard_set(clipboard: *mut GdkClipboard, type_: GType, ...);
    pub fn gdk_clipboard_set_content(
        clipboard: *mut GdkClipboard,
        provider: *mut GdkContentProvider,
    ) -> gboolean;
    pub fn gdk_clipboard_set_text(clipboard: *mut GdkClipboard, text: *const c_char);
    pub fn gdk_clipboard_set_texture(clipboard: *mut GdkClipboard, texture: *mut GdkTexture);
    //pub fn gdk_clipboard_set_valist(clipboard: *mut GdkClipboard, type_: GType, args: /*Unimplemented*/va_list);
    pub fn gdk_clipboard_set_value(clipboard: *mut GdkClipboard, value: *const gobject::GValue);
    pub fn gdk_clipboard_store_async(
        clipboard: *mut GdkClipboard,
        io_priority: c_int,
        cancellable: *mut gio::GCancellable,
        callback: gio::GAsyncReadyCallback,
        user_data: gpointer,
    );
    pub fn gdk_clipboard_store_finish(
        clipboard: *mut GdkClipboard,
        result: *mut gio::GAsyncResult,
        error: *mut *mut glib::GError,
    ) -> gboolean;

    //=========================================================================
    // GdkContentDeserializer
    //=========================================================================
    pub fn gdk_content_deserializer_get_type() -> GType;
    pub fn gdk_content_deserializer_get_cancellable(
        deserializer: *mut GdkContentDeserializer,
    ) -> *mut gio::GCancellable;
    pub fn gdk_content_deserializer_get_gtype(deserializer: *mut GdkContentDeserializer) -> GType;
    pub fn gdk_content_deserializer_get_input_stream(
        deserializer: *mut GdkContentDeserializer,
    ) -> *mut gio::GInputStream;
    pub fn gdk_content_deserializer_get_mime_type(
        deserializer: *mut GdkContentDeserializer,
    ) -> *const c_char;
    pub fn gdk_content_deserializer_get_priority(
        deserializer: *mut GdkContentDeserializer,
    ) -> c_int;
    pub fn gdk_content_deserializer_get_task_data(
        deserializer: *mut GdkContentDeserializer,
    ) -> gpointer;
    pub fn gdk_content_deserializer_get_user_data(
        deserializer: *mut GdkContentDeserializer,
    ) -> gpointer;
    pub fn gdk_content_deserializer_get_value(
        deserializer: *mut GdkContentDeserializer,
    ) -> *mut gobject::GValue;
    pub fn gdk_content_deserializer_return_error(
        deserializer: *mut GdkContentDeserializer,
        error: *mut glib::GError,
    );
    pub fn gdk_content_deserializer_return_success(deserializer: *mut GdkContentDeserializer);
    pub fn gdk_content_deserializer_set_task_data(
        deserializer: *mut GdkContentDeserializer,
        data: gpointer,
        notify: glib::GDestroyNotify,
    );

    //=========================================================================
    // GdkContentProvider
    //=========================================================================
    pub fn gdk_content_provider_get_type() -> GType;
    pub fn gdk_content_provider_new_for_bytes(
        mime_type: *const c_char,
        bytes: *mut glib::GBytes,
    ) -> *mut GdkContentProvider;
    pub fn gdk_content_provider_new_for_value(
        value: *const gobject::GValue,
    ) -> *mut GdkContentProvider;
    pub fn gdk_content_provider_new_typed(type_: GType, ...) -> *mut GdkContentProvider;
    pub fn gdk_content_provider_new_union(
        providers: *mut *mut GdkContentProvider,
        n_providers: size_t,
    ) -> *mut GdkContentProvider;
    pub fn gdk_content_provider_content_changed(provider: *mut GdkContentProvider);
    pub fn gdk_content_provider_get_value(
        provider: *mut GdkContentProvider,
        value: *mut gobject::GValue,
        error: *mut *mut glib::GError,
    ) -> gboolean;
    pub fn gdk_content_provider_ref_formats(
        provider: *mut GdkContentProvider,
    ) -> *mut GdkContentFormats;
    pub fn gdk_content_provider_ref_storable_formats(
        provider: *mut GdkContentProvider,
    ) -> *mut GdkContentFormats;
    pub fn gdk_content_provider_write_mime_type_async(
        provider: *mut GdkContentProvider,
        mime_type: *const c_char,
        stream: *mut gio::GOutputStream,
        io_priority: c_int,
        cancellable: *mut gio::GCancellable,
        callback: gio::GAsyncReadyCallback,
        user_data: gpointer,
    );
    pub fn gdk_content_provider_write_mime_type_finish(
        provider: *mut GdkContentProvider,
        result: *mut gio::GAsyncResult,
        error: *mut *mut glib::GError,
    ) -> gboolean;

    //=========================================================================
    // GdkContentSerializer
    //=========================================================================
    pub fn gdk_content_serializer_get_type() -> GType;
    pub fn gdk_content_serializer_get_cancellable(
        serializer: *mut GdkContentSerializer,
    ) -> *mut gio::GCancellable;
    pub fn gdk_content_serializer_get_gtype(serializer: *mut GdkContentSerializer) -> GType;
    pub fn gdk_content_serializer_get_mime_type(
        serializer: *mut GdkContentSerializer,
    ) -> *const c_char;
    pub fn gdk_content_serializer_get_output_stream(
        serializer: *mut GdkContentSerializer,
    ) -> *mut gio::GOutputStream;
    pub fn gdk_content_serializer_get_priority(serializer: *mut GdkContentSerializer) -> c_int;
    pub fn gdk_content_serializer_get_task_data(serializer: *mut GdkContentSerializer) -> gpointer;
    pub fn gdk_content_serializer_get_user_data(serializer: *mut GdkContentSerializer) -> gpointer;
    pub fn gdk_content_serializer_get_value(
        serializer: *mut GdkContentSerializer,
    ) -> *const gobject::GValue;
    pub fn gdk_content_serializer_return_error(
        serializer: *mut GdkContentSerializer,
        error: *mut glib::GError,
    );
    pub fn gdk_content_serializer_return_success(serializer: *mut GdkContentSerializer);
    pub fn gdk_content_serializer_set_task_data(
        serializer: *mut GdkContentSerializer,
        data: gpointer,
        notify: glib::GDestroyNotify,
    );

    //=========================================================================
    // GdkCrossingEvent
    //=========================================================================
    pub fn gdk_crossing_event_get_type() -> GType;
    pub fn gdk_crossing_event_get_detail(event: *mut GdkCrossingEvent) -> GdkNotifyType;
    pub fn gdk_crossing_event_get_focus(event: *mut GdkCrossingEvent) -> gboolean;
    pub fn gdk_crossing_event_get_mode(event: *mut GdkCrossingEvent) -> GdkCrossingMode;

    //=========================================================================
    // GdkCursor
    //=========================================================================
    pub fn gdk_cursor_get_type() -> GType;
    pub fn gdk_cursor_new_from_name(
        name: *const c_char,
        fallback: *mut GdkCursor,
    ) -> *mut GdkCursor;
    pub fn gdk_cursor_new_from_texture(
        texture: *mut GdkTexture,
        hotspot_x: c_int,
        hotspot_y: c_int,
        fallback: *mut GdkCursor,
    ) -> *mut GdkCursor;
    pub fn gdk_cursor_get_fallback(cursor: *mut GdkCursor) -> *mut GdkCursor;
    pub fn gdk_cursor_get_hotspot_x(cursor: *mut GdkCursor) -> c_int;
    pub fn gdk_cursor_get_hotspot_y(cursor: *mut GdkCursor) -> c_int;
    pub fn gdk_cursor_get_name(cursor: *mut GdkCursor) -> *const c_char;
    pub fn gdk_cursor_get_texture(cursor: *mut GdkCursor) -> *mut GdkTexture;

    //=========================================================================
    // GdkDNDEvent
    //=========================================================================
    pub fn gdk_dnd_event_get_type() -> GType;
    pub fn gdk_dnd_event_get_drop(event: *mut GdkDNDEvent) -> *mut GdkDrop;

    //=========================================================================
    // GdkDeleteEvent
    //=========================================================================
    pub fn gdk_delete_event_get_type() -> GType;

    //=========================================================================
    // GdkDevice
    //=========================================================================
    pub fn gdk_device_get_type() -> GType;
    pub fn gdk_device_get_caps_lock_state(device: *mut GdkDevice) -> gboolean;
    pub fn gdk_device_get_device_tool(device: *mut GdkDevice) -> *mut GdkDeviceTool;
    pub fn gdk_device_get_direction(device: *mut GdkDevice) -> pango::PangoDirection;
    pub fn gdk_device_get_display(device: *mut GdkDevice) -> *mut GdkDisplay;
    pub fn gdk_device_get_has_cursor(device: *mut GdkDevice) -> gboolean;
    pub fn gdk_device_get_modifier_state(device: *mut GdkDevice) -> GdkModifierType;
    pub fn gdk_device_get_name(device: *mut GdkDevice) -> *const c_char;
    pub fn gdk_device_get_num_lock_state(device: *mut GdkDevice) -> gboolean;
    pub fn gdk_device_get_num_touches(device: *mut GdkDevice) -> c_uint;
    pub fn gdk_device_get_product_id(device: *mut GdkDevice) -> *const c_char;
    pub fn gdk_device_get_scroll_lock_state(device: *mut GdkDevice) -> gboolean;
    pub fn gdk_device_get_seat(device: *mut GdkDevice) -> *mut GdkSeat;
    pub fn gdk_device_get_source(device: *mut GdkDevice) -> GdkInputSource;
    pub fn gdk_device_get_surface_at_position(
        device: *mut GdkDevice,
        win_x: *mut c_double,
        win_y: *mut c_double,
    ) -> *mut GdkSurface;
    #[cfg(any(feature = "v4_2", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v4_2")))]
    pub fn gdk_device_get_timestamp(device: *mut GdkDevice) -> u32;
    pub fn gdk_device_get_vendor_id(device: *mut GdkDevice) -> *const c_char;
    pub fn gdk_device_has_bidi_layouts(device: *mut GdkDevice) -> gboolean;

    //=========================================================================
    // GdkDeviceTool
    //=========================================================================
    pub fn gdk_device_tool_get_type() -> GType;
    pub fn gdk_device_tool_get_axes(tool: *mut GdkDeviceTool) -> GdkAxisFlags;
    pub fn gdk_device_tool_get_hardware_id(tool: *mut GdkDeviceTool) -> u64;
    pub fn gdk_device_tool_get_serial(tool: *mut GdkDeviceTool) -> u64;
    pub fn gdk_device_tool_get_tool_type(tool: *mut GdkDeviceTool) -> GdkDeviceToolType;

    //=========================================================================
    // GdkDisplay
    //=========================================================================
    pub fn gdk_display_get_type() -> GType;
    pub fn gdk_display_get_default() -> *mut GdkDisplay;
    pub fn gdk_display_open(display_name: *const c_char) -> *mut GdkDisplay;
    pub fn gdk_display_beep(display: *mut GdkDisplay);
    pub fn gdk_display_close(display: *mut GdkDisplay);
    #[cfg(any(feature = "v4_6", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v4_6")))]
    pub fn gdk_display_create_gl_context(
        self_: *mut GdkDisplay,
        error: *mut *mut glib::GError,
    ) -> *mut GdkGLContext;
    pub fn gdk_display_device_is_grabbed(
        display: *mut GdkDisplay,
        device: *mut GdkDevice,
    ) -> gboolean;
    pub fn gdk_display_flush(display: *mut GdkDisplay);
    pub fn gdk_display_get_app_launch_context(display: *mut GdkDisplay)
        -> *mut GdkAppLaunchContext;
    pub fn gdk_display_get_clipboard(display: *mut GdkDisplay) -> *mut GdkClipboard;
    pub fn gdk_display_get_default_seat(display: *mut GdkDisplay) -> *mut GdkSeat;
    pub fn gdk_display_get_monitor_at_surface(
        display: *mut GdkDisplay,
        surface: *mut GdkSurface,
    ) -> *mut GdkMonitor;
    pub fn gdk_display_get_monitors(self_: *mut GdkDisplay) -> *mut gio::GListModel;
    pub fn gdk_display_get_name(display: *mut GdkDisplay) -> *const c_char;
    pub fn gdk_display_get_primary_clipboard(display: *mut GdkDisplay) -> *mut GdkClipboard;
    pub fn gdk_display_get_setting(
        display: *mut GdkDisplay,
        name: *const c_char,
        value: *mut gobject::GValue,
    ) -> gboolean;
    pub fn gdk_display_get_startup_notification_id(display: *mut GdkDisplay) -> *const c_char;
    pub fn gdk_display_is_closed(display: *mut GdkDisplay) -> gboolean;
    pub fn gdk_display_is_composited(display: *mut GdkDisplay) -> gboolean;
    pub fn gdk_display_is_rgba(display: *mut GdkDisplay) -> gboolean;
    pub fn gdk_display_list_seats(display: *mut GdkDisplay) -> *mut glib::GList;
    pub fn gdk_display_map_keycode(
        display: *mut GdkDisplay,
        keycode: c_uint,
        keys: *mut *mut GdkKeymapKey,
        keyvals: *mut *mut c_uint,
        n_entries: *mut c_int,
    ) -> gboolean;
    pub fn gdk_display_map_keyval(
        display: *mut GdkDisplay,
        keyval: c_uint,
        keys: *mut *mut GdkKeymapKey,
        n_keys: *mut c_int,
    ) -> gboolean;
    pub fn gdk_display_notify_startup_complete(display: *mut GdkDisplay, startup_id: *const c_char);
    #[cfg(any(feature = "v4_4", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v4_4")))]
    pub fn gdk_display_prepare_gl(
        self_: *mut GdkDisplay,
        error: *mut *mut glib::GError,
    ) -> gboolean;
    pub fn gdk_display_put_event(display: *mut GdkDisplay, event: *mut GdkEvent);
    pub fn gdk_display_supports_input_shapes(display: *mut GdkDisplay) -> gboolean;
    pub fn gdk_display_sync(display: *mut GdkDisplay);
    pub fn gdk_display_translate_key(
        display: *mut GdkDisplay,
        keycode: c_uint,
        state: GdkModifierType,
        group: c_int,
        keyval: *mut c_uint,
        effective_group: *mut c_int,
        level: *mut c_int,
        consumed: *mut GdkModifierType,
    ) -> gboolean;

    //=========================================================================
    // GdkDisplayManager
    //=========================================================================
    pub fn gdk_display_manager_get_type() -> GType;
    pub fn gdk_display_manager_get() -> *mut GdkDisplayManager;
    pub fn gdk_display_manager_get_default_display(
        manager: *mut GdkDisplayManager,
    ) -> *mut GdkDisplay;
    pub fn gdk_display_manager_list_displays(manager: *mut GdkDisplayManager) -> *mut glib::GSList;
    pub fn gdk_display_manager_open_display(
        manager: *mut GdkDisplayManager,
        name: *const c_char,
    ) -> *mut GdkDisplay;
    pub fn gdk_display_manager_set_default_display(
        manager: *mut GdkDisplayManager,
        display: *mut GdkDisplay,
    );

    //=========================================================================
    // GdkDrag
    //=========================================================================
    pub fn gdk_drag_get_type() -> GType;
    pub fn gdk_drag_begin(
        surface: *mut GdkSurface,
        device: *mut GdkDevice,
        content: *mut GdkContentProvider,
        actions: GdkDragAction,
        dx: c_double,
        dy: c_double,
    ) -> *mut GdkDrag;
    pub fn gdk_drag_drop_done(drag: *mut GdkDrag, success: gboolean);
    pub fn gdk_drag_get_actions(drag: *mut GdkDrag) -> GdkDragAction;
    pub fn gdk_drag_get_content(drag: *mut GdkDrag) -> *mut GdkContentProvider;
    pub fn gdk_drag_get_device(drag: *mut GdkDrag) -> *mut GdkDevice;
    pub fn gdk_drag_get_display(drag: *mut GdkDrag) -> *mut GdkDisplay;
    pub fn gdk_drag_get_drag_surface(drag: *mut GdkDrag) -> *mut GdkSurface;
    pub fn gdk_drag_get_formats(drag: *mut GdkDrag) -> *mut GdkContentFormats;
    pub fn gdk_drag_get_selected_action(drag: *mut GdkDrag) -> GdkDragAction;
    pub fn gdk_drag_get_surface(drag: *mut GdkDrag) -> *mut GdkSurface;
    pub fn gdk_drag_set_hotspot(drag: *mut GdkDrag, hot_x: c_int, hot_y: c_int);

    //=========================================================================
    // GdkDrawContext
    //=========================================================================
    pub fn gdk_draw_context_get_type() -> GType;
    pub fn gdk_draw_context_begin_frame(
        context: *mut GdkDrawContext,
        region: *const cairo::cairo_region_t,
    );
    pub fn gdk_draw_context_end_frame(context: *mut GdkDrawContext);
    pub fn gdk_draw_context_get_display(context: *mut GdkDrawContext) -> *mut GdkDisplay;
    pub fn gdk_draw_context_get_frame_region(
        context: *mut GdkDrawContext,
    ) -> *const cairo::cairo_region_t;
    pub fn gdk_draw_context_get_surface(context: *mut GdkDrawContext) -> *mut GdkSurface;
    pub fn gdk_draw_context_is_in_frame(context: *mut GdkDrawContext) -> gboolean;

    //=========================================================================
    // GdkDrop
    //=========================================================================
    pub fn gdk_drop_get_type() -> GType;
    pub fn gdk_drop_finish(self_: *mut GdkDrop, action: GdkDragAction);
    pub fn gdk_drop_get_actions(self_: *mut GdkDrop) -> GdkDragAction;
    pub fn gdk_drop_get_device(self_: *mut GdkDrop) -> *mut GdkDevice;
    pub fn gdk_drop_get_display(self_: *mut GdkDrop) -> *mut GdkDisplay;
    pub fn gdk_drop_get_drag(self_: *mut GdkDrop) -> *mut GdkDrag;
    pub fn gdk_drop_get_formats(self_: *mut GdkDrop) -> *mut GdkContentFormats;
    pub fn gdk_drop_get_surface(self_: *mut GdkDrop) -> *mut GdkSurface;
    pub fn gdk_drop_read_async(
        self_: *mut GdkDrop,
        mime_types: *mut *const c_char,
        io_priority: c_int,
        cancellable: *mut gio::GCancellable,
        callback: gio::GAsyncReadyCallback,
        user_data: gpointer,
    );
    pub fn gdk_drop_read_finish(
        self_: *mut GdkDrop,
        result: *mut gio::GAsyncResult,
        out_mime_type: *mut *const c_char,
        error: *mut *mut glib::GError,
    ) -> *mut gio::GInputStream;
    pub fn gdk_drop_read_value_async(
        self_: *mut GdkDrop,
        type_: GType,
        io_priority: c_int,
        cancellable: *mut gio::GCancellable,
        callback: gio::GAsyncReadyCallback,
        user_data: gpointer,
    );
    pub fn gdk_drop_read_value_finish(
        self_: *mut GdkDrop,
        result: *mut gio::GAsyncResult,
        error: *mut *mut glib::GError,
    ) -> *const gobject::GValue;
    pub fn gdk_drop_status(self_: *mut GdkDrop, actions: GdkDragAction, preferred: GdkDragAction);

    //=========================================================================
    // GdkEvent
    //=========================================================================
    pub fn gdk_event_get_type() -> GType;
    pub fn gdk_event_get_axes(
        event: *mut GdkEvent,
        axes: *mut *mut c_double,
        n_axes: *mut c_uint,
    ) -> gboolean;
    pub fn gdk_event_get_axis(
        event: *mut GdkEvent,
        axis_use: GdkAxisUse,
        value: *mut c_double,
    ) -> gboolean;
    pub fn gdk_event_get_device(event: *mut GdkEvent) -> *mut GdkDevice;
    pub fn gdk_event_get_device_tool(event: *mut GdkEvent) -> *mut GdkDeviceTool;
    pub fn gdk_event_get_display(event: *mut GdkEvent) -> *mut GdkDisplay;
    pub fn gdk_event_get_event_sequence(event: *mut GdkEvent) -> *mut GdkEventSequence;
    pub fn gdk_event_get_event_type(event: *mut GdkEvent) -> GdkEventType;
    pub fn gdk_event_get_history(
        event: *mut GdkEvent,
        out_n_coords: *mut c_uint,
    ) -> *mut GdkTimeCoord;
    pub fn gdk_event_get_modifier_state(event: *mut GdkEvent) -> GdkModifierType;
    pub fn gdk_event_get_pointer_emulated(event: *mut GdkEvent) -> gboolean;
    pub fn gdk_event_get_position(
        event: *mut GdkEvent,
        x: *mut c_double,
        y: *mut c_double,
    ) -> gboolean;
    pub fn gdk_event_get_seat(event: *mut GdkEvent) -> *mut GdkSeat;
    pub fn gdk_event_get_surface(event: *mut GdkEvent) -> *mut GdkSurface;
    pub fn gdk_event_get_time(event: *mut GdkEvent) -> u32;
    pub fn gdk_event_ref(event: *mut GdkEvent) -> *mut GdkEvent;
    pub fn gdk_event_triggers_context_menu(event: *mut GdkEvent) -> gboolean;
    pub fn gdk_event_unref(event: *mut GdkEvent);

    //=========================================================================
    // GdkFocusEvent
    //=========================================================================
    pub fn gdk_focus_event_get_type() -> GType;
    pub fn gdk_focus_event_get_in(event: *mut GdkFocusEvent) -> gboolean;

    //=========================================================================
    // GdkFrameClock
    //=========================================================================
    pub fn gdk_frame_clock_get_type() -> GType;
    pub fn gdk_frame_clock_begin_updating(frame_clock: *mut GdkFrameClock);
    pub fn gdk_frame_clock_end_updating(frame_clock: *mut GdkFrameClock);
    pub fn gdk_frame_clock_get_current_timings(
        frame_clock: *mut GdkFrameClock,
    ) -> *mut GdkFrameTimings;
    pub fn gdk_frame_clock_get_fps(frame_clock: *mut GdkFrameClock) -> c_double;
    pub fn gdk_frame_clock_get_frame_counter(frame_clock: *mut GdkFrameClock) -> i64;
    pub fn gdk_frame_clock_get_frame_time(frame_clock: *mut GdkFrameClock) -> i64;
    pub fn gdk_frame_clock_get_history_start(frame_clock: *mut GdkFrameClock) -> i64;
    pub fn gdk_frame_clock_get_refresh_info(
        frame_clock: *mut GdkFrameClock,
        base_time: i64,
        refresh_interval_return: *mut i64,
        presentation_time_return: *mut i64,
    );
    pub fn gdk_frame_clock_get_timings(
        frame_clock: *mut GdkFrameClock,
        frame_counter: i64,
    ) -> *mut GdkFrameTimings;
    pub fn gdk_frame_clock_request_phase(
        frame_clock: *mut GdkFrameClock,
        phase: GdkFrameClockPhase,
    );

    //=========================================================================
    // GdkGLContext
    //=========================================================================
    pub fn gdk_gl_context_get_type() -> GType;
    pub fn gdk_gl_context_clear_current();
    pub fn gdk_gl_context_get_current() -> *mut GdkGLContext;
    #[cfg(any(feature = "v4_6", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v4_6")))]
    pub fn gdk_gl_context_get_allowed_apis(self_: *mut GdkGLContext) -> GdkGLAPI;
    #[cfg(any(feature = "v4_6", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v4_6")))]
    pub fn gdk_gl_context_get_api(self_: *mut GdkGLContext) -> GdkGLAPI;
    pub fn gdk_gl_context_get_debug_enabled(context: *mut GdkGLContext) -> gboolean;
    pub fn gdk_gl_context_get_display(context: *mut GdkGLContext) -> *mut GdkDisplay;
    pub fn gdk_gl_context_get_forward_compatible(context: *mut GdkGLContext) -> gboolean;
    pub fn gdk_gl_context_get_required_version(
        context: *mut GdkGLContext,
        major: *mut c_int,
        minor: *mut c_int,
    );
    pub fn gdk_gl_context_get_shared_context(context: *mut GdkGLContext) -> *mut GdkGLContext;
    pub fn gdk_gl_context_get_surface(context: *mut GdkGLContext) -> *mut GdkSurface;
    pub fn gdk_gl_context_get_use_es(context: *mut GdkGLContext) -> gboolean;
    pub fn gdk_gl_context_get_version(
        context: *mut GdkGLContext,
        major: *mut c_int,
        minor: *mut c_int,
    );
    pub fn gdk_gl_context_is_legacy(context: *mut GdkGLContext) -> gboolean;
    #[cfg(any(feature = "v4_4", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v4_4")))]
    pub fn gdk_gl_context_is_shared(self_: *mut GdkGLContext, other: *mut GdkGLContext)
        -> gboolean;
    pub fn gdk_gl_context_make_current(context: *mut GdkGLContext);
    pub fn gdk_gl_context_realize(
        context: *mut GdkGLContext,
        error: *mut *mut glib::GError,
    ) -> gboolean;
    #[cfg(any(feature = "v4_6", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v4_6")))]
    pub fn gdk_gl_context_set_allowed_apis(self_: *mut GdkGLContext, apis: GdkGLAPI);
    pub fn gdk_gl_context_set_debug_enabled(context: *mut GdkGLContext, enabled: gboolean);
    pub fn gdk_gl_context_set_forward_compatible(context: *mut GdkGLContext, compatible: gboolean);
    pub fn gdk_gl_context_set_required_version(
        context: *mut GdkGLContext,
        major: c_int,
        minor: c_int,
    );
    pub fn gdk_gl_context_set_use_es(context: *mut GdkGLContext, use_es: c_int);

    //=========================================================================
    // GdkGLTexture
    //=========================================================================
    pub fn gdk_gl_texture_get_type() -> GType;
    pub fn gdk_gl_texture_new(
        context: *mut GdkGLContext,
        id: c_uint,
        width: c_int,
        height: c_int,
        destroy: glib::GDestroyNotify,
        data: gpointer,
    ) -> *mut GdkGLTexture;
    pub fn gdk_gl_texture_release(self_: *mut GdkGLTexture);

    //=========================================================================
    // GdkGrabBrokenEvent
    //=========================================================================
    pub fn gdk_grab_broken_event_get_type() -> GType;
    pub fn gdk_grab_broken_event_get_grab_surface(
        event: *mut GdkGrabBrokenEvent,
    ) -> *mut GdkSurface;
    pub fn gdk_grab_broken_event_get_implicit(event: *mut GdkGrabBrokenEvent) -> gboolean;

    //=========================================================================
    // GdkKeyEvent
    //=========================================================================
    pub fn gdk_key_event_get_type() -> GType;
    pub fn gdk_key_event_get_consumed_modifiers(event: *mut GdkKeyEvent) -> GdkModifierType;
    pub fn gdk_key_event_get_keycode(event: *mut GdkKeyEvent) -> c_uint;
    pub fn gdk_key_event_get_keyval(event: *mut GdkKeyEvent) -> c_uint;
    pub fn gdk_key_event_get_layout(event: *mut GdkKeyEvent) -> c_uint;
    pub fn gdk_key_event_get_level(event: *mut GdkKeyEvent) -> c_uint;
    pub fn gdk_key_event_get_match(
        event: *mut GdkKeyEvent,
        keyval: *mut c_uint,
        modifiers: *mut GdkModifierType,
    ) -> gboolean;
    pub fn gdk_key_event_is_modifier(event: *mut GdkKeyEvent) -> gboolean;
    pub fn gdk_key_event_matches(
        event: *mut GdkKeyEvent,
        keyval: c_uint,
        modifiers: GdkModifierType,
    ) -> GdkKeyMatch;

    //=========================================================================
    // GdkMemoryTexture
    //=========================================================================
    pub fn gdk_memory_texture_get_type() -> GType;
    pub fn gdk_memory_texture_new(
        width: c_int,
        height: c_int,
        format: GdkMemoryFormat,
        bytes: *mut glib::GBytes,
        stride: size_t,
    ) -> *mut GdkMemoryTexture;

    //=========================================================================
    // GdkMonitor
    //=========================================================================
    pub fn gdk_monitor_get_type() -> GType;
    pub fn gdk_monitor_get_connector(monitor: *mut GdkMonitor) -> *const c_char;
    pub fn gdk_monitor_get_display(monitor: *mut GdkMonitor) -> *mut GdkDisplay;
    pub fn gdk_monitor_get_geometry(monitor: *mut GdkMonitor, geometry: *mut GdkRectangle);
    pub fn gdk_monitor_get_height_mm(monitor: *mut GdkMonitor) -> c_int;
    pub fn gdk_monitor_get_manufacturer(monitor: *mut GdkMonitor) -> *const c_char;
    pub fn gdk_monitor_get_model(monitor: *mut GdkMonitor) -> *const c_char;
    pub fn gdk_monitor_get_refresh_rate(monitor: *mut GdkMonitor) -> c_int;
    pub fn gdk_monitor_get_scale_factor(monitor: *mut GdkMonitor) -> c_int;
    pub fn gdk_monitor_get_subpixel_layout(monitor: *mut GdkMonitor) -> GdkSubpixelLayout;
    pub fn gdk_monitor_get_width_mm(monitor: *mut GdkMonitor) -> c_int;
    pub fn gdk_monitor_is_valid(monitor: *mut GdkMonitor) -> gboolean;

    //=========================================================================
    // GdkMotionEvent
    //=========================================================================
    pub fn gdk_motion_event_get_type() -> GType;

    //=========================================================================
    // GdkPadEvent
    //=========================================================================
    pub fn gdk_pad_event_get_type() -> GType;
    pub fn gdk_pad_event_get_axis_value(
        event: *mut GdkPadEvent,
        index: *mut c_uint,
        value: *mut c_double,
    );
    pub fn gdk_pad_event_get_button(event: *mut GdkPadEvent) -> c_uint;
    pub fn gdk_pad_event_get_group_mode(
        event: *mut GdkPadEvent,
        group: *mut c_uint,
        mode: *mut c_uint,
    );

    //=========================================================================
    // GdkProximityEvent
    //=========================================================================
    pub fn gdk_proximity_event_get_type() -> GType;

    //=========================================================================
    // GdkScrollEvent
    //=========================================================================
    pub fn gdk_scroll_event_get_type() -> GType;
    pub fn gdk_scroll_event_get_deltas(
        event: *mut GdkScrollEvent,
        delta_x: *mut c_double,
        delta_y: *mut c_double,
    );
    pub fn gdk_scroll_event_get_direction(event: *mut GdkScrollEvent) -> GdkScrollDirection;
    #[cfg(any(feature = "v4_8", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v4_8")))]
    pub fn gdk_scroll_event_get_unit(event: *mut GdkScrollEvent) -> GdkScrollUnit;
    pub fn gdk_scroll_event_is_stop(event: *mut GdkScrollEvent) -> gboolean;

    //=========================================================================
    // GdkSeat
    //=========================================================================
    pub fn gdk_seat_get_type() -> GType;
    pub fn gdk_seat_get_capabilities(seat: *mut GdkSeat) -> GdkSeatCapabilities;
    pub fn gdk_seat_get_devices(
        seat: *mut GdkSeat,
        capabilities: GdkSeatCapabilities,
    ) -> *mut glib::GList;
    pub fn gdk_seat_get_display(seat: *mut GdkSeat) -> *mut GdkDisplay;
    pub fn gdk_seat_get_keyboard(seat: *mut GdkSeat) -> *mut GdkDevice;
    pub fn gdk_seat_get_pointer(seat: *mut GdkSeat) -> *mut GdkDevice;
    pub fn gdk_seat_get_tools(seat: *mut GdkSeat) -> *mut glib::GList;

    //=========================================================================
    // GdkSnapshot
    //=========================================================================
    pub fn gdk_snapshot_get_type() -> GType;

    //=========================================================================
    // GdkSurface
    //=========================================================================
    pub fn gdk_surface_get_type() -> GType;
    pub fn gdk_surface_new_popup(parent: *mut GdkSurface, autohide: gboolean) -> *mut GdkSurface;
    pub fn gdk_surface_new_toplevel(display: *mut GdkDisplay) -> *mut GdkSurface;
    pub fn gdk_surface_beep(surface: *mut GdkSurface);
    pub fn gdk_surface_create_cairo_context(surface: *mut GdkSurface) -> *mut GdkCairoContext;
    pub fn gdk_surface_create_gl_context(
        surface: *mut GdkSurface,
        error: *mut *mut glib::GError,
    ) -> *mut GdkGLContext;
    pub fn gdk_surface_create_similar_surface(
        surface: *mut GdkSurface,
        content: cairo::cairo_content_t,
        width: c_int,
        height: c_int,
    ) -> *mut cairo::cairo_surface_t;
    pub fn gdk_surface_create_vulkan_context(
        surface: *mut GdkSurface,
        error: *mut *mut glib::GError,
    ) -> *mut GdkVulkanContext;
    pub fn gdk_surface_destroy(surface: *mut GdkSurface);
    pub fn gdk_surface_get_cursor(surface: *mut GdkSurface) -> *mut GdkCursor;
    pub fn gdk_surface_get_device_cursor(
        surface: *mut GdkSurface,
        device: *mut GdkDevice,
    ) -> *mut GdkCursor;
    pub fn gdk_surface_get_device_position(
        surface: *mut GdkSurface,
        device: *mut GdkDevice,
        x: *mut c_double,
        y: *mut c_double,
        mask: *mut GdkModifierType,
    ) -> gboolean;
    pub fn gdk_surface_get_display(surface: *mut GdkSurface) -> *mut GdkDisplay;
    pub fn gdk_surface_get_frame_clock(surface: *mut GdkSurface) -> *mut GdkFrameClock;
    pub fn gdk_surface_get_height(surface: *mut GdkSurface) -> c_int;
    pub fn gdk_surface_get_mapped(surface: *mut GdkSurface) -> gboolean;
    pub fn gdk_surface_get_scale_factor(surface: *mut GdkSurface) -> c_int;
    pub fn gdk_surface_get_width(surface: *mut GdkSurface) -> c_int;
    pub fn gdk_surface_hide(surface: *mut GdkSurface);
    pub fn gdk_surface_is_destroyed(surface: *mut GdkSurface) -> gboolean;
    pub fn gdk_surface_queue_render(surface: *mut GdkSurface);
    pub fn gdk_surface_request_layout(surface: *mut GdkSurface);
    pub fn gdk_surface_set_cursor(surface: *mut GdkSurface, cursor: *mut GdkCursor);
    pub fn gdk_surface_set_device_cursor(
        surface: *mut GdkSurface,
        device: *mut GdkDevice,
        cursor: *mut GdkCursor,
    );
    pub fn gdk_surface_set_input_region(
        surface: *mut GdkSurface,
        region: *mut cairo::cairo_region_t,
    );
    pub fn gdk_surface_set_opaque_region(
        surface: *mut GdkSurface,
        region: *mut cairo::cairo_region_t,
    );
    pub fn gdk_surface_translate_coordinates(
        from: *mut GdkSurface,
        to: *mut GdkSurface,
        x: *mut c_double,
        y: *mut c_double,
    ) -> gboolean;

    //=========================================================================
    // GdkTexture
    //=========================================================================
    pub fn gdk_texture_get_type() -> GType;
    pub fn gdk_texture_new_for_pixbuf(pixbuf: *mut gdk_pixbuf::GdkPixbuf) -> *mut GdkTexture;
    #[cfg(any(feature = "v4_6", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v4_6")))]
    pub fn gdk_texture_new_from_bytes(
        bytes: *mut glib::GBytes,
        error: *mut *mut glib::GError,
    ) -> *mut GdkTexture;
    pub fn gdk_texture_new_from_file(
        file: *mut gio::GFile,
        error: *mut *mut glib::GError,
    ) -> *mut GdkTexture;
    #[cfg(any(feature = "v4_6", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v4_6")))]
    pub fn gdk_texture_new_from_filename(
        path: *const c_char,
        error: *mut *mut glib::GError,
    ) -> *mut GdkTexture;
    pub fn gdk_texture_new_from_resource(resource_path: *const c_char) -> *mut GdkTexture;
    pub fn gdk_texture_download(texture: *mut GdkTexture, data: *mut u8, stride: size_t);
    pub fn gdk_texture_get_height(texture: *mut GdkTexture) -> c_int;
    pub fn gdk_texture_get_width(texture: *mut GdkTexture) -> c_int;
    pub fn gdk_texture_save_to_png(texture: *mut GdkTexture, filename: *const c_char) -> gboolean;
    #[cfg(any(feature = "v4_6", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v4_6")))]
    pub fn gdk_texture_save_to_png_bytes(texture: *mut GdkTexture) -> *mut glib::GBytes;
    #[cfg(any(feature = "v4_6", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v4_6")))]
    pub fn gdk_texture_save_to_tiff(texture: *mut GdkTexture, filename: *const c_char) -> gboolean;
    #[cfg(any(feature = "v4_6", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v4_6")))]
    pub fn gdk_texture_save_to_tiff_bytes(texture: *mut GdkTexture) -> *mut glib::GBytes;

    //=========================================================================
    // GdkTouchEvent
    //=========================================================================
    pub fn gdk_touch_event_get_type() -> GType;
    pub fn gdk_touch_event_get_emulating_pointer(event: *mut GdkTouchEvent) -> gboolean;

    //=========================================================================
    // GdkTouchpadEvent
    //=========================================================================
    pub fn gdk_touchpad_event_get_type() -> GType;
    pub fn gdk_touchpad_event_get_deltas(
        event: *mut GdkTouchpadEvent,
        dx: *mut c_double,
        dy: *mut c_double,
    );
    pub fn gdk_touchpad_event_get_gesture_phase(
        event: *mut GdkTouchpadEvent,
    ) -> GdkTouchpadGesturePhase;
    pub fn gdk_touchpad_event_get_n_fingers(event: *mut GdkTouchpadEvent) -> c_uint;
    pub fn gdk_touchpad_event_get_pinch_angle_delta(event: *mut GdkTouchpadEvent) -> c_double;
    pub fn gdk_touchpad_event_get_pinch_scale(event: *mut GdkTouchpadEvent) -> c_double;

    //=========================================================================
    // GdkVulkanContext
    //=========================================================================
    pub fn gdk_vulkan_context_get_type() -> GType;

    //=========================================================================
    // GdkDevicePad
    //=========================================================================
    pub fn gdk_device_pad_get_type() -> GType;
    pub fn gdk_device_pad_get_feature_group(
        pad: *mut GdkDevicePad,
        feature: GdkDevicePadFeature,
        feature_idx: c_int,
    ) -> c_int;
    pub fn gdk_device_pad_get_group_n_modes(pad: *mut GdkDevicePad, group_idx: c_int) -> c_int;
    pub fn gdk_device_pad_get_n_features(
        pad: *mut GdkDevicePad,
        feature: GdkDevicePadFeature,
    ) -> c_int;
    pub fn gdk_device_pad_get_n_groups(pad: *mut GdkDevicePad) -> c_int;

    //=========================================================================
    // GdkDragSurface
    //=========================================================================
    pub fn gdk_drag_surface_get_type() -> GType;
    pub fn gdk_drag_surface_present(
        drag_surface: *mut GdkDragSurface,
        width: c_int,
        height: c_int,
    ) -> gboolean;

    //=========================================================================
    // GdkPaintable
    //=========================================================================
    pub fn gdk_paintable_get_type() -> GType;
    pub fn gdk_paintable_new_empty(
        intrinsic_width: c_int,
        intrinsic_height: c_int,
    ) -> *mut GdkPaintable;
    pub fn gdk_paintable_compute_concrete_size(
        paintable: *mut GdkPaintable,
        specified_width: c_double,
        specified_height: c_double,
        default_width: c_double,
        default_height: c_double,
        concrete_width: *mut c_double,
        concrete_height: *mut c_double,
    );
    pub fn gdk_paintable_get_current_image(paintable: *mut GdkPaintable) -> *mut GdkPaintable;
    pub fn gdk_paintable_get_flags(paintable: *mut GdkPaintable) -> GdkPaintableFlags;
    pub fn gdk_paintable_get_intrinsic_aspect_ratio(paintable: *mut GdkPaintable) -> c_double;
    pub fn gdk_paintable_get_intrinsic_height(paintable: *mut GdkPaintable) -> c_int;
    pub fn gdk_paintable_get_intrinsic_width(paintable: *mut GdkPaintable) -> c_int;
    pub fn gdk_paintable_invalidate_contents(paintable: *mut GdkPaintable);
    pub fn gdk_paintable_invalidate_size(paintable: *mut GdkPaintable);
    pub fn gdk_paintable_snapshot(
        paintable: *mut GdkPaintable,
        snapshot: *mut GdkSnapshot,
        width: c_double,
        height: c_double,
    );

    //=========================================================================
    // GdkPopup
    //=========================================================================
    pub fn gdk_popup_get_type() -> GType;
    pub fn gdk_popup_get_autohide(popup: *mut GdkPopup) -> gboolean;
    pub fn gdk_popup_get_parent(popup: *mut GdkPopup) -> *mut GdkSurface;
    pub fn gdk_popup_get_position_x(popup: *mut GdkPopup) -> c_int;
    pub fn gdk_popup_get_position_y(popup: *mut GdkPopup) -> c_int;
    pub fn gdk_popup_get_rect_anchor(popup: *mut GdkPopup) -> GdkGravity;
    pub fn gdk_popup_get_surface_anchor(popup: *mut GdkPopup) -> GdkGravity;
    pub fn gdk_popup_present(
        popup: *mut GdkPopup,
        width: c_int,
        height: c_int,
        layout: *mut GdkPopupLayout,
    ) -> gboolean;

    //=========================================================================
    // GdkToplevel
    //=========================================================================
    pub fn gdk_toplevel_get_type() -> GType;
    pub fn gdk_toplevel_begin_move(
        toplevel: *mut GdkToplevel,
        device: *mut GdkDevice,
        button: c_int,
        x: c_double,
        y: c_double,
        timestamp: u32,
    );
    pub fn gdk_toplevel_begin_resize(
        toplevel: *mut GdkToplevel,
        edge: GdkSurfaceEdge,
        device: *mut GdkDevice,
        button: c_int,
        x: c_double,
        y: c_double,
        timestamp: u32,
    );
    pub fn gdk_toplevel_focus(toplevel: *mut GdkToplevel, timestamp: u32);
    pub fn gdk_toplevel_get_state(toplevel: *mut GdkToplevel) -> GdkToplevelState;
    pub fn gdk_toplevel_inhibit_system_shortcuts(toplevel: *mut GdkToplevel, event: *mut GdkEvent);
    pub fn gdk_toplevel_lower(toplevel: *mut GdkToplevel) -> gboolean;
    pub fn gdk_toplevel_minimize(toplevel: *mut GdkToplevel) -> gboolean;
    pub fn gdk_toplevel_present(toplevel: *mut GdkToplevel, layout: *mut GdkToplevelLayout);
    pub fn gdk_toplevel_restore_system_shortcuts(toplevel: *mut GdkToplevel);
    pub fn gdk_toplevel_set_decorated(toplevel: *mut GdkToplevel, decorated: gboolean);
    pub fn gdk_toplevel_set_deletable(toplevel: *mut GdkToplevel, deletable: gboolean);
    pub fn gdk_toplevel_set_icon_list(toplevel: *mut GdkToplevel, surfaces: *mut glib::GList);
    pub fn gdk_toplevel_set_modal(toplevel: *mut GdkToplevel, modal: gboolean);
    pub fn gdk_toplevel_set_startup_id(toplevel: *mut GdkToplevel, startup_id: *const c_char);
    pub fn gdk_toplevel_set_title(toplevel: *mut GdkToplevel, title: *const c_char);
    pub fn gdk_toplevel_set_transient_for(toplevel: *mut GdkToplevel, parent: *mut GdkSurface);
    pub fn gdk_toplevel_show_window_menu(
        toplevel: *mut GdkToplevel,
        event: *mut GdkEvent,
    ) -> gboolean;
    pub fn gdk_toplevel_supports_edge_constraints(toplevel: *mut GdkToplevel) -> gboolean;
    #[cfg(any(feature = "v4_4", feature = "dox"))]
    #[cfg_attr(feature = "dox", doc(cfg(feature = "v4_4")))]
    pub fn gdk_toplevel_titlebar_gesture(
        toplevel: *mut GdkToplevel,
        gesture: GdkTitlebarGesture,
    ) -> gboolean;

    //=========================================================================
    // Other functions
    //=========================================================================
    pub fn gdk_cairo_draw_from_gl(
        cr: *mut cairo::cairo_t,
        surface: *mut GdkSurface,
        source: c_int,
        source_type: c_int,
        buffer_scale: c_int,
        x: c_int,
        y: c_int,
        width: c_int,
        height: c_int,
    );
    pub fn gdk_cairo_rectangle(cr: *mut cairo::cairo_t, rectangle: *const GdkRectangle);
    pub fn gdk_cairo_region(cr: *mut cairo::cairo_t, region: *const cairo::cairo_region_t);
    pub fn gdk_cairo_region_create_from_surface(
        surface: *mut cairo::cairo_surface_t,
    ) -> *mut cairo::cairo_region_t;
    pub fn gdk_cairo_set_source_pixbuf(
        cr: *mut cairo::cairo_t,
        pixbuf: *const gdk_pixbuf::GdkPixbuf,
        pixbuf_x: c_double,
        pixbuf_y: c_double,
    );
    pub fn gdk_cairo_set_source_rgba(cr: *mut cairo::cairo_t, rgba: *const GdkRGBA);
    pub fn gdk_content_deserialize_async(
        stream: *mut gio::GInputStream,
        mime_type: *const c_char,
        type_: GType,
        io_priority: c_int,
        cancellable: *mut gio::GCancellable,
        callback: gio::GAsyncReadyCallback,
        user_data: gpointer,
    );
    pub fn gdk_content_deserialize_finish(
        result: *mut gio::GAsyncResult,
        value: *mut gobject::GValue,
        error: *mut *mut glib::GError,
    ) -> gboolean;
    pub fn gdk_content_register_deserializer(
        mime_type: *const c_char,
        type_: GType,
        deserialize: GdkContentDeserializeFunc,
        data: gpointer,
        notify: glib::GDestroyNotify,
    );
    pub fn gdk_content_register_serializer(
        type_: GType,
        mime_type: *const c_char,
        serialize: GdkContentSerializeFunc,
        data: gpointer,
        notify: glib::GDestroyNotify,
    );
    pub fn gdk_content_serialize_async(
        stream: *mut gio::GOutputStream,
        mime_type: *const c_char,
        value: *const gobject::GValue,
        io_priority: c_int,
        cancellable: *mut gio::GCancellable,
        callback: gio::GAsyncReadyCallback,
        user_data: gpointer,
    );
    pub fn gdk_content_serialize_finish(
        result: *mut gio::GAsyncResult,
        error: *mut *mut glib::GError,
    ) -> gboolean;
    pub fn gdk_events_get_angle(
        event1: *mut GdkEvent,
        event2: *mut GdkEvent,
        angle: *mut c_double,
    ) -> gboolean;
    pub fn gdk_events_get_center(
        event1: *mut GdkEvent,
        event2: *mut GdkEvent,
        x: *mut c_double,
        y: *mut c_double,
    ) -> gboolean;
    pub fn gdk_events_get_distance(
        event1: *mut GdkEvent,
        event2: *mut GdkEvent,
        distance: *mut c_double,
    ) -> gboolean;
    pub fn gdk_intern_mime_type(string: *const c_char) -> *const c_char;
    pub fn gdk_keyval_convert_case(symbol: c_uint, lower: *mut c_uint, upper: *mut c_uint);
    pub fn gdk_keyval_from_name(keyval_name: *const c_char) -> c_uint;
    pub fn gdk_keyval_is_lower(keyval: c_uint) -> gboolean;
    pub fn gdk_keyval_is_upper(keyval: c_uint) -> gboolean;
    pub fn gdk_keyval_name(keyval: c_uint) -> *const c_char;
    pub fn gdk_keyval_to_lower(keyval: c_uint) -> c_uint;
    pub fn gdk_keyval_to_unicode(keyval: c_uint) -> u32;
    pub fn gdk_keyval_to_upper(keyval: c_uint) -> c_uint;
    pub fn gdk_pango_layout_get_clip_region(
        layout: *mut pango::PangoLayout,
        x_origin: c_int,
        y_origin: c_int,
        index_ranges: *const c_int,
        n_ranges: c_int,
    ) -> *mut cairo::cairo_region_t;
    pub fn gdk_pango_layout_line_get_clip_region(
        line: *mut pango::PangoLayoutLine,
        x_origin: c_int,
        y_origin: c_int,
        index_ranges: *const c_int,
        n_ranges: c_int,
    ) -> *mut cairo::cairo_region_t;
    pub fn gdk_pixbuf_get_from_surface(
        surface: *mut cairo::cairo_surface_t,
        src_x: c_int,
        src_y: c_int,
        width: c_int,
        height: c_int,
    ) -> *mut gdk_pixbuf::GdkPixbuf;
    pub fn gdk_pixbuf_get_from_texture(texture: *mut GdkTexture) -> *mut gdk_pixbuf::GdkPixbuf;
    pub fn gdk_set_allowed_backends(backends: *const c_char);
    pub fn gdk_toplevel_size_get_type() -> GType;
    pub fn gdk_unicode_to_keyval(wc: u32) -> c_uint;

}