X Window System core protocol: Difference between revisions

Content deleted Content added
Rescuing 1 sources and tagging 0 as dead. #IABot (v1.1)
m clean up; http->https (see this RfC) using AWB
Line 57:
 
[[Image:Xfontsel.png|thumb|450px|The <code>xfontsel</code> program allows the user to view the glyphs of a font.]]
The names of the fonts are arbitrary strings at the level of the X Window core protocol. The [[X logical font description]] conventions<ref name="logi-font">{{cite web|url=http://www.xfree86.org/current/xlfd.pdf |title=X Logical Font Description Conventions |accessdate=2005-12-30 |author=Jim Flowers |author2=Stephen Gildea |year=1994 |format=PDF |work=[[Digital Equipment Corporation]] |publisher=[[X Consortium]] |deadurl=yes |archiveurl=httphttps://web.archive.org/web/20050328124653/http://www.xfree86.org:80/current/xlfd.pdf |archivedate=March 28, 2005 }}</ref> specify how fonts should be named according to their attributes. These conventions also specify the values of optional properties that can be attached to fonts.
 
The <code>xlsfonts</code> program prints the list of fonts stored in the server. The <code>xfontsel</code> program shows the glyphs of fonts, and allow the user to select the name of a font for pasting it in another window.
Line 81:
Identifiers are unique to the server, not only to the client; for example, no two windows have the same identifier, even if created by two different clients. A client can access any object given its identifier. In particular, it can also access resources created by any other client, even if their identifiers are outside the set of identifiers it can create.
As a result, two clients connected to the same server can use the same identifier to refer to the same resource. For example, if a client creates a window of identifier <code>0x1e00021</code> and passes this number <code>0x1e00021</code> to another application (via any available means, for example by storing this number in a file that is also accessible to the other application), this other application is able to operate on the very same window. This possibility is for example exploited by the X Window version of [[Ghostview]]: this program creates a subwindow, storing its identifier in an [[environment variable]], and calls [[Ghostscript]]; this program draws the content of the [[PostScript]] file to show in this window.<ref name="ghos-inte">[httphttps://www.gnu.org/software/gv/manual/html_node/Interface-with-ghostscript.html Ghostview: Interface with ghostscript]</ref>
 
Resources are normally destroyed when the client that created them closes the connection with the server. However, before closing connection, a client can request the server not to destroy them.
Line 245:
 
== Authorization ==
{{main article|X Window authorization}}
 
When the client initially establishes a connection with the server, the server can reply by either accepting the connection, refusing it, or requesting [[authentication]]. An authentication request contains the name of the authentication method to use. The core protocol does not specify the authentication process, which depends on the kind of authentication used, other than it ends with the server either sending an acceptance or a refusal packet.
Line 252:
 
==Xlib and other client libraries ==
{{main article|Xlib}}
 
Most client programs communicate with the server via the [[Xlib]] client library. In particular, most clients use libraries such as [[Xaw]], [[Motif (software)|Motif]], [[GTK+]], or [[Qt (toolkit)|Qt]] which in turn use Xlib for interacting with the server. The use of Xlib has the following effects: