index
xlib
key event state:
1st byte modifiers
2nd byte key buttons (8-12), 13/14 group 15 release?
Docs
Xlib Programming Manual (O'Reilly & Associates, Inc.)
Xlib JPEG Display
see also in sawfish
Important concepts in Xlib
Window state:
ICCCM !
http://www.xfree86.org/4.4.0/XWithdrawWindow.3.html
Colormaps
http://www.rahul.net/kenton/colormap.html
Masks
for keys/buttons:
do-not-propagate
for structure: override_redirect
Time:
focus & grab
XSetInputFocus(display, focus, revert_to, time)
selection
XConvertSelection
XSetSelectionOwner
** Xy format vs Z format:
http://www-h.eng.cam.ac.uk/help/tpl/graphics/X/X11R5/node46.html
XFixes
http://cvs.freedesktop.org/xlibs/FixesExt/protocol?view=markup
http://freedesktop.org/Software/FixesExt
sending X request, and receiving XReplies
Sizes:
in /usr/X11R6/include/X11/Xmd.h you can find out why sizeof is not good. We need it explicit, via SIZEOF macro, XXX_sz
SIZEOF gives the macro (we have to define it!) in byte units !
lenght in requests ... in quad-words!
length in XReplys ?
- LockDisplay
- GetReq:: Get the next available X request packet in the buffer and return it.
- GetReqExtra is the same as GetReq, but allocates "n" additional bytes after the request. "n" must be a multiple of 4!
- GetResReq is for those requests that have a resource ID (Window, Pixmap, GContext, etc.) as their single argument. "rid" is the name of the resource.
- GetEmptyReq:: is for those requests that have no arguments at all.
- MakeBigReq
- SetReqLen(req,n,badlen)
- SyncHandle
- Data(dpy, data, len) Data - Place data in the buffer and pad the end to provide 32 bit word alignment. Transmit if the buffer fills.
- BufAlloc(type, ptr, n) Allocate bytes from the buffer. No padding is done, so if
- _XFlush
_XkbTypedAlloc
XKB specific utils
Read Buffer
XkbReadBufferRec buf;
_XkbInitReadBuffer()
_XkbInitReadBuffer
_XkbCopyFromReadBuffer
_XkbFreeReadBuffer
(inside XKBlibint.h):
XIM
Sending key events
Debugging Xlib
set _XSync=1
X Render Extension
version 0.9
http://cvs.freedesktop.org/*checkout*/xorg/xc/doc/specs/Render/protocol
Fonts
http://www.sbin.org/doc/Xlib/chapt_17_app_A.html
Alvarez on #xlib:
you said once you had Bistream fonts installed but Superkb didn't recognize them.
cd /usr/share/fonts/TTF
ttmkfdir
And making sure /usr/share/fonts/TTF is in the font path (with xset fp+ path && xset fp rehash) and in xorg.conf.
I am now able to see the fonts with xfontsel.