Lines Matching defs:x11
217 memset(_glfw.x11.keycodes, -1, sizeof(_glfw.x11.keycodes));
218 memset(_glfw.x11.scancodes, -1, sizeof(_glfw.x11.scancodes));
220 if (_glfw.x11.xkb.available)
225 XkbDescPtr desc = XkbGetMap(_glfw.x11.display, 0, XkbUseCoreKbd);
226 XkbGetNames(_glfw.x11.display, XkbKeyNamesMask | XkbKeyAliasesMask, desc);
405 _glfw.x11.keycodes[scancode] = key;
412 XDisplayKeycodes(_glfw.x11.display, &scancodeMin, &scancodeMax);
415 KeySym* keysyms = XGetKeyboardMapping(_glfw.x11.display,
424 if (_glfw.x11.keycodes[scancode] < 0)
427 _glfw.x11.keycodes[scancode] = translateKeySyms(&keysyms[base], width);
431 if (_glfw.x11.keycodes[scancode] > 0)
432 _glfw.x11.scancodes[_glfw.x11.keycodes[scancode]] = scancode;
445 if (XGetIMValues(_glfw.x11.im, XNQueryInputStyle, &styles, NULL) != NULL)
463 _glfw.x11.im = NULL;
470 if (_glfw.x11.im)
473 _glfw.x11.im = XOpenIM(_glfw.x11.display, 0, NULL, NULL);
474 if (_glfw.x11.im)
478 XCloseIM(_glfw.x11.im);
479 _glfw.x11.im = NULL;
483 if (_glfw.x11.im)
488 XSetIMValues(_glfw.x11.im, XNDestroyCallback, &callback, NULL);
501 const Atom atom = XInternAtom(_glfw.x11.display, atomName, False);
519 if (!_glfwGetWindowPropertyX11(_glfw.x11.root,
520 _glfw.x11.NET_SUPPORTING_WM_CHECK,
534 _glfw.x11.NET_SUPPORTING_WM_CHECK,
563 _glfwGetWindowPropertyX11(_glfw.x11.root,
564 _glfw.x11.NET_SUPPORTED,
570 _glfw.x11.NET_WM_STATE =
572 _glfw.x11.NET_WM_STATE_ABOVE =
574 _glfw.x11.NET_WM_STATE_FULLSCREEN =
576 _glfw.x11.NET_WM_STATE_MAXIMIZED_VERT =
578 _glfw.x11.NET_WM_STATE_MAXIMIZED_HORZ =
580 _glfw.x11.NET_WM_STATE_DEMANDS_ATTENTION =
582 _glfw.x11.NET_WM_FULLSCREEN_MONITORS =
584 _glfw.x11.NET_WM_WINDOW_TYPE =
586 _glfw.x11.NET_WM_WINDOW_TYPE_NORMAL =
588 _glfw.x11.NET_WORKAREA =
590 _glfw.x11.NET_CURRENT_DESKTOP =
592 _glfw.x11.NET_ACTIVE_WINDOW =
594 _glfw.x11.NET_FRAME_EXTENTS =
596 _glfw.x11.NET_REQUEST_FRAME_EXTENTS =
608 _glfw.x11.vidmode.handle = _glfwPlatformLoadModule("libXxf86vm.so");
610 _glfw.x11.vidmode.handle = _glfwPlatformLoadModule("libXxf86vm.so.1");
612 if (_glfw.x11.vidmode.handle)
614 _glfw.x11.vidmode.QueryExtension = (PFN_XF86VidModeQueryExtension)
615 _glfwPlatformGetModuleSymbol(_glfw.x11.vidmode.handle, "XF86VidModeQueryExtension");
616 _glfw.x11.vidmode.GetGammaRamp = (PFN_XF86VidModeGetGammaRamp)
617 _glfwPlatformGetModuleSymbol(_glfw.x11.vidmode.handle, "XF86VidModeGetGammaRamp");
618 _glfw.x11.vidmode.SetGammaRamp = (PFN_XF86VidModeSetGammaRamp)
619 _glfwPlatformGetModuleSymbol(_glfw.x11.vidmode.handle, "XF86VidModeSetGammaRamp");
620 _glfw.x11.vidmode.GetGammaRampSize = (PFN_XF86VidModeGetGammaRampSize)
621 _glfwPlatformGetModuleSymbol(_glfw.x11.vidmode.handle, "XF86VidModeGetGammaRampSize");
623 _glfw.x11.vidmode.available =
624 XF86VidModeQueryExtension(_glfw.x11.display,
625 &_glfw.x11.vidmode.eventBase,
626 &_glfw.x11.vidmode.errorBase);
630 _glfw.x11.xi.handle = _glfwPlatformLoadModule("libXi-6.so");
632 _glfw.x11.xi.handle = _glfwPlatformLoadModule("libXi.so");
634 _glfw.x11.xi.handle = _glfwPlatformLoadModule("libXi.so.6");
636 if (_glfw.x11.xi.handle)
638 _glfw.x11.xi.QueryVersion = (PFN_XIQueryVersion)
639 _glfwPlatformGetModuleSymbol(_glfw.x11.xi.handle, "XIQueryVersion");
640 _glfw.x11.xi.SelectEvents = (PFN_XISelectEvents)
641 _glfwPlatformGetModuleSymbol(_glfw.x11.xi.handle, "XISelectEvents");
643 if (XQueryExtension(_glfw.x11.display,
645 &_glfw.x11.xi.majorOpcode,
646 &_glfw.x11.xi.eventBase,
647 &_glfw.x11.xi.errorBase))
649 _glfw.x11.xi.major = 2;
650 _glfw.x11.xi.minor = 0;
652 if (XIQueryVersion(_glfw.x11.display,
653 &_glfw.x11.xi.major,
654 &_glfw.x11.xi.minor) == Success)
656 _glfw.x11.xi.available = GLFW_TRUE;
662 _glfw.x11.randr.handle = _glfwPlatformLoadModule("libXrandr-2.so");
664 _glfw.x11.randr.handle = _glfwPlatformLoadModule("libXrandr.so");
666 _glfw.x11.randr.handle = _glfwPlatformLoadModule("libXrandr.so.2");
668 if (_glfw.x11.randr.handle)
670 _glfw.x11.randr.AllocGamma = (PFN_XRRAllocGamma)
671 _glfwPlatformGetModuleSymbol(_glfw.x11.randr.handle, "XRRAllocGamma");
672 _glfw.x11.randr.FreeGamma = (PFN_XRRFreeGamma)
673 _glfwPlatformGetModuleSymbol(_glfw.x11.randr.handle, "XRRFreeGamma");
674 _glfw.x11.randr.FreeCrtcInfo = (PFN_XRRFreeCrtcInfo)
675 _glfwPlatformGetModuleSymbol(_glfw.x11.randr.handle, "XRRFreeCrtcInfo");
676 _glfw.x11.randr.FreeGamma = (PFN_XRRFreeGamma)
677 _glfwPlatformGetModuleSymbol(_glfw.x11.randr.handle, "XRRFreeGamma");
678 _glfw.x11.randr.FreeOutputInfo = (PFN_XRRFreeOutputInfo)
679 _glfwPlatformGetModuleSymbol(_glfw.x11.randr.handle, "XRRFreeOutputInfo");
680 _glfw.x11.randr.FreeScreenResources = (PFN_XRRFreeScreenResources)
681 _glfwPlatformGetModuleSymbol(_glfw.x11.randr.handle, "XRRFreeScreenResources");
682 _glfw.x11.randr.GetCrtcGamma = (PFN_XRRGetCrtcGamma)
683 _glfwPlatformGetModuleSymbol(_glfw.x11.randr.handle, "XRRGetCrtcGamma");
684 _glfw.x11.randr.GetCrtcGammaSize = (PFN_XRRGetCrtcGammaSize)
685 _glfwPlatformGetModuleSymbol(_glfw.x11.randr.handle, "XRRGetCrtcGammaSize");
686 _glfw.x11.randr.GetCrtcInfo = (PFN_XRRGetCrtcInfo)
687 _glfwPlatformGetModuleSymbol(_glfw.x11.randr.handle, "XRRGetCrtcInfo");
688 _glfw.x11.randr.GetOutputInfo = (PFN_XRRGetOutputInfo)
689 _glfwPlatformGetModuleSymbol(_glfw.x11.randr.handle, "XRRGetOutputInfo");
690 _glfw.x11.randr.GetOutputPrimary = (PFN_XRRGetOutputPrimary)
691 _glfwPlatformGetModuleSymbol(_glfw.x11.randr.handle, "XRRGetOutputPrimary");
692 _glfw.x11.randr.GetScreenResourcesCurrent = (PFN_XRRGetScreenResourcesCurrent)
693 _glfwPlatformGetModuleSymbol(_glfw.x11.randr.handle, "XRRGetScreenResourcesCurrent");
694 _glfw.x11.randr.QueryExtension = (PFN_XRRQueryExtension)
695 _glfwPlatformGetModuleSymbol(_glfw.x11.randr.handle, "XRRQueryExtension");
696 _glfw.x11.randr.QueryVersion = (PFN_XRRQueryVersion)
697 _glfwPlatformGetModuleSymbol(_glfw.x11.randr.handle, "XRRQueryVersion");
698 _glfw.x11.randr.SelectInput = (PFN_XRRSelectInput)
699 _glfwPlatformGetModuleSymbol(_glfw.x11.randr.handle, "XRRSelectInput");
700 _glfw.x11.randr.SetCrtcConfig = (PFN_XRRSetCrtcConfig)
701 _glfwPlatformGetModuleSymbol(_glfw.x11.randr.handle, "XRRSetCrtcConfig");
702 _glfw.x11.randr.SetCrtcGamma = (PFN_XRRSetCrtcGamma)
703 _glfwPlatformGetModuleSymbol(_glfw.x11.randr.handle, "XRRSetCrtcGamma");
704 _glfw.x11.randr.UpdateConfiguration = (PFN_XRRUpdateConfiguration)
705 _glfwPlatformGetModuleSymbol(_glfw.x11.randr.handle, "XRRUpdateConfiguration");
707 if (XRRQueryExtension(_glfw.x11.display,
708 &_glfw.x11.randr.eventBase,
709 &_glfw.x11.randr.errorBase))
711 if (XRRQueryVersion(_glfw.x11.display,
712 &_glfw.x11.randr.major,
713 &_glfw.x11.randr.minor))
716 if (_glfw.x11.randr.major > 1 || _glfw.x11.randr.minor >= 3)
717 _glfw.x11.randr.available = GLFW_TRUE;
727 if (_glfw.x11.randr.available)
729 XRRScreenResources* sr = XRRGetScreenResourcesCurrent(_glfw.x11.display,
730 _glfw.x11.root);
732 if (!sr->ncrtc || !XRRGetCrtcGammaSize(_glfw.x11.display, sr->crtcs[0]))
736 _glfw.x11.randr.gammaBroken = GLFW_TRUE;
743 _glfw.x11.randr.monitorBroken = GLFW_TRUE;
749 if (_glfw.x11.randr.available && !_glfw.x11.randr.monitorBroken)
751 XRRSelectInput(_glfw.x11.display, _glfw.x11.root,
756 _glfw.x11.xcursor.handle = _glfwPlatformLoadModule("libXcursor-1.so");
758 _glfw.x11.xcursor.handle = _glfwPlatformLoadModule("libXcursor.so");
760 _glfw.x11.xcursor.handle = _glfwPlatformLoadModule("libXcursor.so.1");
762 if (_glfw.x11.xcursor.handle)
764 _glfw.x11.xcursor.ImageCreate = (PFN_XcursorImageCreate)
765 _glfwPlatformGetModuleSymbol(_glfw.x11.xcursor.handle, "XcursorImageCreate");
766 _glfw.x11.xcursor.ImageDestroy = (PFN_XcursorImageDestroy)
767 _glfwPlatformGetModuleSymbol(_glfw.x11.xcursor.handle, "XcursorImageDestroy");
768 _glfw.x11.xcursor.ImageLoadCursor = (PFN_XcursorImageLoadCursor)
769 _glfwPlatformGetModuleSymbol(_glfw.x11.xcursor.handle, "XcursorImageLoadCursor");
770 _glfw.x11.xcursor.GetTheme = (PFN_XcursorGetTheme)
771 _glfwPlatformGetModuleSymbol(_glfw.x11.xcursor.handle, "XcursorGetTheme");
772 _glfw.x11.xcursor.GetDefaultSize = (PFN_XcursorGetDefaultSize)
773 _glfwPlatformGetModuleSymbol(_glfw.x11.xcursor.handle, "XcursorGetDefaultSize");
774 _glfw.x11.xcursor.LibraryLoadImage = (PFN_XcursorLibraryLoadImage)
775 _glfwPlatformGetModuleSymbol(_glfw.x11.xcursor.handle, "XcursorLibraryLoadImage");
779 _glfw.x11.xinerama.handle = _glfwPlatformLoadModule("libXinerama-1.so");
781 _glfw.x11.xinerama.handle = _glfwPlatformLoadModule("libXinerama.so");
783 _glfw.x11.xinerama.handle = _glfwPlatformLoadModule("libXinerama.so.1");
785 if (_glfw.x11.xinerama.handle)
787 _glfw.x11.xinerama.IsActive = (PFN_XineramaIsActive)
788 _glfwPlatformGetModuleSymbol(_glfw.x11.xinerama.handle, "XineramaIsActive");
789 _glfw.x11.xinerama.QueryExtension = (PFN_XineramaQueryExtension)
790 _glfwPlatformGetModuleSymbol(_glfw.x11.xinerama.handle, "XineramaQueryExtension");
791 _glfw.x11.xinerama.QueryScreens = (PFN_XineramaQueryScreens)
792 _glfwPlatformGetModuleSymbol(_glfw.x11.xinerama.handle, "XineramaQueryScreens");
794 if (XineramaQueryExtension(_glfw.x11.display,
795 &_glfw.x11.xinerama.major,
796 &_glfw.x11.xinerama.minor))
798 if (XineramaIsActive(_glfw.x11.display))
799 _glfw.x11.xinerama.available = GLFW_TRUE;
803 _glfw.x11.xkb.major = 1;
804 _glfw.x11.xkb.minor = 0;
805 _glfw.x11.xkb.available =
806 XkbQueryExtension(_glfw.x11.display,
807 &_glfw.x11.xkb.majorOpcode,
808 &_glfw.x11.xkb.eventBase,
809 &_glfw.x11.xkb.errorBase,
810 &_glfw.x11.xkb.major,
811 &_glfw.x11.xkb.minor);
813 if (_glfw.x11.xkb.available)
817 if (XkbSetDetectableAutoRepeat(_glfw.x11.display, True, &supported))
820 _glfw.x11.xkb.detectable = GLFW_TRUE;
824 if (XkbGetState(_glfw.x11.display, XkbUseCoreKbd, &state) == Success)
825 _glfw.x11.xkb.group = (unsigned int)state.group;
827 XkbSelectEventDetails(_glfw.x11.display, XkbUseCoreKbd, XkbStateNotify,
831 if (_glfw.hints.init.x11.xcbVulkanSurface)
834 _glfw.x11.x11xcb.handle = _glfwPlatformLoadModule("libX11-xcb-1.so");
836 _glfw.x11.x11xcb.handle = _glfwPlatformLoadModule("libX11-xcb.so");
838 _glfw.x11.x11xcb.handle = _glfwPlatformLoadModule("libX11-xcb.so.1");
842 if (_glfw.x11.x11xcb.handle)
844 _glfw.x11.x11xcb.GetXCBConnection = (PFN_XGetXCBConnection)
845 _glfwPlatformGetModuleSymbol(_glfw.x11.x11xcb.handle, "XGetXCBConnection");
849 _glfw.x11.xrender.handle = _glfwPlatformLoadModule("libXrender-1.so");
851 _glfw.x11.xrender.handle = _glfwPlatformLoadModule("libXrender.so");
853 _glfw.x11.xrender.handle = _glfwPlatformLoadModule("libXrender.so.1");
855 if (_glfw.x11.xrender.handle)
857 _glfw.x11.xrender.QueryExtension = (PFN_XRenderQueryExtension)
858 _glfwPlatformGetModuleSymbol(_glfw.x11.xrender.handle, "XRenderQueryExtension");
859 _glfw.x11.xrender.QueryVersion = (PFN_XRenderQueryVersion)
860 _glfwPlatformGetModuleSymbol(_glfw.x11.xrender.handle, "XRenderQueryVersion");
861 _glfw.x11.xrender.FindVisualFormat = (PFN_XRenderFindVisualFormat)
862 _glfwPlatformGetModuleSymbol(_glfw.x11.xrender.handle, "XRenderFindVisualFormat");
864 if (XRenderQueryExtension(_glfw.x11.display,
865 &_glfw.x11.xrender.errorBase,
866 &_glfw.x11.xrender.eventBase))
868 if (XRenderQueryVersion(_glfw.x11.display,
869 &_glfw.x11.xrender.major,
870 &_glfw.x11.xrender.minor))
872 _glfw.x11.xrender.available = GLFW_TRUE;
878 _glfw.x11.xshape.handle = _glfwPlatformLoadModule("libXext-6.so");
880 _glfw.x11.xshape.handle = _glfwPlatformLoadModule("libXext.so");
882 _glfw.x11.xshape.handle = _glfwPlatformLoadModule("libXext.so.6");
884 if (_glfw.x11.xshape.handle)
886 _glfw.x11.xshape.QueryExtension = (PFN_XShapeQueryExtension)
887 _glfwPlatformGetModuleSymbol(_glfw.x11.xshape.handle, "XShapeQueryExtension");
888 _glfw.x11.xshape.ShapeCombineRegion = (PFN_XShapeCombineRegion)
889 _glfwPlatformGetModuleSymbol(_glfw.x11.xshape.handle, "XShapeCombineRegion");
890 _glfw.x11.xshape.QueryVersion = (PFN_XShapeQueryVersion)
891 _glfwPlatformGetModuleSymbol(_glfw.x11.xshape.handle, "XShapeQueryVersion");
892 _glfw.x11.xshape.ShapeCombineMask = (PFN_XShapeCombineMask)
893 _glfwPlatformGetModuleSymbol(_glfw.x11.xshape.handle, "XShapeCombineMask");
895 if (XShapeQueryExtension(_glfw.x11.display,
896 &_glfw.x11.xshape.errorBase,
897 &_glfw.x11.xshape.eventBase))
899 if (XShapeQueryVersion(_glfw.x11.display,
900 &_glfw.x11.xshape.major,
901 &_glfw.x11.xshape.minor))
903 _glfw.x11.xshape.available = GLFW_TRUE;
914 _glfw.x11.NULL_ = XInternAtom(_glfw.x11.display, "NULL", False);
915 _glfw.x11.UTF8_STRING = XInternAtom(_glfw.x11.display, "UTF8_STRING", False);
916 _glfw.x11.ATOM_PAIR = XInternAtom(_glfw.x11.display, "ATOM_PAIR", False);
919 _glfw.x11.GLFW_SELECTION =
920 XInternAtom(_glfw.x11.display, "GLFW_SELECTION", False);
923 _glfw.x11.TARGETS = XInternAtom(_glfw.x11.display, "TARGETS", False);
924 _glfw.x11.MULTIPLE = XInternAtom(_glfw.x11.display, "MULTIPLE", False);
925 _glfw.x11.PRIMARY = XInternAtom(_glfw.x11.display, "PRIMARY", False);
926 _glfw.x11.INCR = XInternAtom(_glfw.x11.display, "INCR", False);
927 _glfw.x11.CLIPBOARD = XInternAtom(_glfw.x11.display, "CLIPBOARD", False);
930 _glfw.x11.CLIPBOARD_MANAGER =
931 XInternAtom(_glfw.x11.display, "CLIPBOARD_MANAGER", False);
932 _glfw.x11.SAVE_TARGETS =
933 XInternAtom(_glfw.x11.display, "SAVE_TARGETS", False);
936 _glfw.x11.XdndAware = XInternAtom(_glfw.x11.display, "XdndAware", False);
937 _glfw.x11.XdndEnter = XInternAtom(_glfw.x11.display, "XdndEnter", False);
938 _glfw.x11.XdndPosition = XInternAtom(_glfw.x11.display, "XdndPosition", False);
939 _glfw.x11.XdndStatus = XInternAtom(_glfw.x11.display, "XdndStatus", False);
940 _glfw.x11.XdndActionCopy = XInternAtom(_glfw.x11.display, "XdndActionCopy", False);
941 _glfw.x11.XdndDrop = XInternAtom(_glfw.x11.display, "XdndDrop", False);
942 _glfw.x11.XdndFinished = XInternAtom(_glfw.x11.display, "XdndFinished", False);
943 _glfw.x11.XdndSelection = XInternAtom(_glfw.x11.display, "XdndSelection", False);
944 _glfw.x11.XdndTypeList = XInternAtom(_glfw.x11.display, "XdndTypeList", False);
945 _glfw.x11.text_uri_list = XInternAtom(_glfw.x11.display, "text/uri-list", False);
950 _glfw.x11.WM_PROTOCOLS =
951 XInternAtom(_glfw.x11.display, "WM_PROTOCOLS", False);
952 _glfw.x11.WM_STATE =
953 XInternAtom(_glfw.x11.display, "WM_STATE", False);
954 _glfw.x11.WM_DELETE_WINDOW =
955 XInternAtom(_glfw.x11.display, "WM_DELETE_WINDOW", False);
956 _glfw.x11.NET_SUPPORTED =
957 XInternAtom(_glfw.x11.display, "_NET_SUPPORTED", False);
958 _glfw.x11.NET_SUPPORTING_WM_CHECK =
959 XInternAtom(_glfw.x11.display, "_NET_SUPPORTING_WM_CHECK", False);
960 _glfw.x11.NET_WM_ICON =
961 XInternAtom(_glfw.x11.display, "_NET_WM_ICON", False);
962 _glfw.x11.NET_WM_PING =
963 XInternAtom(_glfw.x11.display, "_NET_WM_PING", False);
964 _glfw.x11.NET_WM_PID =
965 XInternAtom(_glfw.x11.display, "_NET_WM_PID", False);
966 _glfw.x11.NET_WM_NAME =
967 XInternAtom(_glfw.x11.display, "_NET_WM_NAME", False);
968 _glfw.x11.NET_WM_ICON_NAME =
969 XInternAtom(_glfw.x11.display, "_NET_WM_ICON_NAME", False);
970 _glfw.x11.NET_WM_BYPASS_COMPOSITOR =
971 XInternAtom(_glfw.x11.display, "_NET_WM_BYPASS_COMPOSITOR", False);
972 _glfw.x11.NET_WM_WINDOW_OPACITY =
973 XInternAtom(_glfw.x11.display, "_NET_WM_WINDOW_OPACITY", False);
974 _glfw.x11.MOTIF_WM_HINTS =
975 XInternAtom(_glfw.x11.display, "_MOTIF_WM_HINTS", False);
980 snprintf(name, sizeof(name), "_NET_WM_CM_S%u", _glfw.x11.screen);
981 _glfw.x11.NET_WM_CM_Sx = XInternAtom(_glfw.x11.display, name, False);
1002 char* rms = XResourceManagerString(_glfw.x11.display);
1041 return XCreateWindow(_glfw.x11.display, _glfw.x11.root,
1044 DefaultVisual(_glfw.x11.display, _glfw.x11.screen),
1052 if (pipe(_glfw.x11.emptyEventPipe) != 0)
1062 const int sf = fcntl(_glfw.x11.emptyEventPipe[i], F_GETFL, 0);
1063 const int df = fcntl(_glfw.x11.emptyEventPipe[i], F_GETFD, 0);
1066 fcntl(_glfw.x11.emptyEventPipe[i], F_SETFL, sf | O_NONBLOCK) == -1 ||
1067 fcntl(_glfw.x11.emptyEventPipe[i], F_SETFD, df | FD_CLOEXEC) == -1)
1083 if (_glfw.x11.display != display)
1086 _glfw.x11.errorCode = event->error_code;
1099 assert(_glfw.x11.errorHandler == NULL);
1100 _glfw.x11.errorCode = Success;
1101 _glfw.x11.errorHandler = XSetErrorHandler(errorHandler);
1109 XSync(_glfw.x11.display, False);
1110 XSetErrorHandler(_glfw.x11.errorHandler);
1111 _glfw.x11.errorHandler = NULL;
1119 XGetErrorText(_glfw.x11.display, _glfw.x11.errorCode,
1131 if (!_glfw.x11.xcursor.handle)
1154 cursor = XcursorImageLoadCursor(_glfw.x11.display, native);
1167 const _GLFWplatform x11 =
1313 _glfw.x11.display = display;
1314 _glfw.x11.xlib.handle = module;
1316 *platform = x11;
1322 _glfw.x11.xlib.AllocClassHint = (PFN_XAllocClassHint)
1323 _glfwPlatformGetModuleSymbol(_glfw.x11.xlib.handle, "XAllocClassHint");
1324 _glfw.x11.xlib.AllocSizeHints = (PFN_XAllocSizeHints)
1325 _glfwPlatformGetModuleSymbol(_glfw.x11.xlib.handle, "XAllocSizeHints");
1326 _glfw.x11.xlib.AllocWMHints = (PFN_XAllocWMHints)
1327 _glfwPlatformGetModuleSymbol(_glfw.x11.xlib.handle, "XAllocWMHints");
1328 _glfw.x11.xlib.ChangeProperty = (PFN_XChangeProperty)
1329 _glfwPlatformGetModuleSymbol(_glfw.x11.xlib.handle, "XChangeProperty");
1330 _glfw.x11.xlib.ChangeWindowAttributes = (PFN_XChangeWindowAttributes)
1331 _glfwPlatformGetModuleSymbol(_glfw.x11.xlib.handle, "XChangeWindowAttributes");
1332 _glfw.x11.xlib.CheckIfEvent = (PFN_XCheckIfEvent)
1333 _glfwPlatformGetModuleSymbol(_glfw.x11.xlib.handle, "XCheckIfEvent");
1334 _glfw.x11.xlib.CheckTypedWindowEvent = (PFN_XCheckTypedWindowEvent)
1335 _glfwPlatformGetModuleSymbol(_glfw.x11.xlib.handle, "XCheckTypedWindowEvent");
1336 _glfw.x11.xlib.CloseDisplay = (PFN_XCloseDisplay)
1337 _glfwPlatformGetModuleSymbol(_glfw.x11.xlib.handle, "XCloseDisplay");
1338 _glfw.x11.xlib.CloseIM = (PFN_XCloseIM)
1339 _glfwPlatformGetModuleSymbol(_glfw.x11.xlib.handle, "XCloseIM");
1340 _glfw.x11.xlib.ConvertSelection = (PFN_XConvertSelection)
1341 _glfwPlatformGetModuleSymbol(_glfw.x11.xlib.handle, "XConvertSelection");
1342 _glfw.x11.xlib.CreateColormap = (PFN_XCreateColormap)
1343 _glfwPlatformGetModuleSymbol(_glfw.x11.xlib.handle, "XCreateColormap");
1344 _glfw.x11.xlib.CreateFontCursor = (PFN_XCreateFontCursor)
1345 _glfwPlatformGetModuleSymbol(_glfw.x11.xlib.handle, "XCreateFontCursor");
1346 _glfw.x11.xlib.CreateIC = (PFN_XCreateIC)
1347 _glfwPlatformGetModuleSymbol(_glfw.x11.xlib.handle, "XCreateIC");
1348 _glfw.x11.xlib.CreateRegion = (PFN_XCreateRegion)
1349 _glfwPlatformGetModuleSymbol(_glfw.x11.xlib.handle, "XCreateRegion");
1350 _glfw.x11.xlib.CreateWindow = (PFN_XCreateWindow)
1351 _glfwPlatformGetModuleSymbol(_glfw.x11.xlib.handle, "XCreateWindow");
1352 _glfw.x11.xlib.DefineCursor = (PFN_XDefineCursor)
1353 _glfwPlatformGetModuleSymbol(_glfw.x11.xlib.handle, "XDefineCursor");
1354 _glfw.x11.xlib.DeleteContext = (PFN_XDeleteContext)
1355 _glfwPlatformGetModuleSymbol(_glfw.x11.xlib.handle, "XDeleteContext");
1356 _glfw.x11.xlib.DeleteProperty = (PFN_XDeleteProperty)
1357 _glfwPlatformGetModuleSymbol(_glfw.x11.xlib.handle, "XDeleteProperty");
1358 _glfw.x11.xlib.DestroyIC = (PFN_XDestroyIC)
1359 _glfwPlatformGetModuleSymbol(_glfw.x11.xlib.handle, "XDestroyIC");
1360 _glfw.x11.xlib.DestroyRegion = (PFN_XDestroyRegion)
1361 _glfwPlatformGetModuleSymbol(_glfw.x11.xlib.handle, "XDestroyRegion");
1362 _glfw.x11.xlib.DestroyWindow = (PFN_XDestroyWindow)
1363 _glfwPlatformGetModuleSymbol(_glfw.x11.xlib.handle, "XDestroyWindow");
1364 _glfw.x11.xlib.DisplayKeycodes = (PFN_XDisplayKeycodes)
1365 _glfwPlatformGetModuleSymbol(_glfw.x11.xlib.handle, "XDisplayKeycodes");
1366 _glfw.x11.xlib.EventsQueued = (PFN_XEventsQueued)
1367 _glfwPlatformGetModuleSymbol(_glfw.x11.xlib.handle, "XEventsQueued");
1368 _glfw.x11.xlib.FilterEvent = (PFN_XFilterEvent)
1369 _glfwPlatformGetModuleSymbol(_glfw.x11.xlib.handle, "XFilterEvent");
1370 _glfw.x11.xlib.FindContext = (PFN_XFindContext)
1371 _glfwPlatformGetModuleSymbol(_glfw.x11.xlib.handle, "XFindContext");
1372 _glfw.x11.xlib.Flush = (PFN_XFlush)
1373 _glfwPlatformGetModuleSymbol(_glfw.x11.xlib.handle, "XFlush");
1374 _glfw.x11.xlib.Free = (PFN_XFree)
1375 _glfwPlatformGetModuleSymbol(_glfw.x11.xlib.handle, "XFree");
1376 _glfw.x11.xlib.FreeColormap = (PFN_XFreeColormap)
1377 _glfwPlatformGetModuleSymbol(_glfw.x11.xlib.handle, "XFreeColormap");
1378 _glfw.x11.xlib.FreeCursor = (PFN_XFreeCursor)
1379 _glfwPlatformGetModuleSymbol(_glfw.x11.xlib.handle, "XFreeCursor");
1380 _glfw.x11.xlib.FreeEventData = (PFN_XFreeEventData)
1381 _glfwPlatformGetModuleSymbol(_glfw.x11.xlib.handle, "XFreeEventData");
1382 _glfw.x11.xlib.GetErrorText = (PFN_XGetErrorText)
1383 _glfwPlatformGetModuleSymbol(_glfw.x11.xlib.handle, "XGetErrorText");
1384 _glfw.x11.xlib.GetEventData = (PFN_XGetEventData)
1385 _glfwPlatformGetModuleSymbol(_glfw.x11.xlib.handle, "XGetEventData");
1386 _glfw.x11.xlib.GetICValues = (PFN_XGetICValues)
1387 _glfwPlatformGetModuleSymbol(_glfw.x11.xlib.handle, "XGetICValues");
1388 _glfw.x11.xlib.GetIMValues = (PFN_XGetIMValues)
1389 _glfwPlatformGetModuleSymbol(_glfw.x11.xlib.handle, "XGetIMValues");
1390 _glfw.x11.xlib.GetInputFocus = (PFN_XGetInputFocus)
1391 _glfwPlatformGetModuleSymbol(_glfw.x11.xlib.handle, "XGetInputFocus");
1392 _glfw.x11.xlib.GetKeyboardMapping = (PFN_XGetKeyboardMapping)
1393 _glfwPlatformGetModuleSymbol(_glfw.x11.xlib.handle, "XGetKeyboardMapping");
1394 _glfw.x11.xlib.GetScreenSaver = (PFN_XGetScreenSaver)
1395 _glfwPlatformGetModuleSymbol(_glfw.x11.xlib.handle, "XGetScreenSaver");
1396 _glfw.x11.xlib.GetSelectionOwner = (PFN_XGetSelectionOwner)
1397 _glfwPlatformGetModuleSymbol(_glfw.x11.xlib.handle, "XGetSelectionOwner");
1398 _glfw.x11.xlib.GetVisualInfo = (PFN_XGetVisualInfo)
1399 _glfwPlatformGetModuleSymbol(_glfw.x11.xlib.handle, "XGetVisualInfo");
1400 _glfw.x11.xlib.GetWMNormalHints = (PFN_XGetWMNormalHints)
1401 _glfwPlatformGetModuleSymbol(_glfw.x11.xlib.handle, "XGetWMNormalHints");
1402 _glfw.x11.xlib.GetWindowAttributes = (PFN_XGetWindowAttributes)
1403 _glfwPlatformGetModuleSymbol(_glfw.x11.xlib.handle, "XGetWindowAttributes");
1404 _glfw.x11.xlib.GetWindowProperty = (PFN_XGetWindowProperty)
1405 _glfwPlatformGetModuleSymbol(_glfw.x11.xlib.handle, "XGetWindowProperty");
1406 _glfw.x11.xlib.GrabPointer = (PFN_XGrabPointer)
1407 _glfwPlatformGetModuleSymbol(_glfw.x11.xlib.handle, "XGrabPointer");
1408 _glfw.x11.xlib.IconifyWindow = (PFN_XIconifyWindow)
1409 _glfwPlatformGetModuleSymbol(_glfw.x11.xlib.handle, "XIconifyWindow");
1410 _glfw.x11.xlib.InternAtom = (PFN_XInternAtom)
1411 _glfwPlatformGetModuleSymbol(_glfw.x11.xlib.handle, "XInternAtom");
1412 _glfw.x11.xlib.LookupString = (PFN_XLookupString)
1413 _glfwPlatformGetModuleSymbol(_glfw.x11.xlib.handle, "XLookupString");
1414 _glfw.x11.xlib.MapRaised = (PFN_XMapRaised)
1415 _glfwPlatformGetModuleSymbol(_glfw.x11.xlib.handle, "XMapRaised");
1416 _glfw.x11.xlib.MapWindow = (PFN_XMapWindow)
1417 _glfwPlatformGetModuleSymbol(_glfw.x11.xlib.handle, "XMapWindow");
1418 _glfw.x11.xlib.MoveResizeWindow = (PFN_XMoveResizeWindow)
1419 _glfwPlatformGetModuleSymbol(_glfw.x11.xlib.handle, "XMoveResizeWindow");
1420 _glfw.x11.xlib.MoveWindow = (PFN_XMoveWindow)
1421 _glfwPlatformGetModuleSymbol(_glfw.x11.xlib.handle, "XMoveWindow");
1422 _glfw.x11.xlib.NextEvent = (PFN_XNextEvent)
1423 _glfwPlatformGetModuleSymbol(_glfw.x11.xlib.handle, "XNextEvent");
1424 _glfw.x11.xlib.OpenIM = (PFN_XOpenIM)
1425 _glfwPlatformGetModuleSymbol(_glfw.x11.xlib.handle, "XOpenIM");
1426 _glfw.x11.xlib.PeekEvent = (PFN_XPeekEvent)
1427 _glfwPlatformGetModuleSymbol(_glfw.x11.xlib.handle, "XPeekEvent");
1428 _glfw.x11.xlib.Pending = (PFN_XPending)
1429 _glfwPlatformGetModuleSymbol(_glfw.x11.xlib.handle, "XPending");
1430 _glfw.x11.xlib.QueryExtension = (PFN_XQueryExtension)
1431 _glfwPlatformGetModuleSymbol(_glfw.x11.xlib.handle, "XQueryExtension");
1432 _glfw.x11.xlib.QueryPointer = (PFN_XQueryPointer)
1433 _glfwPlatformGetModuleSymbol(_glfw.x11.xlib.handle, "XQueryPointer");
1434 _glfw.x11.xlib.RaiseWindow = (PFN_XRaiseWindow)
1435 _glfwPlatformGetModuleSymbol(_glfw.x11.xlib.handle, "XRaiseWindow");
1436 _glfw.x11.xlib.RegisterIMInstantiateCallback = (PFN_XRegisterIMInstantiateCallback)
1437 _glfwPlatformGetModuleSymbol(_glfw.x11.xlib.handle, "XRegisterIMInstantiateCallback");
1438 _glfw.x11.xlib.ResizeWindow = (PFN_XResizeWindow)
1439 _glfwPlatformGetModuleSymbol(_glfw.x11.xlib.handle, "XResizeWindow");
1440 _glfw.x11.xlib.ResourceManagerString = (PFN_XResourceManagerString)
1441 _glfwPlatformGetModuleSymbol(_glfw.x11.xlib.handle, "XResourceManagerString");
1442 _glfw.x11.xlib.SaveContext = (PFN_XSaveContext)
1443 _glfwPlatformGetModuleSymbol(_glfw.x11.xlib.handle, "XSaveContext");
1444 _glfw.x11.xlib.SelectInput = (PFN_XSelectInput)
1445 _glfwPlatformGetModuleSymbol(_glfw.x11.xlib.handle, "XSelectInput");
1446 _glfw.x11.xlib.SendEvent = (PFN_XSendEvent)
1447 _glfwPlatformGetModuleSymbol(_glfw.x11.xlib.handle, "XSendEvent");
1448 _glfw.x11.xlib.SetClassHint = (PFN_XSetClassHint)
1449 _glfwPlatformGetModuleSymbol(_glfw.x11.xlib.handle, "XSetClassHint");
1450 _glfw.x11.xlib.SetErrorHandler = (PFN_XSetErrorHandler)
1451 _glfwPlatformGetModuleSymbol(_glfw.x11.xlib.handle, "XSetErrorHandler");
1452 _glfw.x11.xlib.SetICFocus = (PFN_XSetICFocus)
1453 _glfwPlatformGetModuleSymbol(_glfw.x11.xlib.handle, "XSetICFocus");
1454 _glfw.x11.xlib.SetIMValues = (PFN_XSetIMValues)
1455 _glfwPlatformGetModuleSymbol(_glfw.x11.xlib.handle, "XSetIMValues");
1456 _glfw.x11.xlib.SetInputFocus = (PFN_XSetInputFocus)
1457 _glfwPlatformGetModuleSymbol(_glfw.x11.xlib.handle, "XSetInputFocus");
1458 _glfw.x11.xlib.SetLocaleModifiers = (PFN_XSetLocaleModifiers)
1459 _glfwPlatformGetModuleSymbol(_glfw.x11.xlib.handle, "XSetLocaleModifiers");
1460 _glfw.x11.xlib.SetScreenSaver = (PFN_XSetScreenSaver)
1461 _glfwPlatformGetModuleSymbol(_glfw.x11.xlib.handle, "XSetScreenSaver");
1462 _glfw.x11.xlib.SetSelectionOwner = (PFN_XSetSelectionOwner)
1463 _glfwPlatformGetModuleSymbol(_glfw.x11.xlib.handle, "XSetSelectionOwner");
1464 _glfw.x11.xlib.SetWMHints = (PFN_XSetWMHints)
1465 _glfwPlatformGetModuleSymbol(_glfw.x11.xlib.handle, "XSetWMHints");
1466 _glfw.x11.xlib.SetWMNormalHints = (PFN_XSetWMNormalHints)
1467 _glfwPlatformGetModuleSymbol(_glfw.x11.xlib.handle, "XSetWMNormalHints");
1468 _glfw.x11.xlib.SetWMProtocols = (PFN_XSetWMProtocols)
1469 _glfwPlatformGetModuleSymbol(_glfw.x11.xlib.handle, "XSetWMProtocols");
1470 _glfw.x11.xlib.SupportsLocale = (PFN_XSupportsLocale)
1471 _glfwPlatformGetModuleSymbol(_glfw.x11.xlib.handle, "XSupportsLocale");
1472 _glfw.x11.xlib.Sync = (PFN_XSync)
1473 _glfwPlatformGetModuleSymbol(_glfw.x11.xlib.handle, "XSync");
1474 _glfw.x11.xlib.TranslateCoordinates = (PFN_XTranslateCoordinates)
1475 _glfwPlatformGetModuleSymbol(_glfw.x11.xlib.handle, "XTranslateCoordinates");
1476 _glfw.x11.xlib.UndefineCursor = (PFN_XUndefineCursor)
1477 _glfwPlatformGetModuleSymbol(_glfw.x11.xlib.handle, "XUndefineCursor");
1478 _glfw.x11.xlib.UngrabPointer = (PFN_XUngrabPointer)
1479 _glfwPlatformGetModuleSymbol(_glfw.x11.xlib.handle, "XUngrabPointer");
1480 _glfw.x11.xlib.UnmapWindow = (PFN_XUnmapWindow)
1481 _glfwPlatformGetModuleSymbol(_glfw.x11.xlib.handle, "XUnmapWindow");
1482 _glfw.x11.xlib.UnsetICFocus = (PFN_XUnsetICFocus)
1483 _glfwPlatformGetModuleSymbol(_glfw.x11.xlib.handle, "XUnsetICFocus");
1484 _glfw.x11.xlib.VisualIDFromVisual = (PFN_XVisualIDFromVisual)
1485 _glfwPlatformGetModuleSymbol(_glfw.x11.xlib.handle, "XVisualIDFromVisual");
1486 _glfw.x11.xlib.WarpPointer = (PFN_XWarpPointer)
1487 _glfwPlatformGetModuleSymbol(_glfw.x11.xlib.handle, "XWarpPointer");
1488 _glfw.x11.xkb.FreeKeyboard = (PFN_XkbFreeKeyboard)
1489 _glfwPlatformGetModuleSymbol(_glfw.x11.xlib.handle, "XkbFreeKeyboard");
1490 _glfw.x11.xkb.FreeNames = (PFN_XkbFreeNames)
1491 _glfwPlatformGetModuleSymbol(_glfw.x11.xlib.handle, "XkbFreeNames");
1492 _glfw.x11.xkb.GetMap = (PFN_XkbGetMap)
1493 _glfwPlatformGetModuleSymbol(_glfw.x11.xlib.handle, "XkbGetMap");
1494 _glfw.x11.xkb.GetNames = (PFN_XkbGetNames)
1495 _glfwPlatformGetModuleSymbol(_glfw.x11.xlib.handle, "XkbGetNames");
1496 _glfw.x11.xkb.GetState = (PFN_XkbGetState)
1497 _glfwPlatformGetModuleSymbol(_glfw.x11.xlib.handle, "XkbGetState");
1498 _glfw.x11.xkb.KeycodeToKeysym = (PFN_XkbKeycodeToKeysym)
1499 _glfwPlatformGetModuleSymbol(_glfw.x11.xlib.handle, "XkbKeycodeToKeysym");
1500 _glfw.x11.xkb.QueryExtension = (PFN_XkbQueryExtension)
1501 _glfwPlatformGetModuleSymbol(_glfw.x11.xlib.handle, "XkbQueryExtension");
1502 _glfw.x11.xkb.SelectEventDetails = (PFN_XkbSelectEventDetails)
1503 _glfwPlatformGetModuleSymbol(_glfw.x11.xlib.handle, "XkbSelectEventDetails");
1504 _glfw.x11.xkb.SetDetectableAutoRepeat = (PFN_XkbSetDetectableAutoRepeat)
1505 _glfwPlatformGetModuleSymbol(_glfw.x11.xlib.handle, "XkbSetDetectableAutoRepeat");
1506 _glfw.x11.xrm.DestroyDatabase = (PFN_XrmDestroyDatabase)
1507 _glfwPlatformGetModuleSymbol(_glfw.x11.xlib.handle, "XrmDestroyDatabase");
1508 _glfw.x11.xrm.GetResource = (PFN_XrmGetResource)
1509 _glfwPlatformGetModuleSymbol(_glfw.x11.xlib.handle, "XrmGetResource");
1510 _glfw.x11.xrm.GetStringDatabase = (PFN_XrmGetStringDatabase)
1511 _glfwPlatformGetModuleSymbol(_glfw.x11.xlib.handle, "XrmGetStringDatabase");
1512 _glfw.x11.xrm.UniqueQuark = (PFN_XrmUniqueQuark)
1513 _glfwPlatformGetModuleSymbol(_glfw.x11.xlib.handle, "XrmUniqueQuark");
1514 _glfw.x11.xlib.UnregisterIMInstantiateCallback = (PFN_XUnregisterIMInstantiateCallback)
1515 _glfwPlatformGetModuleSymbol(_glfw.x11.xlib.handle, "XUnregisterIMInstantiateCallback");
1516 _glfw.x11.xlib.utf8LookupString = (PFN_Xutf8LookupString)
1517 _glfwPlatformGetModuleSymbol(_glfw.x11.xlib.handle, "Xutf8LookupString");
1518 _glfw.x11.xlib.utf8SetWMProperties = (PFN_Xutf8SetWMProperties)
1519 _glfwPlatformGetModuleSymbol(_glfw.x11.xlib.handle, "Xutf8SetWMProperties");
1521 if (_glfw.x11.xlib.utf8LookupString && _glfw.x11.xlib.utf8SetWMProperties)
1522 _glfw.x11.xlib.utf8 = GLFW_TRUE;
1524 _glfw.x11.screen = DefaultScreen(_glfw.x11.display);
1525 _glfw.x11.root = RootWindow(_glfw.x11.display, _glfw.x11.screen);
1526 _glfw.x11.context = XUniqueContext();
1528 getSystemContentScale(&_glfw.x11.contentScaleX, &_glfw.x11.contentScaleY);
1536 _glfw.x11.helperWindowHandle = createHelperWindow();
1537 _glfw.x11.hiddenCursorHandle = createHiddenCursor();
1539 if (XSupportsLocale() && _glfw.x11.xlib.utf8)
1544 XRegisterIMInstantiateCallback(_glfw.x11.display,
1556 if (_glfw.x11.helperWindowHandle)
1558 if (XGetSelectionOwner(_glfw.x11.display, _glfw.x11.CLIPBOARD) ==
1559 _glfw.x11.helperWindowHandle)
1564 XDestroyWindow(_glfw.x11.display, _glfw.x11.helperWindowHandle);
1565 _glfw.x11.helperWindowHandle = None;
1568 if (_glfw.x11.hiddenCursorHandle)
1570 XFreeCursor(_glfw.x11.display, _glfw.x11.hiddenCursorHandle);
1571 _glfw.x11.hiddenCursorHandle = (Cursor) 0;
1574 _glfw_free(_glfw.x11.primarySelectionString);
1575 _glfw_free(_glfw.x11.clipboardString);
1577 XUnregisterIMInstantiateCallback(_glfw.x11.display,
1582 if (_glfw.x11.im)
1584 XCloseIM(_glfw.x11.im);
1585 _glfw.x11.im = NULL;
1588 if (_glfw.x11.display)
1590 XCloseDisplay(_glfw.x11.display);
1591 _glfw.x11.display = NULL;
1594 if (_glfw.x11.x11xcb.handle)
1596 _glfwPlatformFreeModule(_glfw.x11.x11xcb.handle);
1597 _glfw.x11.x11xcb.handle = NULL;
1600 if (_glfw.x11.xcursor.handle)
1602 _glfwPlatformFreeModule(_glfw.x11.xcursor.handle);
1603 _glfw.x11.xcursor.handle = NULL;
1606 if (_glfw.x11.randr.handle)
1608 _glfwPlatformFreeModule(_glfw.x11.randr.handle);
1609 _glfw.x11.randr.handle = NULL;
1612 if (_glfw.x11.xinerama.handle)
1614 _glfwPlatformFreeModule(_glfw.x11.xinerama.handle);
1615 _glfw.x11.xinerama.handle = NULL;
1618 if (_glfw.x11.xrender.handle)
1620 _glfwPlatformFreeModule(_glfw.x11.xrender.handle);
1621 _glfw.x11.xrender.handle = NULL;
1624 if (_glfw.x11.vidmode.handle)
1626 _glfwPlatformFreeModule(_glfw.x11.vidmode.handle);
1627 _glfw.x11.vidmode.handle = NULL;
1630 if (_glfw.x11.xi.handle)
1632 _glfwPlatformFreeModule(_glfw.x11.xi.handle);
1633 _glfw.x11.xi.handle = NULL;
1642 if (_glfw.x11.xlib.handle)
1644 _glfwPlatformFreeModule(_glfw.x11.xlib.handle);
1645 _glfw.x11.xlib.handle = NULL;
1648 if (_glfw.x11.emptyEventPipe[0] || _glfw.x11.emptyEventPipe[1])
1650 close(_glfw.x11.emptyEventPipe[0]);
1651 close(_glfw.x11.emptyEventPipe[1]);