463:
440:
208:
160:
422:
282:
488:
25:
1368:. This operation can only be performed after the window is created. However, performing it once may not be enough. Indeed, the content of the window is not always guaranteed to be preserved. For example, if the window is covered and then uncovered again, its content might require being redrawn. The program is informed that the window or a part of it has to be drawn by the reception of an
569:, etc. are all identifiers, which are 32-bit integers (just as in the X11 protocol itself). A client 'creates' a window by requesting that the server create a window. This is done via a call to an Xlib function that returns an identifier for the window, that is, a number. This identifier can then be used by the client for requesting other operations on the same window to the server.
1685:
593:
in this case refers to the request from the client that is directed to the server: the request buffer can contain all kinds of requests to the server, not only those having a visible effect on the screen. The request buffer is guaranteed to be flushed (i.e., all requests done so far are sent to the
605:
Xlib stores the received events in a queue. The client application can inspect and retrieve events from the queue. While the X server sends events asynchronously, applications using the Xlib library are required to explicitly call Xlib functions for accessing the events in the queue. Some of these
542:
structure as an argument because they either operate on the channel or are relative to a specific channel. In particular, all Xlib functions that interact with the server need this structure for accessing the channel. Some other functions need this structure, even if they operate locally, because
572:
The identifiers are unique to the server. Most of them can be used by different applications to refer to the same objects. For example, two applications connecting with the same server use the same identifier to refer to the same window. These two applications use two different channels, and
704:
1453:
library is an alternative to Xlib. Its two main aims are: reduction in library size and direct access to the X11 protocol. A modification of Xlib has been produced to use XCB as a low-level layer.
546:
Windows, colormaps, etc. are managed by the server, which means that the data about their actual implementation is all stored in the server. The client operates on these objects by using their
522:
structure of the Xlib library contains information about the display, but more importantly it contains information relative to the channel between the client and the server. For example, in a
692:
609:
Errors are instead received and treated asynchronously: the application can provide an error handler that will be called whenever an error message from the server is received.
1383:. The event loop waits for an incoming event: if this event is a key press, the application exits; if it is an expose event, the window content is drawn. The function
1552:
1442:
Applications using any of these widget libraries typically specify the content of the window before entering the main loop and do not need to explicitly handle
612:
The content of a window is not guaranteed to be preserved if the window or one of its parts are made not visible. In this case, the application is sent an
543:
they operate on data relative to a specific channel. Operations of this kind include for example operations on the event queue, which is described below.
2274:
602:, after a call to a function that returns a value from the server (these functions block until the answer is received), and in some other conditions.
550:. The client cannot directly operate on an object, but can only request the server to perform the operation specifying the identifier of the object.
2213:
3112:
585:
The Xlib functions that send requests to the server usually do not send these requests immediately but store them in a buffer, called the
3631:
3626:
1639:
325:
2307:
616:
event when the window or one part of it is made visible again. The application is then supposed to draw the window content again.
3549:
2758:
1407:
library (Xt), which provides support for widgets but does not provide any particular widget; specific widgets are provided by
1506:
577:
structures; however, when they request operations on the same identifier, these operations will be done on the same object.
3370:
2979:
2904:
3235:
3039:
2931:
2798:
382:
1674:
1622:
1591:
1572:
108:
228:
89:
2763:
1959:
61:
462:
3067:
2745:
2708:
2514:
2483:
1918:
46:
3442:
3344:
3311:
2994:
2568:
2300:
2218:
1648:
68:
2657:
331:
Few applications use Xlib directly; rather, they employ other libraries that use Xlib functions to provide
183:
1422:
libraries that provide widget sets using Xlib directly, without the Xt library, such as the X versions of
3597:
3490:
3192:
2555:
1739:
1379:. Before entering this loop, the events the application is interested in are selected, in this case with
151:
3577:
3326:
2896:
2474:
2398:
1970:
1938:
305:
75:
3582:
3352:
3156:
2071:
469:
439:
3636:
3539:
2923:
2831:
2808:
2545:
2532:
2455:
2293:
2149:
2096:
2003:
1471:
493:
377:
309:
254:
221:
159:
3225:
3200:
2803:
2491:
2316:
2013:
1531:
452:
57:
35:
1399:
are provided by other libraries, which in turn use Xlib. There are two kinds of such libraries:
2813:
1659:
518:
Informally, a display is a physical or virtual device where graphical operations are done. The
2773:
2721:
2611:
2141:
1943:
1923:
1908:
1729:
1714:
1615:
703:
42:
3268:
2601:
2440:
2223:
2164:
2076:
2046:
1886:
1704:
1404:
339:
8:
3498:
3316:
3102:
3014:
2969:
2159:
1913:
1764:
233:
207:
1527:
3605:
3230:
2768:
1759:
1654:
1396:
531:
317:
3587:
2736:
2385:
2369:
2346:
1993:
1900:
1896:
1734:
1699:
1587:
1568:
1557:
1542:
1492:
1463:
3559:
3455:
3258:
3029:
2946:
2880:
2870:
2860:
1953:
1608:
1416:
1361:
is necessary for mapping the window, that is, for making it visible on the screen.
396:
351:
345:
132:
82:
3164:
2852:
2422:
2403:
2228:
1754:
1719:
1664:
1631:
301:
192:
3334:
3107:
2941:
2622:
2357:
2320:
1790:
1669:
711:
696:
449:
332:
286:
281:
3620:
3544:
3521:
3404:
3362:
3115:
3080:
3009:
2823:
2780:
2753:
2716:
2635:
1586:. The Definitive Guides to the X Window System. Vol. 2. O'Reilly Media.
1567:. The Definitive Guides to the X Window System. Vol. 1. O'Reilly Media.
372:
366:
421:
3253:
3220:
3024:
2606:
2374:
2126:
1799:
1537:
1427:
501:
475:
2285:
479:) and its clients. It communicates with its clients over a given protocol.
3298:
3288:
3139:
3131:
3049:
2989:
2670:
2665:
2653:
2563:
2393:
2254:
1387:
blocks and flushes the request buffer if there is no event in the queue.
718:
The following program creates a window with a little black square in it:
497:
1395:
Xlib does not provide support for buttons, menus, scrollbars, etc. Such
654:
operations that are local to the client: operations on the event queue (
3569:
3385:
3245:
2693:
1547:
1408:
1376:
606:
functions may block; in this case, they also flush the request buffer.
321:
313:
127:
726:
Simple Xlib application for creating a window and drawing a box in it.
691:
3380:
3306:
3273:
3182:
3121:
3075:
3034:
2169:
2121:
2026:
523:
393:
695:
Simple Xlib application drawing a box and text in a window. Without
24:
3475:
3215:
3097:
2463:
2036:
1988:
1860:
1805:
1769:
1600:
3450:
3427:
3283:
3278:
3174:
3057:
2865:
2698:
2588:
2338:
2184:
2086:
2051:
1928:
1855:
1825:
1820:
1810:
1724:
707:
Simple Xlib application drawing a box and text in a window. With
3503:
3460:
3409:
3263:
3210:
3085:
2688:
2643:
2596:
2522:
2249:
2189:
2179:
1978:
1850:
1375:
The drawing of the window content is therefore made inside the
3117:
3470:
3432:
3375:
3019:
2999:
2974:
2961:
2885:
2790:
2680:
2626:
2361:
2269:
2264:
2259:
2244:
2106:
2066:
2031:
1830:
1744:
1709:
1435:
708:
487:
428:
3480:
3465:
3395:
3205:
3144:
3092:
3004:
2984:
2875:
2846:
2451:
2416:
2174:
2116:
2091:
2081:
2061:
2056:
2041:
2021:
1998:
1983:
1933:
1840:
1835:
1815:
1431:
1349:
The client creates a connection with the server by calling
639:
requests to the server, including requests for operations (
399:. A re-implementation of Xlib was introduced in 2007 using
356:
3554:
3531:
3513:
3419:
2951:
2936:
2540:
2435:
2154:
2131:
2111:
2101:
1881:
1845:
1749:
1450:
1423:
1412:
445:
400:
389:
361:
1684:
1528:
X.Org
Foundation's official programming documentation
624:
The functions in the Xlib library can be grouped in:
324:
to write programs without knowing the details of the
414:
The role of KMS (Kernel mode-setting), Linux example
244:
49:. Unsourced material may be challenged and removed.
1353:. It then requests the creation of a window with
534:of this channel (this can be retrieved using the
3618:
1511:Tip search for: typedef struct _XDisplay Display
448:and Xlib are client libraries which implement a
1499:
2301:
1616:
1038:// select kind of events we are interested in
285:X11-clients use xlib to communicate with the
1558:Using Xlib for creating a screensaver module
1469:
515:structure and the types of the identifiers.
2315:
662:, ...) and other operations on local data (
2308:
2294:
1623:
1609:
530:structure contains the file handle of the
496:can circumvent Xlib and write directly to
388:Xlib appeared around 1985, and is used in
206:
158:
383:SFML (Simple and Fast Multimedia Library)
109:Learn how and when to remove this message
1548:Kenton Lee's pages on X Window and Motif
702:
690:
280:
511:The main types of data in Xlib are the
431:graphics stack current as of 2013-08-24
3619:
3550:Extensible Application Markup Language
1507:"Display Structure on freedesktop CVS"
1446:events and redraw the window content.
594:server) after a call to the functions
580:
16:Client library for the X Window System
2289:
1604:
3371:Component Library for Cross Platform
2980:Component Library for Cross Platform
647:,...) and requests for information (
468:The display server sits between the
47:adding citations to reliable sources
18:
1630:
1581:
1562:
1543:Manual pages for all Xlib functions
1530:, including most recent version of
538:macro.) Most Xlib functions have a
13:
3632:C (programming language) libraries
3627:Application programming interfaces
3236:Lightweight User Interface Toolkit
3040:Simple and Fast Multimedia Library
2932:Enlightenment Foundation Libraries
2482:
1730:X Display Manager Control Protocol
1472:"[ANNOUNCE] libX11 1.8.10"
1390:
14:
3648:
2275:Desktop environments (comparison)
1521:
1320:// close connection to the server
1683:
834:// open connection to the server
486:
461:
438:
420:
23:
2764:Windows Presentation Foundation
1411:libraries that use Xt, such as
1364:The square is drawn by calling
34:needs additional citations for
1485:
628:operations on the connection (
378:SDL (Simple DirectMedia Layer)
1:
2995:OpenGL User Interface Library
2580:High-level, platform-specific
1532:Xlib - C Language X Interface
1456:
573:therefore have two different
406:
1403:libraries built atop of the
1125:// draw or redraw the window
619:
7:
2330:Low-level platform-specific
1740:X-Video Motion Compensation
729:gcc input.c -o output -lX11
10:
3653:
2916:High-level, cross-platform
686:
316:for interacting with an X
3596:
3568:
3530:
3512:
3489:
3441:
3418:
3394:
3361:
3353:Lazarus Component Library
3343:
3325:
3297:
3244:
3191:
3173:
3155:
3130:
3066:
3048:
2960:
2922:
2913:
2894:
2844:
2822:
2789:
2744:
2734:
2707:
2679:
2652:
2634:
2620:
2586:
2577:
2554:
2531:
2513:
2504:
2472:
2449:
2414:
2383:
2355:
2336:
2327:
2237:
2206:
2140:
2012:
1969:
1952:
1895:
1869:
1789:
1778:
1692:
1681:
1638:
1553:A longer tutorial on Xlib
888:"Cannot open display
819:"Hello, World!"
239:
227:
217:
182:
178:
150:
146:
138:
126:
2832:Visual Component Library
2809:Windows Template Library
2546:Simple DirectMedia Layer
2507:Low Level Cross-platform
1538:A short tutorial on Xlib
1377:loop handling the events
1071:// map (show) the window
720:
500:. An additional port to
494:Simple DirectMedia Layer
320:. These functions allow
3226:Standard Widget Toolkit
3201:Abstract Window Toolkit
2804:Active Template Library
1725:Shared memory extension
1565:Xlib Programming Manual
453:communications protocol
2814:Object Windows Library
1660:X Window authorization
715:
700:
526:operating system, the
310:C programming language
290:
1715:X Rendering Extension
1584:Xlib Reference Manual
1357:. A separate call to
706:
694:
284:
165:; 49 days ago
3269:Google Closure Tools
2441:X Toolkit Intrinsics
1887:X Toolkit Intrinsics
1705:X keyboard extension
1582:Nye, Adrian (1990).
1563:Nye, Adrian (1990).
1405:X Toolkit Intrinsics
1284:// exit on key press
340:X Toolkit Intrinsics
43:improve this article
1765:Composite Extension
1534:in several formats.
1495:. February 9, 2007.
1355:XCreateSimpleWindow
942:XCreateSimpleWindow
581:Protocol and events
123:
3231:Google Web Toolkit
2769:Windows UI Library
1760:Display PostScript
1655:X Window selection
1470:Alan Coopersmith.
738:<X11/Xlib.h>
716:
701:
649:XGetWindowProperty
291:
121:
3614:
3613:
2840:
2839:
2730:
2729:
2500:
2499:
2370:Macintosh Toolbox
2283:
2282:
2202:
2201:
2198:
2197:
1963:
1735:X video extension
1700:X Image Extension
504:is also available
397:operating systems
346:Athena widget set
279:
278:
252:, documentation:
119:
118:
111:
93:
3644:
3015:Rogue Wave Views
2742:
2741:
2632:
2631:
2480:
2479:
2310:
2303:
2296:
2287:
2286:
1967:
1966:
1957:
1901:Session managers
1897:Display managers
1870:Client libraries
1787:
1786:
1687:
1625:
1618:
1611:
1602:
1601:
1597:
1578:
1515:
1514:
1503:
1497:
1496:
1489:
1483:
1482:
1480:
1478:
1467:
1445:
1386:
1382:
1371:
1367:
1360:
1356:
1352:
1345:
1342:
1339:
1336:
1333:
1330:
1327:
1324:
1321:
1318:
1315:
1312:
1309:
1306:
1303:
1300:
1297:
1294:
1291:
1288:
1285:
1282:
1279:
1276:
1273:
1270:
1267:
1264:
1261:
1258:
1255:
1252:
1249:
1246:
1243:
1240:
1237:
1234:
1231:
1228:
1225:
1222:
1219:
1216:
1213:
1210:
1207:
1204:
1201:
1198:
1195:
1192:
1189:
1186:
1183:
1180:
1177:
1174:
1171:
1168:
1165:
1162:
1159:
1156:
1153:
1150:
1147:
1144:
1141:
1138:
1135:
1132:
1129:
1126:
1123:
1120:
1117:
1114:
1111:
1108:
1105:
1102:
1099:
1096:
1093:
1090:
1087:
1084:
1081:
1078:
1075:
1072:
1069:
1066:
1063:
1060:
1057:
1054:
1051:
1048:
1045:
1042:
1039:
1036:
1033:
1030:
1027:
1024:
1021:
1018:
1015:
1012:
1009:
1006:
1003:
1000:
997:
994:
991:
988:
985:
982:
979:
976:
973:
970:
967:
964:
961:
958:
955:
952:
949:
946:
943:
940:
937:
934:
933:// create window
931:
928:
925:
922:
919:
916:
913:
910:
907:
904:
901:
898:
895:
892:
889:
886:
883:
880:
877:
874:
871:
868:
865:
862:
859:
856:
853:
850:
847:
844:
841:
838:
835:
832:
829:
826:
823:
820:
817:
814:
811:
808:
805:
802:
799:
796:
793:
790:
787:
784:
781:
778:
775:
772:
769:
766:
763:
760:
757:
756:<string.h>
754:
751:
750:<stdlib.h>
748:
745:
742:
739:
736:
733:
730:
727:
724:
681:
677:
673:
669:
665:
661:
657:
650:
646:
642:
635:
631:
615:
601:
597:
576:
568:
564:
560:
556:
541:
537:
536:ConnectionNumber
529:
521:
514:
490:
465:
442:
427:Illustrates the
424:
304:protocol client
275:
272:
270:
268:
266:
264:
262:
260:
258:
256:
251:
248:
246:
210:
205:
202:
200:
198:
196:
194:
173:
171:
166:
162:
133:X.Org Foundation
124:
120:
114:
107:
103:
100:
94:
92:
51:
27:
19:
3652:
3651:
3647:
3646:
3645:
3643:
3642:
3641:
3637:X Window System
3617:
3616:
3615:
3610:
3592:
3564:
3526:
3508:
3485:
3437:
3414:
3390:
3357:
3339:
3321:
3317:Common Graphics
3293:
3240:
3187:
3169:
3151:
3126:
3062:
3044:
2956:
2918:
2909:
2890:
2850:
2836:
2818:
2785:
2726:
2703:
2675:
2648:
2616:
2582:
2573:
2550:
2527:
2509:
2496:
2492:Xamarin.Android
2468:
2445:
2420:
2410:
2379:
2351:
2332:
2323:
2321:widget toolkits
2314:
2284:
2279:
2233:
2229:freedesktop.org
2194:
2136:
2008:
1956:
1954:Window managers
1948:
1899:
1891:
1865:
1791:Display servers
1783:implementations
1782:
1780:
1774:
1755:Multi-Pointer X
1720:Shape extension
1688:
1679:
1665:X11 color names
1634:
1632:X Window System
1629:
1594:
1575:
1524:
1519:
1518:
1505:
1504:
1500:
1493:"XDC2007 Notes"
1491:
1490:
1486:
1476:
1474:
1468:
1464:
1459:
1443:
1393:
1391:Other libraries
1384:
1380:
1369:
1365:
1358:
1354:
1350:
1347:
1346:
1343:
1340:
1337:
1334:
1331:
1328:
1325:
1322:
1319:
1316:
1313:
1310:
1307:
1304:
1301:
1298:
1295:
1292:
1289:
1286:
1283:
1280:
1277:
1274:
1271:
1268:
1265:
1262:
1259:
1256:
1253:
1250:
1247:
1244:
1241:
1238:
1235:
1232:
1229:
1226:
1223:
1220:
1217:
1214:
1211:
1208:
1205:
1202:
1199:
1196:
1193:
1190:
1187:
1184:
1181:
1178:
1175:
1172:
1169:
1166:
1163:
1160:
1157:
1154:
1151:
1148:
1145:
1142:
1139:
1136:
1133:
1130:
1127:
1124:
1121:
1118:
1115:
1112:
1109:
1106:
1103:
1100:
1097:
1094:
1091:
1088:
1085:
1082:
1079:
1076:
1073:
1070:
1067:
1064:
1061:
1058:
1055:
1052:
1049:
1046:
1043:
1040:
1037:
1034:
1031:
1028:
1025:
1022:
1019:
1016:
1013:
1010:
1007:
1004:
1001:
998:
995:
992:
989:
986:
983:
980:
977:
974:
971:
968:
965:
962:
959:
956:
953:
950:
947:
944:
941:
938:
935:
932:
929:
926:
923:
920:
917:
914:
911:
908:
905:
902:
899:
896:
893:
890:
887:
884:
881:
878:
875:
872:
869:
866:
863:
860:
857:
854:
851:
848:
845:
842:
839:
836:
833:
830:
827:
824:
821:
818:
815:
812:
809:
806:
803:
800:
797:
794:
791:
788:
785:
782:
779:
776:
773:
770:
767:
764:
761:
758:
755:
752:
749:
746:
744:<stdio.h>
743:
740:
737:
734:
731:
728:
725:
722:
689:
679:
675:
671:
667:
663:
659:
655:
648:
644:
640:
633:
629:
622:
613:
599:
595:
583:
574:
566:
562:
558:
554:
539:
535:
527:
519:
512:
509:
508:
507:
506:
505:
491:
482:
481:
480:
466:
457:
456:
455:
443:
434:
433:
432:
425:
416:
415:
409:
333:widget toolkits
308:written in the
302:X Window System
296:(also known as
253:
243:
213:
191:
174:
169:
167:
164:
139:Initial release
115:
104:
98:
95:
52:
50:
40:
28:
17:
12:
11:
5:
3650:
3640:
3639:
3634:
3629:
3612:
3611:
3609:
3608:
3602:
3600:
3594:
3593:
3591:
3590:
3585:
3580:
3574:
3572:
3566:
3565:
3563:
3562:
3557:
3552:
3547:
3542:
3536:
3534:
3528:
3527:
3525:
3524:
3518:
3516:
3510:
3509:
3507:
3506:
3501:
3495:
3493:
3487:
3486:
3484:
3483:
3478:
3473:
3468:
3463:
3458:
3453:
3447:
3445:
3439:
3438:
3436:
3435:
3430:
3424:
3422:
3416:
3415:
3413:
3412:
3407:
3400:
3398:
3392:
3391:
3389:
3388:
3383:
3378:
3373:
3367:
3365:
3359:
3358:
3356:
3355:
3349:
3347:
3341:
3340:
3338:
3337:
3331:
3329:
3323:
3322:
3320:
3319:
3314:
3309:
3303:
3301:
3295:
3294:
3292:
3291:
3286:
3281:
3276:
3271:
3266:
3261:
3256:
3250:
3248:
3242:
3241:
3239:
3238:
3233:
3228:
3223:
3218:
3213:
3208:
3203:
3197:
3195:
3189:
3188:
3186:
3185:
3179:
3177:
3171:
3170:
3168:
3167:
3161:
3159:
3153:
3152:
3150:
3149:
3148:
3147:
3136:
3134:
3128:
3127:
3125:
3124:
3119:
3110:
3105:
3100:
3095:
3090:
3089:
3088:
3078:
3072:
3070:
3064:
3063:
3061:
3060:
3054:
3052:
3046:
3045:
3043:
3042:
3037:
3032:
3027:
3022:
3017:
3012:
3007:
3002:
2997:
2992:
2987:
2982:
2977:
2972:
2966:
2964:
2958:
2957:
2955:
2954:
2949:
2944:
2939:
2934:
2928:
2926:
2920:
2919:
2914:
2911:
2910:
2908:
2907:
2905:Qt for Android
2901:
2899:
2892:
2891:
2889:
2888:
2883:
2878:
2873:
2868:
2863:
2857:
2855:
2842:
2841:
2838:
2837:
2835:
2834:
2828:
2826:
2820:
2819:
2817:
2816:
2811:
2806:
2801:
2795:
2793:
2787:
2786:
2784:
2783:
2778:
2777:
2776:
2771:
2766:
2756:
2750:
2748:
2739:
2732:
2731:
2728:
2727:
2725:
2724:
2719:
2713:
2711:
2705:
2704:
2702:
2701:
2696:
2691:
2685:
2683:
2677:
2676:
2674:
2673:
2668:
2662:
2660:
2650:
2649:
2647:
2646:
2640:
2638:
2629:
2623:Classic Mac OS
2618:
2617:
2615:
2614:
2609:
2604:
2599:
2593:
2591:
2584:
2583:
2578:
2575:
2574:
2572:
2571:
2566:
2560:
2558:
2552:
2551:
2549:
2548:
2543:
2537:
2535:
2529:
2528:
2526:
2525:
2519:
2517:
2511:
2510:
2505:
2502:
2501:
2498:
2497:
2495:
2494:
2488:
2486:
2477:
2470:
2469:
2467:
2466:
2460:
2458:
2447:
2446:
2444:
2443:
2438:
2433:
2427:
2425:
2412:
2411:
2409:
2408:
2407:
2406:
2396:
2390:
2388:
2381:
2380:
2378:
2377:
2372:
2366:
2364:
2358:Classic Mac OS
2353:
2352:
2350:
2349:
2343:
2341:
2334:
2333:
2328:
2325:
2324:
2313:
2312:
2305:
2298:
2290:
2281:
2280:
2278:
2277:
2272:
2267:
2262:
2257:
2252:
2247:
2241:
2239:
2235:
2234:
2232:
2231:
2226:
2221:
2216:
2210:
2208:
2204:
2203:
2200:
2199:
2196:
2195:
2193:
2192:
2187:
2182:
2177:
2172:
2167:
2162:
2157:
2152:
2146:
2144:
2138:
2137:
2135:
2134:
2129:
2124:
2119:
2114:
2109:
2104:
2099:
2094:
2089:
2084:
2079:
2074:
2069:
2064:
2059:
2054:
2049:
2044:
2039:
2034:
2029:
2024:
2018:
2016:
2010:
2009:
2007:
2006:
2001:
1996:
1991:
1986:
1981:
1975:
1973:
1964:
1950:
1949:
1947:
1946:
1941:
1936:
1931:
1926:
1921:
1916:
1911:
1905:
1903:
1893:
1892:
1890:
1889:
1884:
1879:
1873:
1871:
1867:
1866:
1864:
1863:
1858:
1853:
1848:
1843:
1838:
1833:
1828:
1823:
1818:
1813:
1808:
1803:
1795:
1793:
1784:
1776:
1775:
1773:
1772:
1767:
1762:
1757:
1752:
1747:
1742:
1737:
1732:
1727:
1722:
1717:
1712:
1707:
1702:
1696:
1694:
1690:
1689:
1682:
1680:
1678:
1677:
1672:
1670:X Input Method
1667:
1662:
1657:
1652:
1644:
1642:
1636:
1635:
1628:
1627:
1620:
1613:
1605:
1599:
1598:
1592:
1579:
1573:
1560:
1555:
1550:
1545:
1540:
1535:
1523:
1522:External links
1520:
1517:
1516:
1498:
1484:
1461:
1460:
1458:
1455:
1440:
1439:
1420:
1392:
1389:
1366:XFillRectangle
1155:XFillRectangle
721:
712:window manager
697:window manager
688:
685:
684:
683:
668:XParseGeometry
652:
637:
621:
618:
587:request buffer
582:
579:
492:
485:
484:
483:
467:
460:
459:
458:
450:display server
444:
437:
436:
435:
426:
419:
418:
417:
413:
412:
411:
410:
408:
405:
386:
385:
380:
375:
370:
364:
359:
354:
349:
343:
312:. It contains
287:display server
277:
276:
241:
237:
236:
231:
225:
224:
219:
215:
214:
212:
211:
188:
186:
180:
179:
176:
175:
163:/ 28 July 2024
156:
154:
152:Stable release
148:
147:
144:
143:
140:
136:
135:
130:
117:
116:
99:September 2018
31:
29:
22:
15:
9:
6:
4:
3:
2:
3649:
3638:
3635:
3633:
3630:
3628:
3625:
3624:
3622:
3607:
3604:
3603:
3601:
3599:
3595:
3589:
3586:
3584:
3581:
3579:
3576:
3575:
3573:
3571:
3567:
3561:
3558:
3556:
3553:
3551:
3548:
3546:
3545:Lively Kernel
3543:
3541:
3538:
3537:
3535:
3533:
3529:
3523:
3520:
3519:
3517:
3515:
3511:
3505:
3502:
3500:
3497:
3496:
3494:
3492:
3488:
3482:
3479:
3477:
3474:
3472:
3469:
3467:
3464:
3462:
3459:
3457:
3454:
3452:
3449:
3448:
3446:
3444:
3440:
3434:
3431:
3429:
3426:
3425:
3423:
3421:
3417:
3411:
3408:
3406:
3402:
3401:
3399:
3397:
3393:
3387:
3384:
3382:
3379:
3377:
3374:
3372:
3369:
3368:
3366:
3364:
3363:Object Pascal
3360:
3354:
3351:
3350:
3348:
3346:
3342:
3336:
3333:
3332:
3330:
3328:
3324:
3318:
3315:
3313:
3310:
3308:
3305:
3304:
3302:
3300:
3296:
3290:
3287:
3285:
3282:
3280:
3277:
3275:
3272:
3270:
3267:
3265:
3262:
3260:
3257:
3255:
3252:
3251:
3249:
3247:
3243:
3237:
3234:
3232:
3229:
3227:
3224:
3222:
3219:
3217:
3214:
3212:
3209:
3207:
3204:
3202:
3199:
3198:
3196:
3194:
3190:
3184:
3181:
3180:
3178:
3176:
3172:
3166:
3163:
3162:
3160:
3158:
3154:
3146:
3143:
3142:
3141:
3138:
3137:
3135:
3133:
3129:
3123:
3120:
3118:
3116:
3114:
3111:
3109:
3108:Xamarin.Forms
3106:
3104:
3101:
3099:
3096:
3094:
3091:
3087:
3084:
3083:
3082:
3081:Tao Framework
3079:
3077:
3074:
3073:
3071:
3069:
3065:
3059:
3056:
3055:
3053:
3051:
3047:
3041:
3038:
3036:
3033:
3031:
3028:
3026:
3023:
3021:
3018:
3016:
3013:
3011:
3008:
3006:
3003:
3001:
2998:
2996:
2993:
2991:
2988:
2986:
2983:
2981:
2978:
2976:
2973:
2971:
2968:
2967:
2965:
2963:
2959:
2953:
2950:
2948:
2945:
2943:
2940:
2938:
2935:
2933:
2930:
2929:
2927:
2925:
2921:
2917:
2912:
2906:
2903:
2902:
2900:
2898:
2893:
2887:
2884:
2882:
2879:
2877:
2874:
2872:
2869:
2867:
2864:
2862:
2859:
2858:
2856:
2854:
2848:
2843:
2833:
2830:
2829:
2827:
2825:
2824:Object Pascal
2821:
2815:
2812:
2810:
2807:
2805:
2802:
2800:
2797:
2796:
2794:
2792:
2788:
2782:
2781:Microsoft XNA
2779:
2775:
2772:
2770:
2767:
2765:
2762:
2761:
2760:
2757:
2755:
2754:Windows Forms
2752:
2751:
2749:
2747:
2743:
2740:
2738:
2733:
2723:
2720:
2718:
2715:
2714:
2712:
2710:
2706:
2700:
2697:
2695:
2692:
2690:
2687:
2686:
2684:
2682:
2678:
2672:
2669:
2667:
2664:
2663:
2661:
2659:
2655:
2651:
2645:
2642:
2641:
2639:
2637:
2636:Object Pascal
2633:
2630:
2628:
2624:
2619:
2613:
2610:
2608:
2605:
2603:
2600:
2598:
2595:
2594:
2592:
2590:
2585:
2581:
2576:
2570:
2567:
2565:
2562:
2561:
2559:
2557:
2553:
2547:
2544:
2542:
2539:
2538:
2536:
2534:
2530:
2524:
2521:
2520:
2518:
2516:
2512:
2508:
2503:
2493:
2490:
2489:
2487:
2485:
2481:
2478:
2476:
2471:
2465:
2462:
2461:
2459:
2457:
2453:
2448:
2442:
2439:
2437:
2434:
2432:
2429:
2428:
2426:
2424:
2418:
2413:
2405:
2402:
2401:
2400:
2397:
2395:
2392:
2391:
2389:
2387:
2382:
2376:
2373:
2371:
2368:
2367:
2365:
2363:
2359:
2354:
2348:
2345:
2344:
2342:
2340:
2335:
2331:
2326:
2322:
2318:
2311:
2306:
2304:
2299:
2297:
2292:
2291:
2288:
2276:
2273:
2271:
2268:
2266:
2263:
2261:
2258:
2256:
2253:
2251:
2248:
2246:
2243:
2242:
2240:
2236:
2230:
2227:
2225:
2222:
2220:
2217:
2215:
2212:
2211:
2209:
2205:
2191:
2188:
2186:
2183:
2181:
2178:
2176:
2173:
2171:
2168:
2166:
2163:
2161:
2158:
2156:
2153:
2151:
2148:
2147:
2145:
2143:
2139:
2133:
2130:
2128:
2125:
2123:
2120:
2118:
2115:
2113:
2110:
2108:
2105:
2103:
2100:
2098:
2095:
2093:
2090:
2088:
2085:
2083:
2080:
2078:
2075:
2073:
2070:
2068:
2065:
2063:
2060:
2058:
2055:
2053:
2050:
2048:
2045:
2043:
2040:
2038:
2035:
2033:
2030:
2028:
2025:
2023:
2020:
2019:
2017:
2015:
2011:
2005:
2004:Enlightenment
2002:
2000:
1997:
1995:
1992:
1990:
1987:
1985:
1982:
1980:
1977:
1976:
1974:
1972:
1968:
1965:
1961:
1955:
1951:
1945:
1942:
1940:
1937:
1935:
1932:
1930:
1927:
1925:
1922:
1920:
1917:
1915:
1912:
1910:
1907:
1906:
1904:
1902:
1898:
1894:
1888:
1885:
1883:
1880:
1878:
1875:
1874:
1872:
1868:
1862:
1859:
1857:
1854:
1852:
1849:
1847:
1844:
1842:
1839:
1837:
1834:
1832:
1829:
1827:
1824:
1822:
1819:
1817:
1814:
1812:
1809:
1807:
1804:
1802:
1801:
1797:
1796:
1794:
1792:
1788:
1785:
1777:
1771:
1768:
1766:
1763:
1761:
1758:
1756:
1753:
1751:
1748:
1746:
1743:
1741:
1738:
1736:
1733:
1731:
1728:
1726:
1723:
1721:
1718:
1716:
1713:
1711:
1708:
1706:
1703:
1701:
1698:
1697:
1695:
1691:
1686:
1676:
1673:
1671:
1668:
1666:
1663:
1661:
1658:
1656:
1653:
1651:
1650:
1649:Core protocol
1646:
1645:
1643:
1641:
1637:
1633:
1626:
1621:
1619:
1614:
1612:
1607:
1606:
1603:
1595:
1593:0-937175-12-9
1589:
1585:
1580:
1576:
1574:0-937175-11-0
1570:
1566:
1561:
1559:
1556:
1554:
1551:
1549:
1546:
1544:
1541:
1539:
1536:
1533:
1529:
1526:
1525:
1512:
1508:
1502:
1494:
1488:
1473:
1466:
1462:
1454:
1452:
1447:
1437:
1433:
1429:
1425:
1421:
1418:
1414:
1410:
1406:
1402:
1401:
1400:
1398:
1388:
1378:
1373:
1362:
1323:XCloseDisplay
1092:// event loop
921:DefaultScreen
719:
713:
710:
705:
698:
693:
664:XLookupKeysym
653:
641:XCreateWindow
638:
634:XCloseDisplay
627:
626:
625:
617:
610:
607:
603:
592:
588:
578:
570:
551:
549:
544:
533:
525:
516:
503:
499:
495:
489:
478:
477:
471:
464:
454:
451:
447:
441:
430:
423:
404:
402:
398:
395:
391:
384:
381:
379:
376:
374:
371:
369:(X11 version)
368:
365:
363:
360:
358:
355:
353:
350:
347:
344:
341:
338:
337:
336:
334:
329:
327:
323:
319:
315:
311:
307:
303:
299:
295:
288:
283:
274:
250:
242:
238:
235:
232:
230:
226:
223:
220:
216:
209:
204:
190:
189:
187:
185:
181:
177:
161:
155:
153:
149:
145:
141:
137:
134:
131:
129:
125:
113:
110:
102:
91:
88:
84:
81:
77:
74:
70:
67:
63:
60: –
59:
55:
54:Find sources:
48:
44:
38:
37:
32:This article
30:
26:
21:
20:
3254:Dojo Toolkit
2915:
2861:Athena (Xaw)
2607:ReAction GUI
2579:
2506:
2430:
2329:
2238:Applications
2127:Window Maker
1876:
1800:X.Org Server
1798:
1647:
1640:Architecture
1583:
1564:
1510:
1501:
1487:
1475:. Retrieved
1465:
1448:
1441:
1394:
1381:XSelectInput
1374:
1363:
1351:XOpenDisplay
1348:
1065:KeyPressMask
1059:ExposureMask
1041:XSelectInput
843:XOpenDisplay
717:
714:decorations.
699:decorations.
680:XSaveContext
676:XCreateImage
630:XOpenDisplay
623:
611:
608:
604:
590:
586:
584:
571:
552:
547:
545:
517:
510:
476:Linux kernel
473:
387:
330:
297:
293:
292:
195:.freedesktop
170:28 July 2024
157:1.8.10
128:Developer(s)
105:
96:
86:
79:
72:
65:
53:
41:Please help
36:verification
33:
3299:Common Lisp
3140:Apache Flex
3132:Adobe Flash
3050:Objective-C
2990:FOX toolkit
2774:Silverlight
2722:Xamarin.iOS
2717:Xamarin.Mac
2671:Cocoa Touch
2654:Objective-C
2394:Windows API
1971:Compositing
1781:and notable
1215:XDrawString
651:, ...); and
589:. The term
548:identifiers
498:framebuffer
322:programmers
3621:Categories
3386:FireMonkey
3246:JavaScript
2694:PowerPlant
1960:comparison
1779:Components
1693:Extensions
1457:References
1409:widget set
1385:XNextEvent
1359:XMapWindow
1104:XNextEvent
1074:XMapWindow
1020:WhitePixel
1002:BlackPixel
954:RootWindow
672:XSetRegion
660:XPeekEvent
656:XNextEvent
553:The types
407:Data types
326:X protocol
218:Written in
184:Repository
69:newspapers
3381:IP Pascal
3274:jQuery UI
3183:wxHaskell
3122:.NET MAUI
3103:Moonlight
3035:wxWidgets
2347:Intuition
2207:Standards
2170:ratpoison
2122:WindowLab
2027:AfterStep
1233:DefaultGC
1173:DefaultGC
645:XCreateGC
620:Functions
524:Unix-like
394:Unix-like
392:for many
314:functions
261:/releases
3540:GladeXML
3476:wxPython
3216:Qt Jambi
3098:MonoGame
2464:BeOS API
2072:Matchbox
2037:Blackbox
2014:Stacking
1989:Metacity
1939:Entrance
1861:XWayland
1806:Cygwin/X
1770:Xinerama
1305:KeyPress
753:#include
747:#include
741:#include
735:#include
567:Colormap
300:) is an
263:/current
3606:Flutter
3451:Tkinter
3428:PHP-GTK
3284:Qooxdoo
3279:OpenUI5
3175:Haskell
3058:GNUstep
2970:Bedrock
2897:Android
2866:LessTif
2737:Windows
2699:THINK C
2589:AmigaOS
2475:Android
2386:Windows
2339:AmigaOS
2185:StumpWM
2150:awesome
2097:Sawfish
2087:Openbox
2052:Fluxbox
1929:LightDM
1856:XQuartz
1826:XDarwin
1821:XFree86
1811:X-Win32
1675:Wayland
1477:29 July
1397:widgets
1372:event.
1329:display
1239:display
1221:display
1179:display
1161:display
1110:display
1080:display
1047:display
1026:display
1008:display
960:display
948:display
927:display
876:fprintf
861:display
837:display
783:display
777:Display
687:Example
636:, ...);
591:request
575:Display
555:Windows
540:Display
528:Display
520:Display
513:Display
306:library
271:/libX11
269:/libX11
267:/libX11
240:Website
234:Library
203:/libx11
168: (
83:scholar
3588:Dialog
3522:Tcl/Tk
3504:QtRuby
3461:PySide
3443:Python
3410:wxPerl
3345:Pascal
3264:Ext JS
3211:JavaFX
3086:OpenTK
2947:XForms
2881:XForms
2851:under
2689:MacApp
2644:MacApp
2597:BOOPSI
2523:OpenTK
2421:under
2375:Carbon
2250:xclock
2190:larswm
2180:xmonad
2142:Tiling
1994:Mutter
1979:Compiz
1851:Xephyr
1590:
1571:
1444:Expose
1370:Expose
1335:return
1269:strlen
1227:window
1167:window
1146:Expose
1086:window
1053:window
936:window
894:"
882:stderr
798:XEvent
792:window
789:Window
682:, ...)
614:Expose
600:XFlush
559:Pixmap
532:socket
474:here:
470:kernel
318:server
298:libX11
193:gitlab
142:~1985
85:
78:
71:
64:
58:"Xlib"
56:
3570:shell
3499:Shoes
3471:PyGTK
3433:wxPHP
3403:Perl/
3376:fpGUI
3221:Swing
3020:TnFOX
3000:gtkmm
2975:CEGUI
2886:XView
2871:Motif
2666:Cocoa
2658:Swift
2627:macOS
2569:LWJGL
2456:Haiku
2404:WinRT
2362:macOS
2270:xeyes
2265:xterm
2260:xload
2255:xedit
2245:xcalc
2214:ICCCM
2107:tvtwm
2067:IceWM
2032:amiwm
1831:Xming
1745:AIGLX
1710:RandR
1436:fpGUI
1417:Motif
1311:break
1293:event
1134:event
1119:event
1116:&
801:event
709:IceWM
596:XSync
429:Linux
352:Motif
348:(Xaw)
273:.html
199:/xorg
90:JSTOR
76:books
3598:Dart
3578:Newt
3491:Ruby
3481:Pyjs
3466:PyQt
3456:Kivy
3396:Perl
3312:CLIM
3307:CAPI
3259:Echo
3206:FXML
3193:Java
3165:Fyne
3145:MXML
3093:UIML
3076:Gtk#
3005:JUCE
2985:FLTK
2876:OLIT
2847:Unix
2759:XAML
2612:Zune
2564:JOGL
2556:Java
2452:BeOS
2431:Xlib
2417:Unix
2317:List
2219:EWMH
2175:wmii
2117:vtwm
2092:Qvwm
2082:olwm
2062:FVWM
2057:FLWM
2042:CTWM
2022:4Dwm
1999:Xfwm
1984:KWin
1934:LXDM
1919:SDDM
1877:Xlib
1841:Xsun
1836:Xsgi
1816:X386
1588:ISBN
1569:ISBN
1479:2024
1449:The
1434:and
1432:FLTK
1415:and
1299:type
1140:type
1098:(;;)
900:exit
867:NULL
849:NULL
807:char
768:void
762:main
563:Font
390:GUIs
357:FLTK
342:(Xt)
294:Xlib
265:/doc
259:.org
249:.org
229:Type
201:/lib
197:.org
122:Xlib
62:news
3583:CDK
3555:XUL
3532:XML
3514:Tcl
3420:PHP
3335:IUP
3327:Lua
3289:YUI
3113:XWT
3068:CLI
3025:U++
2962:C++
2952:XVT
2942:IUP
2937:GTK
2895:On
2853:X11
2845:On
2799:MFC
2791:C++
2746:CLI
2735:On
2709:CLI
2681:C++
2621:On
2602:MUI
2587:On
2541:GDK
2515:CLI
2484:CLI
2473:On
2450:On
2436:XCB
2423:X11
2415:On
2399:UWP
2384:On
2356:On
2337:On
2319:of
2224:XDS
2165:Ion
2155:dwm
2132:wm2
2112:twm
2102:swm
2077:mwm
2047:cwm
1944:WDM
1924:XDM
1914:KDM
1909:GDM
1882:XCB
1846:Xgl
1750:GLX
1451:XCB
1424:GTK
1413:Xaw
1278:));
1275:msg
1263:msg
1095:for
1035:));
990:200
984:200
825:int
813:msg
759:int
598:or
502:EGL
446:XCB
401:XCB
362:GTK
255:www
245:www
45:by
3623::
3560:Wt
3405:Tk
3157:Go
3030:Wt
3010:Qt
2656:,
2625:,
2454:,
2360:,
2160:i3
1509:.
1430:,
1428:Qt
1426:,
1332:);
1302:==
1287:if
1257:50
1251:50
1248:),
1212:);
1209:10
1203:10
1197:20
1191:20
1188:),
1143:==
1128:if
1122:);
1089:);
1068:);
1017:),
978:10
972:10
969:),
930:);
909:);
897:);
891:\n
864:==
855:if
852:);
732:*/
723:/*
678:,
674:,
670:,
666:,
658:,
643:,
632:,
565:,
561:,
557:,
403:.
373:Tk
367:Qt
335::
328:.
257:.x
247:.x
2924:C
2849:,
2533:C
2419:,
2309:e
2302:t
2295:v
1962:)
1958:(
1624:e
1617:t
1610:v
1596:.
1577:.
1513:.
1481:.
1438:.
1419:;
1344:}
1341:;
1338:0
1326:(
1317:}
1314:;
1308:)
1296:.
1290:(
1281:}
1272:(
1266:,
1260:,
1254:,
1245:s
1242:,
1236:(
1230:,
1224:,
1218:(
1206:,
1200:,
1194:,
1185:s
1182:,
1176:(
1170:,
1164:,
1158:(
1152:{
1149:)
1137:.
1131:(
1113:,
1107:(
1101:{
1083:,
1077:(
1062:|
1056:,
1050:,
1044:(
1032:s
1029:,
1023:(
1014:s
1011:,
1005:(
999:,
996:1
993:,
987:,
981:,
975:,
966:s
963:,
957:(
951:,
945:(
939:=
924:(
918:=
915:s
912:}
906:1
903:(
885:,
879:(
873:{
870:)
858:(
846:(
840:=
831:;
828:s
822:;
816:=
810:*
804:;
795:;
786:;
780:*
774:{
771:)
765:(
472:(
289:.
222:C
172:)
112:)
106:(
101:)
97:(
87:·
80:·
73:·
66:·
39:.
Text is available under the Creative Commons Attribution-ShareAlike License. Additional terms may apply.