> @@ -13395,6 +13395,12 @@
> contains multiple display devices, but only one keyboard and
> mouse. Most of the time, a console will contain exactly one device.
>
> +@strong{This model may no longer suffice.} The X Window System (at
> +least) now supports a variety of input devices, including
> touchscreens
> +and tablets, as well as the traditional keyboard and mouse, and may
> +even be able to support multiple instances of a single type of input
> +device (especially pointing devices) on a single console.
> +
> Consoles are the top of a lisp object inclusion hierarchy.
> Consoles contain devices, which contain frames, which
> contain windows.
I now really consider the exposure of consoles to be a mistake.
I'm interested in seeing if we can "de-expose" them and use devices in all
cases instead. What do you think?
> @@ -13420,6 +13426,57 @@
> menubar, scrollbar, toolbar, and other displayable-object
> subsystems. The reason for this is that all of these
> subsystems have the same subtypes (X, TTY, NeXTstep,
> Microsoft Windows, etc.) as devices do.
> +
> +@strong{This abstraction is probably broken} (as of late 2004), at
> +least for X consoles, with the advent of the @strong{Xft}
> library. Xft
> +is a complete break from the traditional approach to text
> rendering in
> +the X11 environment, since fonts are composed of glyphs rendered by
> +@emph{client-side} code. These glyphs are then transmitted to the
> +server as sets of trapezoids, and displayed by the @strong{XRender}
> +extension (where available; the X11 core protocol can also
> be used, but
> +this is slow). The XRender extension is especially
> attractive because
> +it allows modern image composition techniques to be used to render
> +antialiased fonts.
> +
Note also another issue under Windows, if we want to support glyph shaping,
as required for Arabic, Devanagari, etc. Windows has built-in routines to
take care of this but you need to pass the whole string of text and do
text-width calculations similarly on the whole string rather than
char-by-char.