aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--libX11/specs/XIM/xim.xml420
-rw-r--r--libX11/specs/XKB/ch01.xml17
-rw-r--r--libX11/specs/XKB/ch02.xml104
-rw-r--r--libX11/specs/XKB/ch04.xml110
-rw-r--r--libX11/specs/XKB/ch05.xml150
-rw-r--r--libX11/specs/XKB/ch06.xml87
-rw-r--r--libX11/specs/XKB/ch07.xml13
-rw-r--r--libX11/specs/XKB/ch08.xml255
-rw-r--r--libX11/specs/XKB/ch09.xml174
-rw-r--r--libX11/specs/XKB/ch10.xml727
-rw-r--r--libX11/specs/XKB/ch11.xml58
-rw-r--r--libX11/specs/XKB/ch12.xml107
-rw-r--r--libX11/specs/XKB/ch13.xml625
-rw-r--r--libX11/specs/XKB/ch14.xml207
-rw-r--r--libX11/specs/XKB/ch15.xml346
-rw-r--r--libX11/specs/XKB/ch16.xml735
-rw-r--r--libX11/specs/XKB/ch17.xml194
-rw-r--r--libX11/specs/XKB/ch18.xml175
-rw-r--r--libX11/specs/XKB/ch19.xml19
-rw-r--r--libX11/specs/XKB/ch20.xml184
-rw-r--r--libX11/specs/XKB/ch21.xml232
-rw-r--r--libX11/specs/XKB/ch22.xml38
-rw-r--r--libX11/specs/i18n/framework/framework.xml165
-rw-r--r--libX11/specs/i18n/localedb/localedb.xml155
-rw-r--r--libX11/specs/i18n/trans/trans.xml403
-rw-r--r--libX11/specs/libX11/AppA.xml26
-rw-r--r--libX11/specs/libX11/CH03.xml40
-rw-r--r--libX11/specs/libX11/CH06.xml19
-rw-r--r--libX11/specs/libX11/CH07.xml63
-rw-r--r--libX11/specs/libX11/CH10.xml83
-rw-r--r--libX11/specs/libX11/CH11.xml15
-rw-r--r--libX11/specs/libX11/CH12.xml7
-rw-r--r--libX11/specs/libX11/CH13.xml234
-rw-r--r--libX11/specs/libX11/CH14.xml23
-rw-r--r--libxcb/xcb-proto/src/Makefile.am2
-rw-r--r--mesalib/configs/autoconf.in1
-rw-r--r--mesalib/configs/freebsd-dri3
-rw-r--r--mesalib/configs/linux-dri2
-rw-r--r--mesalib/configs/linux-dri-debug6
-rw-r--r--mesalib/configs/linux-dri-ppc8
-rw-r--r--mesalib/configs/linux-dri-x86-643
-rw-r--r--mesalib/configs/linux-dri-xcb1
-rw-r--r--mesalib/configure.ac111
-rw-r--r--mesalib/src/glsl/glsl_types.cpp4
-rw-r--r--mesalib/src/glsl/linker.cpp64
-rw-r--r--mesalib/src/mapi/glapi/Makefile141
-rw-r--r--mesalib/src/mapi/glapi/gen/glX_proto_send.py6
-rw-r--r--mesalib/src/mesa/SConscript8
-rw-r--r--mesalib/src/mesa/drivers/dri/Makefile55
-rw-r--r--mesalib/src/mesa/drivers/dri/Makefile.defines27
-rw-r--r--mesalib/src/mesa/drivers/dri/Makefile.targets78
-rw-r--r--mesalib/src/mesa/drivers/dri/dri.pc.in10
-rw-r--r--mesalib/src/mesa/drivers/dri/swrast/Makefile27
-rw-r--r--mesalib/src/mesa/main/cpuinfo.c200
-rw-r--r--mesalib/src/mesa/main/cpuinfo.h4
-rw-r--r--mesalib/src/mesa/main/fbobject.c13
-rw-r--r--mesalib/src/mesa/main/mtypes.h32
-rw-r--r--mesalib/src/mesa/main/state.c1
-rw-r--r--mesalib/src/mesa/math/m_xform.c6
-rw-r--r--mesalib/src/mesa/ppc/common_ppc.c91
-rw-r--r--mesalib/src/mesa/ppc/common_ppc_features.h54
-rw-r--r--mesalib/src/mesa/sources.mak2
-rw-r--r--xorg-server/xkeyboard-config/symbols/am2
63 files changed, 3580 insertions, 3592 deletions
diff --git a/libX11/specs/XIM/xim.xml b/libX11/specs/XIM/xim.xml
index fa4941153..131719704 100644
--- a/libX11/specs/XIM/xim.xml
+++ b/libX11/specs/XIM/xim.xml
@@ -619,16 +619,17 @@ XICATTR
(*2) The value types are defined as follows:
</literallayout>
-<informaltable id="valuetypes" frame="none">
- <tgroup cols="5">
- <colspec colname="col1" colsep="0"/>
- <colspec colname="col2" colsep="0"/>
- <colspec colname="col3" colsep="0"/>
- <colspec colname="col4" colsep="0"/>
- <colspec colname="col5" colsep="0"/>
+<informaltable id="valuetypes" frame="topbot">
+ <?dbfo keep-together="auto" ?>
+ <tgroup cols="5" align='left' colsep='0' rowsep='0'>
+ <colspec colname="col1" colwidth="0.9*"/>
+ <colspec colname="col2" colwidth="3.0*"/>
+ <colspec colname="col3" colwidth="3.2*"/>
+ <colspec colname="col4" colwidth="2.9*"/>
+ <colspec colname="col5" colwidth="2.9*"/>
<spanspec namest="col3" nameend="col5" spanname="span-horiz" align="center"/>
<thead>
- <row>
+ <row rowsep='1'>
<entry>values</entry>
<entry>data</entry>
<entry>format</entry>
@@ -636,159 +637,159 @@ XICATTR
</row>
</thead>
<tbody>
- <row rowsep="0">
+ <row>
<entry>#0</entry>
<entry>Separator of NestedList</entry>
<entry>-----(*3)</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>#1</entry>
<entry>byte data</entry>
<entry>CARD8</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>#2</entry>
<entry>word data</entry>
<entry>CARD16</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>#3</entry>
<entry>long data</entry>
<entry>CARD32</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>#4</entry>
<entry>char data</entry>
<entry>STRING8</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>#5</entry>
<entry>Window</entry>
<entry>CARD32</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>#10</entry>
<entry>XIMStyles</entry>
<entry>2</entry>
<entry>n</entry>
<entry>number of XIMStyle list</entry>
</row>
- <row rowsep="0">
+ <row>
<entry></entry>
<entry></entry>
<entry>2</entry>
<entry></entry>
<entry>unused</entry>
</row>
- <row rowsep="0">
+ <row>
<entry></entry>
<entry></entry>
<entry>n</entry>
<entry>CARD32</entry>
<entry>XIMStyle list</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>#11</entry>
<entry>XRectangle</entry>
<entry>2</entry>
<entry>INT16</entry>
<entry>X</entry>
</row>
- <row rowsep="0">
+ <row>
<entry></entry>
<entry></entry>
<entry>2</entry>
<entry>INT16</entry>
<entry>Y</entry>
</row>
- <row rowsep="0">
+ <row>
<entry></entry>
<entry></entry>
<entry>2</entry>
<entry>CARD16</entry>
<entry>width</entry>
</row>
- <row rowsep="0">
+ <row>
<entry></entry>
<entry></entry>
<entry>2</entry>
<entry>CARD16</entry>
<entry>height</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>#12</entry>
<entry>XPoint</entry>
<entry>2</entry>
<entry>INT16</entry>
<entry>X</entry>
</row>
- <row rowsep="0">
+ <row>
<entry></entry>
<entry></entry>
<entry>2</entry>
<entry>INT16</entry>
<entry>Y</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>#13</entry>
<entry>XFontSet</entry>
<entry>2</entry>
<entry>n</entry>
<entry>length of Base font name</entry>
</row>
- <row rowsep="0">
+ <row>
<entry></entry>
<entry></entry>
<entry>n</entry>
<entry>STRING8</entry>
<entry>Base font name list</entry>
</row>
- <row rowsep="0">
+ <row>
<entry></entry>
<entry></entry>
<entry>p</entry>
<entry></entry>
<entry>unused, p = Pad(2+n)</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>#15</entry>
<entry>XIMHotKeyTriggers</entry>
<entry>4</entry>
<entry>n</entry>
<entry>number of XIMTRIGGERKEY list (*4)</entry>
</row>
- <row rowsep="0">
+ <row>
<entry></entry>
<entry></entry>
<entry>n</entry>
<entry>XIMTRIGGERKEY</entry>
<entry>XIMHotkeyTrigger list</entry>
</row>
- <row rowsep="0">
+ <row>
<entry></entry>
<entry></entry>
<entry>n</entry>
<entry>XIMHOTKEYSTATE</entry>
<entry>HotKey processing state</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>#17</entry>
<entry>XIMStringConversion</entry>
<entry>XIMSTRCONVTEXT</entry>
<entry></entry>
<entry></entry>
</row>
- <row rowsep="0">
+ <row>
<entry>#18</entry>
<entry>XIMPreeditState</entry>
<entry>XIMPREEDITSTATE</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>#19</entry>
<entry>XIMResetState</entry>
<entry>XIMRESETSTATE</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>#x7fff</entry>
<entry>NestedList</entry>
<entry>-----</entry>
@@ -3039,66 +3040,67 @@ window of XIM_SERVER selection, which the IM Server has created.
Refer to "The Input Method Protocol" for the XIM_SERVER atom. <!-- xref -->
</para>
-<table frame="none" id="clientmessage_sent_to_the_ims_window">
-<title>The ClientMessage sent to the IMS window.</title>
- <tgroup cols="3">
- <colspec colname="col1" colwidth="1*" colsep="0"/>
- <colspec colname="col2" colwidth="1*" colsep="1"/>
- <colspec colname="col3" colwidth="3.5*" colsep="0"/>
+<table frame="topbot" id="clientmessage_sent_to_the_ims_window">
+ <?dbfo keep-together="always" ?>
+ <title>The ClientMessage sent to the IMS window.</title>
+ <tgroup cols="3" align='left' colsep='0' rowsep='0'>
+ <colspec colname="col1" colwidth="1.0*"/>
+ <colspec colname="col2" colwidth="1.0*" colsep="1"/>
+ <colspec colname="col3" colwidth="3.5*"/>
<spanspec namest="col1" nameend="col2" spanname="span-horiz" align="center"/>
<thead>
- <row>
- <entry spanname="span-horiz">Structure Member</entry>
+ <row rowsep='1'>
+ <entry spanname="span-horiz" colsep='1'>Structure Member</entry>
<entry>Contents</entry>
</row>
</thead>
<tbody>
- <row rowsep="0">
+ <row>
<entry>int</entry>
<entry>type</entry>
<entry>ClientMessage</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>u_long</entry>
<entry>serial</entry>
<entry>Set by the X Window System</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>Bool</entry>
<entry>send_event</entry>
<entry>Set by the X Window System</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>Display</entry>
<entry>*display</entry>
<entry>The display to which connects</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>Window</entry>
<entry>window</entry>
<entry>IMS Window ID</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>Atom</entry>
<entry>message_type</entry>
<entry>XInternAtom(display, "_XIM_XCONNECT", False)</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>int</entry>
<entry>format</entry>
<entry>32</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>long</entry>
<entry>data.l[0]</entry>
<entry>client communication window ID</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>long</entry>
<entry>data.l[1]</entry>
<entry>client-major-transport-version (*1)</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>long</entry>
<entry>data.l[2]</entry>
<entry>client-major-transport-version (*1)</entry>
@@ -3113,71 +3115,72 @@ window), the IM Server sends a ClientMessage in the following event's
format to the client communication window.
</para>
-<table frame="none" id="clientmessage_sent_by_the_im_server">
-<title>The ClientMessage sent by the IM Server.</title>
- <tgroup cols="3">
- <colspec colname="col1" colwidth="1*" colsep="0"/>
- <colspec colname="col2" colwidth="1*" colsep="1"/>
- <colspec colname="col3" colwidth="3.5*" colsep="0"/>
+<table frame="topbot" id="clientmessage_sent_by_the_im_server">
+ <?dbfo keep-together="always" ?>
+ <title>The ClientMessage sent by the IM Server.</title>
+ <tgroup cols="3" align='left' colsep='0' rowsep='0'>
+ <colspec colname="col1" colwidth="1.0*"/>
+ <colspec colname="col2" colwidth="1.0*" colsep="1"/>
+ <colspec colname="col3" colwidth="3.5*"/>
<spanspec namest="col1" nameend="col2" spanname="span-horiz" align="center"/>
<thead>
- <row>
- <entry spanname="span-horiz">Structure Member</entry>
+ <row rowsep='1'>
+ <entry spanname="span-horiz" colsep='1'>Structure Member</entry>
<entry>Contents</entry>
</row>
</thead>
<tbody>
- <row rowsep="0">
+ <row>
<entry>int</entry>
<entry>type</entry>
<entry>ClientMessage</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>u_long</entry>
<entry>serial</entry>
<entry>Set by the X Window System</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>Bool</entry>
<entry>send_event</entry>
<entry>Set by the X Window System</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>Display</entry>
<entry>*display</entry>
<entry>The display to which connects</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>Window</entry>
<entry>window</entry>
<entry>client communication window ID</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>Atom</entry>
<entry>message_type</entry>
<entry>XInternAtom(display, "_XIM_XCONNECT", False)</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>int</entry>
<entry>format</entry>
<entry>32</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>long</entry>
<entry>data.l[0]</entry>
<entry>IMS communication window ID</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>long</entry>
<entry>data.l[1]</entry>
<entry>server-major-transport-version (*1)</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>long</entry>
<entry>data.l[2]</entry>
<entry>server-minor-transport-version (*1)</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>long</entry>
<entry>data.l[3]</entry>
<entry>dividing size between ClientMessage and Property (*2)</entry>
@@ -3196,15 +3199,16 @@ major/minor-transport-version, as follows:
<table frame="all" id="readwrite_method_and_the_majorminor_transport_version">
-<title>The read/write method and the major/minor-transport-version</title>
- <tgroup cols="3">
- <colspec colname="col1" colwidth="1*" colsep="1"/>
- <colspec colname="col2" colwidth="1*" colsep="1"/>
- <colspec colname="col3" colwidth="3*" colsep="1"/>
+ <?dbfo keep-together="always" ?>
+ <title>The read/write method and the major/minor-transport-version</title>
+ <tgroup cols="3" align='left' colsep='1' rowsep='1'>
+ <colspec colname="col1" colwidth="1.0*"/>
+ <colspec colname="col2" colwidth="1.0*"/>
+ <colspec colname="col3" colwidth="3.0*"/>
<spanspec namest="col1" nameend="col2" spanname="span-horiz" align="center"/>
<thead>
<row>
- <entry spanname="span-horiz">Transport-version</entry>
+ <entry spanname="span-horiz" colsep='1'>Transport-version</entry>
<entry>read/write</entry>
</row>
<row>
@@ -3214,12 +3218,12 @@ major/minor-transport-version, as follows:
</row>
</thead>
<tbody>
- <row rowsep="0">
+ <row>
<entry morerows="2">0</entry>
<entry>0</entry>
<entry>only-CM &amp; Property-with-CM</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>1</entry>
<entry>only-CM &amp; multi-CM</entry>
</row>
@@ -3232,7 +3236,7 @@ major/minor-transport-version, as follows:
<entry>0</entry>
<entry>PropertyNotify</entry>
</row>
- <row rowsep="0">
+ <row>
<entry morerows="1">2</entry>
<entry>0</entry>
<entry>only-CM &amp; PropertyNotify</entry>
@@ -3317,56 +3321,57 @@ If data is sent via ClientMessage event, the format is as follows:
</para>
-<table frame="none" id="clientmessage_events_format_first_or_middle">
+<table frame="topbot" id="clientmessage_events_format_first_or_middle">
+ <?dbfo keep-together="always" ?>
<title>The ClientMessage event's format (first or middle)</title>
- <tgroup cols="3">
- <colspec colname="col1" colwidth="1*" colsep="0"/>
- <colspec colname="col2" colwidth="1*" colsep="1"/>
- <colspec colname="col3" colwidth="3.5*" colsep="0"/>
+ <tgroup cols="3" align='left' colsep='0' rowsep='0'>
+ <colspec colname="col1" colwidth="1.0*"/>
+ <colspec colname="col2" colwidth="1.0*" colsep="1"/>
+ <colspec colname="col3" colwidth="3.5*"/>
<spanspec namest="col1" nameend="col2" spanname="span-horiz" align="center"/>
<thead>
- <row>
- <entry spanname="span-horiz">Structure Member</entry>
+ <row rowsep='1'>
+ <entry spanname="span-horiz" colsep='1'>Structure Member</entry>
<entry>Contents</entry>
</row>
</thead>
<tbody>
- <row rowsep="0">
+ <row>
<entry>int</entry>
<entry>type</entry>
<entry>ClientMessage</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>u_long</entry>
<entry>serial</entry>
<entry>Set by the X Window System</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>Bool</entry>
<entry>send_event</entry>
<entry>Set by the X Window System</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>Display</entry>
<entry>*display</entry>
<entry>The display to which connects</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>Window</entry>
<entry>window</entry>
<entry>IMS communication window ID</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>Atom</entry>
<entry>message_type</entry>
<entry>XInternAtom(display, "_XIM_MOREDATA", False)</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>int</entry>
<entry>format</entry>
<entry>8</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>char</entry>
<entry>data.b[20]</entry>
<entry>(read/write DATA : 20 byte)</entry>
@@ -3375,56 +3380,57 @@ If data is sent via ClientMessage event, the format is as follows:
</tgroup>
</table>
-<table frame="none" id="clientmessage_events_format_only_or_last">
+<table frame="topbot" id="clientmessage_events_format_only_or_last">
+ <?dbfo keep-together="always" ?>
<title>The ClientMessage event's format (only or last)</title>
- <tgroup cols="3">
- <colspec colname="col1" colwidth="1*" colsep="0"/>
- <colspec colname="col2" colwidth="1*" colsep="1"/>
- <colspec colname="col3" colwidth="3.5*" colsep="0"/>
+ <tgroup cols="3" align='left' colsep='0' rowsep='0'>
+ <colspec colname="col1" colwidth="1.0*"/>
+ <colspec colname="col2" colwidth="1.0*" colsep="1"/>
+ <colspec colname="col3" colwidth="3.5*"/>
<spanspec namest="col1" nameend="col2" spanname="span-horiz" align="center"/>
<thead>
- <row>
- <entry spanname="span-horiz">Structure Member</entry>
+ <row rowsep='1'>
+ <entry spanname="span-horiz" colsep='1'>Structure Member</entry>
<entry>Contents</entry>
</row>
</thead>
<tbody>
- <row rowsep="0">
+ <row>
<entry>int</entry>
<entry>type</entry>
<entry>ClientMessage</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>u_long</entry>
<entry>serial</entry>
<entry>Set by the X Window System</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>Bool</entry>
<entry>send_event</entry>
<entry>Set by the X Window System</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>Display</entry>
<entry>*display</entry>
<entry>The display to which connects</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>Window</entry>
<entry>window</entry>
<entry>IMS communication window ID</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>Atom</entry>
<entry>message_type</entry>
<entry>XInternAtom(display, "_XIM_PROTOCOL", False)</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>int</entry>
<entry>format</entry>
<entry>8</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>char</entry>
<entry>data.b[20]</entry>
<entry>(read/write DATA : MAX 20 byte) (*1)</entry>
@@ -3469,56 +3475,57 @@ IM Server via PropertyNotify event.
The arguments of the XChangeProperty are as follows:
</para>
-<table frame="none" id="xchangeproperty_events_format">
+<table frame="topbot" id="xchangeproperty_events_format">
+ <?dbfo keep-together="always" ?>
<title>The XChangeProperty event's format</title>
- <tgroup cols="3">
- <colspec colname="col1" colwidth="1*" colsep="0"/>
- <colspec colname="col2" colwidth="1*" colsep="1"/>
- <colspec colname="col3" colwidth="3.5*" colsep="0"/>
+ <tgroup cols="3" align='left' colsep='0' rowsep='0'>
+ <colspec colname="col1" colwidth="1.0*"/>
+ <colspec colname="col2" colwidth="1.0*" colsep="1"/>
+ <colspec colname="col3" colwidth="3.5*"/>
<spanspec namest="col1" nameend="col2" spanname="span-horiz" align="center"/>
<thead>
- <row>
- <entry spanname="span-horiz">Argument</entry>
+ <row rowsep='1'>
+ <entry spanname="span-horiz" colsep='1'>Argument</entry>
<entry>Contents</entry>
</row>
</thead>
<tbody>
- <row rowsep="0">
+ <row>
<entry>Display</entry>
<entry>*display</entry>
<entry>The display to which connects</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>Window</entry>
<entry>window</entry>
<entry>IMS communication window ID</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>Atom</entry>
<entry>property</entry>
<entry>read/write property Atom (*1)</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>Atom</entry>
<entry>type</entry>
<entry>XA_STRING </entry>
</row>
- <row rowsep="0">
+ <row>
<entry>int</entry>
<entry>format</entry>
<entry>8</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>int</entry>
<entry>mode</entry>
<entry>PropModeAppend</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>u_char</entry>
<entry>*data</entry>
<entry>read/write DATA</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>int</entry>
<entry>nelements</entry>
<entry>length of DATA</entry>
@@ -3546,61 +3553,62 @@ If Atom is notified via ClientMessage event, the format of the ClientMessage
is as follows:
</para>
-<table frame="none" id="clientmessage_events_format_to_send_atom_of_property">
+<table frame="topbot" id="clientmessage_events_format_to_send_atom_of_property">
+ <?dbfo keep-together="always" ?>
<title>The ClientMessage event's format to send Atom of property</title>
- <tgroup cols="3">
- <colspec colname="col1" colwidth="1*" colsep="0"/>
- <colspec colname="col2" colwidth="1*" colsep="1"/>
- <colspec colname="col3" colwidth="3.5*" colsep="0"/>
+ <tgroup cols="3" align='left' colsep='0' rowsep='0'>
+ <colspec colname="col1" colwidth="1.0*"/>
+ <colspec colname="col2" colwidth="1.0*" colsep="1"/>
+ <colspec colname="col3" colwidth="3.5*"/>
<spanspec namest="col1" nameend="col2" spanname="span-horiz" align="center"/>
<thead>
- <row>
- <entry spanname="span-horiz">Structure Members</entry>
+ <row rowsep='1'>
+ <entry spanname="span-horiz" colsep='1'>Structure Members</entry>
<entry>Contents</entry>
</row>
</thead>
<tbody>
- <row rowsep="0">
+ <row>
<entry>int</entry>
<entry>type</entry>
<entry>ClientMessage</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>u_long</entry>
<entry>serial</entry>
<entry>Set by the X Window System</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>Bool</entry>
<entry>send_event</entry>
<entry>Set by the X Window System</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>Display</entry>
<entry>*display</entry>
<entry>The display to which connects</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>Window</entry>
<entry>window</entry>
<entry>IMS communication window ID</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>Atom</entry>
<entry>message_type</entry>
<entry>XInternAtom(display, "_XIM_PROTOCOL", False)</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>int</entry>
<entry>format</entry>
<entry>32</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>long</entry>
<entry>data.l[0]</entry>
<entry>length of read/write property Atom</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>long</entry>
<entry>data.l[1]</entry>
<entry>read/write property Atom</entry>
@@ -3626,56 +3634,57 @@ The format of the ClientMessage is as follows:
-<table frame="none" id="clientmessage_events_format_for_first_or_middle">
+<table frame="topbot" id="clientmessage_events_format_for_first_or_middle">
+ <?dbfo keep-together="always" ?>
<title>The ClientMessage event's format (first or middle)</title>
- <tgroup cols="3">
- <colspec colname="col1" colwidth="1*" colsep="0"/>
- <colspec colname="col2" colwidth="1*" colsep="1"/>
- <colspec colname="col3" colwidth="3.5*" colsep="0"/>
+ <tgroup cols="3" align='left' colsep='0' rowsep='0'>
+ <colspec colname="col1" colwidth="1.0*"/>
+ <colspec colname="col2" colwidth="1.0*" colsep="1"/>
+ <colspec colname="col3" colwidth="3.5*"/>
<spanspec namest="col1" nameend="col2" spanname="span-horiz" align="center"/>
<thead>
- <row>
- <entry align="left" spanname="span-horiz">Structure Members</entry>
- <entry align="left">Contents</entry>
+ <row rowsep='1'>
+ <entry spanname="span-horiz" colsep='1'>Structure Members</entry>
+ <entry>Contents</entry>
</row>
</thead>
<tbody>
- <row rowsep="0">
+ <row>
<entry>int</entry>
<entry>type</entry>
<entry>ClientMessage</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>u_long</entry>
<entry>serial</entry>
<entry>Set by the X Window System</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>Bool</entry>
<entry>send_event </entry>
<entry>Set by the X Window System</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>Display</entry>
<entry>*display</entry>
<entry>The display to which connects</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>Window</entry>
<entry>window</entry>
<entry>client communication window ID</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>Atom</entry>
<entry>message_type</entry>
<entry>XInternAtom(display, "_XIM_MOREDATA", False)</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>int</entry>
<entry>format</entry>
<entry>8</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>char</entry>
<entry>data.b[20]</entry>
<entry>(read/write DATA : 20 byte)</entry>
@@ -3685,56 +3694,57 @@ The format of the ClientMessage is as follows:
</table>
-<table frame="none" id="clientmessage_events_format_for_only_or_last">
+<table frame="topbot" id="clientmessage_events_format_for_only_or_last">
+ <?dbfo keep-together="always" ?>
<title>The ClientMessage event's format (only or last)</title>
- <tgroup cols="3">
- <colspec colname="col1" colwidth="1*" colsep="0"/>
- <colspec colname="col2" colwidth="1*" colsep="1"/>
- <colspec colname="col3" colwidth="3.5*" colsep="0"/>
+ <tgroup cols="3" align='left' colsep='0' rowsep='0'>
+ <colspec colname="col1" colwidth="1.0*"/>
+ <colspec colname="col2" colwidth="1.0*" colsep="1"/>
+ <colspec colname="col3" colwidth="3.5*"/>
<spanspec namest="col1" nameend="col2" spanname="span-horiz" align="center"/>
<thead>
- <row>
- <entry align="left" spanname="span-horiz">Structure Members</entry>
- <entry align="left">Contents</entry>
+ <row rowsep='1'>
+ <entry spanname="span-horiz" colsep='1'>Structure Members</entry>
+ <entry>Contents</entry>
</row>
</thead>
<tbody>
- <row rowsep="0">
+ <row>
<entry>int</entry>
<entry>type</entry>
<entry>ClientMessage</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>u_long</entry>
<entry>serial</entry>
<entry>Set by the X Window System</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>Bool</entry>
<entry>send_event </entry>
<entry>Set by the X Window System</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>Display</entry>
<entry>*display</entry>
<entry>The display to which connects</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>Window</entry>
<entry>window</entry>
<entry>client communication window ID</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>Atom</entry>
<entry>message_type</entry>
<entry>XInternAtom(display, "_XIM_PROTOCOL", False)</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>int</entry>
<entry>format</entry>
<entry>8</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>char</entry>
<entry>data.b[20]</entry>
<entry>(read/write DATA : MAX 20 byte) (*1)</entry>
@@ -3779,56 +3789,57 @@ PropertyNotify event.
The arguments of the XChangeProperty are as follows:
</para>
-<table frame="none" id="xchangeproperty_events_format_2">
+<table frame="topbot" id="xchangeproperty_events_format_2">
+ <?dbfo keep-together="always" ?>
<title>The XChangeProperty event's format</title>
- <tgroup cols="3">
- <colspec colname="col1" colwidth="1*" colsep="0"/>
- <colspec colname="col2" colwidth="1*" colsep="1"/>
- <colspec colname="col3" colwidth="3.5*" colsep="0"/>
+ <tgroup cols="3" align='left' colsep='0' rowsep='0'>
+ <colspec colname="col1" colwidth="1.0*"/>
+ <colspec colname="col2" colwidth="1.0*" colsep="1"/>
+ <colspec colname="col3" colwidth="3.5*"/>
<spanspec namest="col1" nameend="col2" spanname="span-horiz" align="center"/>
<thead>
- <row>
- <entry align="left" spanname="span-horiz">Argument</entry>
- <entry align="left">Contents</entry>
+ <row rowsep='1'>
+ <entry spanname="span-horiz" colsep='1'>Argument</entry>
+ <entry>Contents</entry>
</row>
</thead>
<tbody>
- <row rowsep="0">
+ <row>
<entry>Display</entry>
<entry>*display</entry>
<entry>The display which to connects</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>Window</entry>
<entry>window</entry>
<entry>client communication window ID</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>Atom</entry>
<entry>property</entry>
<entry>read/write property Atom (*1)</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>Atom</entry>
<entry>type</entry>
<entry>XA_STRING</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>int</entry>
<entry>format</entry>
<entry>8</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>int</entry>
<entry>mode</entry>
<entry>PropModeAppend</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>u_char</entry>
<entry>*data</entry>
<entry>read/write DATA</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>int</entry>
<entry>nelements</entry>
<entry>length of DATA</entry>
@@ -3853,61 +3864,62 @@ is as follows:
</para>
-<table frame="none" id="clientmessage_events_format_to_send_atom_of_property_2">
+<table frame="topbot" id="clientmessage_events_format_to_send_atom_of_property_2">
+ <?dbfo keep-together="always" ?>
<title>The ClientMessage event's format to send Atom of property</title>
- <tgroup cols="3">
- <colspec colname="col1" colwidth="1*" colsep="0"/>
- <colspec colname="col2" colwidth="1*"/>
+ <tgroup cols="3" align='left' colsep='0' rowsep='0'>
+ <colspec colname="col1" colwidth="1.0*"/>
+ <colspec colname="col2" colwidth="1.0*" colsep='1'/>
<colspec colname="col3" colwidth="3.5*"/>
<spanspec namest="col1" nameend="col2" spanname="span-horiz" align="center"/>
<thead>
- <row>
- <entry align="left" spanname="span-horiz">Structure Member</entry>
- <entry align="left">Contents</entry>
+ <row rowsep='1'>
+ <entry spanname="span-horiz" colsep='1'>Structure Member</entry>
+ <entry>Contents</entry>
</row>
</thead>
<tbody>
- <row rowsep="0">
+ <row>
<entry>int</entry>
<entry>type</entry>
<entry>ClientMessage </entry>
</row>
- <row rowsep="0">
+ <row>
<entry>u_long</entry>
<entry>serial</entry>
<entry>Set by the X Window System </entry>
</row>
- <row rowsep="0">
+ <row>
<entry>Bool</entry>
<entry>send_event</entry>
<entry>Set by the X Window System </entry>
</row>
- <row rowsep="0">
+ <row>
<entry>Display</entry>
<entry>*display</entry>
<entry>The display to which connects </entry>
</row>
- <row rowsep="0">
+ <row>
<entry>Window</entry>
<entry>window</entry>
<entry>client communication window ID </entry>
</row>
- <row rowsep="0">
+ <row>
<entry>Atom</entry>
<entry>message_type</entry>
<entry>XInternAtom(display, "_XIM_PROTOCOL", False)</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>int</entry>
<entry>format</entry>
<entry>32 </entry>
</row>
- <row rowsep="0">
+ <row>
<entry>long</entry>
<entry>data.l[0]</entry>
<entry>length of read/write property ATOM </entry>
</row>
- <row rowsep="0">
+ <row>
<entry>long</entry>
<entry>data.l[1]</entry>
<entry>read/write property ATOM </entry>
diff --git a/libX11/specs/XKB/ch01.xml b/libX11/specs/XKB/ch01.xml
index e756d1a96..15cc97dad 100644
--- a/libX11/specs/XKB/ch01.xml
+++ b/libX11/specs/XKB/ch01.xml
@@ -361,28 +361,29 @@ BadMatch</emphasis>
generated.
</para>
-<table frame='none'>
+<table frame='topbot'>
<!-- <caption>Function Error Returns Due to Extension Problems</caption> -->
<title>Function Error Returns Due to Extension Problems</title>
-<tgroup cols='2'>
-<colspec align="left" colsep="0"/>
-<colspec align="left" colsep="0"/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='2' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
+<colspec colname='c2' colwidth='1.0*'/>
<thead>
- <row>
+ <row rowsep='1'>
<entry>Functions return type</entry>
<entry>Return value</entry>
</row>
</thead>
<tbody>
- <row rowsep='0'>
+ <row>
<entry>pointer to a structure</entry>
<entry>NULL</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>Bool</entry>
<entry>False</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>Status</entry>
<entry>BadAccess</entry>
</row>
diff --git a/libX11/specs/XKB/ch02.xml b/libX11/specs/XKB/ch02.xml
index 57286a475..b626a4322 100644
--- a/libX11/specs/XKB/ch02.xml
+++ b/libX11/specs/XKB/ch02.xml
@@ -93,10 +93,11 @@ To determine the compatibility of a library at runtime, call <emphasis>
XkbLibraryVersion</emphasis>.
</para>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
Bool <emphasis>
XkbLibraryVersion</emphasis>
@@ -107,14 +108,14 @@ lib_minor_in_out</emphasis>
)
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
int * <emphasis>
lib_major_in_out;</emphasis>
/* specifies and returns the major Xkb library version. */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
int * <emphasis>
lib_minor_in_out;</emphasis>
@@ -201,10 +202,11 @@ and initializes the extension when it is present.
</para>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
Bool <emphasis>
XkbQueryExtension</emphasis>
@@ -213,42 +215,42 @@ dpy, opcode_rtrn, event_rtrn, error_rtrn, major_in_out, minor_in_out</emphasis>
)
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
Display * <emphasis>
dpy; </emphasis>
/* connection to the X server */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
int * <emphasis>
opcode_rtrn</emphasis>
; /* backfilled with the major extension opcode */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
int * <emphasis>
event_rtrn</emphasis>
; /* backfilled with the extension base event code */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
int * <emphasis>
error_rtrn</emphasis>
; /* backfilled with the extension base error code */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
int * <emphasis>
major_in_out</emphasis>
; /* compile time lib major version in, server major version out */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
int * <emphasis>
minor_in_out; </emphasis>
@@ -303,10 +305,11 @@ server, and initialize the extension for use.
</para>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
Display *<emphasis>
XkbOpenDisplay</emphasis>
@@ -315,7 +318,7 @@ display_name, event_rtrn, error_rtrn, major_in_out, minor_in_out,
reason_rtrn)</emphasis>
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
char * <emphasis>
display_name</emphasis>
@@ -323,35 +326,35 @@ display_name</emphasis>
communications domain to be used */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
int * <emphasis>
event_rtrn</emphasis>
; /* backfilled with the extension base event code */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
int * <emphasis>
error_rtrn</emphasis>
; /* backfilled with the extension base error code */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
int * <emphasis>
major_in_out</emphasis>
; /* compile time lib major version in, server major version out */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
int * <emphasis>
minor_in_out</emphasis>
; /* compile time lib minor version in, server minor version out */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
int * <emphasis>
reason_rtrn</emphasis>
@@ -491,10 +494,11 @@ disable use of the extension once a connection is established.
</para>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
Bool<emphasis>
XkbIgnoreExtension</emphasis>
@@ -503,7 +507,7 @@ ignore</emphasis>
)
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
Bool <emphasis>
ignore</emphasis>
@@ -557,11 +561,12 @@ requests in Xlib and the server.
Table 2.1 lists the protocol errors that can be generated, and their causes. <!-- xref -->
</para>
-<table frame='none'>
+<table frame='topbot'>
<title>Xkb Protocol Errors</title>
-<tgroup cols='2'>
-<colspec colsep='0'/>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='2' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
+<colspec colname='c2' colwidth='3.0*'/>
<thead>
<row rowsep='1'>
<entry>Error</entry>
@@ -569,7 +574,7 @@ Table 2.1 lists the protocol errors that can be generated, and their causes. <!-
</row>
</thead>
<tbody>
- <row rowsep='0'>
+ <row>
<entry>BadAccess</entry>
<entry>
<para>
@@ -577,7 +582,7 @@ The Xkb extension has not been properly initialized
</para>
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>BadKeyboard</entry>
<entry>
<para>
@@ -585,7 +590,7 @@ The device specified was not a valid core or input extension device
</para>
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>BadImplementation</entry>
<entry>
<para>
@@ -593,7 +598,7 @@ Invalid reply from server
</para>
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>BadAlloc</entry>
<entry>
<para>
@@ -601,7 +606,7 @@ Unable to allocate storage
</para>
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>BadMatch</entry>
<entry>
<para>
@@ -610,7 +615,7 @@ correct type and range, but is otherwise invalid
</para>
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>BadValue</entry>
<entry>
<para>
@@ -618,7 +623,7 @@ An argument is out of range
</para>
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>BadAtom</entry>
<entry>
<para>
@@ -627,7 +632,7 @@ None</emphasis>
</para>
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>BadDevice</entry>
<entry>
<para>
@@ -660,15 +665,16 @@ significant byte will contain the device, class, or feedback ID as indicated in
the table.
</para>
-<table frame='none'>
+<table frame='topbot'>
<title>BadKeyboard Protocol Error resource_id Values</title>
-<tgroup cols='4'>
-<colspec colsep='0'/>
-<colspec colsep='0'/>
-<colspec colsep='0'/>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='4' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='2.0*'/>
+<colspec colname='c2' colwidth='1.0*'/>
+<colspec colname='c3' colwidth='3.0*'/>
+<colspec colname='c4' colwidth='2.0*'/>
<thead>
- <row rowsep='0'>
+ <row rowsep='1'>
<entry>high-order byte</entry>
<entry>value</entry>
<entry>meaning</entry>
@@ -676,7 +682,7 @@ the table.
</row>
</thead>
<tbody>
- <row rowsep='0'>
+ <row>
<entry>XkbErr_BadDevice</entry>
<entry>0xff</entry>
<entry>
@@ -686,7 +692,7 @@ device not found
</entry>
<entry>device ID</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>XkbErr_BadClass</entry>
<entry>0xfe</entry>
<entry>
@@ -696,7 +702,7 @@ device found, but it is of the wrong class
</entry>
<entry>class ID</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>XkbErr_BadId</entry>
<entry>0xfd</entry>
<entry>
diff --git a/libX11/specs/XKB/ch04.xml b/libX11/specs/XKB/ch04.xml
index f267ee512..223b44497 100644
--- a/libX11/specs/XKB/ch04.xml
+++ b/libX11/specs/XKB/ch04.xml
@@ -73,15 +73,16 @@ Xkb.h</emphasis>
event.
</para>
-<table frame='none'>
+<table frame='topbot'>
<title>Xkb Event Types</title>
-<tgroup cols='4'>
-<colspec colsep='0'/>
-<colspec colsep='0'/>
-<colspec colsep='0'/>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='4' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='3.0*'/>
+<colspec colname='c2' colwidth='4.0*'/>
+<colspec colname='c3' colwidth='1.0*'/>
+<colspec colname='c4' colwidth='1.0*'/>
<thead>
-<row rowsep='0'>
+<row rowsep='1'>
<entry>Event Type</entry>
<entry>Conditions Generating Event</entry>
<entry>Section</entry>
@@ -89,7 +90,7 @@ event.
</row>
</thead>
<tbody>
-<row rowsep='0'>
+<row>
<entry>
<para><emphasis>XkbNewKeyboardNotify</emphasis></para>
</entry>
@@ -103,7 +104,7 @@ event.
<para>187</para>
</entry>
</row>
-<row rowsep='0'>
+<row>
<entry>
<para>
<emphasis>XkbMapNotify</emphasis>
@@ -119,7 +120,7 @@ event.
<para>122</para>
</entry>
</row>
-<row rowsep='0'>
+<row>
<entry>
<para><emphasis>XkbStateNotify</emphasis></para>
</entry>
@@ -133,7 +134,7 @@ event.
<para>25</para>
</entry>
</row>
-<row rowsep='0'>
+<row>
<entry>
<para><emphasis>XkbControlsNotify</emphasis></para>
</entry>
@@ -147,7 +148,7 @@ event.
<para>79</para>
</entry>
</row>
-<row rowsep='0'>
+<row>
<entry>
<para><emphasis>XkbIndicatorStateNotify</emphasis></para>
</entry>
@@ -161,7 +162,7 @@ event.
<para>45</para>
</entry>
</row>
-<row rowsep='0'>
+<row>
<entry>
<para><emphasis>XkbIndicatorMapNotify</emphasis></para>
</entry>
@@ -175,7 +176,7 @@ event.
<para>45</para>
</entry>
</row>
-<row rowsep='0'>
+<row>
<entry>
<para><emphasis>XkbNamesNotify</emphasis></para>
</entry>
@@ -189,7 +190,7 @@ event.
<para>185</para>
</entry>
</row>
-<row rowsep='0'>
+<row>
<entry>
<para><emphasis>XkbCompatMapNotify</emphasis></para>
</entry>
@@ -203,7 +204,7 @@ event.
<para>178</para>
</entry>
</row>
-<row rowsep='0'>
+<row>
<entry>
<para><emphasis>XkbBellNotify</emphasis></para>
</entry>
@@ -217,7 +218,7 @@ event.
<para>52</para>
</entry>
</row>
-<row rowsep='0'>
+<row>
<entry>
<para><emphasis>XkbActionMessage</emphasis></para>
</entry>
@@ -231,7 +232,7 @@ event.
<para>155</para>
</entry>
</row>
-<row rowsep='0'>
+<row>
<entry>
<para><emphasis>XkbAccessXNotify</emphasis></para>
</entry>
@@ -245,7 +246,7 @@ event.
<para>65</para>
</entry>
</row>
-<row rowsep='0'>
+<row>
<entry>
<para><emphasis>XkbExtensionDeviceNotify</emphasis></para>
</entry>
@@ -387,10 +388,11 @@ XkbSelectEvents</emphasis>
</para>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
Bool <emphasis>
XkbSelectEvents</emphasis>
@@ -399,14 +401,14 @@ display, device_spec, bits_to_change, values_for_bits</emphasis>
)
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
Display * <emphasis>
display</emphasis>
; /* connection to the X server */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned int <emphasis>
device_spec</emphasis>
@@ -415,14 +417,14 @@ XkbUseCoreKbd</emphasis>
*/
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned long int <emphasis>
bits_to_change; </emphasis>
/* determines events to be selected / deselected */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned long int <emphasis>
values_for_bits</emphasis>
@@ -516,10 +518,11 @@ XkbSelectEvents</emphasis>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
Bool <emphasis>
XkbSelectEventDetails</emphasis>
@@ -530,14 +533,14 @@ values_for_bits</emphasis>
)
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
Display * <emphasis>
display</emphasis>
; /* connection to the X server */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned int <emphasis>
device_spec</emphasis>
@@ -546,21 +549,21 @@ XkbUseCoreKbd</emphasis>
*/
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned int <emphasis>
event_type</emphasis>
; /* Xkb event type of interest */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned long int <emphasis>
bits_to_change</emphasis>
; /* event selection details */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned long int <emphasis>
values_for_bits</emphasis>
@@ -656,105 +659,106 @@ XkbSelectEvents</emphasis>
request and the circumstances in which the mask should be specified.
</para>
-<table frame='none'>
+<table frame='topbot'>
<title>XkbSelectEvents Mask Constants</title>
-<tgroup cols='3'>
-<colspec colsep='0'/>
-<colspec colsep='0'/>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='3' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='2.0*'/>
+<colspec colname='c2' colwidth='1.0*'/>
+<colspec colname='c3' colwidth='2.0*'/>
<thead>
-<row rowsep='0'>
+<row rowsep='1'>
<entry>Event Mask</entry>
<entry>Value</entry>
<entry>Notification Wanted</entry>
</row>
</thead>
<tbody>
- <row rowsep='0'>
+ <row>
<entry>
<emphasis>XkbNewKeyboardNotifyMask</emphasis>
</entry>
<entry>(1L&lt;&lt;0)</entry>
<entry>Keyboard geometry change</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>
<emphasis>XkbMapNotifyMask</emphasis>
</entry>
<entry>(1L&lt;&lt;1)</entry>
<entry>Keyboard mapping change</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>
<para><emphasis>XkbStateNotifyMask</emphasis></para>
</entry>
<entry>(1L&lt;&lt;2)</entry>
<entry><para>Keyboard state change</para></entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>
<para><emphasis>XkbControlsNotifyMask</emphasis></para>
</entry>
<entry>(1L&lt;&lt;3)</entry>
<entry>Keyboard control change</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>
<emphasis>XkbIndicatorStateNotifyMask</emphasis>
</entry>
<entry>(1L&lt;&lt;4)</entry>
<entry>Keyboard indicator state change</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>
<emphasis>XkbIndicatorMapNotifyMask</emphasis>
</entry>
<entry>(1L&lt;&lt;5)</entry>
<entry>Keyboard indicator map change</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>
<emphasis>XkbNamesNotifyMask</emphasis>
</entry>
<entry>(1L&lt;&lt;6)</entry>
<entry>Keyboard name change</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>
<emphasis>XkbCompatMapNotifyMask</emphasis>
</entry>
<entry>(1L&lt;&lt;7)</entry>
<entry>Keyboard compat map change</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>
<emphasis>XkbBellNotifyMask</emphasis>
</entry>
<entry>(1L&lt;&lt;8)</entry>
<entry>Bell</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>
<emphasis>XkbActionMessageMask</emphasis>
</entry>
<entry>(1L&lt;&lt;9)</entry>
<entry>Action message</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>
<emphasis>XkbAccessXNotifyMask</emphasis>
</entry>
<entry>(1L&lt;&lt;10)</entry>
<entry>AccessX features</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>
<emphasis>XkbExtensionDeviceNotifyMask</emphasis>
</entry>
<entry>(1L&lt;&lt;11)</entry>
<entry>Extension device</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>
<emphasis>XkbAllEventsMask</emphasis>
</entry>
diff --git a/libX11/specs/XKB/ch05.xml b/libX11/specs/XKB/ch05.xml
index 626a0c040..3a507aa3b 100644
--- a/libX11/specs/XKB/ch05.xml
+++ b/libX11/specs/XKB/ch05.xml
@@ -308,34 +308,35 @@ affect</emphasis>
<table frame='none'>
<title>Real Modifier Masks</title>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='1'>
+ <row>
<entry>Mask</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>ShiftMask</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>LockMask</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>ControlMask</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>Mod1Mask</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>Mod2Mask</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>Mod3Mask</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>Mod4Mask</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>Mod5Mask</entry>
</row>
</tbody>
@@ -348,10 +349,11 @@ XkbLockModifiers:</emphasis>
</para>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
Bool <emphasis> XkbLockModifiers</emphasis>
(<emphasis>
@@ -359,14 +361,14 @@ display, device_spec, affect, values</emphasis>
)
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
Display * <emphasis>
display</emphasis>
; /* connection to the X server */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned int <emphasis>
device_spec</emphasis>
@@ -375,14 +377,14 @@ XkbUseCoreKbd</emphasis>
*/
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned int<emphasis>
affect</emphasis>
; /* mask of real modifiers whose lock state is to change */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned int <emphasis>
values</emphasis>
@@ -423,10 +425,11 @@ XkbLatchModifiers:</emphasis>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
Bool <emphasis>
XkbLatchModifiers</emphasis>
@@ -435,14 +438,14 @@ isplay, device_spec, affect, values</emphasis>
)
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
Display * <emphasis>
display</emphasis>
; /* connection to the X server */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned int <emphasis>
device_spec</emphasis>
@@ -451,14 +454,14 @@ XkbUseCoreKbd</emphasis>
*/
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned int<emphasis>
affect</emphasis>
; /* mask of modifiers whose latch state is to change */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned int <emphasis>values</emphasis>;
/* 1 =&gt; latch, 0 =&gt; unlatch; only for mods selected by <emphasis>
@@ -499,28 +502,30 @@ False</emphasis>
Reference the keysym group indices with these symbolic constants:
</para>
-<table frame='none'>
+<table frame='topbot'>
<title>Symbolic Group Names</title>
-<tgroup cols='2'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='2' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
+<colspec colname='c2' colwidth='2.0*'/>
<tbody>
- <row rowsep='0'>
+ <row rowsep='1'>
<entry>Symbolic Name</entry>
<entry>Value</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>XkbGroup1Index</entry>
<entry>0</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>XkbGroup2Index</entry>
<entry>1</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>XkbGroup3Index</entry>
<entry>2</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>XkbGroup4Index</entry>
<entry>3</entry>
</row>
@@ -534,10 +539,11 @@ XkbLockGroup. </emphasis>
</para>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
Bool <emphasis>
XkbLockGroup</emphasis>
@@ -546,14 +552,14 @@ display, device_spec, group</emphasis>
)
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
Display * <emphasis>
display</emphasis>
; /* connection to the X server */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned int <emphasis>
device_spec</emphasis>
@@ -562,7 +568,7 @@ XkbUseCoreKbd</emphasis>
*/
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned int <emphasis>
group</emphasis>
@@ -593,10 +599,11 @@ XkbLatchGroup.</emphasis>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
Bool <emphasis>
XkbLatchGroup</emphasis>
@@ -605,14 +612,14 @@ display, device_spec, group</emphasis>
)
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
Display * <emphasis>
display</emphasis>
; /* connection to the X server */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned int<emphasis>
device_spec</emphasis>
@@ -621,7 +628,7 @@ XkbUseCoreKbd</emphasis>
*/
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned int<emphasis>
group</emphasis>
@@ -681,10 +688,11 @@ XkbGetState.</emphasis>
</para>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
Status <emphasis>
XkbGetState</emphasis>
@@ -697,14 +705,14 @@ state_return</emphasis>
)
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
Display * <emphasis>
display</emphasis>
; /* connection to the X server */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned int <emphasis>
device_spec</emphasis>
@@ -713,7 +721,7 @@ XkbUseCoreKbd</emphasis>
*/
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbStatePtr <emphasis>
state_return</emphasis>
@@ -755,74 +763,76 @@ XkbStateNotify</emphasis>
There are many different types of Xkb state changes. Xkb defines an event detail mask corresponding to each type of change. The event detail masks are listed in Table 5.3.
</para>
-<table frame='none'>
+<table frame='topbot'>
<title>XkbStateNotify Event Detail Masks</title>
-<tgroup cols='2'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='2' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
+<colspec colname='c2' colwidth='1.0*'/>
<thead>
- <row rowsep='0'>
+ <row rowsep='1'>
<entry>Mask</entry>
<entry>Value</entry>
</row>
</thead>
<tbody>
- <row rowsep='0'>
+ <row>
<entry>XkbModifierStateMask</entry>
<entry>(1L &lt;&lt; 0)</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>XkbModifierBaseMask</entry>
<entry>(1L &lt;&lt; 1)</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>XkbModifierLatchMask</entry>
<entry>(1L &lt;&lt; 2)</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>XkbModifierLockMask</entry>
<entry>(1L &lt;&lt; 3)</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>XkbGroupStateMask</entry>
<entry>(1L &lt;&lt; 4)</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>XkbGroupBaseMask</entry>
<entry>(1L &lt;&lt; 5)</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>XkbGroupLatchMask</entry>
<entry>(1L &lt;&lt; 6)</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>XkbGroupLockMask</entry>
<entry>(1L &lt;&lt; 7)</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>XkbCompatStateMask</entry>
<entry>(1L &lt;&lt; 8)</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>XkbGrabModsMask</entry>
<entry>(1L &lt;&lt; 9)</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>XkbCompatGrabModsMask</entry>
<entry>(1L &lt;&lt; 10)</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>XkbLookupModsMask</entry>
<entry>(1L &lt;&lt; 11)</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>XkbCompatLookupModsMask</entry>
<entry>(1L &lt;&lt; 12)</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>XkbPointerButtonMask</entry>
<entry>(1L &lt;&lt; 13)</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>XkbAllStateComponentsMask</entry>
<entry>(0x3fff)</entry>
</row>
diff --git a/libX11/specs/XKB/ch06.xml b/libX11/specs/XKB/ch06.xml
index f74137131..422e6d23b 100644
--- a/libX11/specs/XKB/ch06.xml
+++ b/libX11/specs/XKB/ch06.xml
@@ -77,43 +77,44 @@ XkbDescRec</emphasis>
.
</para>
-<table frame='none'>
+<table frame='topbot'>
<title>XkbDescRec Component References</title>
-<tgroup cols='2'>
-<colspec colsep='0'/>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='2' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
+<colspec colname='c2' colwidth='2.0*'/>
<thead>
-<row rowsep='0'>
+<row rowsep='1'>
<entry>XkbDescRec Field</entry>
<entry>For more info</entry>
</row>
</thead>
<tbody>
-<row rowsep='0'>
+<row>
<entry>ctrls</entry>
<entry>Chapter 10</entry>
</row>
-<row rowsep='0'>
+<row>
<entry>server</entry>
<entry>Chapter 16</entry>
</row>
-<row rowsep='0'>
+<row>
<entry>map</entry>
<entry>Chapter 15</entry>
</row>
-<row rowsep='0'>
+<row>
<entry>indicators</entry>
<entry>Chapter 8</entry>
</row>
-<row rowsep='0'>
+<row>
<entry>names</entry>
<entry>Chapter 18</entry>
</row>
-<row rowsep='0'>
+<row>
<entry>compat</entry>
<entry>Chapter 17</entry>
</row>
-<row rowsep='0'>
+<row>
<entry>geom</entry>
<entry>Chapter 13</entry>
</row>
@@ -130,56 +131,57 @@ XkbDescRec</emphasis>
are shown in Table 6.2. <!-- xref -->
</para>
-<table frame='none'>
+<table frame='topbot'>
<title>Mask Bits for XkbDescRec</title>
-<tgroup cols='3'>
-<colspec colsep='0'/>
-<colspec colsep='0'/>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='3' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
+<colspec colname='c2' colwidth='1.0*'/>
+<colspec colname='c3' colwidth='1.0*'/>
<thead>
-<row rowsep='0'>
+<row rowsep='1'>
<entry>Mask Bit</entry>
<entry>XkbDescRec Field</entry>
<entry>Value</entry>
</row>
</thead>
<tbody>
-<row rowsep='0'>
+<row>
<entry>XkbControlsMask</entry>
<entry>ctrls</entry>
<entry>(1L&lt;&lt;0)</entry>
</row>
-<row rowsep='0'>
+<row>
<entry>XkbServerMapMask</entry>
<entry>server</entry>
<entry>(1L&lt;&lt;1)</entry>
</row>
-<row rowsep='0'>
+<row>
<entry>XkbIClientMapMask</entry>
<entry>map</entry>
<entry>(1L&lt;&lt;2)</entry>
</row>
-<row rowsep='0'>
+<row>
<entry>XkbIndicatorMapMask</entry>
<entry>indicators</entry>
<entry>(1L&lt;&lt;3)</entry>
</row>
-<row rowsep='0'>
+<row>
<entry>XkbNamesMask</entry>
<entry>names</entry>
<entry>(1L&lt;&lt;4)</entry>
</row>
-<row rowsep='0'>
+<row>
<entry>XkbCompatMapMask</entry>
<entry>compat</entry>
<entry>(1L&lt;&lt;5)</entry>
</row>
-<row rowsep='0'>
+<row>
<entry>XkbGeometryMask</entry>
<entry>geom</entry>
<entry>(1L&lt;&lt;6)</entry>
</row>
-<row rowsep='0'>
+<row>
<entry>XkbAllComponentsMask</entry>
<entry>All Fields</entry>
<entry>(0x7f)</entry>
@@ -202,10 +204,11 @@ XkbGetKeyboardbyName</emphasis>
</para>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
XkbDescPtr <emphasis>
XkbGetKeyboard</emphasis>
@@ -214,21 +217,21 @@ display, which, device_spec</emphasis>
)
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
Display * <emphasis>
display</emphasis>
; /* connection to X server */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned int <emphasis>
which</emphasis>
; /* mask indicating components to return */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned int<emphasis>
device_spec</emphasis>
@@ -306,10 +309,11 @@ Xmalloc</emphasis>
</para>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
XkbDescRec * <emphasis>
XkbAllocKeyboard</emphasis>
@@ -344,10 +348,11 @@ XkbFreeKeyboard.</emphasis>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
void <emphasis>
XkbFreeKeyboard</emphasis>
@@ -356,21 +361,21 @@ XkbFreeKeyboard</emphasis>
)
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbDescPtr <emphasis>
xkb</emphasis>
; /* keyboard description with components to free */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned int <emphasis>
which</emphasis>
; /* mask selecting components to free */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
Bool <emphasis>
free_all</emphasis>
diff --git a/libX11/specs/XKB/ch07.xml b/libX11/specs/XKB/ch07.xml
index 93d61d8cc..35b45901f 100644
--- a/libX11/specs/XKB/ch07.xml
+++ b/libX11/specs/XKB/ch07.xml
@@ -252,10 +252,11 @@ XkbVirtualModsToReal</emphasis>
</para>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
Bool <emphasis>
XkbVirtualModsToReal</emphasis>
@@ -264,21 +265,21 @@ xkb, virtual_mask, mask_rtrn</emphasis>
)
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbDescPtr <emphasis>
xkb</emphasis>
; /* keyboard description for input device */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned int<emphasis>
virtual_mask</emphasis>
; /* virtual modifier mask to translate */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned int * <emphasis>
mask_rtrn</emphasis>
diff --git a/libX11/specs/XKB/ch08.xml b/libX11/specs/XKB/ch08.xml
index 87c0c08f8..2b91f00ff 100644
--- a/libX11/specs/XKB/ch08.xml
+++ b/libX11/specs/XKB/ch08.xml
@@ -203,33 +203,34 @@ flags</emphasis>
and their effects are shown in Table 8.1. <!-- xref -->
</para>
-<table frame='none'>
+<table frame='topbot'>
<title>XkbIndicatorMapRec flags Field</title>
-<tgroup cols='3'>
-<colspec colsep='0'/>
-<colspec colsep='0'/>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='3' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='2.0*'/>
+<colspec colname='c2' colwidth='1.0*'/>
+<colspec colname='c3' colwidth='3.0*'/>
<thead>
-<row rowsep='0'>
+<row rowsep='1'>
<entry>Value</entry>
<entry></entry>
<entry>Effect</entry>
</row>
</thead>
<tbody>
- <row rowsep='0'>
+ <row>
<entry>XkbIM_NoExplicit</entry>
<entry>(1L&lt;&lt;7)</entry>
<entry>Client applications cannot change the state of the indicator.</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>XkbIM_NoAutomatic</entry>
<entry>(1L&lt;&lt;6)</entry>
<entry>Xkb does not automatically change the value of the indicator based
upon a change in the keyboard state, regardless of the values for the other
fields of the indicator map.</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>XkbIM_LEDDrivesKB</entry>
<entry>(1L&lt;&lt;5)</entry>
<entry>A client application changing the state of the indicator causes the
@@ -358,20 +359,21 @@ groups</emphasis>
is shown in Table 8.2. <!-- xref -->
</para>
-<table frame='none'>
+<table frame='topbot'>
<title>XkbIndicatorMapRec which_groups and groups, Keyboard Drives
Indicator</title>
-<tgroup cols='2'>
-<colspec colsep='0'/>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='2' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
+<colspec colname='c2' colwidth='2.0*'/>
<thead>
-<row rowsep='0'>
+<row rowsep='1'>
<entry>which_groups</entry>
<entry>Effect</entry>
</row>
</thead>
<tbody>
- <row rowsep='0'>
+ <row>
<entry>XkbIM_UseNone</entry>
<entry>
The <emphasis>
@@ -379,7 +381,7 @@ groups</emphasis>
field and the current keyboard group state are ignored.
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>XkbIM_UseBase</entry>
<entry>
If <emphasis>
@@ -390,7 +392,7 @@ groups</emphasis>
is zero, the indicator is lit whenever the base keyboard group is zero.
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>XkbIM_UseLatched</entry>
<entry>
If <emphasis>
@@ -401,7 +403,7 @@ groups</emphasis>
is zero, the indicator is lit whenever the latched keyboard group is zero.
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>XkbIM_UseLocked</entry>
<entry>
The <emphasis>
@@ -411,7 +413,7 @@ keyboard group matches one of the bits that are set in <emphasis>
groups</emphasis>.
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>XkbIM_UseEffective</entry>
<entry>
The <emphasis>
@@ -437,30 +439,33 @@ XkbIM_LEDDrivesKB</emphasis>
State" column refers to the new state to which you set the indicator.
</para>
-<table frame='none'>
+<table frame='topbot'>
<title>XkbIndicatorMapRec which_groups and groups, Indicator Drives
Keyboard</title>
-<tgroup cols='3'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='3' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='2.0*'/>
+<colspec colname='c2' colwidth='1.0*'/>
+<colspec colname='c3' colwidth='3.0*'/>
<thead>
-<row rowsep='0'>
+<row rowsep='1'>
<entry>which_groups</entry>
<entry>New State</entry>
<entry>Effect on Keyboard Group State</entry>
</row>
</thead>
<tbody>
- <row rowsep='0'>
+ <row>
<entry>XkbIM_UseNone </entry>
<entry>On or Off</entry>
<entry>No effect</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>XkbIM_UseBase</entry>
<entry>On or Off</entry>
<entry>No effect</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>XkbIM_UseLatched</entry>
<entry>On</entry>
<entry>
@@ -474,7 +479,7 @@ groups</emphasis>
is empty, the keyboard group latch is changed to zero.
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>XkbIM_UseLatched</entry>
<entry>Off</entry>
<entry>
@@ -490,7 +495,7 @@ groups</emphasis>
keyboard group.
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>XkbIM_UseLocked or XkbIM_UseEffective</entry>
<entry>On</entry>
<entry>
@@ -501,7 +506,7 @@ changed to the lowest numbered group specified in <emphasis>
groups</emphasis>.
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>XkbIM_UseLocked or XkbIM_UseEffective</entry>
<entry>Off</entry>
<entry>
@@ -605,23 +610,25 @@ mods</emphasis>
is shown in Table 8.4 <!-- xref -->
</para>
-<table frame='none'>
+<table frame='topbot'>
<title>XkbIndicatorMapRec which_mods and mods, Keyboard Drives Indicator</title>
-<tgroup cols='2'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='2' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
+<colspec colname='c2' colwidth='2.0*'/>
<thead>
-<row rowsep='0'>
+<row rowsep='1'>
<entry>which_mods</entry>
<entry>Effect on Keyboard Modifiers</entry>
</row>
</thead>
<tbody>
- <row rowsep='0'>
+ <row>
<entry>XkbIM_UseNone</entry>
<entry>The mods field and the current keyboard modifier state are
ignored.</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>XkbIM_UseBase</entry>
<entry>
The indicator is lit when any of the modifiers specified in the <emphasis>
@@ -636,7 +643,7 @@ mods.vmods</emphasis>
modifiers.
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>XkbIM_UseLatched</entry>
<entry>
The indicator is lit when any of the modifiers specified in the <emphasis>
@@ -650,7 +657,7 @@ mods.vmods</emphasis>
are zero, the indicator is lit when none of the modifier keys are latched.
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>XkbIM_UseLocked</entry>
<entry>
The indicator is lit when any of the modifiers specified in the <emphasis>
@@ -664,7 +671,7 @@ mods.vmods</emphasis>
are zero, the indicator is lit when none of the modifier keys are locked.
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>XkbIM_UseEffective</entry>
<entry>
The indicator is lit when any of the modifiers specified in the <emphasis>
@@ -679,7 +686,7 @@ mods.vmods</emphasis>
modifiers.
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>XkbIM_UseCompat</entry>
<entry>
The indicator is lit when any of the modifiers specified in the <emphasis>
@@ -709,25 +716,27 @@ XkbIM_LEDDrivesKB</emphasis>
State" column refers to the new state to which you set the indicator.
</para> <!-- xref -->
-<table frame='none'>
+<table frame='topbot'>
<title>XkbIndicatorMapRec which_mods and mods, Indicator Drives Keyboard</title>
-<tgroup cols='3'>
-<colspec colsep='0'/>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='3' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='2.0*'/>
+<colspec colname='c2' colwidth='1.0*'/>
+<colspec colname='c3' colwidth='3.0*'/>
<thead>
-<row rowsep='0'>
+<row rowsep='1'>
<entry>which_mods</entry>
<entry>New State</entry>
<entry>Effect on Keyboard Modifiers</entry>
</row>
</thead>
<tbody>
- <row rowsep='0'>
+ <row>
<entry>XkbIM_UseNone or XkbIM_UseBase</entry>
<entry>On or Off</entry>
<entry>No Effect</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>XkbIM_UseLatched</entry>
<entry>On</entry>
<entry>
@@ -738,7 +747,7 @@ mods</emphasis>
are added to the latched modifiers.
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>XkbIM_UseLatched</entry>
<entry>Off</entry>
<entry>
@@ -749,7 +758,7 @@ mods</emphasis>
are removed from the latched modifiers.
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>XkbIM_UseLocked, XkbIM_UseCompat, or XkbIM_UseEffective</entry>
<entry>On</entry>
<entry>
@@ -760,7 +769,7 @@ mods</emphasis>
are added to the locked modifiers.
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>XkbIM_UseLocked</entry>
<entry>Off</entry>
<entry>
@@ -771,7 +780,7 @@ mods</emphasis>
are removed from the locked modifiers.
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>XkbIM_UseCompat or XkbIM_UseEffective</entry>
<entry>Off</entry>
<entry>
@@ -853,10 +862,11 @@ XkbGetIndicatorState</emphasis>.
</para>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
Status <emphasis>
XkbGetIndicatorState</emphasis>
@@ -869,14 +879,14 @@ state_return</emphasis>
)
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
Display * <emphasis>
display</emphasis>
; /* connection to the X server */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned int <emphasis>
device_spec</emphasis>
@@ -885,7 +895,7 @@ XkbUseCoreKbd</emphasis>
*/
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned int * <emphasis>
state_return</emphasis>
@@ -933,10 +943,11 @@ XkbGetIndicatorMap</emphasis>.
</para>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
Status <emphasis>
XkbGetIndicatorMap</emphasis>
@@ -949,21 +960,21 @@ dpy</emphasis>
)
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
Display * <emphasis>
dpy</emphasis>
; /* connection to the X server */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned int <emphasis>
which</emphasis>
; /* mask of indicators for which maps should be returned */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbDescPtr <emphasis>
desc</emphasis>
@@ -1042,10 +1053,11 @@ XkbGetNamedIndicator</emphasis>
</para>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
Bool <emphasis>
XkbGetNamedIndicator</emphasis>
@@ -1066,14 +1078,14 @@ real_rtrn</emphasis>
)
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
Display * <emphasis>
dpy</emphasis>
; /* connection to the X server */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned int <emphasis>
device_spec</emphasis>
@@ -1082,35 +1094,35 @@ XkbUseCoreKbd</emphasis>
*/
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
Atom <emphasis>
name</emphasis>
; /* name of the indicator to be retrieved */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
int * <emphasis>
ndx_rtrn</emphasis>
; /* backfilled with the index of the retrieved indicator */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
Bool * <emphasis>
state_rtrn</emphasis>
; /* backfilled with the current state of the retrieved indicator */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbIndicatorMapPtr <emphasis>
map_rtrn</emphasis>
; /* backfilled with the mapping for the retrieved indicator */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
Bool * <emphasis>
real_rtrn</emphasis>
@@ -1325,10 +1337,11 @@ XkbSetIndicatorMap</emphasis>
</para>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
Bool<emphasis>
XkbSetIndicatorMap</emphasis>
@@ -1341,21 +1354,21 @@ dpy</emphasis>
)
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
Display * <emphasis>
dpy</emphasis>
; /* connection to the X server */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned int <emphasis>
which</emphasis>
; /* mask of indicators to change */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbDescPtr <emphasis>
desc</emphasis>
@@ -1413,10 +1426,11 @@ Set the indicator map for the indicator
</itemizedlist>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
Bool<emphasis>
XkbSetNamedIndicator</emphasis>
@@ -1435,14 +1449,14 @@ dpy</emphasis>
)
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
Display * <emphasis>
dpy</emphasis>
; /* connection to the X server */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned int <emphasis>
device_spec</emphasis>
@@ -1451,28 +1465,28 @@ XkbUseCoreKbd</emphasis>
*/
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
Atom <emphasis>
name</emphasis>
; /* name of the indicator to change */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
Bool <emphasis>
change_state</emphasis>
; /* whether to change the indicator state or not */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
Bool <emphasis>
state</emphasis>
; /* desired new state for the indicator */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
Bool <emphasis>
create_new</emphasis>
@@ -1480,7 +1494,7 @@ create_new</emphasis>
created when necessary */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbIndicatorMapPtr <emphasis>
map</emphasis>
@@ -1605,10 +1619,11 @@ XkbChangeIndicators</emphasis>
</para>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
Bool <emphasis>
XkbChangeIndicators</emphasis>
@@ -1617,40 +1632,40 @@ dpy, xkb, changes, state</emphasis>
)
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
Display * <emphasis>
dpy</emphasis>
; /* connection to the X server */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbDescPtr <emphasis>
xkb</emphasis>
; /* keyboard description from which names are to be
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
taken. */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbIndicatorChangesPtr <emphasis>
changes</emphasis>
; /* indicators to be updated on the server */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned int <emphasis>
state</emphasis>
; /* new state of indicators listed in
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
<emphasis>
changes</emphasis>
@@ -1818,10 +1833,11 @@ XkbNoteIndicatorChanges</emphasis>.
</para>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
void <emphasis>
XkbNoteIndicatorChanges</emphasis>
@@ -1834,21 +1850,21 @@ old</emphasis>
)
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbIndicatorChangesPtr <emphasis>
old</emphasis>
; /* XkbIndicatorChanges structure to be updated */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbIndicatorNotifyEvent * <emphasis>
new</emphasis>
; /* event from which changes are to be copied */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned int <emphasis>
wanted</emphasis>
@@ -1887,10 +1903,11 @@ XkbGetIndicatorChanges</emphasis>:
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
Status <emphasis>
XkbGetIndicatorChanges</emphasis>
@@ -1905,28 +1922,28 @@ dpy</emphasis>
)
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
Display * <emphasis>
dpy</emphasis>
; /* connection to the X server */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbDescPtr <emphasis>
xkb</emphasis>
; /* keyboard description to hold the new values */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbIndicatorChangesPtr <emphasis>
changes</emphasis>
; /* indicator maps/state to be obtained from the server */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned int * <emphasis>
state</emphasis>
@@ -1995,10 +2012,11 @@ XkbAllocIndicatorMaps.</emphasis>
</para>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
Status <emphasis>
XkbAllocIndicatorMaps</emphasis>
@@ -2007,7 +2025,7 @@ xkb</emphasis>
)
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbDescPtr <emphasis>
xkb</emphasis>
@@ -2049,10 +2067,11 @@ XkbFreeIndicatorMaps.</emphasis>
</para>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
void <emphasis>
XkbFreeIndicatorMaps</emphasis>
@@ -2061,7 +2080,7 @@ xkb</emphasis>
)
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbDescPtr <emphasis>
xkb</emphasis>
diff --git a/libX11/specs/XKB/ch09.xml b/libX11/specs/XKB/ch09.xml
index 9a6bc9b73..3f14eed68 100644
--- a/libX11/specs/XKB/ch09.xml
+++ b/libX11/specs/XKB/ch09.xml
@@ -115,75 +115,76 @@ XkbBellNotify</emphasis>
events.
</para>
-<table frame='none'>
+<table frame='topbot'>
<title>Predefined Bells</title>
-<tgroup cols='2'>
-<colspec colsep='0'/>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='2' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
+<colspec colname='c2' colwidth='1.0*'/>
<thead>
-<row rowsep='0'>
+<row rowsep='1'>
<entry>Action</entry>
<entry>Named Bell</entry>
</row>
</thead>
<tbody>
-<row rowsep='0'>
+<row>
<entry>Indicator turned on</entry>
<entry>AX_IndicatorOn</entry>
</row>
-<row rowsep='0'>
+<row>
<entry>Indicator turned off</entry>
<entry>AX_IndicatorOff</entry>
</row>
-<row rowsep='0'>
+<row>
<entry>More than one indicator changed state</entry>
<entry>AX_IndicatorChange</entry>
</row>
-<row rowsep='0'>
+<row>
<entry>Control turned on</entry>
<entry>AX_FeatureOn</entry>
</row>
-<row rowsep='0'>
+<row>
<entry>Control turned off</entry>
<entry>AX_FeatureOff</entry>
</row>
-<row rowsep='0'>
+<row>
<entry>More than one control changed state</entry>
<entry>AX_FeatureChange</entry>
</row>
-<row rowsep='0'>
+<row>
<entry>SlowKeys and BounceKeys about to be turned on or off</entry>
<entry>AX_SlowKeysWarning</entry>
</row>
-<row rowsep='0'>
+<row>
<entry>SlowKeys key pressed</entry>
<entry>AX_SlowKeyPress</entry>
</row>
-<row rowsep='0'>
+<row>
<entry>SlowKeys key accepted</entry>
<entry>AX_SlowKeyAccept</entry>
</row>
-<row rowsep='0'>
+<row>
<entry>SlowKeys key rejected</entry>
<entry>AX_SlowKeyReject</entry>
</row>
-<row rowsep='0'>
+<row>
<entry>Accepted SlowKeys key released</entry>
<entry>AX_SlowKeyRelease</entry>
</row>
-<row rowsep='0'>
+<row>
<entry>BounceKeys key rejected</entry>
<entry>AX_BounceKeyReject</entry>
</row>
-<row rowsep='0'>
+<row>
<entry>StickyKeys key latched</entry>
<entry>AX_StickyLatch</entry>
</row>
-<row rowsep='0'>
+<row>
<entry>StickyKeys key locked</entry>
<entry>AX_StickyLock</entry>
</row>
-<row rowsep='0'>
+<row>
<entry>StickyKeys key unlocked</entry>
<entry>AX_StickyUnlock</entry>
</row>
@@ -266,15 +267,16 @@ XkbBellNotifyEvent</emphasis>
to be generated when a bell function is called.
</para>
-<table frame='none'>
+<table frame='topbot'>
<title>Bell Sounding and Bell Event Generating</title>
-<tgroup cols='4'>
-<colspec colsep='0'/>
-<colspec colsep='0'/>
-<colspec colsep='0'/>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='4' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
+<colspec colname='c2' colwidth='1.0*'/>
+<colspec colname='c3' colwidth='1.0*'/>
+<colspec colname='c4' colwidth='1.0*'/>
<thead>
- <row rowsep='0'>
+ <row rowsep='1'>
<entry>Function called</entry>
<entry>AudibleBell</entry>
<entry>Server sounds a bell</entry>
@@ -282,49 +284,49 @@ XkbBellNotifyEvent</emphasis>
</row>
</thead>
<tbody>
-<row rowsep='0'>
+<row>
<entry>XkbDeviceBell</entry>
<entry>On</entry>
<entry>Yes</entry>
<entry>Yes</entry>
</row>
-<row rowsep='0'>
+<row>
<entry>XkbDeviceBell</entry>
<entry>Off</entry>
<entry>No</entry>
<entry>Yes</entry>
</row>
-<row rowsep='0'>
+<row>
<entry>XkbBell</entry>
<entry>On</entry>
<entry>Yes</entry>
<entry>Yes</entry>
</row>
-<row rowsep='0'>
+<row>
<entry>XkbBell</entry>
<entry>Off</entry>
<entry>No</entry>
<entry>Yes</entry>
</row>
-<row rowsep='0'>
+<row>
<entry>XkbDeviceBellEvent</entry>
<entry>On or Off</entry>
<entry>No</entry>
<entry>Yes</entry>
</row>
-<row rowsep='0'>
+<row>
<entry>XkbBellEvent</entry>
<entry>On or Off</entry>
<entry>No</entry>
<entry>Yes</entry>
</row>
-<row rowsep='0'>
+<row>
<entry>XkbDeviceForceBell</entry>
<entry>On or Off</entry>
<entry>Yes</entry>
<entry>No</entry>
</row>
-<row rowsep='0'>
+<row>
<entry>XkbForceBell</entry>
<entry>On or Off</entry>
<entry>Yes</entry>
@@ -344,10 +346,11 @@ XkbDeviceBell.</emphasis>
</para>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
Bool <emphasis>
XkbDeviceBell</emphasis>
@@ -356,21 +359,21 @@ display, window, device_id, bell_class, bell_id, percent, name</emphasis>
)
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
Display *<emphasis>
display</emphasis>
; /* connection to the X server */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
Window<emphasis>
window</emphasis>
; /* window for which the bell is generated, or None */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned int <emphasis>
device_spec</emphasis>
@@ -379,28 +382,28 @@ XkbUseCoreKbd</emphasis>
*/
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned int <emphasis>
bell_class</emphasis>
; /* X input extension bell class of the bell to be rung */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned int <emphasis>
bell_id</emphasis>
; /* X input extension bell ID of the bell to be rung */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
int <emphasis>
percent</emphasis>
; /* bell volume, from -100 to 100 inclusive */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
Atom <emphasis>
name</emphasis>
@@ -469,10 +472,11 @@ XkbBell.</emphasis>
</para>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
Bool <emphasis>
XkbBell</emphasis>
@@ -481,28 +485,28 @@ display, window, percent, name</emphasis>
)
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
Display * <emphasis>
display</emphasis>
; /* connection to the X server */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
Window<emphasis>
window</emphasis>
; /* event window, or None*/
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
int<emphasis>
percent</emphasis>
; /* relative volume, which can range from -100 to 100 inclusive */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
Atom<emphasis>
name</emphasis>
@@ -589,10 +593,11 @@ XkbDeviceBellEvent.</emphasis>
</para>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
Bool <emphasis>
XkbDeviceBellEvent</emphasis>
@@ -601,21 +606,21 @@ display, window, device_spec, bell_class, bell_id, percent, name</emphasis>
)
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
Display * <emphasis>
display</emphasis>
; /* connection to the X server */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
Window <emphasis>
window</emphasis>
; /* event window, or None*/
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned int <emphasis>
device_spec</emphasis>
@@ -624,28 +629,28 @@ XkbUseCoreKbd</emphasis>
*/
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned int <emphasis>
bell_class;</emphasis>
/* input extension bell class for the event */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned int <emphasis>
bell_id</emphasis>
; /* input extension bell ID for the event */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
int <emphasis>
percent</emphasis>
; /* volume for the bell, which can range from -100 to 100 inclusive */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
Atom <emphasis>
name</emphasis>
@@ -697,10 +702,11 @@ XkbBellEvent.</emphasis>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
Bool <emphasis>
XkbBellEvent</emphasis>
@@ -709,28 +715,28 @@ display, window, percent, name</emphasis>
)
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
Display * <emphasis>
display</emphasis>
; /* connection to the X server */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
Window <emphasis>
window</emphasis>
; /* the event window, or None */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
int <emphasis>
percent</emphasis>
; /* relative volume, which can range from -100 to 100 inclusive */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
Atom <emphasis>
name</emphasis>
@@ -796,10 +802,11 @@ audible bells, use <emphasis>XkbForceDeviceBell</emphasis>.
</para>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
Bool <emphasis>
XkbForceDeviceBell</emphasis>
@@ -808,21 +815,21 @@ display, window, device_spec, bell_class, bell_id, percent</emphasis>
)
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
Display * <emphasis>
display</emphasis>
; /* connection to the X server */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
Window <emphasis>
window</emphasis>
; /* event window, or None */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned int <emphasis>
device_spec</emphasis>
@@ -831,21 +838,21 @@ XkbUseCoreKbd</emphasis>
*/
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned int <emphasis>
bell_class</emphasis>
; /* input extension class of the bell to be rung */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned int <emphasis>
bell_id</emphasis>
; /* input extension ID of the bell to be rung */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
int <emphasis>
percent</emphasis>
@@ -893,10 +900,11 @@ XkbForceBell</emphasis>.
</para>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
Bool <emphasis>
XkbForceBell</emphasis>
@@ -904,14 +912,14 @@ XkbForceBell</emphasis>
display, percent)</emphasis>
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
Display * <emphasis>
display</emphasis>
; /* connection to the X server */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
int <emphasis>
percent</emphasis>
diff --git a/libX11/specs/XKB/ch10.xml b/libX11/specs/XKB/ch10.xml
index 97ce484e1..b7f306938 100644
--- a/libX11/specs/XKB/ch10.xml
+++ b/libX11/specs/XKB/ch10.xml
@@ -56,131 +56,132 @@ XkbControlsRec</emphasis>
The Xkb controls are grouped as shown in Table 10.1. <!-- xref -->
</para>
-<table frame='none'>
+<table frame='topbot'>
<title>Xkb Keyboard Controls</title>
-<tgroup cols='3'>
-<colspec colsep='0'/>
-<colspec colsep='0'/>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='3' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.5*'/>
+<colspec colname='c2' colwidth='1.5*'/>
+<colspec colname='c3' colwidth='1.0*'/>
<thead>
-<row rowsep='0'>
+<row rowsep='1'>
<entry>Type of Control</entry>
<entry>Control Name</entry>
<entry>Boolean Control?</entry>
</row>
</thead>
<tbody>
- <row rowsep='0'>
+ <row>
<entry>Controls for enabling and disabling other controls</entry>
<entry>EnabledControls</entry>
<entry>No</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry></entry>
<entry>AutoReset</entry>
<entry>No</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>Control for bell behavior</entry>
<entry>AudibleBell</entry>
<entry>Boolean</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>Controls for repeat key behavior</entry>
<entry>PerKeyRepeat</entry>
<entry>No</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry></entry>
<entry>RepeatKeys</entry>
<entry>Boolean</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry></entry>
<entry>DetectableAutorepeat</entry>
<entry>Boolean</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>Controls for keyboard overlays</entry>
<entry>Overlay1</entry>
<entry>Boolean</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry></entry>
<entry>Overlay2</entry>
<entry>Boolean</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>Controls for using the mouse from the keyboard</entry>
<entry>MouseKeys</entry>
<entry>Boolean</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry></entry>
<entry>MouseKeysAccel</entry>
<entry>Boolean</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>Controls for better keyboard access by </entry>
<entry>AccessXFeedback</entry>
<entry>Boolean</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>physically impaired persons</entry>
<entry>AccessXKeys</entry>
<entry>Boolean</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry></entry>
<entry>AccessXTimeout</entry>
<entry>Boolean</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry></entry>
<entry>BounceKeys</entry>
<entry>Boolean</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry></entry>
<entry>SlowKeys</entry>
<entry>Boolean</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry></entry>
<entry>StickyKeys</entry>
<entry>Boolean</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>Controls for general keyboard mapping</entry>
<entry>GroupsWrap</entry>
<entry>No</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry></entry>
<entry>IgnoreGroupLock</entry>
<entry>Boolean</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry></entry>
<entry>IgnoreLockMods</entry>
<entry>No</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry></entry>
<entry>InternalMods</entry>
<entry>No</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>Miscellaneous per-client controls</entry>
<entry>GrabsUseXKBState</entry>
<entry>Boolean</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry></entry>
<entry>LookupStateWhenGrabbed</entry>
<entry>Boolean</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry></entry>
<entry>SendEventUsesXKBState</entry>
<entry>Boolean</entry>
@@ -237,10 +238,11 @@ EnabledControls</emphasis>
</para>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
Bool <emphasis>
XkbChangeEnabledControls</emphasis>
@@ -255,28 +257,28 @@ mask</emphasis>
)
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
Display *<emphasis>
dpy</emphasis>
; /* connection to X server */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned int <emphasis>
device_spec</emphasis>
; /* keyboard device to modify */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned int <emphasis>
mask</emphasis>
; /* 1 bit -&gt; controls to enable / disable */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned int <emphasis>
values</emphasis>
@@ -378,10 +380,11 @@ XkbGetAutoResetControls</emphasis>
</para>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
Bool <emphasis>
XkbGetAutoResetControls</emphasis>
@@ -394,14 +397,14 @@ auto_values</emphasis>
)
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
Display * <emphasis>
dpy</emphasis>
; /* connection to X server */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned int * <emphasis>
auto_ctrls</emphasis>
@@ -410,7 +413,7 @@ auto_values</emphasis>
are relevant */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned int * <emphasis>
auto_values</emphasis>
@@ -447,10 +450,11 @@ XkbSetAutoResetControls.</emphasis>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
Bool <emphasis>
XkbSetAutoResetControls</emphasis>
@@ -465,28 +469,28 @@ auto_values</emphasis>
)
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
Display * <emphasis>
dpy</emphasis>
; /* connection to X server */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned int <emphasis>
changes</emphasis>
; /* controls for which to change auto-reset values */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned int * <emphasis>
auto_ctrls</emphasis>
; /* controls from changes that should auto reset */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned int * <emphasis>
auto_values</emphasis>
@@ -710,10 +714,11 @@ XkbGetAutoRepeatRate</emphasis>
</para>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
Bool <emphasis>
XkbGetAutoRepeatRate</emphasis>
@@ -722,14 +727,14 @@ display, device_spec, timeout_rtrn, interval_rtrn</emphasis>
)
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
Display *<emphasis>
display</emphasis>
; /* connection to X server */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned int <emphasis>
device_spec</emphasis>
@@ -738,14 +743,14 @@ XkbUseCoreKbd</emphasis>
*/
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned int <emphasis>
* timeout_rtrn</emphasis>
; /* backfilled with initial repeat delay, ms */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned int <emphasis>
* interval_rtrn</emphasis>
@@ -785,10 +790,11 @@ XkbSetAutoRepeatRate</emphasis>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
Bool <emphasis>
XkbSetAutoRepeatRate</emphasis>
@@ -797,14 +803,14 @@ display, device_spec, timeout, interval</emphasis>
)
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
Display *<emphasis>
display</emphasis>
; /* connection to X server */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned int <emphasis>
device_spec</emphasis>
@@ -813,14 +819,14 @@ XkbUseCoreKbd</emphasis>
*/
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned int<emphasis>
timeout</emphasis>
; /* initial delay, ms */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned int <emphasis>
interval</emphasis>
@@ -947,10 +953,11 @@ XkbGetDetectableAutorepeat</emphasis>
</para>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
Bool <emphasis>
XkbGetDetectableAutorepeat</emphasis>
@@ -959,14 +966,14 @@ display, supported_rtrn</emphasis>
)
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
Display *<emphasis>
display</emphasis>
; /* connection to X server */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
Bool *<emphasis>
supported_rtrn</emphasis>
@@ -1022,10 +1029,11 @@ they have requested otherwise.
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
Bool <emphasis>
XkbSetDetectableAutorepeat</emphasis>
@@ -1034,14 +1042,14 @@ display, detectable, supported_rtrn</emphasis>
)
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
Display *<emphasis>
display</emphasis>
; /* connection to X server */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
Bool<emphasis>
detectable</emphasis>
@@ -1052,7 +1060,7 @@ DetectableAutorepeat</emphasis>
*/
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
Bool *<emphasis>
supported_rtrn</emphasis>
@@ -1244,37 +1252,38 @@ XkbControlsRec</emphasis>
structure (see section 10.8). <!-- xref -->
</para>
-<table frame='none'>
+<table frame='topbot'>
<title>MouseKeysAccel Fields</title>
-<tgroup cols='2'>
-<colspec colsep='0'/>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='2' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
+<colspec colname='c2' colwidth='2.0*'/>
<thead>
-<row rowsep='0'>
+<row rowsep='1'>
<entry>Field</entry>
<entry>Function</entry>
</row>
</thead>
<tbody>
-<row rowsep='0'>
+<row>
<entry>mk_delay</entry>
<entry>Time (ms) between the initial key press and the first repeated
motion event</entry>
</row>
-<row rowsep='0'>
+<row>
<entry>mk_interval</entry>
<entry>Time (ms) between repeated motion events</entry>
</row>
-<row rowsep='0'>
+<row>
<entry>mk_time_to_max</entry>
<entry>Number of events (count) before the pointer reaches maximum
speed</entry>
</row>
-<row rowsep='0'>
+<row>
<entry>mk_max_speed</entry>
<entry>The maximum speed (in pixels per event) the pointer reaches</entry>
</row>
-<row rowsep='0'>
+<row>
<entry>mk_curve</entry>
<entry>The ramp used to reach maximum pointer speed</entry>
</row>
@@ -1602,10 +1611,11 @@ AccessXTimeout</emphasis>
</para>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
Bool <emphasis>
XkbGetAccessXTimeout</emphasis>
@@ -1624,14 +1634,14 @@ display</emphasis>
)
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
Display *<emphasis>
display</emphasis>
; /* connection to X server */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned int <emphasis>
device_spec</emphasis>
@@ -1640,28 +1650,28 @@ XkbUseCoreKbd</emphasis>
*/
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned short * <emphasis>
timeout_rtrn</emphasis>
; /* delay until AccessXTimeout, seconds */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned int *<emphasis>
ctrls_mask_rtrn</emphasis>
; /* backfilled with controls to modify */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned int * <emphasis>
ctrls_values_rtrn</emphasis>
; /* backfilled with on/off status for controls */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned short * <emphasis>
opts_mask_rtrn</emphasis>
@@ -1670,7 +1680,7 @@ ax_options</emphasis>
to modify */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned short * <emphasis>
opts_values_rtrn</emphasis>
@@ -1725,10 +1735,11 @@ XkbSetAccessXTimeout</emphasis>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
Bool <emphasis>
XkbSetAccessXTimeout</emphasis>
@@ -1740,14 +1751,14 @@ opts_values</emphasis>
)
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
Display *<emphasis>
display</emphasis>
; /* connection to X server */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned int<emphasis>
device_spec</emphasis>
@@ -1756,21 +1767,21 @@ XkbUseCoreKbd</emphasis>
*/
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned short <emphasis>
timeout</emphasis>
; /* seconds idle until AccessXTimeout occurs */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned int<emphasis>
ctrls_mask</emphasis>
; /* boolean controls to modify */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned int<emphasis>
ctrls_values</emphasis>
@@ -1779,7 +1790,7 @@ ctrls_mask</emphasis>
*/
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned short <emphasis>
opts_mask</emphasis>
@@ -1788,7 +1799,7 @@ ax_options</emphasis>
to change */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned short <emphasis>
opts_values</emphasis>
@@ -1875,91 +1886,92 @@ XkbSetControls</emphasis>
(see section 10.10): <!-- xref -->
</para>
-<table frame='none'>
+<table frame='topbot'>
<title>AccessXFeedback Masks</title>
-<tgroup cols='3'>
-<colspec colsep='0'/>
-<colspec colsep='0'/>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='3' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
+<colspec colname='c2' colwidth='1.0*'/>
+<colspec colname='c3' colwidth='1.0*'/>
<thead>
-<row rowsep='0'>
+<row rowsep='1'>
<entry>Action</entry>
<entry>Beep Code</entry>
<entry>ax_options bit</entry>
</row>
</thead>
<tbody>
-<row rowsep='0'>
+<row>
<entry>LED turned on</entry>
<entry>High-pitched beep</entry>
<entry>XkbAX_IndicatorFBMask</entry>
</row>
-<row rowsep='0'>
+<row>
<entry>LED turned off</entry>
<entry>Low-pitched beep</entry>
<entry>XkbAX_IndicatorFBMask</entry>
</row>
-<row rowsep='0'>
+<row>
<entry>More than one LED changed state</entry>
<entry>Two high-pitched beeps</entry>
<entry>XkbAX_IndicatorFBMask</entry>
</row>
-<row rowsep='0'>
+<row>
<entry>Control turned on</entry>
<entry>Rising tone</entry>
<entry>XkbAX_FeatureFBMask</entry>
</row>
-<row rowsep='0'>
+<row>
<entry>Control turned off</entry>
<entry>Falling tone</entry>
<entry>XkbAX_FeatureFBMask</entry>
</row>
-<row rowsep='0'>
+<row>
<entry>More than one control changed state</entry>
<entry>Two high-pitched beeps</entry>
<entry>XkbAX_FeatureFBMask</entry>
</row>
-<row rowsep='0'>
+<row>
<entry>SlowKeys and BounceKeys about to be turned on or off</entry>
<entry>Three high-pitched beeps</entry>
<entry>XkbAX_SlowWarnFBMask</entry>
</row>
-<row rowsep='0'>
+<row>
<entry>SlowKeys key pressed</entry>
<entry>Medium-pitched beep</entry>
<entry>XkbAX_SKPressFBMask</entry>
</row>
-<row rowsep='0'>
+<row>
<entry>SlowKeys key accepted</entry>
<entry>Medium-pitched beep</entry>
<entry>XkbAX_SKAcceptFBMask</entry>
</row>
-<row rowsep='0'>
+<row>
<entry>SlowKeys key rejected</entry>
<entry>Low-pitched beep</entry>
<entry>XkbAX_SKRejectFBMask</entry>
</row>
-<row rowsep='0'>
+<row>
<entry>Accepted SlowKeys key released</entry>
<entry>Medium-pitched beep</entry>
<entry>XkbAX_SKReleaseFBMask</entry>
</row>
-<row rowsep='0'>
+<row>
<entry>BounceKeys key rejected</entry>
<entry>Low-pitched beep</entry>
<entry>XkbAX_BKRejectFBMask</entry>
</row>
-<row rowsep='0'>
+<row>
<entry>StickyKeys key latched</entry>
<entry>Low-pitched beep followed by high-pitched beep</entry>
<entry>XkbAX_StickyKeysFBMask</entry>
</row>
-<row rowsep='0'>
+<row>
<entry>StickyKeys key locked</entry>
<entry>High-pitched beep</entry>
<entry>XkbAX_StickyKeysFBMask</entry>
</row>
-<row rowsep='0'>
+<row>
<entry>StickyKeys key unlocked</entry>
<entry>Low-pitched beep</entry>
<entry>XkbAX_StickyKeysFBMask</entry>
@@ -2024,45 +2036,46 @@ detail</emphasis>
in Table 10.4. <!-- xref -->
</para>
-<table frame='none'>
+<table frame='topbot'>
<title>AccessXNotify Events</title>
-<tgroup cols='2'>
-<colspec colsep='0'/>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='2' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
+<colspec colname='c2' colwidth='2.0*'/>
<thead>
-<row rowsep='0'>
+<row rowsep='1'>
<entry>detail</entry>
<entry>Reason</entry>
</row>
</thead>
<tbody>
-<row rowsep='0'>
+<row>
<entry>XkbAXN_SKPress</entry>
<entry>A key was pressed when SlowKeys was enabled.</entry>
</row>
-<row rowsep='0'>
+<row>
<entry>XkbAXN_SKAccept</entry>
<entry>A key was accepted (held longer than the SlowKeys delay).</entry>
</row>
-<row rowsep='0'>
+<row>
<entry>XkbAXN_SKRelease</entry>
<entry>An accepted SlowKeys key was released.</entry>
</row>
-<row rowsep='0'>
+<row>
<entry>XkbAXN_SKReject</entry>
<entry>A key was rejected (released before the SlowKeys delay
expired).</entry>
</row>
-<row rowsep='0'>
+<row>
<entry>XkbAXN_BKAccept</entry>
<entry>A key was accepted by BounceKeys.</entry>
</row>
-<row rowsep='0'>
+<row>
<entry>XkbAXN_BKReject</entry>
<entry>A key was rejected (pressed before the BounceKeys delay
expired).</entry>
</row>
-<row rowsep='0'>
+<row>
<entry>XkbAXN_AXKWarning</entry>
<entry>AccessXKeys is about to turn on/off StickyKeys or BounceKeys.</entry>
</row>
@@ -2123,56 +2136,57 @@ values_for_bits</emphasis>
using mask bits from Table 10.5. <!-- xref -->
</para>
-<table frame='none'>
+<table frame='topbot'>
<title>AccessXNotify Event Details</title>
-<tgroup cols='3'>
-<colspec colsep='0'/>
-<colspec colsep='0'/>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='3' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.5*'/>
+<colspec colname='c2' colwidth='1.0*'/>
+<colspec colname='c3' colwidth='2.0*'/>
<thead>
-<row rowsep='0'>
+<row rowsep='1'>
<entry>XkbAccessXNotify Event Details</entry>
<entry>Value</entry>
<entry>Circumstances</entry>
</row>
</thead>
<tbody>
- <row rowsep='0'>
+ <row>
<entry>XkbAXN_SKPressMask</entry>
<entry>(1&lt;&lt;0)</entry>
<entry>Slow key press notification wanted</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>XkbAXN_SKAcceptMask</entry>
<entry>(1&lt;&lt;1)</entry>
<entry>Slow key accept notification wanted</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>XkbAXN_SKRejectMask</entry>
<entry>(1&lt;&lt;2)</entry>
<entry>Slow key reject notification wanted</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>XkbAXN_SKReleaseMask</entry>
<entry>(1&lt;&lt;3)</entry>
<entry>Slow key release notification wanted</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>XkbAXN_BKAcceptMask</entry>
<entry>(1&lt;&lt;4)</entry>
<entry>Bounce key accept notification wanted</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>XkbAXN_BKRejectMask</entry>
<entry>(1&lt;&lt;5)</entry>
<entry>Bounce key reject notification wanted</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>XkbAXN_AXKWarningMask</entry>
<entry>(1&lt;&lt;6)</entry>
<entry>AccessX warning notification wanted</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>XkbAXN_AllEventsMask</entry>
<entry>(0x7f)</entry>
<entry>All AccessX features notifications wanted</entry>
@@ -2250,10 +2264,11 @@ XkbGetSlowKeysDelay</emphasis>
</para>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
Bool <emphasis>
XkbGetSlowKeysDelay</emphasis>
@@ -2266,14 +2281,14 @@ display</emphasis>
)
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
Display *<emphasis>
display</emphasis>
; /* connection to X server */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned int <emphasis>
device_spec</emphasis>
@@ -2282,7 +2297,7 @@ XkbUseCoreKbd</emphasis>
*/
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned int * <emphasis>
delay_rtrn</emphasis>
@@ -2327,10 +2342,11 @@ XkbSetSlowKeysDelay</emphasis>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
Bool <emphasis>
XkbSetSlowKeysDelay</emphasis>
@@ -2343,14 +2359,14 @@ display</emphasis>
)
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
Display *<emphasis>
display</emphasis>
; /* connection to X server */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned int <emphasis>
device_spec</emphasis>
@@ -2359,7 +2375,7 @@ XkbUseCoreKbd</emphasis>
*/
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned int <emphasis>
delay</emphasis>
@@ -2435,10 +2451,11 @@ BounceKeys</emphasis>
</para>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
Bool <emphasis>
XkbGetBounceKeysDelay</emphasis>
@@ -2451,14 +2468,14 @@ display</emphasis>
)
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
Display *<emphasis>
display</emphasis>
; /* connection to X server */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned int <emphasis>
device_spec</emphasis>
@@ -2467,7 +2484,7 @@ XkbUseCoreKbd</emphasis>
*/
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned int * <emphasis>
delay_rtrn</emphasis>
@@ -2512,10 +2529,11 @@ XkbSetBounceKeysDelay</emphasis>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
Bool <emphasis>
XkbSetBounceKeysDelay</emphasis>
@@ -2528,14 +2546,14 @@ display</emphasis>
)
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
Display *<emphasis>
display</emphasis>
; /* connection to X server */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned int<emphasis>
device_spec</emphasis>
@@ -2544,7 +2562,7 @@ XkbUseCoreKbd</emphasis>
*/
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned int <emphasis>
delay</emphasis>
@@ -2735,10 +2753,11 @@ StickyKeys</emphasis>
</para>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
Bool <emphasis>
XkbGetStickyKeysOptions</emphasis>
@@ -2751,14 +2770,14 @@ display</emphasis>
)
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
Display *<emphasis>
display</emphasis>
; /* connection to X server */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned int <emphasis>
device_spec</emphasis>
@@ -2767,7 +2786,7 @@ XkbUseCoreKbd</emphasis>
*/
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned int * <emphasis>
options_rtrn</emphasis>
@@ -2823,10 +2842,11 @@ XkbSetStickyKeysOptions</emphasis>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
Bool <emphasis>
XkbSetStickyKeysOptions</emphasis>
@@ -2837,28 +2857,28 @@ display</emphasis>
)
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
Display *<emphasis>
display</emphasis>
; /* connection to X server */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned int <emphasis>
device_spec</emphasis>
; /* device to configure, or XkbUseCoreKbd */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned int <emphasis>
mask</emphasis>
; /* selects StickyKeys attributes to modify */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned int <emphasis>
values;</emphasis>
@@ -3067,10 +3087,11 @@ XkbSetIgnoreLockMods.</emphasis>
</para>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
Bool <emphasis>
XkbSetIgnoreLockMods</emphasis>
@@ -3080,14 +3101,14 @@ virtual_values</emphasis>
)
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
Display * <emphasis>
display</emphasis>
; /* connection to the X server */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned int <emphasis>
device_spec</emphasis>
@@ -3096,28 +3117,28 @@ XkbUseCoreKbd</emphasis>
*/
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned int<emphasis>
affect_real</emphasis>
; /* mask of real modifiers affected by this call */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned int<emphasis>
real_values</emphasis>
; /* values for affected real modifiers (1=&gt;set, 0=&gt;unset) */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned int<emphasis>
affect_virtual</emphasis>
; /* mask of virtual modifiers affected by this call */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned int<emphasis>
virtual_values</emphasis>
@@ -3268,10 +3289,11 @@ XkbSetServerInternalMods.</emphasis>
</para>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
Bool <emphasis>
XkbSetServerInternalMods</emphasis>
@@ -3281,14 +3303,14 @@ virtual_values</emphasis>
)
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
Display * <emphasis>
display</emphasis>
; /* connection to the X server */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned int <emphasis>
device_spec</emphasis>
@@ -3297,28 +3319,28 @@ XkbUseCoreKbd</emphasis>
*/
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned int<emphasis>
affect_real</emphasis>
; /* mask of real modifiers affected by this call */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned int<emphasis>
real_values</emphasis>
; /* values for affected real modifiers (1=&gt;set, 0=&gt;unset) */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned int<emphasis>
affect_virtual</emphasis>
; /* mask of virtual modifiers affected by this call */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned int<emphasis>
virtual_values</emphasis>
@@ -3470,12 +3492,17 @@ bit used to turn boolean controls on and off and the section where each control
is described in more detail.
</para>
-<table frame='none'>
+<table frame='topbot'>
<title>Xkb Controls</title>
-<tgroup cols='5'>
-<colspec colsep='0'/>
+<?dbfo keep-together="auto" ?>
+<tgroup cols='5' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='2.0*'/>
+<colspec colname='c2' colwidth='3.1*'/>
+<colspec colname='c3' colwidth='2.2*'/>
+<colspec colname='c4' colwidth='2.6*'/>
+<colspec colname='c5' colwidth='1.0*'/>
<thead>
-<row rowsep='0'>
+<row rowsep='1'>
<entry>Control</entry>
<entry>Control Selection Mask (which parameter)</entry>
<entry>Relevant XkbControlsRec Data Fields</entry>
@@ -3484,21 +3511,21 @@ is described in more detail.
</row>
</thead>
<tbody>
- <row rowsep='0'>
+ <row>
<entry>AccessXFeedback</entry>
<entry>XkbAccessXFeedbackMask</entry>
<entry>ax_options: XkbAX_*FBMask</entry>
- <entry>XkbAccessXFeedbackMask</entry>
+ <entry>XkbAccessXFeedback&#xAD;Mask</entry>
<entry>10.6.3</entry> <!-- xref -->
</row>
- <row rowsep='0'>
+ <row>
<entry>AccessXKeys</entry>
<entry></entry>
<entry></entry>
- <entry>XkbAccessXKeysMask</entry>
+ <entry>XkbAccessXKeys&#xAD;Mask</entry>
<entry>10.6.1</entry> <!-- xref -->
</row>
- <row rowsep='0'>
+ <row>
<entry>AccessXTimeout</entry>
<entry>XkbAccessXTimeoutMask</entry>
<entry>
@@ -3508,80 +3535,80 @@ is described in more detail.
<para>axt_ctrls_mask</para>
<para>axt_ctrls_values</para>
</entry>
- <entry>XkbAccessXTimeoutMask</entry>
+ <entry>XkbAccessXTimeout&#xAD;Mask</entry>
<entry>10.6.2</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>AudibleBell</entry>
<entry></entry>
<entry></entry>
<entry>XkbAudibleBellMask</entry>
<entry>9.2</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>AutoReset</entry>
<entry></entry>
<entry></entry>
<entry></entry>
<entry>10.1.2</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>BounceKeys</entry>
<entry>XkbBounceKeysMask</entry>
<entry>debounce_delay</entry>
<entry>XkbBounceKeysMask</entry>
<entry>10.6.7</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>Detectable-Autorepeat</entry>
<entry></entry>
<entry></entry>
<entry></entry>
<entry>10.3.3</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>EnabledControls</entry>
<entry>XkbControlsEnabledMask</entry>
<entry>enabled_ctrls</entry>
<entry><emphasis>Non-Boolean Control</emphasis></entry>
<entry>10.1.1</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>GroupsWrap</entry>
<entry>XkbGroupsWrapMask</entry>
<entry>groups_wrap</entry>
<entry><emphasis>Non-Boolean Control</emphasis></entry>
<entry>10.7.1</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>IgnoreGroupLock</entry>
<entry></entry>
<entry></entry>
- <entry>XkbIgnoreGroupLockMask</entry>
+ <entry>XkbIgnoreGroupLock&#xAD;Mask</entry>
<entry>10.7.3</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>IgnoreLockMods</entry>
<entry>XkbIgnoreLockModsMask</entry>
<entry>ignore_lock</entry>
<entry><emphasis>Non-Boolean Control</emphasis></entry>
<entry>5.1</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>InternalMods</entry>
<entry>XkbInternalModsMask</entry>
<entry>internal</entry>
<entry><emphasis>Non-Boolean Control</emphasis></entry>
<entry>5.1</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>MouseKeys</entry>
<entry>XkbMouseKeysMask</entry>
<entry>mk_dflt_btn</entry>
<entry>XkbMouseKeysMask</entry>
<entry>10.5.1</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>MouseKeysAccel</entry>
<entry>XkbMouseKeysAccelMask</entry>
<entry>
@@ -3591,31 +3618,31 @@ is described in more detail.
<para>mk_max_speed</para>
<para>mk_curve</para>
</entry>
- <entry>XkbMouseKeysAccelMask</entry>
+ <entry>XkbMouseKeysAccel&#xAD;Mask</entry>
<entry>10.5.2</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>Overlay1</entry>
<entry></entry>
<entry></entry>
<entry>XkbOverlay1Mask</entry>
<entry>10.4</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>Overlay2</entry>
<entry></entry>
<entry></entry>
<entry>XkbOverlay2Mask</entry>
<entry>10.4</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>PerKeyRepeat</entry>
<entry>XkbPerKeyRepeatMask</entry>
<entry>per_key_repeat</entry>
<entry><emphasis>Non-Boolean Control</emphasis></entry>
<entry>10.3.1</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>RepeatKeys</entry>
<entry>XkbRepeatKeysMask</entry>
<entry>
@@ -3625,20 +3652,20 @@ is described in more detail.
<entry>XkbRepeatKeysMask</entry>
<entry>10.3</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>SlowKeys</entry>
<entry>XkbSlowKeysMask</entry>
<entry>slow_keys_delay</entry>
<entry>XkbSlowKeysMask</entry>
<entry>10.6.6</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>StickyKeys</entry>
<entry>XkbStickyKeysMask</entry>
<entry>
<para>ax_options:</para>
- <para>XkbAX_TwoKeysMask</para>
- <para>XkbAX_LatchToLockMask</para>
+ <para>XkbAX_Two&#xAD;KeysMask</para>
+ <para>XkbAX_Latch&#xAD;ToLockMask</para>
</entry>
<entry>XkbStickyKeysMask</entry>
<entry>10.6.8</entry>
@@ -3660,15 +3687,16 @@ configurable attributes; and for controls that are not boolean controls and
therefore cannot be enabled or disabled.
</para>
-<table frame='none'>
+<table frame='topbot'>
<title>Controls Mask Bits</title>
-<tgroup cols='4'>
-<colspec colsep='0'/>
-<colspec colsep='0'/>
-<colspec colsep='0'/>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='4' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='2.6*'/>
+<colspec colname='c2' colwidth='2.0*'/>
+<colspec colname='c3' colwidth='1.3*'/>
+<colspec colname='c4' colwidth='2.0*'/>
<thead>
-<row rowsep='0'>
+<row rowsep='1'>
<entry>Mask Bit</entry>
<entry>which or changed_ctrls</entry>
<entry>enabled_ctrls</entry>
@@ -3676,127 +3704,127 @@ therefore cannot be enabled or disabled.
</row>
</thead>
<tbody>
-<row rowsep='0'>
+<row>
<entry>XkbRepeatKeysMask</entry>
<entry>ok</entry>
<entry>ok</entry>
<entry>(1L&lt;&lt;0)</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>XkbSlowKeysMask</entry>
<entry>ok</entry>
<entry>ok</entry>
<entry>(1L&lt;&lt;1)</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>XkbBounceKeysMask</entry>
<entry>ok</entry>
<entry>ok</entry>
<entry>(1L&lt;&lt;2)</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>XkbStickyKeysMask</entry>
<entry>ok</entry>
<entry>ok</entry>
<entry>(1L&lt;&lt;3)</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>XkbMouseKeysMask</entry>
<entry>ok</entry>
<entry>ok</entry>
<entry>(1L&lt;&lt;4)</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>XkbMouseKeysAccelMask</entry>
<entry>ok</entry>
<entry>ok</entry>
<entry>(1L&lt;&lt;5)</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>XkbAccessXKeysMask</entry>
<entry>ok</entry>
<entry>ok</entry>
<entry>(1L&lt;&lt;6)</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>XkbAccessXTimeoutMask</entry>
<entry>ok</entry>
<entry>ok</entry>
<entry>(1L&lt;&lt;7)</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>XkbAccessXFeedbackMask</entry>
<entry>ok</entry>
<entry>ok</entry>
<entry>(1L&lt;&lt;8)</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>XkbAudibleBellMask</entry>
<entry></entry>
<entry>ok</entry>
<entry>(1L&lt;&lt;9)</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>XkbOverlay1Mask</entry>
<entry></entry>
<entry>ok</entry>
<entry>(1L&lt;&lt;10)</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>XkbOverlay2Mask</entry>
<entry></entry>
<entry>ok</entry>
<entry>(1L&lt;&lt;11)</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>XkbIgnoreGroupLockMask</entry>
<entry></entry>
<entry>ok</entry>
<entry>(1L&lt;&lt;12)</entry>
</row>
-<row rowsep='0'>
+<row>
<entry>XkbGroupsWrapMask</entry>
<entry>ok</entry>
<entry></entry>
<entry>(1L&lt;&lt;27)</entry>
</row>
-<row rowsep='0'>
+<row>
<entry>XkbInternalModsMask</entry>
<entry>ok</entry>
<entry></entry>
<entry>(1L&lt;&lt;28)</entry>
</row>
-<row rowsep='0'>
+<row>
<entry>XkbIgnoreLockModsMask</entry>
<entry>ok</entry>
<entry></entry>
<entry>(1L&lt;&lt;29)</entry>
</row>
-<row rowsep='0'>
+<row>
<entry>XkbPerKeyRepeatMask</entry>
<entry>ok</entry>
<entry></entry>
<entry>(1L&lt;&lt;30)</entry>
</row>
-<row rowsep='0'>
+<row>
<entry>XkbControlsEnabledMask</entry>
<entry>ok</entry>
<entry></entry>
<entry>(1L&lt;&lt;31)</entry>
</row>
-<row rowsep='0'>
+<row>
<entry>XkbAccessXOptionsMask</entry>
<entry>ok</entry>
<entry>ok</entry>
<entry>(XkbStickyKeysMask | XkbAccessXFeedbackMask)</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>XkbAllBooleanCtrlsMask</entry>
<entry></entry>
<entry>ok</entry>
<entry>(0x00001FFF) </entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>XkbAllControlsMask</entry>
<entry>ok</entry>
<entry></entry>
@@ -3865,27 +3893,28 @@ groups_wrap</emphasis>
are shown in Table 10.8.
</para>
-<table frame='none'>
+<table frame='topbot'>
<title>GroupsWrap options (groups_wrap field)</title>
-<tgroup cols='2'>
-<colspec colsep='0'/>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='2' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
+<colspec colname='c2' colwidth='1.0*'/>
<thead>
-<row rowsep='0'>
+<row rowsep='1'>
<entry>groups_wrap symbolic name</entry>
<entry>value</entry>
</row>
</thead>
<tbody>
- <row rowsep='0'>
+ <row>
<entry>XkbWrapIntoRange</entry>
<entry>(0x00)</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>XkbClampIntoRange</entry>
<entry>(0x40)</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>XkbRedirectIntoRange</entry>
<entry>(0x80)</entry>
</row>
@@ -4061,81 +4090,82 @@ ax_options</emphasis>
Table 10.9. <!-- xref -->
</para>
-<table frame='none'>
+<table frame='topbot'>
<title>Access X Enable/Disable Bits (ax_options field)</title>
-<tgroup cols='3'>
-<colspec colsep='0'/>
-<colspec colsep='0'/>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='3' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
+<colspec colname='c2' colwidth='1.3*'/>
+<colspec colname='c3' colwidth='0.7*'/>
<thead>
-<row rowsep='0'>
+<row rowsep='1'>
<entry>Access X Control</entry>
<entry>ax_options bit</entry>
<entry>value</entry>
</row>
</thead>
<tbody>
- <row rowsep='0'>
+ <row>
<entry>AccessXFeedback</entry>
<entry>XkbAX_SKPressFBMask</entry>
<entry>(1L&lt;&lt;0)</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry></entry>
<entry>XkbAX_SKAcceptFBMask</entry>
<entry>(1L &lt;&lt; 1)</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry></entry>
<entry>XkbAX_FeatureFBMask</entry>
<entry>(1L &lt;&lt; 2)</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry></entry>
<entry>XkbAX_SlowWarnFBMask</entry>
<entry>(1L &lt;&lt; 3)</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry></entry>
<entry>XkbAX_IndicatorFBMask</entry>
<entry>(1L &lt;&lt; 4)</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry></entry>
<entry>XkbAX_StickyKeysFBMask</entry>
<entry>(1L &lt;&lt; 5)</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry></entry>
<entry>XkbAX_SKReleaseFBMask</entry>
<entry>(1L &lt;&lt; 8)</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry></entry>
<entry>XkbAX_SKRejectFBMask</entry>
<entry>(1L &lt;&lt; 9)</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry></entry>
<entry>XkbAX_BKRejectFBMask</entry>
<entry>(1L &lt;&lt; 10)</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry></entry>
<entry>XkbAX_DumbBellFBMask</entry>
<entry>(1L &lt;&lt; 11)</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>StickyKeys</entry>
<entry>XkbAX_TwoKeysMask</entry>
<entry>(1L &lt;&lt; 6)</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry></entry>
<entry>XkbAX_LatchToLockMask</entry>
<entry>(1L &lt;&lt; 7)</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry></entry>
<entry>XkbAX_AllOptionsMask</entry>
<entry>(0xFFF)</entry>
@@ -4313,10 +4343,11 @@ XkbGetControls</emphasis>
</para>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
Status <emphasis>
XkbGetControls</emphasis>
@@ -4324,21 +4355,21 @@ XkbGetControls</emphasis>
display, which, xkb)</emphasis>
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
Display *<emphasis>
display</emphasis>
; /* connection to X server */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned long<emphasis>
which</emphasis>
; /* mask of controls requested */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbDescPtr<emphasis>
xkb</emphasis>
@@ -4467,10 +4498,11 @@ XkbSetControls</emphasis>
</para>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
Bool <emphasis>
XkbSetControls</emphasis>
@@ -4478,21 +4510,21 @@ XkbSetControls</emphasis>
display, which, xkb)</emphasis>
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
Display *<emphasis>
display</emphasis>
; /* connection to X server */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned long <emphasis>
which </emphasis>
; /* mask of controls to change */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbDescPtr <emphasis>
xkb</emphasis>
@@ -4649,10 +4681,11 @@ match those in the changed keyboard description.
</para>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
Bool <emphasis>
XkbChangeControls</emphasis>
@@ -4661,14 +4694,14 @@ dpy, xkb, changes</emphasis>
)
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
Display * <emphasis>
dpy</emphasis>
; /* connection to X server */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbDescPtr <emphasis>
xkb</emphasis>
@@ -4677,7 +4710,7 @@ xkb-&gt;ctrls</emphasis>
*/
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbControlsChangesPtr <emphasis>
changes</emphasis>
@@ -4863,10 +4896,11 @@ XkbNoteControlsChanges</emphasis>
</para>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
void <emphasis>
XkbNoteControlsChanges</emphasis>
@@ -4879,21 +4913,21 @@ changes</emphasis>
)
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbControlsChangesPtr <emphasis>
changes</emphasis>
; /* records changes indicated by new */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbControlsNotifyEvent * <emphasis>
new</emphasis>
; /* tells which things have changed */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned int <emphasis>
wanted</emphasis>
@@ -4932,10 +4966,11 @@ XkbNoteControlsChanges.</emphasis>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
Status <emphasis>
XkbGetControlsChanges</emphasis>
@@ -4948,14 +4983,14 @@ dpy</emphasis>
)
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
Display * <emphasis>
dpy</emphasis>
; /* connection to X server */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbDescPtr <emphasis>
xkb</emphasis>
@@ -4964,7 +4999,7 @@ xkb-&gt;ctrls</emphasis>
will be updated */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbNameChangesPtr <emphasis>
changes</emphasis>
@@ -5037,10 +5072,11 @@ XkbAllocControls</emphasis>
</para>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
Status <emphasis>
XkbAllocControls</emphasis>
@@ -5049,14 +5085,14 @@ xkb, which</emphasis>
)
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbDescPtr <emphasis>
xkb</emphasis>
; /* Xkb description in which to allocate ctrls rec */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned int<emphasis>
which</emphasis>
@@ -5124,10 +5160,11 @@ XkbFreeControls:</emphasis>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
void <emphasis>
XkbFreeControls</emphasis>
@@ -5136,14 +5173,14 @@ xkb, which, free_all</emphasis>
)
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbDescPtr<emphasis>
xkb</emphasis>
; /* Xkb description in which to free controls components */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned int <emphasis>
which</emphasis>
@@ -5152,7 +5189,7 @@ ctrls</emphasis>
to free */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
Bool <emphasis>
free_all</emphasis>
@@ -5227,10 +5264,11 @@ XkbGetPerClientControls</emphasis>
</para>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
Bool <emphasis>
XkbGetPerClientControls</emphasis>
@@ -5241,14 +5279,14 @@ ctrls</emphasis>
)
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
Display * <emphasis>
dpy</emphasis>
; /* connection to X server */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned int * <emphasis>
ctrls</emphasis>
@@ -5283,10 +5321,11 @@ XkbSetPerClientControls.</emphasis>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
Bool <emphasis>
XkbSetPerClientControls</emphasis>
@@ -5297,21 +5336,21 @@ ctrls</emphasis>
)
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
Display * <emphasis>
dpy</emphasis>
; /* connection to X server */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned int <emphasis>
change</emphasis>
; /* 1 bit =&gt; change control */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned int * <emphasis>
value</emphasis>
diff --git a/libX11/specs/XKB/ch11.xml b/libX11/specs/XKB/ch11.xml
index 1d8d1dc2a..52f089775 100644
--- a/libX11/specs/XKB/ch11.xml
+++ b/libX11/specs/XKB/ch11.xml
@@ -370,47 +370,48 @@ indicate which controls to manipulate. The controls are identified by the masks
defined in Table 11.1. <!-- xref -->
</para>
-<table frame='none'>
+<table frame='topbot'>
<title>Library Control Masks</title>
-<tgroup cols='2'>
-<colspec colsep='0'/>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='2' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
+<colspec colname='c2' colwidth='1.0*'/>
<thead>
-<row rowsep='0'>
+<row rowsep='1'>
<entry>Library Control Mask</entry>
<entry>Value</entry>
</row>
</thead>
<tbody>
- <row rowsep='0'>
+ <row>
<entry>XkbLC_ForceLatin1Lookup</entry>
<entry>(1 &lt;&lt; 0)</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>XkbLC_ConsumeLookupMods</entry>
<entry>(1 &lt;&lt; 1)</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>XkbLC_AlwaysConsumeShiftAndLock</entry>
<entry>(1 &lt;&lt; 2)</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>XkbLC_IgnoreNewKeyboards</entry>
<entry>(1 &lt;&lt; 3)</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>XkbLC_ConsumeKeysOnComposeFail</entry>
<entry>(1 &lt;&lt; 29)</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>XkbLC_ComposeLED</entry>
<entry>(1 &lt;&lt; 30)</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>XkbLC_BeepOnComposeFail</entry>
<entry>(1 &lt;&lt; 31)</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>XkbLC_AllControls</entry>
<entry>(0xc0000007)</entry>
</row>
@@ -427,10 +428,11 @@ implemented, use <emphasis>XkbXlibControlsImplemented</emphasis>.
</para>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
unsigned int <emphasis>
XkbXlibControlsImplemented</emphasis>
@@ -439,7 +441,7 @@ display</emphasis>
)
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
Display *<emphasis>
display</emphasis>
@@ -469,10 +471,11 @@ XkbGetXlibControls</emphasis>
</para>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
unsigned int <emphasis>
XkbGetXlibControls</emphasis>
@@ -481,7 +484,7 @@ display</emphasis>
)
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
Display *<emphasis>
display</emphasis>
@@ -511,10 +514,11 @@ To change the state of the Library Controls, use
</para>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
Bool <emphasis>
XkbSetXlibControls</emphasis>
@@ -523,21 +527,21 @@ display, bits_to_change, values_for_bits</emphasis>
)
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
Display *<emphasis>
display</emphasis>
; /* connection to X server */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned long <emphasis>
bits_to_change</emphasis>
; /* selects controls to be modified */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned long <emphasis>
values_for_bits</emphasis>
diff --git a/libX11/specs/XKB/ch12.xml b/libX11/specs/XKB/ch12.xml
index 928d83828..1a062014e 100644
--- a/libX11/specs/XKB/ch12.xml
+++ b/libX11/specs/XKB/ch12.xml
@@ -237,10 +237,11 @@ level, use <emphasis>XkbKeycodeToKeysym</emphasis>.
</para>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
KeySym <emphasis>
XkbKeycodeToKeysym</emphasis>
@@ -249,22 +250,22 @@ dpy, kc, group, level</emphasis>
)
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
Display * dpy; /* connection to X server */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
KeyCode kc; /* key of interest */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned int group; /* group of interest */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned int level; /* shift level of interest */
</entry>
@@ -300,10 +301,11 @@ XkbKeysymToModifiers</emphasis>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
unsigned<emphasis>
</emphasis>
@@ -316,14 +318,14 @@ dpy</emphasis>
)
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
Display *<emphasis>
dpy</emphasis>
; /* connection to X server */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
KeySym <emphasis>
ks</emphasis>
@@ -373,10 +375,11 @@ XkbLookupKeySym</emphasis>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
Bool <emphasis>
XkbLookupKeySym</emphasis>
@@ -393,35 +396,35 @@ dpy</emphasis>
)
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
Display * <emphasis>
dpy</emphasis>
; /* connection to X server */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
KeyCode <emphasis>
key</emphasis>
; /* key for which symbols are to be found */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned int <emphasis>
state</emphasis>
; /* state for which symbol should be found */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned int * <emphasis>
mods_rtrn</emphasis>
; /* backfilled with unconsumed modifiers */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
KeySym *<emphasis>
sym_rtrn</emphasis>
@@ -475,10 +478,11 @@ XLookupString</emphasis>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
int <emphasis>
XkbLookupKeyBinding</emphasis>
@@ -497,42 +501,42 @@ dpy</emphasis>
)
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
Display * <emphasis>
dpy</emphasis>
; /* connection to server */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
KeySym<emphasis>
sym</emphasis>
; /* symbol to be looked up */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned int <emphasis>
state</emphasis>
; /* state for which string is to be looked up */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
char * <emphasis>
buf</emphasis>
; /* buffer into which returned string is written */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
int <emphasis>
nbytes</emphasis>
; /* size of buffer in bytes */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
int * <emphasis>
extra_rtrn</emphasis>
@@ -581,10 +585,11 @@ XkbTranslateKeySym</emphasis>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
int <emphasis>
XkbTranslateKeySym</emphasis>
@@ -603,21 +608,21 @@ extra_rtrn</emphasis>
)
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
Display * <emphasis>
dpy</emphasis>
; /* connection to X server */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
KeySym * <emphasis>
sym_inout</emphasis>
; /* symbol to be translated; result of translation */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned int <emphasis>
mods</emphasis>
@@ -626,21 +631,21 @@ sym_inout</emphasis>
*/
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
char * <emphasis>
buf</emphasis>
; /* buffer into which returned string is written */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
int <emphasis>
nbytes</emphasis>
; /* size of buffer in bytes */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
int *<emphasis>
extra_rtrn</emphasis>
@@ -685,10 +690,11 @@ XkbRefreshKeyboardMapping</emphasis>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
Status <emphasis>
XkbRefreshKeyboardMapping</emphasis>
@@ -696,7 +702,7 @@ XkbRefreshKeyboardMapping</emphasis>
event)</emphasis>
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbMapNotifyEvent * <emphasis>
event</emphasis>
@@ -749,10 +755,11 @@ XkbTranslateKeyCode</emphasis>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
Booll <emphasis>
XkbTranslateKeyCode</emphasis>
@@ -760,21 +767,21 @@ XkbTranslateKeyCode</emphasis>
xkb, key, mods, mods_rtrn, keysym_rtrn)</emphasis>
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbDescPtr <emphasis>
xkb</emphasis>
; /* keyboard description to use for translation */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
KeyCode <emphasis>
key</emphasis>
; /* keycode to translate */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned int <emphasis>
mods</emphasis>
@@ -783,14 +790,14 @@ key</emphasis>
*/
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned int * <emphasis>
mods_rtrn</emphasis>
; /* backfilled with unconsumed modifiers */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
KeySym * <emphasis>
keysym_rtrn</emphasis>
diff --git a/libX11/specs/XKB/ch13.xml b/libX11/specs/XKB/ch13.xml
index 101003817..ed6066d10 100644
--- a/libX11/specs/XKB/ch13.xml
+++ b/libX11/specs/XKB/ch13.xml
@@ -557,19 +557,22 @@ type</emphasis>
fields are shown in Table 13.1.
</para>
-<table frame='none'>
+<table frame='topbot'>
<title>Doodad Types</title>
-<tgroup cols='3'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='3' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
+<colspec colname='c2' colwidth='1.0*'/>
+<colspec colname='c3' colwidth='1.0*'/>
<thead>
-<row rowsep='0'>
+<row rowsep='1'>
<entry>Doodad</entry>
<entry>Structure</entry>
<entry>Type</entry>
</row>
</thead>
<tbody>
- <row rowsep='0'>
+ <row>
<entry><emphasis>
indicator doodad</emphasis>
</entry>
@@ -580,7 +583,7 @@ XkbIndicatorDoodadRec</emphasis>
XkbIndicatorDoodad</emphasis>
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry><emphasis>
outline doodad</emphasis>
</entry>
@@ -591,7 +594,7 @@ XkbShapeDoodadRec</emphasis>
XkbOutlineDoodad</emphasis>
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry><emphasis>
solid doodad</emphasis>
</entry>
@@ -602,7 +605,7 @@ XkbShapeDoodadRec</emphasis>
XkbSolidDoodad</emphasis>
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry><emphasis>
text doodad</emphasis>
</entry>
@@ -613,7 +616,7 @@ XkbTextDoodadRec</emphasis>
XkbTextDoodad</emphasis>
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry><emphasis>
logo doodad</emphasis>
</entry>
@@ -1091,10 +1094,11 @@ To load a keyboard geometry if you already have the keyboard description, use
</para>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
Status <emphasis>
XkbGetGeometry</emphasis>
@@ -1105,14 +1109,14 @@ dpy</emphasis>
)
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
Display * <emphasis>
dpy</emphasis>
; /* connection to the X server */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbDescPtr <emphasis>
xkb</emphasis>
@@ -1150,10 +1154,11 @@ XkbGetNamedGeometry</emphasis>.
</para>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
Status <emphasis>
XkbGetNamedGeometry</emphasis>
@@ -1166,21 +1171,21 @@ dpy</emphasis>
)
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
Display * <emphasis>
dpy</emphasis>
; /* connection to the X server */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbDescPtr <emphasis>
xkb</emphasis>
; /* keyboard description into which the geometry should be loaded */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
Atom <emphasis>
name</emphasis>
@@ -1235,10 +1240,11 @@ XkbComputeShapeTop</emphasis>.
</para>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
Bool <emphasis>
XkbComputeShapeTop</emphasis>
@@ -1249,14 +1255,14 @@ shape</emphasis>
)
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbShapePtr <emphasis>
shape</emphasis>
; /* shape to be examined */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbBoundsPtr <emphasis>
bounds_rtrn</emphasis>
@@ -1312,10 +1318,11 @@ shape, use <emphasis>XkbComputeShapeBounds</emphasis>.
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
Bool <emphasis>
XkbComputeShapeBounds</emphasis>
@@ -1324,7 +1331,7 @@ shape</emphasis>
)
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbShapePtr <emphasis>
shape</emphasis>
@@ -1365,10 +1372,11 @@ To update the bounding box of a row, use <emphasis>XkbComputeRowBounds</emphasis
</para>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
Bool <emphasis>
XkbComputeRowBounds</emphasis>
@@ -1381,7 +1389,7 @@ geom</emphasis>
)
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbGeometryPtr <emphasis>
geom</emphasis>
@@ -1390,14 +1398,14 @@ section</emphasis>
*/
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbSectionPtr <emphasis>
section</emphasis>
; /* section that contains the row */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbRowPtr <emphasis>
row</emphasis>
@@ -1432,10 +1440,11 @@ that section. To update the bounding box of a section, use
</para>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
Bool <emphasis>
XkbComputeSectionBounds</emphasis>
@@ -1446,7 +1455,7 @@ geom</emphasis>
)
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbGeometryPtr <emphasis>
geom</emphasis>
@@ -1455,7 +1464,7 @@ section</emphasis>
*/
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbSectionPtr <emphasis>
section</emphasis>
@@ -1491,10 +1500,11 @@ XkbFindOverlayForKey</emphasis>.
</para>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
char * <emphasis>
XkbFindOverlayForKey</emphasis>
@@ -1507,7 +1517,7 @@ geom</emphasis>
)
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbGeometryPtr <emphasis>
geom</emphasis>
@@ -1516,14 +1526,14 @@ section</emphasis>
*/
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbSectionPtr <emphasis>
section</emphasis>
; /* section to be searched for matching keys */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
char * <emphasis>
under</emphasis>
@@ -1581,10 +1591,11 @@ XkbAddGeomProperty</emphasis>
</para>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
XkbPropertyPtr <emphasis>
XkbAddGeomProperty</emphasis>
@@ -1597,21 +1608,21 @@ geom</emphasis>
)
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbGeometryPtr <emphasis>
geom</emphasis>
; /* geometry to be updated */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
char * <emphasis>
name</emphasis>
; /* name of the new property */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
char * <emphasis>
value</emphasis>
@@ -1650,10 +1661,11 @@ XkbAddGeomKeyAlias</emphasis>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
XkbKeyAliasPtr <emphasis>
XkbAddGeomKeyAlias</emphasis>
@@ -1664,21 +1676,21 @@ geom</emphasis>
)
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbGeometryPtr <emphasis>
geom</emphasis>
; /* geometry to be updated */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
char * <emphasis>
alias</emphasis>
; /* alias to be added */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
char * <emphasis>
real</emphasis>
@@ -1712,10 +1724,11 @@ XkbAddGeomColor</emphasis>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
XkbColorPtr <emphasis>
XkbAddGeomColor</emphasis>
@@ -1728,21 +1741,21 @@ geom</emphasis>
)
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbGeometryPtr <emphasis>
geom</emphasis>
; /* geometry to be updated */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
char * <emphasis>
spec</emphasis>
; /* color to be added */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned int <emphasis>
pixel</emphasis>
@@ -1790,10 +1803,11 @@ XkbAddGeomOutline</emphasis>.
</para>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
XkbOutlinePtr <emphasis>
XkbAddGeomOutline</emphasis>
@@ -1804,14 +1818,14 @@ shape</emphasis>
)
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbShapePtr <emphasis>
shape</emphasis>
; /* shape to be updated */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
int <emphasis>
sz_points</emphasis>
@@ -1847,10 +1861,11 @@ XkbAddGeomShape</emphasis>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
XkbShapePtr <emphasis>
XkbAddGeomShape</emphasis>
@@ -1863,21 +1878,21 @@ geom</emphasis>
)
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbGeometryPtr <emphasis>
geom</emphasis>
; /* geometry to be updated */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
Atom <emphasis>
name</emphasis>
; /* name of the new shape */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
int <emphasis>
sz_outlines</emphasis>
@@ -1919,10 +1934,11 @@ XkbAddGeomKey</emphasis>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
XkbKeyPtr <emphasis>
XkbAddGeomKey</emphasis>
@@ -1931,7 +1947,7 @@ row</emphasis>
)
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbRowPtr <emphasis>
row</emphasis>
@@ -1966,10 +1982,11 @@ XkbAddGeomSection</emphasis>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
XkbSectionPtr <emphasis>
XkbAddGeomSection</emphasis>
@@ -1986,35 +2003,35 @@ geom</emphasis>
)
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbGeometryPtr <emphasis>
geom</emphasis>
; /* geometry to be updated */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
Atom <emphasis>
name</emphasis>
; /* name of the new section */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
int <emphasis>
sz_rows</emphasis>
; /* number of rows to reserve in the section */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
int <emphasis>
sz_doodads</emphasis>
; /* number of doodads to reserve in the section */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
int <emphasis>
sz_overlays</emphasis>
@@ -2061,10 +2078,11 @@ XkbAddGeomRow</emphasis>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
XkbRowPtr <emphasis>
XkbAddGeomRow</emphasis>
@@ -2075,14 +2093,14 @@ section</emphasis>
)
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbSectionPtr <emphasis>
section</emphasis>
; /* section to be updated */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
int <emphasis>
sz_keys</emphasis>
@@ -2121,10 +2139,11 @@ XkbAddGeomDoodad</emphasis>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
XkbDoodadPtr <emphasis>
XkbAddGeomDoodad</emphasis>
@@ -2137,21 +2156,21 @@ geom</emphasis>
)
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbGeometryPtr <emphasis>
geom</emphasis>
; /* geometry to which the doodad is added */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbSectionPtr <emphasis>
section</emphasis>
; /* section, if any, to which the doodad is added */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
Atom <emphasis>
name</emphasis>
@@ -2206,10 +2225,11 @@ XkbAddGeomOverlay</emphasis>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
XkbOverlayPtr <emphasis>
XkbAddGeomOverlay</emphasis>
@@ -2222,21 +2242,21 @@ section</emphasis>
)
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbSectionPtr <emphasis>
section</emphasis>
; /* section to which an overlay will be added */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
Atom <emphasis>
name</emphasis>
; /* name of the overlay */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
int <emphasis>
sz_rows</emphasis>
@@ -2274,10 +2294,11 @@ XkbAddGeomOverlayRow</emphasis>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
XkbOverlayRowPtr <emphasis>
XkbAddGeomOverlayRow</emphasis>
@@ -2288,14 +2309,14 @@ overlay</emphasis>
)
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbOverlayPtr <emphasis>
overlay</emphasis>
; /* overlay to be updated */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbRowPtr <emphasis>
row_under</emphasis>
@@ -2304,7 +2325,7 @@ overlay</emphasis>
overlays */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
int <emphasis>
sz_keys</emphasis>
@@ -2345,10 +2366,11 @@ XkbAddGeomOverlayKey</emphasis>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
XkbOverlayKeyPtr <emphasis>
XkbAddGeomOverlayKey</emphasis>
@@ -2359,21 +2381,21 @@ overlay</emphasis>
)
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbOverlayPtr <emphasis>
overlay</emphasis>
; /* overlay to be updated */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbRowPtr <emphasis>
row</emphasis>
; /* row in overlay to be updated */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
char * <emphasis>
under</emphasis>
@@ -2443,10 +2465,11 @@ XkbAllocGeomOutlines.
</para>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
Status <emphasis>
XkbAllocGeomOutlines</emphasis>
@@ -2457,14 +2480,14 @@ shape</emphasis>
)
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbShapePtr <emphasis>
shape</emphasis>
; /* shape for which outlines should be allocated */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
int <emphasis>
num_needed</emphasis>
@@ -2494,10 +2517,11 @@ XkbFreeGeomOutlines</emphasis>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
void <emphasis>
XkbFreeGeomOutlines</emphasis>
@@ -2512,28 +2536,28 @@ shape</emphasis>
)
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbShapePtr <emphasis>
shape</emphasis>
; /* shape in which outlines should be freed */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
int <emphasis>
first</emphasis>
; /* first outline to be freed */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
int <emphasis>
count</emphasis>
; /* number of outlines to be freed */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
Bool <emphasis>
free_all;</emphasis>
@@ -2561,10 +2585,11 @@ XkbAllocGeomKeys.
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
Status <emphasis>
XkbAllocGeomKeys</emphasis>
@@ -2575,14 +2600,14 @@ row</emphasis>
)
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbRowPtr <emphasis>
row</emphasis>
; /* row to which keys should be allocated */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
int <emphasis>
num_needed</emphasis>
@@ -2609,10 +2634,11 @@ XkbFreeGeomKeys</emphasis>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
void <emphasis>
XkbFreeGeomKeys</emphasis>
@@ -2627,28 +2653,28 @@ row</emphasis>
)
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbRowPtr <emphasis>
row</emphasis>
; /* row in which keys should be freed */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
int <emphasis>
first</emphasis>
; /* first key to be freed */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
int <emphasis>
count</emphasis>
; /* number of keys to be freed */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
Bool <emphasis>
free_all;</emphasis>
@@ -2677,10 +2703,11 @@ XkbAllocGeomProps</emphasis>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
Status <emphasis>
XkbAllocGeomProps</emphasis>
@@ -2691,14 +2718,14 @@ geom</emphasis>
)
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbGeometryPtr <emphasis>
geom</emphasis>
; /* geometry for which properties should be allocated */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
int <emphasis>
num_needed</emphasis>
@@ -2731,10 +2758,11 @@ XkbFreeGeomProperties</emphasis>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
void <emphasis>
XkbFreeGeomProperties</emphasis>
@@ -2749,28 +2777,28 @@ geom</emphasis>
)
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbGeometryPtr <emphasis>
geom</emphasis>
; /* geometry in which properties should be freed */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
int <emphasis>
first</emphasis>
; /* first property to be freed */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
int <emphasis>
count</emphasis>
; /* number of properties to be freed */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
Bool <emphasis>
free_all;</emphasis>
@@ -2799,10 +2827,11 @@ XkbAllocGeomKeyAliases</emphasis>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
Status <emphasis>
XkbAllocGeomKeyAliases</emphasis>
@@ -2813,14 +2842,14 @@ geom</emphasis>
)
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbGeometryPtr <emphasis>
geom</emphasis>
; /* geometry for which key aliases should be allocated */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
int <emphasis>
num_needed</emphasis>
@@ -2850,10 +2879,11 @@ XkbFreeGeomKeyAliases</emphasis>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
void <emphasis>
XkbFreeGeomKeyAliases</emphasis>
@@ -2868,28 +2898,28 @@ free_all</emphasis>
)
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbGeometryPtr <emphasis>
geom</emphasis>
; /* geometry in which key aliases should be freed */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
int <emphasis>
first</emphasis>
; /* first key alias to be freed */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
int <emphasis>
count</emphasis>
; /* number of key aliases to be freed */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
Bool <emphasis>
free_all;</emphasis>
@@ -2922,10 +2952,11 @@ XkbAllocGeomColors</emphasis>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
Status <emphasis>
XkbAllocGeomColors</emphasis>
@@ -2936,14 +2967,14 @@ geom</emphasis>
)
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbGeometryPtr <emphasis>
geom</emphasis>
; /* geometry for which colors should be allocated */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
int <emphasis>
num_needed</emphasis>
@@ -2974,10 +3005,11 @@ XkbFreeGeomColors</emphasis>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
void <emphasis>
XkbFreeGeomColors</emphasis>
@@ -2992,28 +3024,28 @@ geom</emphasis>
)
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbGeometryPtr <emphasis>
geom</emphasis>
; /* geometry in which colors should be freed */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
int <emphasis>
first</emphasis>
; /* first color to be freed */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
int <emphasis>
count</emphasis>
; /* number of colors to be freed */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
Bool <emphasis>
free_all;</emphasis>
@@ -3042,10 +3074,11 @@ XkbAllocGeomPoints</emphasis>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
Status <emphasis>
XkbAllocGeomPoints</emphasis>
@@ -3056,14 +3089,14 @@ outline</emphasis>
)
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbOutlinePtr <emphasis>
outline</emphasis>
; /* outline for which points should be allocated */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
int <emphasis>
num_needed</emphasis>
@@ -3093,10 +3126,11 @@ XkbFreeGeomPoints</emphasis>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
void <emphasis>
XkbFreeGeomPoints</emphasis>
@@ -3111,28 +3145,28 @@ outline</emphasis>
)
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbOutlinePtr <emphasis>
outline</emphasis>
; /* outline in which points should be freed */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
int <emphasis>
first</emphasis>
; /* first point to be freed. */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
int <emphasis>
count</emphasis>
; /* number of points to be freed */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
Bool <emphasis>
free_all;</emphasis>
@@ -3162,10 +3196,11 @@ XkbAllocGeomShapes</emphasis>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
Status <emphasis>
XkbAllocGeomShapes</emphasis>
@@ -3176,14 +3211,14 @@ geom</emphasis>
)
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbGeometryPtr <emphasis>
geom</emphasis>
; /* geometry for which shapes should be allocated */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
int <emphasis>
num_needed</emphasis>
@@ -3213,10 +3248,11 @@ XkbFreeGeomShapes</emphasis>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
void <emphasis>
XkbFreeGeomShapes</emphasis>
@@ -3231,28 +3267,28 @@ geom</emphasis>
)
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbGeometryPtr <emphasis>
geom</emphasis>
; /* geometry in which shapes should be freed */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
int <emphasis>
first</emphasis>
; /* first shape to be freed */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
int <emphasis>
count</emphasis>
; /* number of shapes to be freed */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
Bool <emphasis>
free_all;</emphasis>
@@ -3282,10 +3318,11 @@ XkbAllocGeomSections</emphasis>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
Status <emphasis>
XkbAllocGeomSections</emphasis>
@@ -3296,14 +3333,14 @@ geom</emphasis>
)
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbGeometryPtr <emphasis>
geom</emphasis>
; /*geometry for which sections should be allocated */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
int <emphasis>
num_needed</emphasis>
@@ -3330,10 +3367,11 @@ XkbFreeGeomSections</emphasis>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
void <emphasis>
XkbFreeGeomSections</emphasis>
@@ -3348,28 +3386,28 @@ geom</emphasis>
)
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbGeometryPtr <emphasis>
geom</emphasis>
; /* geometry in which sections should be freed */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
int <emphasis>
first</emphasis>
; /* first section to be freed. */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
int <emphasis>
count</emphasis>
; /* number of sections to be freed */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
Bool <emphasis>
free_all;</emphasis>
@@ -3399,10 +3437,11 @@ XkbAllocGeomRows</emphasis>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
Status <emphasis>
XkbAllocGeomRows</emphasis>
@@ -3413,14 +3452,14 @@ section</emphasis>
)
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbSectionPtr <emphasis>
section</emphasis>
; /* section for which rows should be allocated */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
int <emphasis>
num_needed</emphasis>
@@ -3447,10 +3486,11 @@ XkbFreeGeomRows</emphasis>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
void <emphasis>
XkbFreeGeomRows</emphasis>
@@ -3465,28 +3505,28 @@ section</emphasis>
)
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbSectionPtr <emphasis>
section</emphasis>
; /* section in which rows should be freed */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
int <emphasis>
first</emphasis>
; /* first row to be freed. */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
int <emphasis>
count</emphasis>
; /* number of rows to be freed */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
Bool <emphasis>
free_all;</emphasis>
@@ -3516,10 +3556,11 @@ XkbAllocGeomOverlays</emphasis>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
Status <emphasis>
XkbAllocGeomOverlays</emphasis>
@@ -3530,14 +3571,14 @@ section</emphasis>
)
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbSectionPtr <emphasis>
section</emphasis>
; /* section for which overlays should be allocated */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
int <emphasis>
num_needed</emphasis>
@@ -3564,10 +3605,11 @@ XkbFreeGeomOverlays</emphasis>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
void <emphasis>
XkbFreeGeomOverlays</emphasis>
@@ -3582,28 +3624,28 @@ section</emphasis>
)
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbSectionPtr <emphasis>
section</emphasis>
; /* section in which overlays should be freed */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
int <emphasis>
first</emphasis>
; /* first overlay to be freed. */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
int <emphasis>
count</emphasis>
; /* number of overlays to be freed */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
Bool <emphasis>
free_all;</emphasis>
@@ -3633,10 +3675,11 @@ XkbAllocGeomOverlayRows</emphasis>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
Status <emphasis>
XkbAllocGeomOverlayRows</emphasis>
@@ -3647,14 +3690,14 @@ overlay</emphasis>
)
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbSectionPtr <emphasis>
overlay</emphasis>
; /* section for which rows should be allocated */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
int <emphasis>
num_needed</emphasis>
@@ -3681,10 +3724,11 @@ XkbFreeGeomOverlayRows</emphasis>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
void <emphasis>
XkbFreeGeomOverlayRows</emphasis>
@@ -3699,28 +3743,28 @@ overlay</emphasis>
)
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbSectionPtr <emphasis>
overlay</emphasis>
; /* section in which rows should be freed */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
int <emphasis>
first</emphasis>
; /* first row to be freed. */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
int <emphasis>
count</emphasis>
; /* number of rows to be freed */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
Bool <emphasis>
free_all;</emphasis>
@@ -3750,10 +3794,11 @@ XkbAllocGeomOverlayKeys</emphasis>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
Status <emphasis>
XkbAllocGeomOverlayKeys</emphasis>
@@ -3764,14 +3809,14 @@ row</emphasis>
)
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbRowPtr <emphasis>
row</emphasis>
; /* section for which rows should be allocated */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
int <emphasis>
num_needed</emphasis>
@@ -3798,10 +3843,11 @@ XkbFreeGeomOverlayKeys</emphasis>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
void <emphasis>
XkbFreeGeomOverlayKeys</emphasis>
@@ -3816,28 +3862,28 @@ row</emphasis>
)
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbRowPtr <emphasis>
row</emphasis>
; /* row in which keys should be freed */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
int <emphasis>
first</emphasis>
; /* first key to be freed. */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
int <emphasis>
count</emphasis>
; /* number of keys to be freed */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
Bool <emphasis>
free_all;</emphasis>
@@ -3867,10 +3913,11 @@ XkbAllocGeomDoodads</emphasis>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
Status <emphasis>
XkbAllocGeomDoodads</emphasis>
@@ -3881,14 +3928,14 @@ geom</emphasis>
)
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbGeometryPtr <emphasis>
geom</emphasis>
; /* geometry for which doodads should be allocated */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
int <emphasis>
num_needed</emphasis>
@@ -3916,10 +3963,11 @@ XkbAllocGeomSectionDoodads</emphasis>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
Status <emphasis>
XkbAllocGeomSectionDoodads</emphasis>
@@ -3930,14 +3978,14 @@ section</emphasis>
)
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbSectionPtr <emphasis>
section</emphasis>
; /* section for which doodads should be allocated */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
int <emphasis>
num_needed</emphasis>
@@ -3965,10 +4013,11 @@ XkbFreeGeomDoodads</emphasis>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
void <emphasis>
XkbFreeGeomDoodads</emphasis>
@@ -3981,21 +4030,21 @@ doodads</emphasis>
)
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbDoodadPtr <emphasis>
doodads</emphasis>
; /* doodads to be freed */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
int <emphasis>
count</emphasis>
; /* number of doodads to be freed */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
Bool <emphasis>
free_all;</emphasis>
@@ -4026,10 +4075,11 @@ XkbAllocGeometry</emphasis>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
Status <emphasis>
XkbAllocGeometry</emphasis>
@@ -4040,14 +4090,14 @@ xkb</emphasis>
)
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbDescPtr <emphasis>
xkb</emphasis>
; /* keyboard description for which geometry is to be allocated */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbGeometrySizesPtr<emphasis>
sizes</emphasis>
@@ -4078,10 +4128,11 @@ XkbFreeGeometry</emphasis>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
void <emphasis>
XkbFreeGeometry</emphasis>
@@ -4094,21 +4145,21 @@ geom</emphasis>
)
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbGeometryPtr <emphasis>
geom</emphasis>
; /* geometry to be freed */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned int <emphasis>
which</emphasis>
; /* mask of geometry components to be freed */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
Bool <emphasis>
free_all;</emphasis>
diff --git a/libX11/specs/XKB/ch14.xml b/libX11/specs/XKB/ch14.xml
index 518e1aca4..1fcc76800 100644
--- a/libX11/specs/XKB/ch14.xml
+++ b/libX11/specs/XKB/ch14.xml
@@ -249,10 +249,11 @@ XkbGetMap</emphasis>
</para>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
XkbDescPtr <emphasis>
XkbGetMap</emphasis>
@@ -261,21 +262,21 @@ display, which, device_spec</emphasis>
)
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
Display * <emphasis>
display</emphasis>
; /* connection to X server */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned int <emphasis>
which</emphasis>
; /* mask selecting subcomponents to populate */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned int <emphasis>
device_spec</emphasis>
@@ -354,12 +355,18 @@ column in Table 14.1. Refer to the sections listed in the table for more
information on these functions.
</para>
-<table frame='none'>
+<table frame='topbot'>
<title>Xkb Mapping Component Masks and Convenience Functions</title>
-<tgroup cols='6'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='6' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='3.0*'/>
+<colspec colname='c2' colwidth='0.9*'/>
+<colspec colname='c3' colwidth='0.9*'/>
+<colspec colname='c4' colwidth='1.6*'/>
+<colspec colname='c5' colwidth='2.1*'/>
+<colspec colname='c6' colwidth='0.9*'/>
<thead>
-<row rowsep='0'>
+<row rowsep='1'>
<entry>Mask</entry>
<entry>Value</entry>
<entry>Map</entry>
@@ -369,7 +376,7 @@ information on these functions.
</row>
</thead>
<tbody>
- <row rowsep='0'>
+ <row>
<entry><emphasis>XkbKeyTypesMask</emphasis></entry>
<entry>(1&lt;&lt;0)</entry>
<entry>client</entry>
@@ -386,7 +393,7 @@ information on these functions.
</entry>
<entry>15.2</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry><emphasis>XkbKeySymsMask</emphasis></entry>
<entry>(1&lt;&lt;1)</entry>
<entry>client</entry>
@@ -399,27 +406,27 @@ information on these functions.
<entry>
<para><emphasis>XkbGetKeySyms</emphasis></para>
<para><emphasis>XkbResizeKeySyms</emphasis></para>
- <para><emphasis>XkbChangeTypesOfKey</emphasis></para>
+ <para><emphasis>XkbChangeTypes&#xAD;OfKey</emphasis></para>
</entry>
<entry>15.3</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry><emphasis>XkbModifierMapMask</emphasis></entry>
<entry>(1&lt;&lt;2)</entry>
<entry>client</entry>
<entry><emphasis>modmap</emphasis></entry>
- <entry><emphasis>XkbGetKeyModifierMap</emphasis></entry>
+ <entry><emphasis>XkbGetKeyModifier&#xAD;Map</emphasis></entry>
<entry>15.4</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry><emphasis>XkbExplicitComponentsMask</emphasis></entry>
<entry>(1&lt;&lt;3)</entry>
<entry>server</entry>
<entry><emphasis>explicit</emphasis></entry>
- <entry><emphasis>XkbGetKeyExplicitComponents</emphasis></entry>
+ <entry><emphasis>XkbGetKeyExplicit&#xAD;Components</emphasis></entry>
<entry>16.3</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry><emphasis>XkbKeyActionsMask</emphasis></entry>
<entry>(1&lt;&lt;4)</entry>
<entry>server</entry>
@@ -431,19 +438,19 @@ information on these functions.
</entry>
<entry>
<para><emphasis>XkbGetKeyActions</emphasis></para>
- <para><emphasis>XkbResizeKeyActions</emphasis></para>
+ <para><emphasis>XkbResizeKey&#xAD;Actions</emphasis></para>
</entry>
<entry>16.1</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry><emphasis>XkbKeyBehaviorsMask</emphasis></entry>
<entry>(1&lt;&lt;5)</entry>
<entry>server</entry>
<entry><emphasis>behaviors</emphasis></entry>
- <entry><emphasis>XkbGetKeyBehaviors</emphasis></entry>
+ <entry><emphasis>XkbGetKey&#xAD;Behaviors</emphasis></entry>
<entry>16.2</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry><emphasis>XkbVirtualModsMask</emphasis></entry>
<entry>(1&lt;&lt;6)</entry>
<entry>server</entry>
@@ -451,12 +458,12 @@ information on these functions.
<entry><emphasis>XkbGetVirtualMods</emphasis></entry>
<entry>16.4</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry><emphasis>XkbVirtualModMapMask</emphasis></entry>
<entry>(1&lt;&lt;7)</entry>
<entry>server</entry>
<entry><emphasis>vmodmap</emphasis></entry>
- <entry><emphasis>XkbGetVirtualModMap</emphasis></entry>
+ <entry><emphasis>XkbGetVirtualMod&#xAD;Map</emphasis></entry>
<entry>16.4</entry>
</row>
</tbody>
@@ -491,10 +498,11 @@ description, use <emphasis>XkbGetUpdatedMap</emphasis>.
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
Status <emphasis>
XkbGetUpdatedMap</emphasis>
@@ -503,21 +511,21 @@ display, which, xkb</emphasis>
)
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
Display * <emphasis>
display</emphasis>
; /* connection to X server */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned int<emphasis>
which</emphasis>
; /* mask selecting subcomponents to populate */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbDescPtr <emphasis>
xkb</emphasis>
@@ -585,10 +593,11 @@ an<emphasis>
</para>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
Bool <emphasis>
XkbSetMap</emphasis>
@@ -601,21 +610,21 @@ dpy</emphasis>
)
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
Display *<emphasis>
dpy</emphasis>
; /* connection to X server */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned int<emphasis>
which</emphasis>
; /* mask selecting subcomponents to update */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbDescPtr <emphasis>
xkb</emphasis>
@@ -751,19 +760,22 @@ XkbMapChangesRec</emphasis>
.
</para>
-<table frame='none'>
+<table frame='topbot'>
<title>XkbMapChangesRec Masks</title>
-<tgroup cols='3'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='3' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
+<colspec colname='c2' colwidth='1.0*'/>
+<colspec colname='c3' colwidth='1.0*'/>
<thead>
-<row rowsep='0'>
+<row rowsep='1'>
<entry>Mask</entry>
<entry>Valid XkbMapChangesRec Fields</entry>
<entry>XkbDescRec Field Containing Changed Data</entry>
</row>
</thead>
<tbody>
- <row rowsep='0'>
+ <row>
<entry><emphasis>XkbKeyTypesMask</emphasis></entry>
<entry>
<para>first_type</para>,
@@ -774,7 +786,7 @@ XkbMapChangesRec</emphasis>
<para>map-&gt;type[first_type + num_types - 1]</para>
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry><emphasis>XkbKeySymsMask</emphasis></entry>
<entry>
<para>first_key_sym</para>,
@@ -785,7 +797,7 @@ XkbMapChangesRec</emphasis>
<para>map-&gt;key_sym_map[first_key_sym + num_key_syms - 1]</para>
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry><emphasis>XkbModifierMapMask</emphasis></entry>
<entry>
<para>first_modmap_key</para>,
@@ -796,7 +808,7 @@ XkbMapChangesRec</emphasis>
<para>map-&gt;modmap[first_modmap_key + num_modmap_keys-1]</para>
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry><emphasis>XkbExplicitComponentsMask</emphasis></entry>
<entry>
<para>first_key_explicit</para>,
@@ -807,7 +819,7 @@ XkbMapChangesRec</emphasis>
<para>server-&gt;explicit[first_key_explicit + num_key_explicit - 1]</para>
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry><emphasis>XkbKeyActionsMask</emphasis></entry>
<entry>
<para>first_key_act,</para>
@@ -818,7 +830,7 @@ XkbMapChangesRec</emphasis>
<para>server-&gt;key_acts[first_key_act + num_key_acts - 1]</para>
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry><emphasis>XkbKeyBehaviorsMask</emphasis></entry>
<entry>
<para>first_key_behavior,</para>
@@ -829,12 +841,12 @@ XkbMapChangesRec</emphasis>
<para>server-&gt;behaviors[first_key_behavior + num_key_behaviors - 1]</para>
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry><emphasis>XkbVirtuawModsMask</emphasis></entry>
<entry>vmods</entry>
<entry>server-&gt;vmods[*]</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry><emphasis>XkbVirtualModMapMask</emphasis></entry>
<entry>
<para>first_vmodmap_key,</para>
@@ -860,10 +872,11 @@ XkbMapChangesRec</emphasis>
</para>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
Bool <emphasis>
XkbChangeMap</emphasis>
@@ -876,21 +889,21 @@ dpy</emphasis>
)
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
Display *<emphasis>
dpy</emphasis>
; /* connection to X server */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbDescPtr <emphasis>
xkb</emphasis>
; /* description from which new values are taken */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbMapChangesPtr <emphasis>
changes</emphasis>
@@ -1092,10 +1105,11 @@ XkbAllocClientMap.</emphasis>
</para>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
Status <emphasis>
XkbAllocClientMap</emphasis>
@@ -1104,21 +1118,21 @@ xkb, which, type_count</emphasis>
)
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbDescPtr <emphasis>
xkb</emphasis>
; /* keyboard description in which to allocate client map */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned int<emphasis>
which</emphasis>
; /* mask selecting map components to allocate */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned int<emphasis>
type_count</emphasis>
@@ -1145,18 +1159,20 @@ allocate and is a mask composed by a bitwise inclusive OR of one or more of the
masks shown in Table 14.3.
</para>
-<table frame='none'>
+<table frame='topbot'>
<title>XkbAllocClientMap Masks</title>
-<tgroup cols='2'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='2' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
+<colspec colname='c2' colwidth='2.0*'/>
<thead>
-<row rowsep='0'>
+<row rowsep='1'>
<entry>Mask</entry>
<entry>Effect</entry>
</row>
</thead>
<tbody>
- <row rowsep='0'>
+ <row>
<entry>XkbKeyTypesMask</entry>
<entry>
The <emphasis>
@@ -1171,7 +1187,7 @@ XkbNumRequiredTypes</emphasis>
BadValue</emphasis>.
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>XkbKeySymsMask</entry>
<entry>
The <emphasis>
@@ -1192,7 +1208,7 @@ min_key_code</emphasis>
+ 1 keys.
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>XkbModifierMapMask</entry>
<entry>
The <emphasis>
@@ -1282,10 +1298,11 @@ XkbFreeClientMap.</emphasis>
</para>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
void <emphasis>
XkbFreeClientMap</emphasis>
@@ -1294,21 +1311,21 @@ xkb, which, free_all</emphasis>
)
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbDescPtr <emphasis>
xkb</emphasis>
; /* keyboard description containing client map to free */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned int<emphasis>
which</emphasis>
; /* mask identifying components of map to free */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
Bool <emphasis>
free_all</emphasis>
@@ -1373,10 +1390,11 @@ XkbAllocServerMap.</emphasis>
</para>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
Status <emphasis>
XkbAllocServerMap</emphasis>
@@ -1385,21 +1403,21 @@ xkb, which, count_acts</emphasis>
)
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbDescPtr <emphasis>
xkb</emphasis>
; /* keyboard description in which to allocate server map */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned int<emphasis>
which</emphasis>
; /* mask selecting map components to allocate */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned int<emphasis>
count_acts</emphasis>
@@ -1425,18 +1443,20 @@ which</emphasis>
allocate, as specified in Table 14.4.
</para>
-<table frame='none'>
+<table frame='topbot'>
<title>XkbAllocServerMap Masks</title>
-<tgroup cols='2'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='2' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
+<colspec colname='c2' colwidth='2.0*'/>
<thead>
-<row rowsep='0'>
+<row rowsep='1'>
<entry>Mask</entry>
<entry>Effect</entry>
</row>
</thead>
<tbody>
- <row rowsep='0'>
+ <row>
<entry>XkbExplicitComponentsMask</entry>
<entry>
The <emphasis>
@@ -1450,7 +1470,7 @@ explicit </emphasis>
field of the server map.
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>XkbKeyActionsMask</entry>
<entry>
The <emphasis>
@@ -1468,7 +1488,7 @@ acts</emphasis>
field of the server map.
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>XkbKeyBehaviorsMask</entry>
<entry>
The <emphasis>
@@ -1482,7 +1502,7 @@ behaviors </emphasis>
field of the server map.
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>XkbVirtualModMapMask</entry>
<entry>
The <emphasis>
@@ -1559,10 +1579,11 @@ XkbFreeServerMap.</emphasis>
</para>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
void <emphasis>
XkbFreeServerMap</emphasis>
@@ -1571,21 +1592,21 @@ xkb, which, free_all</emphasis>
)
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbDescPtr <emphasis>
xkb</emphasis>
; /* keyboard description containing server map to free */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned int<emphasis>
which</emphasis>
; /* mask identifying components of map to free */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
Bool <emphasis>
free_all</emphasis>
diff --git a/libX11/specs/XKB/ch15.xml b/libX11/specs/XKB/ch15.xml
index 5ab96ae13..b12bc8cf3 100644
--- a/libX11/specs/XKB/ch15.xml
+++ b/libX11/specs/XKB/ch15.xml
@@ -238,79 +238,80 @@ keyboard mappings in the server database is not specified by the Xkb extension,
although this format is one possible example):
</para>
-<table frame='none'>
+<table frame='topbot'>
<title>Example Key Type</title>
-<tgroup cols='2'>
-<colspec colsep='0'/>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='2' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
+<colspec colname='c2' colwidth='1.0*'/>
<thead>
-<row rowsep='0'>
+<row rowsep='1'>
<entry>Symbolic Description</entry>
<entry>Key Type Data Structure</entry>
</row>
</thead>
<tbody>
- <row rowsep='0'>
+ <row>
<entry>type "ALPHATHREE" {</entry>
<entry>Xkb-&gt;map-&gt;types[i].name</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>modifiers = Shift+Lock+LevelThree;</entry>
<entry>Xkb-&gt;map-&gt;types[i].mods</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry><emphasis>map[None]= Level1;</emphasis></entry>
<entry>Xkb-&gt;map-&gt;types[i].map[0]</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry><emphasis>map[Lock]= Level1;</emphasis></entry>
<entry>Xkb-&gt;map-&gt;types[i].map[1]</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>map[Shift]= Level2;</entry>
<entry>Xkb-&gt;map-&gt;types[i].map[2]</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>map[LevelThree]= Level3;</entry>
<entry>Xkb-&gt;map-&gt;types[i].map[3]</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>map[Shift+LevelThree]= Level3;</entry>
<entry>Xkb-&gt;map-&gt;types[i].map[4]</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry><emphasis>preserve[None]= None;</emphasis></entry>
<entry>Xkb-&gt;map-&gt;types[i].perserve[0]</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>preserve[Lock]= Lock;</entry>
<entry>Xkb-&gt;map-&gt;types[i].preserve[1]</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry><emphasis>preserve[Shift]= None;</emphasis></entry>
<entry>Xkb-&gt;map-&gt;types[i].preserve[2]</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry><emphasis>preserve[LevelThree]= None;</emphasis></entry>
<entry>Xkb-&gt;map-&gt;types[i].preserve[3]</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry><emphasis>preserve[Shift+Level3]= None;</emphasis> </entry>
<entry>Xkb-&gt;map-&gt;types[i].preserve[4]</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>level_name[Level1]= "Base";</entry>
<entry>Xkb-&gt;map-&gt;types[i].level_names[0]</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>level_name[Level2]= "Caps";</entry>
<entry>Xkb-&gt;map-&gt;types[i].level_names[1]</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>level_name[Level3]= "Level3";</entry>
<entry>Xkb-&gt;map-&gt;types[i].level_names[2]</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>};</entry>
<entry></entry>
</row>
@@ -645,10 +646,11 @@ XkbInitCanonicalKeyTypes.</emphasis>
</para>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
Status <emphasis>
XkbInitCanonicalKeyTypes</emphasis>
@@ -657,21 +659,21 @@ xkb, which, keypadVMod</emphasis>
)
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbDescPtr <emphasis>
xkb</emphasis>
; /* keyboard description containing client map to initialize */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned int <emphasis>
which</emphasis>
; /* mask of types to initialize */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
int <emphasis>
keypadVMod</emphasis>
@@ -751,10 +753,11 @@ XkbGetKeyTypes</emphasis>
</para>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
Status <emphasis>
XkbGetKeyTypes</emphasis>
@@ -769,28 +772,28 @@ dpy</emphasis>
)
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
Display *<emphasis>
dpy</emphasis>
; /* connection to X server */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned int<emphasis>
first</emphasis>
; /* index to first type to get, 0 =&gt; 1st type */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned int <emphasis>
num</emphasis>
; /* number of key types to be returned */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbDescPtr <emphasis>
xkb</emphasis>
@@ -844,10 +847,11 @@ XkbResizeKeyType</emphasis>
</para>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
Status <emphasis>
XkbResizeKeyType</emphasis>
@@ -864,28 +868,28 @@ xkb</emphasis>
)
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbDescPtr<emphasis>
xkb</emphasis>
; /* keyboard description containing client map to update */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
int <emphasis>
type_ndx</emphasis>
; /* index in xkb-&gt;map-&gt;types of type to change */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
int <emphasis>
map_count</emphasis>
; /* total # of map entries needed for the type */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
Bool <emphasis>
want_preserve</emphasis>
@@ -894,7 +898,7 @@ True</emphasis>
=&gt; list of preserved modifiers is necessary */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
int <emphasis>
new_num_lvls</emphasis>
@@ -1018,10 +1022,11 @@ XkbKeyTypeRec</emphasis>
</para>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
Status <emphasis>
XkbCopyKeyType</emphasis>
@@ -1032,14 +1037,14 @@ from</emphasis>
)
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbKeyTypePtr <emphasis>
from</emphasis>
; /* pointer to XkbKeyTypeRec to be copied */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbKeyTypePtr <emphasis>
into</emphasis>
@@ -1094,10 +1099,11 @@ Success</emphasis>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
Status <emphasis>
XkbCopyKeyTypes</emphasis>
@@ -1110,21 +1116,21 @@ num_types</emphasis>
)
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbKeyTypePtr <emphasis>
from</emphasis>
; /* pointer to array of XkbKeyTypeRecs to copy */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbKeyTypePtr <emphasis>
into</emphasis>
; /* pointer to array of XkbKeyTypeRecs to change */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
int <emphasis>
num_types</emphasis>
@@ -1286,10 +1292,11 @@ XkbNumKbdGroups</emphasis>
groups, the extra key types are reported but ignored.</para></note>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
int <emphasis>
XkbKeyTypeIndex</emphasis>
@@ -1298,21 +1305,21 @@ xkb, keycode, group</emphasis>
) /* macro*/
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbDescPtr <emphasis>
xkb</emphasis>
; /* Xkb description of interest */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
KeyCode <emphasis>
keycode</emphasis>
; /* keycode of interest */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
int <emphasis>
group</emphasis>
@@ -1339,10 +1346,11 @@ group</emphasis>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
XkbKeyTypePtr <emphasis>
XkbKeyType</emphasis>
@@ -1351,21 +1359,21 @@ xkb, keycode, group</emphasis>
) /* macro */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbDescPtr <emphasis>
xkb</emphasis>
; /* Xkb description of interest */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
KeyCode <emphasis>
keycode</emphasis>
; /* keycode of interest */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
int <emphasis>
group</emphasis>
@@ -1453,27 +1461,28 @@ group_info</emphasis>
normalization methods in this table.
</para>
-<table frame='none'>
+<table frame='topbot'>
<title>group_info Range Normalization</title>
-<tgroup cols='2'>
-<colspec colsep='0'/>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='2' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
+<colspec colname='c2' colwidth='1.0*'/>
<thead>
-<row rowsep='0'>
+<row rowsep='1'>
<entry>Bits set in group_info</entry>
<entry>Normalization method</entry>
</row>
</thead>
<tbody>
- <row rowsep='0'>
+ <row>
<entry>XkbRedirectIntoRange</entry>
<entry>XkbRedirectIntoRange</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>XkbClampIntoRange</entry>
<entry>XkbClampIntoRange</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>none of the above</entry>
<entry>XkbWrapIntoRange</entry>
</row>
@@ -1486,10 +1495,11 @@ Xkb provides the following macros to access group information:
</para>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
int <emphasis>
XkbKeyNumGroups</emphasis>
@@ -1498,14 +1508,14 @@ xkb, keycode</emphasis>
) /* macro */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbDescPtr <emphasis>
xkb</emphasis>
; /* Xkb description of interest */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
KeyCode <emphasis>
keycode</emphasis>
@@ -1527,10 +1537,11 @@ keycode</emphasis>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
unsigned char <emphasis>
XkbKeyGroupInfo</emphasis>
@@ -1539,14 +1550,14 @@ xkb, keycode</emphasis>
) /*macro */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbDescPtr <emphasis>
xkb</emphasis>
; /* Xkb description of interest */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
KeyCode <emphasis>
keycode</emphasis>
@@ -1571,10 +1582,11 @@ keycode</emphasis>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
unsigned char <emphasis>
XkbOutOfRangeGroupInfo</emphasis>
@@ -1583,7 +1595,7 @@ grp_inf</emphasis>
) /* macro */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned char <emphasis>
grp_inf</emphasis>
@@ -1608,10 +1620,11 @@ XkbSymMapRec</emphasis>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
unsigned char <emphasis>
XkbOutOfRangeGroupNumber</emphasis>
@@ -1620,7 +1633,7 @@ grp_inf</emphasis>
) /* macro */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned char <emphasis>
grp_inf</emphasis>
@@ -1703,10 +1716,11 @@ of symbols bound to the key:
</para>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
int <emphasis>
XkbKeyGroupsWidth</emphasis>
@@ -1715,14 +1729,14 @@ xkb, keycode</emphasis>
) /* macro */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbDescPtr <emphasis>
xkb</emphasis>
; /* Xkb description of interest */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
KeyCode <emphasis>
keycode</emphasis>
@@ -1743,10 +1757,11 @@ keycode</emphasis>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
int <emphasis>
XkbKeyGroupWidth</emphasis>
@@ -1755,21 +1770,21 @@ xkb, keycode, grp</emphasis>
) /* macro */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbDescPtr <emphasis>
xkb</emphasis>
; /* Xkb description of interest */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
KeyCode <emphasis>
keycode</emphasis>
; /* keycode of interest */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
int <emphasis>
grp</emphasis>
@@ -1792,10 +1807,11 @@ keycode</emphasis>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
int <emphasis>
XkbKeySymsOffset</emphasis>
@@ -1804,14 +1820,14 @@ xkb, keycode</emphasis>
) /* macro */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbDescPtr <emphasis>
xkb</emphasis>
; /* Xkb description of interest */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
KeyCode <emphasis>
keycode</emphasis>
@@ -1833,10 +1849,11 @@ keycode</emphasis>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
int <emphasis>
XkbKeyNumSyms</emphasis>
@@ -1845,14 +1862,14 @@ xkb, keycode</emphasis>
) /* macro */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbDescPtr <emphasis>
xkb</emphasis>
; /* Xkb description of interest */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
KeyCode <emphasis>
keycode</emphasis>
@@ -1873,10 +1890,11 @@ keycode</emphasis>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
KeySym * <emphasis>
XkbKeySymsPtr</emphasis>
@@ -1885,14 +1903,14 @@ xkb, keycode</emphasis>
) /* macro */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbDescPtr <emphasis>
xkb</emphasis>
; /* Xkb description of interest */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
KeyCode <emphasis>
keycode</emphasis>
@@ -1914,10 +1932,11 @@ keycode</emphasis>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
KeySym <emphasis>
XkbKeySymEntry</emphasis>
@@ -1926,28 +1945,28 @@ xkb, keycode, shift, grp</emphasis>
) /* macro */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbDescPtr <emphasis>
xkb</emphasis>
; /* Xkb description of interest */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
KeyCode <emphasis>
keycode</emphasis>
; /* keycode of interest */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
int <emphasis>
shift</emphasis>
; /* shift level of interest */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
int <emphasis>
grp</emphasis>
@@ -1985,10 +2004,11 @@ XkbGetKeySyms</emphasis>
</para>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
Status <emphasis>
XkbGetKeySyms</emphasis>
@@ -2003,28 +2023,28 @@ num</emphasis>
)
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
Display *<emphasis>
dpy</emphasis>
; /* connection to X server */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned int<emphasis>
first</emphasis>
; /* keycode of first key to get */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned int <emphasis>
num</emphasis>
; /* number of keycodes for which syms desired */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbDescPtr <emphasis>
xkb</emphasis>
@@ -2119,38 +2139,39 @@ xkb</emphasis>
</para>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbDescPtr <emphasis>
xkb</emphasis>
; /* keyboard description to be changed */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
int <emphasis>
key</emphasis>
; /* keycode for key of interest */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
int <emphasis>
n_groups</emphasis>
; /* new number of groups for key */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned int <emphasis>
groups</emphasis>
; /* mask indicating groups to change */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
int * <emphasis>
new_types_in</emphasis>
@@ -2159,7 +2180,7 @@ groups</emphasis>
*/
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbMapChangesPtr <emphasis>
p_changes</emphasis>
@@ -2265,31 +2286,32 @@ For convenience, Xkb provides the following constants to use as indices to the
groups:
</para>
-<table frame='none'>
+<table frame='topbot'>
<title>Group Index Constants</title>
-<tgroup cols='2'>
-<colspec colsep='0'/>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='2' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
+<colspec colname='c2' colwidth='1.0*'/>
<thead>
-<row rowsep='0'>
+<row rowsep='1'>
<entry>Constant Name</entry>
<entry>Value</entry>
</row>
</thead>
<tbody>
- <row rowsep='0'>
+ <row>
<entry>XkbGroup1Index</entry>
<entry>0</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>XkbGroup2Index</entry>
<entry>1</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>XkbGroup3Index</entry>
<entry>2</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>XkbGroup4Index</entry>
<entry>3</entry>
</row>
@@ -2342,10 +2364,11 @@ XkbResizeKeySyms</emphasis>
</para>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
KeySym *<emphasis>
XkbResizeKeySyms</emphasis>
@@ -2358,21 +2381,21 @@ xkb</emphasis>
)
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbDescRec *<emphasis>
xkb</emphasis>
; /* keyboard description to be changed */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
int <emphasis>
key</emphasis>
; /* keycode for key to modify */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
int <emphasis>
needed</emphasis>
@@ -2507,10 +2530,11 @@ XkbGetKeyModifierMap</emphasis>
</para>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
Status <emphasis>
XkbGetKeyModifierMap</emphasis>
@@ -2525,28 +2549,28 @@ dpy</emphasis>
)
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
Display *<emphasis>
dpy</emphasis>
; /* connection to X server */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned int <emphasis>
first</emphasis>
; /* keycode of first key to get */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned int <emphasis>
num</emphasis>
; /* number of keys for which information is desired */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbDescPtr <emphasis>
xkb</emphasis>
diff --git a/libX11/specs/XKB/ch16.xml b/libX11/specs/XKB/ch16.xml
index 2cfdd8e2d..2640ea2dd 100644
--- a/libX11/specs/XKB/ch16.xml
+++ b/libX11/specs/XKB/ch16.xml
@@ -164,10 +164,11 @@ to key actions:
</para>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
Bool <emphasis>
XkbKeyHasActions</emphasis>
@@ -176,14 +177,14 @@ xkb, keycode</emphasis>
) /* macro */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbDescPtr <emphasis>
xkb</emphasis>
; /* Xkb description of interest */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
KeyCode <emphasis>
keycode</emphasis>
@@ -208,10 +209,11 @@ False</emphasis>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
int <emphasis>
XkbKeyNumActions</emphasis>
@@ -220,14 +222,14 @@ xkb, keycode</emphasis>
) /* macro */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbDescPtr <emphasis>
xkb</emphasis>
; /* Xkb description of interest */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
KeyCode <emphasis>
keycode</emphasis>
@@ -251,10 +253,11 @@ XkbKeyNumSyms</emphasis>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
XkbKeyActionPtr <emphasis>
XkbKeyActionsPtr</emphasis>
@@ -263,14 +266,14 @@ xkb, keycode</emphasis>
) /* macro */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbDescPtr <emphasis>
xkb</emphasis>
; /* Xkb description of interest */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
KeyCode <emphasis>
keycode</emphasis>
@@ -297,10 +300,11 @@ XkbKeyNumActions</emphasis>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
XkbAction <emphasis>
XkbKeyAction</emphasis>
@@ -309,21 +313,21 @@ xkb, keycode, idx</emphasis>
) /* macro */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbDescPtr <emphasis>
xkb</emphasis>
; /* Xkb description of interest */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
KeyCode <emphasis>
keycode</emphasis>
; /* keycode of interest */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
int <emphasis>
idx</emphasis>
@@ -352,10 +356,11 @@ idx</emphasis>
</literallayout>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
XkbAction <emphasis>
XkbKeyActionEntry</emphasis>
@@ -364,28 +369,28 @@ xkb, keycode, shift, grp</emphasis>
) /* macro */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbDescPtr <emphasis>
xkb</emphasis>
; /* Xkb description of interest */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
KeyCode <emphasis>
keycode</emphasis>
; /* keycode of interest */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
int <emphasis>
shift</emphasis>
; /* shift level within group */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
int <emphasis>
grp</emphasis>
@@ -479,15 +484,16 @@ type</emphasis>
field, and the data structures associated with them are shown in Table 16.1:
</para>
-<table frame='none'>
+<table frame='topbot'>
<title>Action Types</title>
-<tgroup cols='4'>
-<colspec colsep='0'/>
-<colspec colsep='0'/>
-<colspec colsep='0'/>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='4' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.8*'/>
+<colspec colname='c2' colwidth='2.0*'/>
+<colspec colname='c3' colwidth='1.5*'/>
+<colspec colname='c4' colwidth='1.0*'/>
<thead>
-<row rowsep='0'>
+<row rowsep='1'>
<entry>Type</entry>
<entry>Structure for Data</entry>
<entry>XkbAction Union Member</entry>
@@ -495,7 +501,7 @@ type</emphasis>
</row>
</thead>
<tbody>
- <row rowsep='0'>
+ <row>
<entry><emphasis>XkbSA_NoAction</emphasis></entry>
<entry>
<emphasis>XkbSA_NoAction</emphasis>
@@ -505,7 +511,7 @@ have an associated data structure.
<entry>any</entry>
<entry></entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>
<para><emphasis>XkbSA_SetMods</emphasis></para>
<para><emphasis>XkbSA_LatchMods</emphasis></para>
@@ -515,7 +521,7 @@ have an associated data structure.
<entry>mods</entry>
<entry>16.1.3</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>
<para><emphasis>XkbSA_SetGroup</emphasis></para>
<para><emphasis>XkbSA_LatchGroup</emphasis></para>
@@ -525,13 +531,13 @@ have an associated data structure.
<entry>group</entry>
<entry>16.1.4</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry><emphasis>XkbSA_MovePtr</emphasis></entry>
<entry><emphasis>XkbPtrAction</emphasis></entry>
<entry>ptr</entry>
<entry>16.1.5</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>
<para><emphasis>XKbSA_PtrBtn</emphasis></para>
<para><emphasis>XkbSA_LockPtrBtn</emphasis></para>
@@ -539,25 +545,25 @@ have an associated data structure.
<entry><emphasis>XkbPtrBtnAction</emphasis></entry><entry>btn</entry>
<entry>16.1.6</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry><emphasis>XkbSA_SetPtrDflt</emphasis></entry>
<entry><emphasis>XkbPtrDfltAction</emphasis></entry>
<entry>dflt</entry>
<entry>16.1.7</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry><emphasis>XkbSA_ISOLock</emphasis></entry>
<entry><emphasis>XkbISOAction</emphasis></entry>
<entry>iso</entry>
<entry>16.1.8</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry><emphasis>XkbSA_SwitchScreen</emphasis></entry>
<entry><emphasis>XkbSwitchScreenAction</emphasis></entry>
<entry>screen</entry>
<entry>16.1.9</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>
<para><emphasis>XkbSA_SetControls</emphasis></para>
<para><emphasis>XkbSA_LockControls</emphasis></para>
@@ -566,19 +572,19 @@ have an associated data structure.
<entry>ctrls</entry>
<entry>16.1.10</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry><emphasis>XkbSA_ActionMessage</emphasis></entry>
<entry><emphasis>XkbMessgeAction</emphasis></entry>
<entry>msg</entry>
<entry>16.1.11</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry><emphasis>XkbSA_RedirectKey</emphasis></entry>
<entry><emphasis>XkbRedirectKeyAction</emphasis></entry>
<entry>redirect</entry>
<entry>16.1.12</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>
<para><emphasis>XkbSA_DeviceBtn</emphasis></para>
<para><emphasis>XKbSA_LockDeviceBtn</emphasis></para>
@@ -587,7 +593,7 @@ have an associated data structure.
<entry>devbtn</entry>
<entry>16.1.13</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry><emphasis>XkbSA_DeviceValuator</emphasis></entry>
<entry><emphasis>XkbDeviceValuatorAction</emphasis></entry>
<entry>devval</entry>
@@ -646,18 +652,20 @@ type</emphasis>
field can have any of the values shown in Table 16.2.
</para>
-<table frame='none'>
+<table frame='topbot'>
<title>Modifier Action Types</title>
-<tgroup cols='2'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='2' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
+<colspec colname='c2' colwidth='2.0*'/>
<thead>
-<row rowsep='0'>
+<row rowsep='1'>
<entry>Type</entry>
<entry>Effect</entry>
</row>
</thead>
<tbody>
- <row rowsep='0'>
+ <row>
<entry><emphasis>XkbSA_SetMods</emphasis></entry>
<entry>
<itemizedlist>
@@ -685,7 +693,7 @@ flags</emphasis>
</itemizedlist>
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry><emphasis>XkbSA_LatchMods</emphasis></entry>
<entry>
<itemizedlist>
@@ -726,7 +734,7 @@ XkbSA_LatchToLock</emphasis>
</itemizedlist>
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry><emphasis>XkbSA_LockMods</emphasis></entry>
<entry>
<itemizedlist>
@@ -765,19 +773,20 @@ flags</emphasis>
the action <emphasis>type</emphasis>.
</para>
-<table frame='none'>
+<table frame='topbot'>
<title>Modifier Action Flags</title>
-<tgroup cols='2'>
-<colspec colsep='0'/>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='2' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
+<colspec colname='c2' colwidth='2.0*'/>
<thead>
-<row rowsep='0'>
+<row rowsep='1'>
<entry>Flag</entry>
<entry>Meaning</entry>
</row>
</thead>
<tbody>
- <row rowsep='0'>
+ <row>
<entry><emphasis>XkbSA_UseModMapMods</emphasis></entry>
<entry>
If set, the action modifiers are determined by the modifiers bound by the
@@ -793,14 +802,14 @@ vmod2</emphasis>
fields.
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry><emphasis>XkbSA_ClearLocks</emphasis></entry>
<entry>
If set and no keys are physically depressed when this key transition
occurs, the server unlocks any action modifiers.
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry><emphasis>XkbSA_LatchToLock</emphasis></entry>
<entry>
If set, and the action type is <emphasis>
@@ -808,7 +817,7 @@ XkbSA_LatchMods</emphasis>
, the server locks the action modifiers if they are already latched.
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry><emphasis>XkbSA_LockNoLock</emphasis></entry>
<entry>
If set, and the action type is <emphasis>
@@ -816,7 +825,7 @@ XkbSA_LockMods</emphasis>
, the server only unlocks the action modifiers.
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry><emphasis>XkbSA_LockNoUnlock</emphasis></entry>
<entry>
If set, and the action is <emphasis>
@@ -881,10 +890,11 @@ convert between the two formats:
</para>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
unsigned short <emphasis>
XkbModActionVMods</emphasis>
@@ -893,7 +903,7 @@ act</emphasis>
) /* macro */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbAction <emphasis>
act</emphasis>
@@ -920,10 +930,11 @@ vmods</emphasis>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
void <emphasis>
XkbSetModActionVMods</emphasis>
@@ -932,14 +943,14 @@ act, vmods</emphasis>
) /* macro */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbAction <emphasis>
act</emphasis>
; /* action in which to set vmods */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned short <emphasis>
vmods</emphasis>
@@ -997,19 +1008,20 @@ type</emphasis>
field can have any of the following values:
</para>
-<table frame='none'>
+<table frame='topbot'>
<title>Group Action Types</title>
-<tgroup cols='2'>
-<colspec colsep='0'/>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='2' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
+<colspec colname='c2' colwidth='2.0*'/>
<thead>
-<row rowsep='0'>
+<row rowsep='1'>
<entry>Type</entry>
<entry>Effect</entry>
</row>
</thead>
<tbody>
- <row rowsep='0'>
+ <row>
<entry><emphasis>XkbSA_SetGroup</emphasis></entry>
<entry>
<itemizedlist>
@@ -1055,7 +1067,7 @@ Group1</emphasis>
</itemizedlist>
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry><emphasis>XkbSA_LatchGroup</emphasis></entry>
<entry>
<itemizedlist>
@@ -1090,7 +1102,7 @@ Otherwise, the key press adds the key press delta to the latched keyboard group.
</itemizedlist>
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry><emphasis>XkbSA_LockGroup</emphasis></entry>
<entry>
<itemizedlist>
@@ -1134,19 +1146,20 @@ type</emphasis>
.
</para>
-<table frame='none'>
+<table frame='topbot'>
<title>Group Action Flags</title>
-<tgroup cols='2'>
-<colspec colsep='0'/>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='2' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
+<colspec colname='c2' colwidth='2.0*'/>
<thead>
-<row rowsep='0'>
+<row rowsep='1'>
<entry>Flag</entry>
<entry>Meaning</entry>
</row>
</thead>
<tbody>
- <row rowsep='0'>
+ <row>
<entry><emphasis>XkbSA_ClearLocks</emphasis></entry>
<entry>
If set and no keys are physically depressed when this key transition occurs,
@@ -1155,7 +1168,7 @@ Group1</emphasis>
on a key release.
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry><emphasis>XkbSA_LatchToLock</emphasis></entry>
<entry>
If set, and the action type is <emphasis>
@@ -1163,7 +1176,7 @@ SA_LatchGroup</emphasis>
, the server locks the action group if it is already latched.
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry><emphasis>XkbSA_GroupAbsolute</emphasis></entry>
<entry>
If set, the <emphasis>
@@ -1184,10 +1197,11 @@ convert between a signed integer value and a signed character:
</para>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
int <emphasis>
XkbSAGroup</emphasis>
@@ -1196,7 +1210,7 @@ act</emphasis>
) /* macro */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbAction <emphasis>
act</emphasis>
@@ -1219,10 +1233,11 @@ act</emphasis>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
void <emphasis>
XkbSASetGroup</emphasis>
@@ -1231,14 +1246,14 @@ act, grp</emphasis>
) /* macro */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbAction <emphasis>
act</emphasis>
; /* action from which to set group */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
int <emphasis>
grp</emphasis>
@@ -1338,19 +1353,20 @@ flags</emphasis>
field is a bitwise inclusive OR of the masks shown in Table 16.6.
</para>
-<table frame='none'>
+<table frame='topbot'>
<title>Pointer Action Types</title>
-<tgroup cols='2'>
-<colspec colsep='0'/>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='2' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
+<colspec colname='c2' colwidth='2.0*'/>
<thead>
-<row rowsep='0'>
+<row rowsep='1'>
<entry>Action Type</entry>
<entry>Meaning</entry>
</row>
</thead>
<tbody>
- <row rowsep='0'>
+ <row>
<entry><emphasis>XkbSA_NoAcceleration</emphasis></entry>
<entry>
If not set, and the <emphasis>
@@ -1361,14 +1377,14 @@ KeyPress</emphasis>
cursor moves.
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry><emphasis>XkbSA_MoveAbsoluteX</emphasis></entry>
<entry>If set, the X portion of the structure specifies the new pointer X
coordinate. Otherwise, the X portion is added to the current pointer X
coordinate to determine the new pointer X coordinate.
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry><emphasis>XkbSA_MoveAbsoluteY</emphasis></entry>
<entry>
If set, the Y portion of the structure specifies the new
@@ -1395,10 +1411,11 @@ XkbPtrAction</emphasis>
</para>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
int <emphasis>
XkbPtrActionX</emphasis>
@@ -1407,7 +1424,7 @@ act</emphasis>
) /* macro */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbPtrAction <emphasis>
act</emphasis>
@@ -1432,10 +1449,11 @@ act</emphasis>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
int <emphasis>
XkbPtrActionY</emphasis>
@@ -1444,7 +1462,7 @@ act</emphasis>
) /* macro */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbPtrAction <emphasis>
act</emphasis>
@@ -1469,10 +1487,11 @@ act</emphasis>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
void <emphasis>
XkbSetPtrActionX</emphasis>
@@ -1483,14 +1502,14 @@ x</emphasis>
) /* macro */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbPtrAction <emphasis>
act</emphasis>
; /* action in which to set X */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
int <emphasis>
x; </emphasis>
@@ -1517,10 +1536,11 @@ x</emphasis>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
void <emphasis>
XkbSetPtrActionY</emphasis>
@@ -1529,14 +1549,14 @@ act, y</emphasis>
) /* macro */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbPtrAction <emphasis>
act</emphasis>
; /* action in which to set Y */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
int <emphasis>
y</emphasis>
@@ -1601,19 +1621,20 @@ type</emphasis>
field can have any one of the values shown in Table 16.7.
</para>
-<table frame='none'>
+<table frame='topbot'>
<title>Pointer Button Action Types</title>
-<tgroup cols='2'>
-<colspec colsep='0'/>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='2' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
+<colspec colname='c2' colwidth='2.0*'/>
<thead>
-<row rowsep='0'>
+<row rowsep='1'>
<entry>Type</entry>
<entry>Effect</entry>
</row>
</thead>
<tbody>
- <row rowsep='0'>
+ <row>
<entry><emphasis>XkbSA_PtrBtn</emphasis></entry>
<entry>
<itemizedlist>
@@ -1682,7 +1703,7 @@ KeyRelease</emphasis>
</itemizedlist>
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry><emphasis>XkbSA_LockPtrBtn</emphasis></entry>
<entry>
<itemizedlist>
@@ -1736,19 +1757,20 @@ type.</emphasis>
:
</para>
-<table frame='none'>
+<table frame='topbot'>
<title>Pointer Button Action Flags</title>
-<tgroup cols='2'>
-<colspec colsep='0'/>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='2' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
+<colspec colname='c2' colwidth='2.0*'/>
<thead>
-<row rowsep='0'>
+<row rowsep='1'>
<entry>Flag</entry>
<entry>Meaning</entry>
</row>
</thead>
<tbody>
- <row rowsep='0'>
+ <row>
<entry><emphasis>XkbSA_UseDfltButton</emphasis></entry>
<entry>
If set, the action uses the pointer button specified by the <emphasis>
@@ -1761,7 +1783,7 @@ specified by the<emphasis>
field.
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry><emphasis>XkbSA_LockNoLock</emphasis></entry>
<entry>
If set, and the action type is <emphasis>
@@ -1769,7 +1791,7 @@ XkbSA_LockPtrBtn</emphasis>
, the server only unlocks the pointer button.
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry><emphasis>XkbSA_LockNoUnlock</emphasis></entry>
<entry>
If set, and the action type is <emphasis>
@@ -1839,19 +1861,20 @@ flags</emphasis>
16.9 (currently there is only one value defined).
</para>
-<table frame='none'>
+<table frame='topbot'>
<title>Pointer Default Flags</title>
-<tgroup cols='2'>
-<colspec colsep='0'/>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='2' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
+<colspec colname='c2' colwidth='2.0*'/>
<thead>
-<row rowsep='0'>
+<row rowsep='1'>
<entry>Flag</entry>
<entry>Meaning</entry>
</row>
</thead>
<tbody>
- <row rowsep='0'>
+ <row>
<entry><emphasis>XkbSA_DfltBtnAbsolute</emphasis></entry>
<entry>
If set, the <emphasis>
@@ -1899,10 +1922,11 @@ XkbPtrDfltAction</emphasis>
</para>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
int <emphasis>
XkbSAPtrDfltValue</emphasis>
@@ -1911,7 +1935,7 @@ act</emphasis>
) /* macro */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbAction <emphasis>
act</emphasis>
@@ -1934,10 +1958,11 @@ act</emphasis>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
void <emphasis>
XkbSASetPtrDfltValue</emphasis>
@@ -1946,7 +1971,7 @@ act, val</emphasis>
) /* macro */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbPtrDfltAction <emphasis>
act</emphasis>
@@ -1955,7 +1980,7 @@ valueXXX</emphasis>
*/
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
int <emphasis>
val</emphasis>
@@ -2076,19 +2101,20 @@ flags</emphasis>
16.10.
</para>
-<table frame='none'>
+<table frame='topbot'>
<title>ISO Action Flags when XkbSA_ISODfltIsGroup is Set</title>
-<tgroup cols='2'>
-<colspec colsep='0'/>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='2' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
+<colspec colname='c2' colwidth='2.0*'/>
<thead>
-<row rowsep='0'>
+<row rowsep='1'>
<entry>Flag</entry>
<entry>Meaning</entry>
</row>
</thead>
<tbody>
- <row rowsep='0'>
+ <row>
<entry><emphasis>XkbSA_ISODfltIsGroup</emphasis></entry>
<entry>
<para>
@@ -2109,7 +2135,7 @@ set by the key press.
</para>
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry><emphasis>XkbSA_GroupAbsolute</emphasis></entry>
<entry>
If set, the <emphasis>
@@ -2118,7 +2144,7 @@ group_XXX</emphasis>
delta to be added to the current group to determine the new group number.
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry><emphasis>XkbSA_ISONoAffectMods</emphasis></entry>
<entry>
If not set, any <emphasis>
@@ -2132,7 +2158,7 @@ XkbSA_LockMod</emphasis>
actions instead.
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry><emphasis>XkbSA_ISONoAffectGroup</emphasis></entry>
<entry>
If not set, any <emphasis>
@@ -2146,7 +2172,7 @@ XkbSA_LockGroup</emphasis>
actions instead.
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry><emphasis>XkbSA_ISONoAffectPtr</emphasis></entry>
<entry>
If not set, any <emphasis>
@@ -2158,7 +2184,7 @@ XkbSA_LockPtrBtn</emphasis>
actions instead.
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry><emphasis>XkbSA_ISONoAffectCtrls</emphasis></entry>
<entry>
If not set, any <emphasis>
@@ -2186,19 +2212,20 @@ flags</emphasis>
16.11.
</para>
-<table frame='none'>
+<table frame='topbot'>
<title>ISO Action Flags when XkbSA_ISODfltIsGroup is Not Set</title>
-<tgroup cols='2'>
-<colspec colsep='0'/>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='2' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
+<colspec colname='c2' colwidth='2.0*'/>
<thead>
-<row rowsep='0'>
+<row rowsep='1'>
<entry>Flag</entry>
<entry>Meaning</entry>
</row>
</thead>
<tbody>
- <row rowsep='0'>
+ <row>
<entry><emphasis>XkbSA_ISODfltIsGroup</emphasis> </entry>
<entry>
<para>
@@ -2223,7 +2250,7 @@ clears the base modifiers set by the key press.
</para>
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry><emphasis>XkbSA_UseModMapMods</emphasis></entry>
<entry>
If set, the action modifiers are determined by the modifiers bound by the
@@ -2239,15 +2266,15 @@ vmod2</emphasis>
fields.
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry><emphasis>XkbSA_LockNoLock</emphasis></entry>
<entry>If set, the server only unlocks the action modifiers.</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry><emphasis>XkbSA_LockNoUnlock</emphasis></entry>
<entry>If set, the server only locks the action modifiers. </entry>
</row>
- <row rowsep='0'>
+ <row>
<entry><emphasis>XkbSA_ISONoAffectMods</emphasis></entry>
<entry>
If not set, any <emphasis>
@@ -2261,7 +2288,7 @@ XkbSA_LockMod</emphasis>
actions instead.
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry><emphasis>XkbSA_ISONoAffectGroup</emphasis></entry>
<entry>
If not set, any <emphasis>
@@ -2275,7 +2302,7 @@ XkbSA_LockGroup</emphasis>
actions instead.
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry><emphasis>XkbSA_ISONoAffectPtr</emphasis></entry>
<entry>
If not set, any <emphasis>
@@ -2287,7 +2314,7 @@ XkbSA_LockPtrBtn</emphasis>
actions instead.
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry><emphasis>XkbSA_ISONoAffectCtrls</emphasis></entry>
<entry>
If not set, any <emphasis>
@@ -2347,19 +2374,20 @@ affect</emphasis>
16.11.
</para>
-<table frame='none'>
+<table frame='topbot'>
<title>ISO Action Affect Field Values</title>
-<tgroup cols='2'>
-<colspec colsep='0'/>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='2' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
+<colspec colname='c2' colwidth='2.0*'/>
<thead>
-<row rowsep='0'>
+<row rowsep='1'>
<entry>Affect</entry>
<entry>Meaning</entry>
</row>
</thead>
<tbody>
- <row rowsep='0'>
+ <row>
<entry><emphasis>XkbSA_ISODNoAffectMods</emphasis></entry>
<entry>
If <emphasis>
@@ -2375,7 +2403,7 @@ SA_LockMods</emphasis>
instead.
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry><emphasis>XkbSA_ISONoAffectGroup</emphasis></entry>
<entry>
If <emphasis>
@@ -2391,7 +2419,7 @@ SA_LockGroup</emphasis>
instead.
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry><emphasis>XkbSA_ISONoAffectPtr</emphasis></entry>
<entry>
If <emphasis>
@@ -2405,7 +2433,7 @@ SA_LockPtrBtn</emphasis>
instead.
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry><emphasis>XkbSA_ISONoAffectCtrls</emphasis></entry>
<entry>
If <emphasis>
@@ -2465,19 +2493,20 @@ flags</emphasis>
16.13.
</para>
-<table frame='none'>
+<table frame='topbot'>
<title>Switch Screen Action Flags</title>
-<tgroup cols='2'>
-<colspec colsep='0'/>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='2' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
+<colspec colname='c2' colwidth='2.0*'/>
<thead>
-<row rowsep='0'>
+<row rowsep='1'>
<entry>Flag</entry>
<entry>Meaning</entry>
</row>
</thead>
<tbody>
- <row rowsep='0'>
+ <row>
<entry><emphasis>XkbSA_SwitchAbsolute</emphasis></entry>
<entry>
If set, the <emphasis>
@@ -2486,7 +2515,7 @@ screenXXX</emphasis>
offset from the current screen to the new screen.
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry><emphasis>XkbSA_SwitchApplication</emphasis></entry>
<entry>
If not set, the action should switch to another screen on the same
@@ -2513,10 +2542,11 @@ XkbSwitchScreenAction</emphasis>
</para>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
int <emphasis>
XkbSAScreen</emphasis>
@@ -2525,7 +2555,7 @@ act</emphasis>
) /* macro */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbSwitchScreenAction <emphasis>
act</emphasis>
@@ -2548,10 +2578,11 @@ act</emphasis>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
void <emphasis>
XkbSASetScreen</emphasis>
@@ -2560,7 +2591,7 @@ act, s</emphasis>
) /* macro */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbSwitchScreenAction <emphasis>
act</emphasis>
@@ -2569,7 +2600,7 @@ screenXXX</emphasis>
*/
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
int <emphasis>
s</emphasis>
@@ -2628,19 +2659,20 @@ type</emphasis>
field can have any one of the values shown in Table 16.14.
</para>
-<table frame='none'>
+<table frame='topbot'>
<title>Controls Action Types</title>
-<tgroup cols='2'>
-<colspec colsep='0'/>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='2' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
+<colspec colname='c2' colwidth='2.0*'/>
<thead>
-<row rowsep='0'>
+<row rowsep='1'>
<entry>Type</entry>
<entry>Effect</entry>
</row>
</thead>
<tbody>
- <row rowsep='0'>
+ <row>
<entry><emphasis>XkbSA_SetControls</emphasis></entry>
<entry>
<itemizedlist>
@@ -2666,7 +2698,7 @@ XkbControlsNotify</emphasis>
</itemizedlist>
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry><emphasis>XkbSA_LockControls</emphasis></entry>
<entry>
<itemizedlist>
@@ -2713,19 +2745,20 @@ flags</emphasis>
16.15.
</para>
-<table frame='none'>
+<table frame='topbot'>
<title>Control Action Flags</title>
-<tgroup cols='2'>
-<colspec colsep='0'/>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='2' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
+<colspec colname='c2' colwidth='2.0*'/>
<thead>
-<row rowsep='0'>
+<row rowsep='1'>
<entry>Flag</entry>
<entry>Meaning</entry>
</row>
</thead>
<tbody>
- <row rowsep='0'>
+ <row>
<entry><emphasis>XkbSA_LockNoLock</emphasis></entry>
<entry>
If set, and the action type is <emphasis>
@@ -2733,7 +2766,7 @@ XkbSA_LockControls</emphasis>
, the server only disables controls.
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry><emphasis>XkbSA_LockNoUnlock</emphasis></entry>
<entry>
If set, and the action type is <emphasis>
@@ -2777,10 +2810,11 @@ macros, to convert between the two formats:
</para>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
unsigned int <emphasis>
XkbActionCtrls</emphasis>
@@ -2789,7 +2823,7 @@ act</emphasis>
) /* macro */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbCtrlsAction <emphasis>
act</emphasis>
@@ -2812,10 +2846,11 @@ act</emphasis>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
void <emphasis>
XkbSAActionSetCtrls</emphasis>
@@ -2824,14 +2859,14 @@ act, ctrls</emphasis>
) /* macro */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbCtrlsAction <emphasis>
act</emphasis>
; /* action in which to set ctrls0-ctrls3 */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned int <emphasis>
ctrls</emphasis>
@@ -2898,19 +2933,20 @@ flags</emphasis>
16.16.
</para>
-<table frame='none'>
+<table frame='topbot'>
<title>Message Action Flags</title>
-<tgroup cols='2'>
-<colspec colsep='0'/>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='2' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
+<colspec colname='c2' colwidth='2.0*'/>
<thead>
-<row rowsep='0'>
+<row rowsep='1'>
<entry>Flag</entry>
<entry>Meaning</entry>
</row>
</thead>
<tbody>
- <row rowsep='0'>
+ <row>
<entry><emphasis>XkbSA_MessageOnPress</emphasis></entry>
<entry>
If set, key press events generate an <emphasis>
@@ -2920,7 +2956,7 @@ message</emphasis>
field.
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry><emphasis>XkbSA_MessageOnRelease</emphasis></entry>
<entry>
If set, key release events generate an <emphasis>
@@ -2930,7 +2966,7 @@ message</emphasis>
field.
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry><emphasis>XkbSA_MessageGenKeyEvent</emphasis></entry>
<entry>
If set, key press and key release events generate <emphasis>
@@ -3191,10 +3227,11 @@ convert between the two formats:
</para>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
unsigned int <emphasis>
XkbSARedirectVModsMask</emphasis>
@@ -3203,7 +3240,7 @@ act</emphasis>
) /* macro */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbRedirectKeyAction <emphasis>
act</emphasis>
@@ -3228,10 +3265,11 @@ act</emphasis>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
void <emphasis>
XkbSARedirectSetVModsMask</emphasis>
@@ -3240,14 +3278,14 @@ act, vm</emphasis>
) /* macro */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbRedirectKeyAction <emphasis>
act</emphasis>
; /* action in which to set vmods */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned int <emphasis>
vm</emphasis>
@@ -3286,10 +3324,11 @@ provides the following convenience macros:
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
unsigned int <emphasis>
XkbSARedirectVMods</emphasis>
@@ -3298,7 +3337,7 @@ act</emphasis>
) /* macro */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbRedirectKeyAction <emphasis>
act</emphasis>
@@ -3316,10 +3355,11 @@ act</emphasis>
</literallayout>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
void <emphasis>
XkbSARedirectSetVMods</emphasis>
@@ -3328,14 +3368,14 @@ act, vm</emphasis>
) /* macro */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbRedirectKeyAction <emphasis>
act</emphasis>
; /* action in which to set vmods */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned int <emphasis>
v</emphasis>
@@ -3384,19 +3424,20 @@ type</emphasis>
field can have any one of the values shown in Table 16.17.
</para>
-<table frame='none'>
+<table frame='topbot'>
<title>Device Button Action Types</title>
-<tgroup cols='2'>
-<colspec colsep='0'/>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='2' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
+<colspec colname='c2' colwidth='2.0*'/>
<thead>
-<row rowsep='0'>
+<row rowsep='1'>
<entry>Type</entry>
<entry>Effect</entry>
</row>
</thead>
<tbody>
- <row rowsep='0'>
+ <row>
<entry><emphasis>XkbSA_DeviceBtn</emphasis></entry>
<entry>
<itemizedlist>
@@ -3443,7 +3484,7 @@ KeyRelease</emphasis>
</itemizedlist>
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry><emphasis>XkbSA_LockDeviceBtn</emphasis></entry>
<entry>
<itemizedlist>
@@ -3498,19 +3539,20 @@ flags</emphasis>
16.18.
</para>
-<table frame='none'>
+<table frame='topbot'>
<title>Device Button Action Flags</title>
-<tgroup cols='2'>
-<colspec colsep='0'/>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='2' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
+<colspec colname='c2' colwidth='2.0*'/>
<thead>
-<row rowsep='0'>
+<row rowsep='1'>
<entry>Flag</entry>
<entry>Meaning</entry>
</row>
</thead>
<tbody>
- <row rowsep='0'>
+ <row>
<entry><emphasis>XkbSA_LockNoLock</emphasis></entry>
<entry>
If set, and the action type is <emphasis>
@@ -3518,7 +3560,7 @@ XkbSA_LockDeviceBtn</emphasis>
, the server only unlocks the button.
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry><emphasis>XkbSA_LockNoUnlock</emphasis></entry>
<entry>
If set, and the action type is <emphasis>
@@ -3590,41 +3632,42 @@ val&lt;n&gt;Scale</emphasis>
is shown in that table also.
</para>
-<table frame='none'>
+<table frame='topbot'>
<title>Device Valuator v&lt;n&gt;_what High Bits Values</title>
-<tgroup cols='2'>
-<colspec colsep='0'/>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='2' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
+<colspec colname='c2' colwidth='2.0*'/>
<thead>
-<row rowsep='0'>
+<row rowsep='1'>
<entry>Value of high bits</entry>
<entry>Effect</entry>
</row>
</thead>
<tbody>
- <row rowsep='0'>
+ <row>
<entry><emphasis>XkbSA_IgnoreVal</emphasis></entry>
<entry>No action</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry><emphasis>XkbSA_SetValMin</emphasis></entry>
<entry>
<emphasis>v&lt;n&gt;_value</emphasis> is set to its minimum legal value.
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry><emphasis>XkbSA_SetValCenter</emphasis></entry>
<entry>
<emphasis>v&lt;n&gt;_value</emphasis>is centered (to (max-min)/2).
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry><emphasis>XkbSA_SetValMax</emphasis></entry>
<entry>
<emphasis>v&lt;n&gt;_value</emphasis> is set to its maximum legal value.
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry><emphasis>XkbSA_SetValRelative</emphasis></entry>
<entry>
<emphasis>v&lt;n&gt;_value</emphasis> * (2
@@ -3632,7 +3675,7 @@ val&lt;n&gt;Scale</emphasis>
<emphasis>v&lt;n&gt;_value</emphasis>.
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry><emphasis>XkbSA_SetValAbsolute</emphasis></entry>
<entry>
<emphasis>v&lt;n&gt;_value</emphasis>
@@ -3695,10 +3738,11 @@ XkbGetKeyActions</emphasis>
</para>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
Status <emphasis>
XkbGetKeyActions</emphasis>
@@ -3713,28 +3757,28 @@ num</emphasis>
)
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
Display *<emphasis>
dpy</emphasis>
; /* connection to X server */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned int <emphasis>
first</emphasis>
; /* keycode of first key of interest */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned int <emphasis>
num</emphasis>
; /* number of keys desired */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbDescPtr <emphasis>
xkb</emphasis>
@@ -3812,10 +3856,11 @@ XkbResizeKeyAction</emphasis>
</para>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
XkbAction *<emphasis>
XkbResizeKeyActions</emphasis>
@@ -3828,21 +3873,21 @@ xkb</emphasis>
)
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbDescRec *<emphasis>
xkb</emphasis>
; /* keyboard description to change */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
int <emphasis>
key</emphasis>
; /* keycode of key to change */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
int <emphasis>
needed</emphasis>
@@ -4021,19 +4066,20 @@ type</emphasis>
. Xkb supports the key behaviors shown in Table 16.20.
</para>
-<table frame='none'>
+<table frame='topbot'>
<title>Key Behaviors</title>
-<tgroup cols='2'>
-<colspec colsep='0'/>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='2' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
+<colspec colname='c2' colwidth='2.0*'/>
<thead>
-<row rowsep='0'>
+<row rowsep='1'>
<entry>Type</entry>
<entry>Effect</entry>
</row>
</thead>
<tbody>
- <row rowsep='0'>
+ <row>
<entry><emphasis>XkbKB_Default</emphasis></entry>
<entry>
Press and release events are processed normally. The <emphasis>
@@ -4041,7 +4087,7 @@ data</emphasis>
field is unused.
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry><emphasis>XkbKB_Lock</emphasis></entry>
<entry>
If a key is logically up (that is, the corresponding bit of the core key map is
@@ -4053,7 +4099,7 @@ data</emphasis>
field is unused.
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry><emphasis>XkbKB_RadioGroup</emphasis></entry>
<entry>
<para>
@@ -4078,7 +4124,7 @@ All other key release events are ignored.
</para>
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry><emphasis>XkbKB_Overlay1</emphasis></entry>
<entry>
If the <emphasis>
@@ -4091,7 +4137,7 @@ data</emphasis>
’s keycode. Otherwise, press and release events are processed normally.
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry><emphasis>XkbKB_Overlay2</emphasis></entry>
<entry>
If the <emphasis>
@@ -4136,10 +4182,11 @@ XkbGetKeyBehaviors</emphasis>
</para>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
Status <emphasis>
XkbGetKeyBehaviors</emphasis>
@@ -4154,28 +4201,28 @@ dpy</emphasis>
)
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
Display *<emphasis>
dpy</emphasis>
; /* connection to server */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned int <emphasis>
first</emphasis>
; /* keycode of first key to get */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned int <emphasis>
num</emphasis>
; /* number of keys for which behaviors are desired */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbDescPtr <emphasis>
xkb</emphasis>
@@ -4270,21 +4317,22 @@ this array is a mask that is a bitwise inclusive OR of the values shown in
Table 16.21.
</para>
-<table frame='none'>
+<table frame='topbot'>
<title>Explicit Component Masks</title>
-<tgroup cols='3'>
-<colspec colsep='0'/>
-<colspec colsep='0'/>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='3' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
+<colspec colname='c2' colwidth='1.0*'/>
+<colspec colname='c3' colwidth='2.0*'/>
<thead>
-<row rowsep='0'>
+<row rowsep='1'>
<entry>Bit in Explicit Mask</entry>
<entry>Value</entry>
<entry>Protects Against</entry>
</row>
</thead>
<tbody>
- <row rowsep='0'>
+ <row>
<entry><emphasis>ExplicitKeyType1</emphasis></entry>
<entry>(1&lt;&lt;0)</entry>
<entry>
@@ -4292,7 +4340,7 @@ Automatic determination of the key type associated with <emphasis>
Group1.</emphasis>
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry><emphasis>ExplicitKeyType2</emphasis></entry>
<entry>(1&lt;&lt;1)</entry>
<entry>
@@ -4300,7 +4348,7 @@ Automatic determination of the key type associated with <emphasis>
Group2.</emphasis>
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry><emphasis>ExplicitKeyType3</emphasis></entry>
<entry>(1&lt;&lt;2)</entry>
<entry>
@@ -4308,7 +4356,7 @@ Automatic determination of the key type associated with <emphasis>
Group3.</emphasis>
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry><emphasis>ExplicitKeyType4</emphasis></entry>
<entry>(1&lt;&lt;3)</entry>
<entry>
@@ -4316,7 +4364,7 @@ Automatic determination of the key type associated with <emphasis>
Group4.</emphasis>
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry><emphasis>ExplicitInterpret</emphasis></entry>
<entry>(1&lt;&lt;4)</entry>
<entry>
@@ -4324,13 +4372,13 @@ Application of any of the fields of a symbol interpretation to the
key in question.
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry><emphasis>ExplicitAutoRepeat</emphasis></entry>
<entry>(1&lt;&lt;5)</entry>
<entry>Automatic determination of auto-repeat status for the key, as
specified in a symbol interpretation.</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry><emphasis>ExplicitBehavior</emphasis></entry>
<entry>(1&lt;&lt;6)</entry>
<entry>
@@ -4341,7 +4389,7 @@ XkbSI_LockingKey</emphasis>
flag is set in a symbol interpretation.
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry><emphasis>ExplicitVModMap</emphasis></entry>
<entry>(1&lt;&lt;7)</entry>
<entry>
@@ -4365,10 +4413,11 @@ XkbGetKeyExplicitComponents</emphasis>.
</para>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
Status <emphasis>
XkbGetKeyExplicitComponents</emphasis>
@@ -4383,28 +4432,28 @@ dpy</emphasis>
)
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
Display *<emphasis>
dpy</emphasis>
; /* connection to server */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned int <emphasis>
first</emphasis>
; /* keycode of first key to fetch */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned int <emphasis>
num</emphasis>
; /* number of keys for which to get explicit info */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbDescPtr <emphasis>
xkb</emphasis>
@@ -4577,10 +4626,11 @@ XkbGetVirtualMods</emphasis>
</para>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
Status <emphasis>
XkbGetVirtualMods</emphasis>
@@ -4593,21 +4643,21 @@ dpy</emphasis>
)
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
Display *<emphasis>
dpy</emphasis>
; /* connection to server */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned int <emphasis>
which</emphasis>
; /* mask indicating virtual modifier bindings to get */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbDescPtr <emphasis>
xkb</emphasis>
@@ -4682,10 +4732,11 @@ XkbGetKeyVirtualModMap</emphasis>
</para>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
Status <emphasis>
XkbGetKeyVirtualModMap</emphasis>
@@ -4700,28 +4751,28 @@ dpy</emphasis>
)
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
Display *<emphasis>
dpy</emphasis>
; /* connection to server */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned int <emphasis>
first</emphasis>
; /* keycode of first key to fetch */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned int <emphasis>
num</emphasis>
; /* # keys for which virtual mod maps are desired */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbDescPtr <emphasis>
xkb</emphasis>
diff --git a/libX11/specs/XKB/ch17.xml b/libX11/specs/XKB/ch17.xml
index 2bf30275b..32a1c8cb6 100644
--- a/libX11/specs/XKB/ch17.xml
+++ b/libX11/specs/XKB/ch17.xml
@@ -205,30 +205,31 @@ ButtonPress</emphasis>
event, encoded as follows:
</para>
-<informaltable frame='none'>
-<tgroup cols='2'>
-<colspec colsep='0'/>
-<colspec colsep='0'/>
+<informaltable frame='topbot'>
+<?dbfo keep-together="always" ?>
+<tgroup cols='2' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
+<colspec colname='c1' colwidth='2.0*'/>
<thead>
- <row rowsep='0'>
+ <row rowsep='1'>
<entry>bits</entry>
<entry>meaning</entry>
</row>
</thead>
<tbody>
- <row rowsep='0'>
+ <row>
<entry>15</entry>
<entry>0</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>13-14</entry>
<entry>Group index</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>8-12</entry>
<entry>Pointer Buttons</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>0-7</entry>
<entry>Modifiers</entry>
</row>
@@ -470,10 +471,13 @@ modifiers specified in <emphasis>mods</emphasis>
are to be interpreted.
</para>
-<table frame='none'>
+<table frame='topbot'>
<title>Symbol Interpretation Match Criteria</title>
-<tgroup cols='3'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='3' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='2.0*'/>
+<colspec colname='c2' colwidth='1.0*'/>
+<colspec colname='c3' colwidth='3.0*'/>
<thead>
<row rowsep='1'>
<entry>Match Criteria</entry>
@@ -482,7 +486,7 @@ are to be interpreted.
</row>
</thead>
<tbody>
- <row rowsep='1'>
+ <row>
<entry><emphasis>XkbSI_NoneOf</emphasis></entry>
<entry>(0)</entry>
<entry>
@@ -490,7 +494,7 @@ None of the bits that are on in <emphasis>mods</emphasis>
can be set, but other bits can be.
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry><emphasis>XkbSI_AnyOfOrNone</emphasis></entry>
<entry>(1)</entry>
<entry>
@@ -499,7 +503,7 @@ mods</emphasis>
can be set, as well as others.
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry><emphasis>XkbSI_AnyOf</emphasis></entry>
<entry>(2)</entry>
<entry>
@@ -508,7 +512,7 @@ mods</emphasis>
can be set, as well as any others.
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry><emphasis>XkbSI_AllOf</emphasis></entry>
<entry>(3)</entry>
<entry>
@@ -517,7 +521,7 @@ mods</emphasis>
must be set, but others may be set as well.
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry><emphasis>XkbSI_Exactly</emphasis></entry>
<entry>(4)</entry>
<entry>
@@ -559,31 +563,32 @@ interpretation where:
</para>
<informaltable frame='none'>
-<tgroup cols='2'>
-<colspec colsep='0'/>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='2' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
+<colspec colname='c1' colwidth='3.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry><emphasis>sym</emphasis> =</entry>
<entry>0</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry><emphasis>flags</emphasis> =</entry>
<entry><emphasis>XkbSI_AutoRepeat</emphasis></entry>
</row>
- <row rowsep='0'>
+ <row>
<entry><emphasis>match</emphasis> =</entry>
<entry><emphasis>XkbSI_AnyOfOrNone</emphasis></entry>
</row>
- <row rowsep='0'>
+ <row>
<entry><emphasis>mods</emphasis> =</entry>
<entry>0</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry><emphasis>virtual_mod</emphasis> =</entry>
<entry><emphasis>XkbNoModifier</emphasis></entry>
</row>
- <row rowsep='0'>
+ <row>
<entry><emphasis>act</emphasis> =</entry>
<entry><emphasis>SA_NoAction</emphasis></entry>
@@ -756,10 +761,11 @@ compatibility map may be used to reconfigure other servers.
explicit override components of the server state.</para></note>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
Status <emphasis>
XkbGetCompatMap</emphasis>
@@ -768,21 +774,21 @@ display, which, xkb</emphasis>
)
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
Display * <emphasis>
display</emphasis>
; /* connection to server */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned int<emphasis>
which</emphasis>
; /* mask of compatibility map components to fetch */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbDescRec * <emphasis>
xkb</emphasis>
@@ -809,29 +815,32 @@ which</emphasis>
are an inclusive OR of the values shown in Table 17.2.
</para>
-<table frame='none'>
+<table frame='topbot'>
<title>Compatibility Map Component Masks</title>
-<tgroup cols='3'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='3' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.5*'/>
+<colspec colname='c2' colwidth='1.0*'/>
+<colspec colname='c3' colwidth='2.0*'/>
<thead>
-<row rowsep='0'>
+<row rowsep='1'>
<entry>Mask</entry>
<entry>Value</entry>
<entry>Affecting</entry>
</row>
</thead>
<tbody>
- <row rowsep='0'>
+ <row>
<entry><emphasis>XkbSymInterpMask</emphasis></entry>
<entry>(1&lt;&lt;0)</entry>
<entry>Symbol interpretations</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry><emphasis>XkbGroupCompatMask</emphasis></entry>
<entry>(1&lt;&lt;1)</entry>
<entry>Group maps</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry><emphasis>XkbAllCompatMask</emphasis></entry>
<entry>(0x3)</entry>
<entry>All compatibility map components</entry>
@@ -903,10 +912,11 @@ XkbUpdateMapFromCore</emphasis>
</para>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
Bool <emphasis>
XkbUpdateMapFromCore</emphasis>
@@ -925,42 +935,42 @@ xkb</emphasis>
)
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbDescPtr <emphasis>
xkb</emphasis>
; /* keyboard description to update */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
KeyCode <emphasis>
first_key</emphasis>
; /* keycode of first key description to update */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
int <emphasis>
num_keys</emphasis>
; /* number of key descriptions to update */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
int <emphasis>
map_width</emphasis>
; /* width of core protocol keymap */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
KeySym *<emphasis>
core_keysyms</emphasis>
; /* symbols in core protocol keymap */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbChangesPtr <emphasis>
changes</emphasis>
@@ -1044,10 +1054,11 @@ XkbKeyTypesForCoreSymbols</emphasis>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
int <emphasis>
XkbKeyTypesForCoreSymbols</emphasis>
@@ -1060,14 +1071,14 @@ map_width</emphasis>
)
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbDescPtr<emphasis>
xkb</emphasis>
; /* keyboard description in which to place symbols*/
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
int<emphasis>
map_width</emphasis>
@@ -1076,21 +1087,21 @@ xkb_syms_rtrn</emphasis>
*/
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
KeySym *<emphasis>
core_syms</emphasis>
; /* core protocol format array of KeySyms */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned int <emphasis>
protected</emphasis>
; /* explicit key types */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
int *<emphasis>
types_inout;</emphasis>
@@ -1098,7 +1109,7 @@ int *<emphasis>
for the key */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
KeySym * <emphasis>
xkb_syms_rtrn</emphasis>
@@ -1190,10 +1201,11 @@ XkbApplyCompatMapToKey</emphasis>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
Bool <emphasis>
XkbApplyCompatMapToKey</emphasis>
@@ -1206,21 +1218,21 @@ xkb</emphasis>
)
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbDescPtr<emphasis>
xkb; </emphasis>
/* keyboard description to be updated */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
KeyCode<emphasis>
key</emphasis>
; /* key to be updated */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbChangesPtr<emphasis>
changes</emphasis>
@@ -1264,10 +1276,11 @@ XkbSymInterpretRec</emphasis>
</para>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
Bool <emphasis>
XkbSetCompatMap</emphasis>
@@ -1276,28 +1289,28 @@ display, which, xkb, update_actions</emphasis>
)
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
Display * <emphasis>
display</emphasis>
; /* connection to server */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned int<emphasis>
which</emphasis>
; /* mask of compat map components to set */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbDescPtr <emphasis>
xkb</emphasis>
; /* source for compat map components */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
Bool <emphasis>
update_actions</emphasis>
@@ -1380,10 +1393,11 @@ XkbAddSymInterpret</emphasis>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
XkbSymInterpretPtr <emphasis>
XkbAddSymInterpret</emphasis>
@@ -1392,21 +1406,21 @@ xkb, si, updateMap, changes</emphasis>
)
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbDescPtr<emphasis>
xkb</emphasis>
; /* keyboard description to be updated */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbSymInterpretPtr<emphasis>
si</emphasis>
; /* symbol interpretation to be added */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
Bool<emphasis>
updateMap</emphasis>
@@ -1415,7 +1429,7 @@ True</emphasis>
=&gt;apply compatibility map to keys */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbChangesPtr<emphasis>
changes</emphasis>
@@ -1597,10 +1611,11 @@ XkbAllocCompatMap</emphasis>
</para>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
Status <emphasis>
XkbAllocCompatMap</emphasis>
@@ -1609,21 +1624,21 @@ xkb, which, num_si</emphasis>
)
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbDescPtr <emphasis>
xkb</emphasis>
; /* keyboard description in which to allocate compat map */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned int<emphasis>
which</emphasis>
; /* mask of compatibility map components to allocate */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned int<emphasis>
num_si</emphasis>
@@ -1709,10 +1724,11 @@ XkbFreeCompatMap</emphasis>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
void <emphasis>
XkbFreeCompatMap</emphasis>
@@ -1721,21 +1737,21 @@ xkb, which, free_map</emphasis>
)
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbDescPtr <emphasis>
xkb</emphasis>
; /* Xkb description in which to free compatibility map */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned int<emphasis>
which</emphasis>
; /* mask of compatibility map components to free */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
Bool <emphasis>
free_map</emphasis>
diff --git a/libX11/specs/XKB/ch18.xml b/libX11/specs/XKB/ch18.xml
index 98239bf2f..806b09a45 100644
--- a/libX11/specs/XKB/ch18.xml
+++ b/libX11/specs/XKB/ch18.xml
@@ -237,15 +237,16 @@ above. These masks and their relationships to the fields in a keyboard
description are shown in Table 18.1.
</para>
-<table frame='none'>
+<table frame='topbot'>
<title>Symbolic Names Masks</title>
-<tgroup cols='4'>
-<colspec colsep='0'/>
-<colspec colsep='0'/>
-<colspec colsep='0'/>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='4' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='3.0*'/>
+<colspec colname='c2' colwidth='1.0*'/>
+<colspec colname='c3' colwidth='1.5*'/>
+<colspec colname='c4' colwidth='2.0*'/>
<thead>
-<row rowsep='0'>
+<row rowsep='1'>
<entry>Mask Bit</entry>
<entry>Value</entry>
<entry>Keyboard Component</entry>
@@ -253,91 +254,91 @@ description are shown in Table 18.1.
</row>
</thead>
<tbody>
-<row rowsep='0'>
+<row>
<entry>XkbKeycodesNameMask</entry>
<entry>(1&lt;&lt;0)</entry>
<entry>Xkb-&gt;names</entry>
<entry>keycodes</entry>
</row>
-<row rowsep='0'>
+<row>
<entry>XkbGeometryNameMask</entry>
<entry>(1&lt;&lt;1)</entry>
<entry>Xkb-&gt;names</entry>
<entry>geometry</entry>
</row>
-<row rowsep='0'>
+<row>
<entry>XkbSymbolsNameMask</entry>
<entry>(1&lt;&lt;2)</entry>
<entry>Xkb-&gt;names</entry>
<entry>symbols</entry>
</row>
-<row rowsep='0'>
+<row>
<entry>XkbPhysSymbolsNameMask</entry>
<entry>(1&lt;&lt;3)</entry>
<entry>Xkb-&gt;names</entry>
<entry>phys_symbols</entry>
</row>
-<row rowsep='0'>
+<row>
<entry>XkbTypesNameMask</entry>
<entry>(1&lt;&lt;4)</entry>
<entry>Xkb-&gt;names</entry>
<entry>type</entry>
</row>
-<row rowsep='0'>
+<row>
<entry>XkbCompatNameMask</entry>
<entry>(1&lt;&lt;5)</entry>
<entry>Xkb-&gt;names</entry>
<entry>compat</entry>
</row>
-<row rowsep='0'>
+<row>
<entry>XkbKeyTypeNamesMask</entry>
<entry>(1&lt;&lt;6)</entry>
<entry>Xkb-&gt;map</entry>
<entry>type[*].name</entry>
</row>
-<row rowsep='0'>
+<row>
<entry>XkbKTLevelNamesMask</entry>
<entry>(1&lt;&lt;7)</entry>
<entry>Xkb-&gt;map</entry>
<entry>type[*].lvl_names[*]</entry>
</row>
-<row rowsep='0'>
+<row>
<entry>XkbIndicatorNamesMask</entry>
<entry>(1&lt;&lt;8)</entry>
<entry>Xkb-&gt;names</entry>
<entry>indicators[*]</entry>
</row>
-<row rowsep='0'>
+<row>
<entry>XkbKeyNamesMask</entry>
<entry>(1&lt;&lt;9)</entry>
<entry>Xkb-&gt;names</entry>
<entry>keys[*], num_keys</entry>
</row>
-<row rowsep='0'>
+<row>
<entry>XkbKeyAliasesMask</entry>
<entry>(1&lt;&lt;10)</entry>
<entry>Xkb-&gt;names</entry>
<entry>key_aliases[*], num_key_aliases</entry>
</row>
-<row rowsep='0'>
+<row>
<entry>XkbVirtualModNamesMask</entry>
<entry>(1&lt;&lt;11)</entry>
<entry>Xkb-&gt;names</entry>
<entry>vmods[*]</entry>
</row>
-<row rowsep='0'>
+<row>
<entry>XkbGroupNamesMask</entry>
<entry>(1&lt;&lt;12)</entry>
<entry>Xkb-&gt;names</entry>
<entry>groups[*]</entry>
</row>
-<row rowsep='0'>
+<row>
<entry>XkbRGNamesMask</entry>
<entry>(1&lt;&lt;13)</entry>
<entry>Xkb-&gt;names</entry>
<entry>radio_groups[*], num_rg</entry>
</row>
-<row rowsep='0'>
+<row>
<entry>XkbComponentNamesMask</entry>
<entry>(0x3f)</entry>
<entry>Xkb-&gt;names</entry>
@@ -350,7 +351,7 @@ description are shown in Table 18.1.
<para>compatibility map</para>
</entry>
</row>
-<row rowsep='0'>
+<row>
<entry>XkbAllNamesMask</entry>
<entry>(0x3fff)</entry>
<entry>Xkb-&gt;names</entry>
@@ -371,10 +372,11 @@ XkbGetNames</emphasis>
</para>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
Status <emphasis>
XkbGetNames</emphasis>
@@ -383,21 +385,21 @@ dpy, which, Xkb</emphasis>
)
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
Display * <emphasis>
dpy</emphasis>
; /* connection to the X server */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned int <emphasis>
which</emphasis>
; /* mask of names or map components to be updated */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbDescPtr <emphasis>
xkb</emphasis>
@@ -524,10 +526,11 @@ BadImplementation</emphasis>
</para>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
Bool <emphasis>
XkbSetNames</emphasis>
@@ -536,35 +539,35 @@ dpy, which, first_type, num_types, xkb</emphasis>
)
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
Display * <emphasis>
dpy</emphasis>
; /* connection to the X server */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned int <emphasis>
which</emphasis>
; /* mask of names or map components to be changed */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned int <emphasis>
first_type</emphasis>
; /* first type whose name is to be changed */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned int <emphasis>
num_types</emphasis>
; /* number of types for which names are to be changed */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbDescPtr <emphasis>
xkb</emphasis>
@@ -668,15 +671,16 @@ the fields in the structure specify the ranges that have changed for the
various kinds of symbolic names, as shown in Table 18.2.
</para>
-<table frame='none'>
+<table frame='topbot'>
<title>XkbNameChanges Fields</title>
-<tgroup cols='4'>
-<colspec colsep='0'/>
-<colspec colsep='0'/>
-<colspec colsep='0'/>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='4' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='2.0*'/>
+<colspec colname='c2' colwidth='1.0*'/>
+<colspec colname='c3' colwidth='1.0*'/>
+<colspec colname='c4' colwidth='2.0*'/>
<thead>
-<row rowsep='0'>
+<row rowsep='1'>
<entry>Mask</entry>
<entry>Fields</entry>
<entry>Component</entry>
@@ -684,7 +688,7 @@ various kinds of symbolic names, as shown in Table 18.2.
</row>
</thead>
<tbody>
-<row rowsep='0'>
+<row>
<entry>XkbKeyTypeNamesMask</entry>
<entry>
<para>first_type,</para>
@@ -693,7 +697,7 @@ various kinds of symbolic names, as shown in Table 18.2.
<entry>Xkb-&gt;map</entry>
<entry>type[*].name</entry>
</row>
-<row rowsep='0'>
+<row>
<entry>XkbKTLevelNamesMask</entry>
<entry>
<para>first_lvl,</para>
@@ -702,19 +706,19 @@ various kinds of symbolic names, as shown in Table 18.2.
<entry>Xkb-&gt;map</entry>
<entry>type[*].lvl_names[*]</entry>
</row>
-<row rowsep='0'>
+<row>
<entry>XkbKeyAliasesMask</entry>
<entry>num_aliases</entry>
<entry>Xkb-&gt;names</entry>
<entry>key_aliases[*]</entry>
</row>
-<row rowsep='0'>
+<row>
<entry>XkbRGNamesMask</entry>
<entry>num_rg</entry>
<entry>Xkb-&gt;names</entry>
<entry>radio_groups[*]</entry>
</row>
-<row rowsep='0'>
+<row>
<entry>XkbKeyNamesMask</entry>
<entry>
<para>first_key,</para>
@@ -723,19 +727,19 @@ various kinds of symbolic names, as shown in Table 18.2.
<entry>Xkb-&gt;names</entry>
<entry>keys[*]</entry>
</row>
-<row rowsep='0'>
+<row>
<entry>XkbVirtualModNamesMask</entry>
<entry>changed_vmods</entry>
<entry>Xkb-&gt;names</entry>
<entry>vmods[*]</entry>
</row>
-<row rowsep='0'>
+<row>
<entry>XkbIndicatorNamesMask</entry>
<entry>changed_indicators</entry>
<entry>Xkb-&gt;names</entry>
<entry>indicators[*]</entry>
</row>
-<row rowsep='0'>
+<row>
<entry>XkbGroupNamesMask</entry>
<entry>changed_groups</entry>
<entry>Xkb-&gt;names</entry>
@@ -756,10 +760,11 @@ XkbNameChangesRec</emphasis>
</para>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
Bool <emphasis>
XkbChangeNames</emphasis>
@@ -768,21 +773,21 @@ dpy, xkb, changes</emphasis>
)
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
Display * <emphasis>
dpy</emphasis>
; /* connection to the X server */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbDescPtr <emphasis>
xkb</emphasis>
; /* keyboard description from which names are to be taken */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbNameChangesPtr <emphasis>
changes</emphasis>
@@ -907,10 +912,11 @@ XkbNoteNameChanges</emphasis>
</para>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
void <emphasis>
XkbNoteNameChanges</emphasis>
@@ -923,7 +929,7 @@ old</emphasis>
)
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbNameChangesPtr <emphasis>
old</emphasis>
@@ -932,14 +938,14 @@ XkbNameChanges</emphasis>
structure to be updated */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbNamesNotifyEvent * <emphasis>
new</emphasis>
; /* event from which changes are to be copied */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned int <emphasis>
wanted</emphasis>
@@ -977,10 +983,11 @@ XkbNoteNameChanges</emphasis>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
Status <emphasis>
XkbGetNameChanges</emphasis>
@@ -993,21 +1000,21 @@ dpy</emphasis>
)
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
Display * <emphasis>
dpy</emphasis>
; /* connection to the X server */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbDescPtr <emphasis>
xkb</emphasis>
; /* keyboard description to which names are copied */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbNameChangesPtr <emphasis>
changes</emphasis>
@@ -1061,10 +1068,11 @@ XkbAllocNames</emphasis>
</para>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
Status <emphasis>
XkbAllocNames</emphasis>
@@ -1072,28 +1080,28 @@ XkbAllocNames</emphasis>
xkb, which, num_rg, num_key_aliases)</emphasis>
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbDescPtr <emphasis>
xkb;</emphasis>
/* keyboard description for which names are to be allocated */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned int <emphasis>
which;</emphasis>
/* mask of names to be allocated */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
int <emphasis>
num_rg;</emphasis>
/* total number of radio group names needed */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
int <emphasis>
num_key_aliases;</emphasis>
@@ -1134,10 +1142,11 @@ XkbFreeNames</emphasis>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
void <emphasis>
XkbFreeNames</emphasis>
@@ -1145,21 +1154,21 @@ XkbFreeNames</emphasis>
xkb, which, free_map)</emphasis>
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbDescPtr <emphasis>
xkb</emphasis>
; /* keyboard description for which names are to be freed */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned int <emphasis>
which</emphasis>
; /* mask of names components to be freed */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
Bool <emphasis>
free_map</emphasis>
diff --git a/libX11/specs/XKB/ch19.xml b/libX11/specs/XKB/ch19.xml
index b00afc34b..4b4b0a023 100644
--- a/libX11/specs/XKB/ch19.xml
+++ b/libX11/specs/XKB/ch19.xml
@@ -208,12 +208,13 @@ and<emphasis>
detail parameter to a mask composed of a bitwise OR of masks in Table 19.1.
</para>
-<table frame='none'>
+<table frame='topbot'>
<title>XkbNewKeyboardNotifyEvent Details</title>
-<tgroup cols='3'>
-<colspec colsep='0'/>
-<colspec colsep='0'/>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='3' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='2.0*'/>
+<colspec colname='c2' colwidth='1.0*'/>
+<colspec colname='c3' colwidth='2.0*'/>
<thead>
<row rowsep='1'>
<entry>XkbNewKeyboardNotify Event Details</entry>
@@ -222,22 +223,22 @@ and<emphasis>
</row>
</thead>
<tbody>
- <row rowsep='1'>
+ <row>
<entry><emphasis>XkbNKN_KeycodesMask</emphasis></entry>
<entry>(1L&lt;&lt;0)</entry>
<entry>Notification of keycode range changes wanted</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry><emphasis>XkbNKN_GeometryMask</emphasis></entry>
<entry>(1L&lt;&lt;1)</entry>
<entry>Notification of geometry changes wanted</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>XkbNKN_DeviceIDMask</entry>
<entry>(1L&lt;&lt;2)</entry>
<entry>Notification of device ID changes wanted</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry><emphasis>XkbNKN_AllChangesMask</emphasis></entry>
<entry>(0x7)</entry>
<entry>Includes all of the above masks</entry>
diff --git a/libX11/specs/XKB/ch20.xml b/libX11/specs/XKB/ch20.xml
index 20d5b27d4..6067b5b8f 100644
--- a/libX11/specs/XKB/ch20.xml
+++ b/libX11/specs/XKB/ch20.xml
@@ -9,21 +9,22 @@ partial descriptions. Table 20.1 identifies the component types and the type of
information they contain.
</para>
-<table frame='none'>
+<table frame='topbot'>
<title>Server Database Keyboard Components</title>
-<tgroup cols='3'>
-<colspec colsep='0'/>
-<colspec colsep='0'/>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='3' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
+<colspec colname='c2' colwidth='1.0*'/>
+<colspec colname='c3' colwidth='1.5*'/>
<thead>
-<row rowsep='0'>
+<row rowsep='1'>
<entry>Component Type</entry>
<entry>Component Primary Contents</entry>
<entry>May also contain</entry>
</row>
</thead>
<tbody>
- <row rowsep='0'>
+ <row>
<entry>Keymap</entry>
<entry>
<para>Complete keyboard description</para>
@@ -31,7 +32,7 @@ information they contain.
</entry>
<entry></entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>Keycodes</entry>
<entry>
<para>Symbolic name for each key</para>
@@ -43,14 +44,14 @@ information they contain.
<para>Description of indicators physically present</para>
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>Types</entry>
<entry>Key types</entry>
<entry>
Real modifier bindings and symbolic names for some virtual modifiers
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>Compatibility</entry>
<entry>Rules used to assign actions to keysyms</entry>
<entry>
@@ -58,7 +59,7 @@ Real modifier bindings and symbolic names for some virtual modifiers
<para>Real modifier bindings and symbolic names for some virtual modifiers</para>
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>Symbols</entry>
<entry>
<para>Symbol mapping for keyboard keys</para>
@@ -70,7 +71,7 @@ Real modifier bindings and symbolic names for some virtual modifiers
<para>Real modifier bindings and symbolic names for some virtual modifiers</para>
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>Geometry</entry>
<entry>Layout of the keyboard</entry>
<entry>
@@ -164,10 +165,11 @@ XkbListComponents</emphasis>
</para>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
XkbComponentListPtr<emphasis>
XkbListComponents</emphasis>
@@ -182,14 +184,14 @@ max_inout</emphasis>
)
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
Display * <emphasis>
dpy</emphasis>
; /* connection to X server */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned int <emphasis>
device_spec</emphasis>
@@ -198,14 +200,14 @@ XkbUseCoreKbd</emphasis>
*/
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbComponentNamesPtr <emphasis>
ptrns</emphasis>
; /* namelist for components of interest */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
int * <emphasis>
max_inout</emphasis>
@@ -366,17 +368,18 @@ XkbFreeComponentList</emphasis>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
void <emphasis>
XkbFreeComponentList</emphasis>
(list)
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbComponentListPtr list; /* pointer to <emphasis>
XkbComponentListRec</emphasis>
@@ -424,15 +427,16 @@ XkbLC_AlternateGroup</emphasis>
may be combined with any of the other flags).
</para>
-<table frame='none'>
+<table frame='topbot'>
<title>XkbComponentNameRec Flags Bits</title>
-<tgroup cols='4'>
-<colspec colsep='0'/>
-<colspec colsep='0'/>
-<colspec colsep='0'/>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='4' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.5*'/>
+<colspec colname='c2' colwidth='3.0*'/>
+<colspec colname='c3' colwidth='2.0*'/>
+<colspec colname='c4' colwidth='1.0*'/>
<thead>
-<row rowsep='0'>
+<row rowsep='1'>
<entry>Component Type</entry>
<entry>Component Hints (flags)</entry>
<entry>Meaning</entry>
@@ -440,79 +444,79 @@ XkbLC_AlternateGroup</emphasis>
</row>
</thead>
<tbody>
-<row rowsep='0'>
+<row>
<entry>All Components</entry>
<entry><para><emphasis>XkbLC_Hidden</emphasis></para></entry>
<entry>Do not present to user</entry>
<entry>(1L&lt;&lt;0)</entry>
</row>
-<row rowsep='0'>
+<row>
<entry></entry>
<entry><emphasis>XkbLC_Default</emphasis></entry>
<entry>Default member of class</entry>
<entry>(1L&lt;&lt;1)</entry>
</row>
-<row rowsep='0'>
+<row>
<entry></entry>
<entry><emphasis>XkbLC_Partial</emphasis></entry>
<entry>Partial component</entry>
<entry>(1L&lt;&lt;2)</entry>
</row>
-<row rowsep='0'>
+<row>
<entry>Keymap</entry>
<entry>none</entry>
<entry></entry>
<entry></entry>
</row>
-<row rowsep='0'>
+<row>
<entry>Keycodes</entry>
<entry>none</entry>
<entry></entry>
<entry></entry>
</row>
-<row rowsep='0'>
+<row>
<entry>Types</entry>
<entry>none</entry>
<entry></entry>
<entry></entry>
</row>
-<row rowsep='0'>
+<row>
<entry>Compatibility</entry>
<entry>none</entry>
<entry></entry>
<entry></entry>
</row>
-<row rowsep='0'>
+<row>
<entry>Symbols</entry>
<entry><emphasis>XkbLC_AlphanumericKeys</emphasis></entry>
<entry>Bindings primarily for alphanumeric keyboard section</entry>
<entry>(1L&lt;&lt;8)</entry>
</row>
-<row rowsep='0'>
+<row>
<entry></entry>
<entry><emphasis>XkbLC_ModifierKeys</emphasis></entry>
<entry>Bindings primarily for modifier keys</entry>
<entry>(1L&lt;&lt;9)</entry>
</row>
-<row rowsep='0'>
+<row>
<entry></entry>
<entry><emphasis>XkbLC_KeypadKeys</emphasis></entry>
<entry>Bindings primarily for numeric keypad keys</entry>
<entry>(1L&lt;&lt;10)</entry>
</row>
-<row rowsep='0'>
+<row>
<entry></entry>
<entry><emphasis>XkbLC_FunctionKeys</emphasis></entry>
<entry>Bindings primarily for function keys</entry>
<entry>(1L&lt;&lt;11)</entry>
</row>
-<row rowsep='0'>
+<row>
<entry></entry>
<entry><emphasis>XkbLC_AlternateGroup</emphasis></entry>
<entry>Bindings for an alternate group</entry>
<entry>(1L&lt;&lt;12)</entry>
</row>
-<row rowsep='0'>
+<row>
<entry>Geometry</entry>
<entry>none</entry>
<entry></entry>
@@ -549,10 +553,11 @@ XkbGetKeyboardByName</emphasis>
</para>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
XkbDescPtr <emphasis>
XkbGetKeyboardByName</emphasis>
@@ -571,14 +576,14 @@ load</emphasis>
)
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
Display * <emphasis>
dpy</emphasis>
; /* connection to X server */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned int <emphasis>
device_spec</emphasis>
@@ -587,28 +592,28 @@ XkbUseCoreKbd</emphasis>
*/
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbComponentNamesPtr <emphasis>
names</emphasis>
; /* names of components to fetch */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned int <emphasis>
want</emphasis>
; /* desired structures in returned record */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned int <emphasis>
need</emphasis>
; /* mandatory structures in returned record */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
Bool <emphasis>
load</emphasis>
@@ -832,66 +837,67 @@ compat</emphasis>
</emphasis>
</para>
-<table frame='none'>
+<table frame='topbot'>
<title>Want and Need Mask Bits and Required Names Components</title>
-<tgroup cols='3'>
-<colspec colsep='0'/>
-<colspec colsep='0'/>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='3' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='2.4*'/>
+<colspec colname='c2' colwidth='2.6*'/>
+<colspec colname='c3' colwidth='1.0*'/>
<thead>
-<row rowsep='0'>
+<row rowsep='1'>
<entry>want or need mask bit</entry>
<entry>Required names Components</entry>
<entry>value</entry>
</row>
</thead>
<tbody>
- <row rowsep='0'>
+ <row>
<entry>XkbGBN_TypesMask</entry>
<entry>Types</entry>
<entry>(1L&lt;&lt;0)</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>XkbGBN_CompatMapMask</entry>
<entry>Compat</entry>
<entry>(1L&lt;&lt;1)</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>XkbGBN_ClientSymbolsMask</entry>
<entry>Types + Symbols + Keycodes</entry>
<entry>(1L&lt;&lt;2)</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>XkbGBN_ServerSymbolsMask</entry>
<entry>Types + Symbols + Keycodes</entry>
<entry>(1L&lt;&lt;3)</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>XkbGBN_SymbolsMask</entry>
<entry>Symbols</entry>
<entry>(1L&lt;&lt;1)</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>XkbGBN_IndicatorMapMask</entry>
<entry>Compat</entry>
<entry>(1L&lt;&lt;4)</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>XkbGBN_KeyNamesMask</entry>
<entry>Keycodes</entry>
<entry>(1L&lt;&lt;5)</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>XkbGBN_GeometryMask</entry>
<entry>Geometry</entry>
<entry>(1L&lt;&lt;6)</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>XkbGBN_OtherNamesMask</entry>
<entry>Types + Symbols + Keycodes + Compat + Geometry</entry>
<entry>(1L&lt;&lt;7)</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>XkbGBN_AllComponentsMask</entry>
<entry></entry>
<entry>(0xff)</entry>
@@ -988,51 +994,52 @@ XkbDescRec</emphasis>
components that are filled in.
</para>
-<table frame='none'>
+<table frame='topbot'>
<title>XkbDescRec Components Returned for Values of Want &amp; Needs</title>
-<tgroup cols='3'>
-<colspec colsep='0'/>
-<colspec colsep='0'/>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='3' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
+<colspec colname='c2' colwidth='1.0*'/>
+<colspec colname='c3' colwidth='1.0*'/>
<thead>
-<row rowsep='0'>
+<row rowsep='1'>
<entry>Request (want+need)</entry>
<entry>Fills in Xkb components</entry>
<entry>Equivalent Function Call</entry>
</row>
</thead>
<tbody>
- <row rowsep='0'>
+ <row>
<entry>XkbGBN_TypesMask</entry>
<entry>map.types</entry>
<entry>XkbGetUpdatedMap(dpy, XkbTypesMask, Xkb)</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>XkbGBN_ServerSymbolsMask</entry>
<entry>server</entry>
<entry>XkbGetUpdatedMap(dpy, XkbAllClientInfoMask, Xkb)</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>XkbGBN_ClientSymbolsMask</entry>
<entry>map, including map.types</entry>
<entry>XkbGetUpdatedMap(dpy, XkbAllServerInfoMask, Xkb)</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>XkbGBN_IndicatorMaps</entry>
<entry>indicators</entry>
<entry>XkbGetIndicatorMap(dpy, XkbAllIndicators, Xkb)</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>XkbGBN_CompatMapMask</entry>
<entry>compat</entry>
<entry>XkbGetCompatMap(dpy, XkbAllCompatMask, Xkb)</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>XkbGBN_GeometryMask</entry>
<entry>geom</entry>
<entry>XkbGetGeometry(dpy, Xkb)</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>XkbGBN_KeyNamesMask</entry>
<entry>
<para>names.keys</para>
@@ -1042,7 +1049,7 @@ XkbDescRec</emphasis>
XkbGetNames(dpy, XkbKeyNamesMask | XkbKeyAliasesMask, Xkb)
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>XkbGBN_OtherNamesMask</entry>
<entry>
<para>names.keycodes</para>
@@ -1113,10 +1120,11 @@ XkbGetKeyboard</emphasis>
</para>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
XkbDescPtr <emphasis>
XkbGetKeyboard</emphasis>
@@ -1129,14 +1137,14 @@ device_spec</emphasis>
)
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
Display * <emphasis>
dpy</emphasis>
; /* connection to X server */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned int<emphasis>
which</emphasis>
@@ -1145,7 +1153,7 @@ XkbDescRec</emphasis>
of interest */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned int <emphasis>
device_spec</emphasis>
diff --git a/libX11/specs/XKB/ch21.xml b/libX11/specs/XKB/ch21.xml
index bd5738991..7b2c653ba 100644
--- a/libX11/specs/XKB/ch21.xml
+++ b/libX11/specs/XKB/ch21.xml
@@ -225,15 +225,16 @@ same bits are used to indicate the specific information desired in many of the
functions described subsequently in this section.
</para>
-<table frame='none'>
+<table frame='topbot'>
<title>XkbDeviceInfoRec Mask Bits</title>
-<tgroup cols='4'>
-<colspec colsep='0'/>
-<colspec colsep='0'/>
-<colspec colsep='0'/>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='4' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='2.9*'/>
+<colspec colname='c2' colwidth='2.0*'/>
+<colspec colname='c3' colwidth='0.9*'/>
+<colspec colname='c4' colwidth='2.0*'/>
<thead>
- <row rowsep='0'>
+ <row rowsep='1'>
<entry>Name</entry>
<entry>XkbDeviceInfoRec Fields Effected</entry>
<entry>Value</entry>
@@ -241,7 +242,7 @@ functions described subsequently in this section.
</row>
</thead>
<tbody>
- <row rowsep='0'>
+ <row>
<entry>XkbXI_KeyboardsMask</entry>
<entry></entry>
<entry>(1L &lt;&lt; 0)</entry>
@@ -251,7 +252,7 @@ Clients can use all Xkb requests and events with
devices supported by the input device extension.
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>XkbXI_ButtonActionsMask</entry>
<entry>
<para>num_btns</para>
@@ -264,7 +265,7 @@ KeyClass</emphasis>
input extension devices.
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>XkbXI_IndicatorNamesMask</entry>
<entry>leds-&gt;names</entry>
<entry>(1L &lt;&lt;2)</entry>
@@ -274,7 +275,7 @@ KeyClass</emphasis>
input extension devices.
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>XkbXI_IndicatorMapsMask</entry>
<entry>leds-&gt;maps</entry>
<entry>(1L &lt;&lt;3)</entry>
@@ -284,7 +285,7 @@ KeyClass</emphasis>
input extension devices.
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>XkbXI_IndicatorStateMask</entry>
<entry>leds-&gt;state</entry>
<entry>(1L &lt;&lt;4)</entry>
@@ -294,7 +295,7 @@ KeyClass</emphasis>
input extension devices.
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>XkbXI_IndicatorsMask</entry>
<entry>
<para>sz_leds</para>
@@ -303,42 +304,42 @@ KeyClass</emphasis>
</entry>
<entry>(0x1c)</entry>
<entry>
-<para>XkbXI_IndicatorNamesMask |</para>
-<para>XkbXI_IndicatorMapsMask |</para>
-<para>XkbXI_IndicatorStateMask</para>
+<para>XkbXI_IndicatorNames&#xAD;Mask |</para>
+<para>XkbXI_IndicatorMaps&#xAD;Mask |</para>
+<para>XkbXI_IndicatorState&#xAD;Mask</para>
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>XkbXI_UnsupportedFeaturesMask</entry>
<entry>unsupported</entry>
<entry>(1L &lt;&lt;15)</entry>
<entry></entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>XkbXI_AllDeviceFeaturesMask</entry>
<entry>Those selected by Value column masks</entry>
<entry>(0x1e)</entry>
<entry>
-<para>XkbXI_IndicatorsMask | </para>
-<para>XkbSI_ButtonActionsMask</para>
+<para>XkbXI_Indicators&#xAD;Mask | </para>
+<para>XkbSI_ButtonActions&#xAD;Mask</para>
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>XkbXI_AllFeaturesMask</entry>
<entry>Those selected by Value column masks</entry>
<entry>(0x1f)</entry>
<entry>
-<para>XkbSI_AllDeviceFeaturesMask |</para>
-<para>XkbSI_KeyboardsMask</para>
+<para>XkbSI_AllDevice&#xAD;FeaturesMask |</para>
+<para>XkbSI_Keyboards&#xAD;Mask</para>
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry>XkbXI_AllDetailsMask</entry>
<entry>Those selected by Value column masks</entry>
<entry>(0x801f)</entry>
<entry>
-<para>XkbXI_AllFeaturesMask | </para>
-<para>XkbXI_UnsupportedFeaturesMask</para>
+<para>XkbXI_AllFeatures&#xAD;Mask | </para>
+<para>XkbXI_Unsupported&#xAD;FeaturesMask</para>
</entry>
</row>
</tbody>
@@ -376,10 +377,11 @@ KeyClass</emphasis>
</para>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
XkbDeviceInfoPtr <emphasis>
XkbGetDeviceInfo</emphasis>
@@ -388,20 +390,20 @@ dpy</emphasis>
, which, device_spec, ind_class, ind_id)
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
Display * <emphasis>
dpy</emphasis>
; /* connection to X server */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned int which; /* mask indicating information to
return */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned int <emphasis>
device_spec</emphasis>
@@ -410,14 +412,14 @@ XkbUseCoreKbd</emphasis>
*/
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned int <emphasis>
ind_class</emphasis>
; /* feedback class for indicator requests */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned int <emphasis>
ind_id</emphasis>
@@ -613,10 +615,11 @@ XkbGetDeviceButtonActions.
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
Status <emphasis>
XkbGetDeviceButtonActions</emphasis>
@@ -625,20 +628,20 @@ dpy, device_info, all_buttons, first_button, num_buttons</emphasis>
)
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
Display * <emphasis>
dpy</emphasis>
; /* connection to X server */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbDeviceInfoPtr device_info; /* structure to update with
results */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
Bool <emphasis>
all_buttons</emphasis>
@@ -647,13 +650,13 @@ True</emphasis>
=&gt; get information for all buttons */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned int first_button; /* number of first button for
which info is desired */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned int num_buttons; /* number of buttons for which
info is desired */
@@ -746,10 +749,11 @@ of an input extension device, use XkbGetDeviceLedInfo.
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
Status <emphasis>
XkbGetDeviceLedInfo</emphasis>
@@ -758,33 +762,33 @@ dpy, device_i</emphasis>
nfo, led_class, led_id, which)
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
Display * <emphasis>
dpy</emphasis>
; /* connection to X server */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbDeviceInfoPtr device_info; /* structure to update with
results */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned int <emphasis>
led_class</emphasis>
; /* LED feedback class assigned by input extension */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned int led_id; /* LED feedback ID assigned by input
extension */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned int which; /* mask indicating desired
information */
@@ -934,30 +938,31 @@ XkbDeviceInfoRec</emphasis>
</para>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
XkbDeviceInfoPtr <emphasis>
XkbAllocDeviceInfo</emphasis>
(device_spec, n_buttons, sz_leds)
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned int device_spec; /* device ID with which
structure will be used */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned int <emphasis>
n_buttons</emphasis>
; /* number of button actions to allocate space for*/
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned int <emphasis>
sz_leds</emphasis>
@@ -1004,24 +1009,25 @@ XkbDeviceLedInfoRec</emphasis>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
Status <emphasis>
XkbAllocDeviceLedInfo</emphasis>
(devi, num_needed)
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbDeviceInfoPtr <emphasis>
device_info</emphasis>
; /* structure in which to allocate LED space */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
int <emphasis>
num_needed</emphasis>
@@ -1060,30 +1066,31 @@ XkbDeviceLedInfoRec</emphasis>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
XkbDeviceLedInfoPtr <emphasis>
XkbAddDeviceLedInfo</emphasis>
(device_info, led_class, led_id)
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbDeviceInfoPtr device_info; /* structure in which to
add LED info */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned int <emphasis>
led_class</emphasis>
; /* input extension class for LED device of interest */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned int <emphasis>
led_id</emphasis>
@@ -1154,23 +1161,24 @@ XkbDeviceInfoRec</emphasis>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
Status <emphasis>
XkbResizeDeviceButtonActions</emphasis>
(device_info, new_total)
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbDeviceInfoPtr device_info; /* structure in which to
allocate button actions */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned int <emphasis>
new_total</emphasis>
@@ -1217,24 +1225,25 @@ XkbDeviceInfoRec</emphasis>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
void <emphasis>
XkbFreeDeviceInfo</emphasis>
(device_info, which, free_all)
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbDeviceInfoPtr device_info; /* pointer to <emphasis>
XkbDeviceInfoRec</emphasis>
in which to free items */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned int <emphasis>
which</emphasis>
@@ -1243,7 +1252,7 @@ device_info</emphasis>
to free */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
Bool <emphasis>
free_all</emphasis>
@@ -1379,10 +1388,11 @@ use XkbSetDeviceInfo.
</para>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
Bool <emphasis>
XkbSetDeviceInfo</emphasis>
@@ -1391,21 +1401,21 @@ dpy</emphasis>
, which, device_info)
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
Display * <emphasis>
dpy</emphasis>
; /* connection to X server */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned int <emphasis>
which</emphasis>
; /* mask indicating characteristics to modify */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbDeviceInfoPtr device_info; /* structure defining the
device and modifications */
@@ -1577,10 +1587,11 @@ XkbSetDeviceButtonActions.
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
Bool <emphasis>
XkbSetDeviceButtonActions</emphasis>
@@ -1589,26 +1600,26 @@ dpy</emphasis>
, device, first_button, num_buttons, actions)
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
Display * <emphasis>
dpy</emphasis>
; /* connection to X server */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbDeviceInfoPtr device_info; /* structure defining the
device and modifications */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned int first_button; /* number of first button to
update, 0 relative */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned int num_buttons; /* number of buttons to update
*/
@@ -1842,10 +1853,11 @@ XkbExtensionDeviceNotify</emphasis>
</para>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
void <emphasis>
XkbNoteDeviceChanges</emphasis>
@@ -1854,21 +1866,21 @@ old, new, wanted</emphasis>
)
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbDeviceChangesPtr <emphasis>
old</emphasis>
; /* structure tracking state changes */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbExtensionDeviceNotifyEvent * <emphasis>
new</emphasis>
; /* event indicating state changes */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned int <emphasis>
wanted</emphasis>
@@ -1921,10 +1933,11 @@ XkbGetDeviceInfoChanges.
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
Status <emphasis>
XkbGetDeviceInfoChanges</emphasis>
@@ -1935,20 +1948,20 @@ device_info</emphasis>
, changes)
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
Display * <emphasis>
dpy</emphasis>
; /* connection to X server */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbDeviceInfoPtr device_info; /* structure to update with
results */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbDeviceChangesPtr <emphasis>
changes</emphasis>
@@ -1985,10 +1998,11 @@ XkbDeviceChangesRec, use XkbChangeDeviceInfo.
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
Bool <emphasis>
XkbChangeDeviceInfo</emphasis>
@@ -1997,21 +2011,21 @@ dpy, device_info, changes</emphasis>
)
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
Display * <emphasis>
dpy</emphasis>
; /* connection to X server */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbDeviceInfoPtr <emphasis>
device_info</emphasis>
; /* local copy of device state and configuration */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
XkbDeviceChangesPtr <emphasis>
changes</emphasis>
diff --git a/libX11/specs/XKB/ch22.xml b/libX11/specs/XKB/ch22.xml
index 8a509b7d4..4dea73387 100644
--- a/libX11/specs/XKB/ch22.xml
+++ b/libX11/specs/XKB/ch22.xml
@@ -21,10 +21,11 @@ XkbSetDebuggingFlags</emphasis>
</para>
<informaltable frame='none'>
-<tgroup cols='1'>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='1' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep='0'>
+ <row>
<entry role='functiondecl'>
Bool <emphasis>
XkbSetDebuggingFlags</emphasis>
@@ -33,21 +34,21 @@ display, mask, flags, msg, ctrls_mask, ctrls, ret_flags, ret_ctrls</emphasis>
)
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
Display * <emphasis>
display</emphasis>
; /* connection to X server */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned int <emphasis>
mask</emphasis>
; /* mask selecting debug output flags to change */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned int <emphasis>
flags</emphasis>
@@ -56,21 +57,21 @@ mask</emphasis>
*/
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
char * <emphasis>
msg</emphasis>
; /* message to print right now */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned int <emphasis>
ctrls_mask</emphasis>
; /* mask selecting debug controls to change */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned int <emphasis>
ctrls</emphasis>
@@ -79,14 +80,14 @@ ctrls_mask</emphasis>
*/
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned int * <emphasis>
ret_flags</emphasis>
; /* resulting state of all debug output flags */
</entry>
</row>
- <row rowsep='0'>
+ <row>
<entry role='functionargdecl'>
unsigned int * <emphasis>
ret_ctrls</emphasis>
@@ -160,21 +161,22 @@ flags</emphasis>
are. The valid controls bits are defined in Table 22.1.
</para>
-<table frame='none'>
+<table frame='topbot'>
<title>Debug Control Masks</title>
-<tgroup cols='3'>
-<colspec colsep='0'/>
-<colspec colsep='0'/>
-<colspec colsep='0'/>
+<?dbfo keep-together="always" ?>
+<tgroup cols='3' align='left' colsep='0' rowsep='0'>
+<colspec colname='c1' colwidth='1.5*'/>
+<colspec colname='c2' colwidth='1.0*'/>
+<colspec colname='c3' colwidth='2.0*'/>
<thead>
-<row rowsep='0'>
+<row rowsep='1'>
<entry>Debug Control Mask</entry>
<entry>Value</entry>
<entry>Meaning</entry>
</row>
</thead>
<tbody>
-<row rowsep='0'>
+<row>
<entry>XkbDF_DisableLocks</entry>
<entry>(1 &lt;&lt; 0)</entry>
<entry>Disable actions that lock modifiers</entry>
diff --git a/libX11/specs/i18n/framework/framework.xml b/libX11/specs/i18n/framework/framework.xml
index 79688e712..632430181 100644
--- a/libX11/specs/i18n/framework/framework.xml
+++ b/libX11/specs/i18n/framework/framework.xml
@@ -350,50 +350,51 @@ The following values are defined as standard arguments. Other values
are implementation dependent.
</para>
-<informaltable frame="none">
- <tgroup cols='3' align='left'>
- <colspec colname='c1' colwidth="3*" colsep="0"/>
- <colspec colname='c2' colwidth="1*" colsep="0"/>
- <colspec colname='c3' colwidth="3*" colsep="0"/>
+<informaltable frame="topbot">
+ <?dbfo keep-together="always" ?>
+ <tgroup cols='3' align='left' colsep='0' rowsep='0'>
+ <colspec colname='c1' colwidth="3.0*"/>
+ <colspec colname='c2' colwidth="1.0*"/>
+ <colspec colname='c3' colwidth="3.0*"/>
<thead>
- <row>
+ <row rowsep='1'>
<entry>Name</entry>
<entry>Type</entry>
<entry>Description</entry>
</row>
</thead>
<tbody>
- <row rowsep="0">
+ <row>
<entry>XlcNCodeset</entry>
<entry>char*</entry>
<entry>codeset part of locale name</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>XlcNDefaultString</entry>
<entry>char*</entry>
<entry>XDefaultString()</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>XlcNEncodingName</entry>
<entry>char*</entry>
<entry>encoding name</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>XlcNLanguage</entry>
<entry>char*</entry>
<entry>language part of locale name</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>XlcNMbCurMax</entry>
<entry>int</entry>
<entry>ANSI C MB_CUR_MAX</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>XlcNStateDependentEncoding</entry>
<entry>Bool</entry>
<entry>is state-dependent encoding or not</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>XlcNTerritory</entry>
<entry>char*</entry>
<entry>territory part of locale name</entry>
@@ -465,130 +466,131 @@ returns NULL, if no XlcCharSet bound to specified "<emphasis remap='I'>name</emp
The following character sets are pre-registered.
</para>
-<informaltable frame="none">
- <tgroup cols='2' align='left'>
- <colspec colname='c1' colwidth="1*" colsep="0"/>
- <colspec colname='c2' colwidth="2*" colsep="0"/>
+<informaltable frame="topbot">
+ <?dbfo keep-together="auto" ?>
+ <tgroup cols='2' align='left' colsep='0' rowsep='0'>
+ <colspec colname='c1' colwidth="1.0*"/>
+ <colspec colname='c2' colwidth="2.0*"/>
<thead>
- <row>
+ <row rowsep='1'>
<entry>Name</entry>
<entry>Description</entry>
</row>
</thead>
<tbody>
- <row rowsep="0">
+ <row>
<entry>ISO8859-1:GL</entry>
<entry>7-bit ASCII graphics (ANSI X3.4-1968),</entry>
</row>
- <row rowsep="0">
+ <row>
<entry></entry>
<entry>Left half of ISO 8859 sets</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>JISX0201.1976-0:GL</entry>
<entry>Left half of JIS X0201-1976 (reaffirmed 1984),</entry>
</row>
- <row rowsep="0">
+ <row>
<entry></entry>
<entry>8-Bit Alphanumeric-Katakana Code</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>ISO8859-1:GR</entry>
<entry>Right half of ISO 8859-1, Latin alphabet No. 1</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>ISO8859-2:GR</entry>
<entry>Right half of ISO 8859-2, Latin alphabet No. 2</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>ISO8859-3:GR</entry>
<entry>Right half of ISO 8859-3, Latin alphabet No. 3</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>ISO8859-4:GR</entry>
<entry>Right half of ISO 8859-4, Latin alphabet No. 4</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>ISO8859-7:GR</entry>
<entry>Right half of ISO 8859-7, Latin/Greek alphabet</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>ISO8859-6:GR</entry>
<entry>Right half of ISO 8859-6, Latin/Arabic alphabet</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>ISO8859-8:GR</entry>
<entry>Right half of ISO 8859-8, Latin/Hebrew alphabet</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>ISO8859-5:GR</entry>
<entry>Right half of ISO 8859-5, Latin/Cyrillic alphabet</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>ISO8859-9:GR</entry>
<entry>Right half of ISO 8859-9, Latin alphabet No. 5</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>JISX0201.1976-0:GR</entry>
<entry>Right half of JIS X0201-1976 (reaffirmed 1984),</entry>
</row>
- <row rowsep="0">
+ <row>
<entry></entry>
<entry>8-Bit Alphanumeric-Katakana Code</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>GB2312.1980-0:GL</entry>
<entry>GB2312-1980, China (PRC) Hanzi defined as GL</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>GB2312.1980-0:GR</entry>
<entry>GB2312-1980, China (PRC) Hanzi defined as GR</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>JISX0208.1983-0:GL</entry>
<entry>JIS X0208-1983, Japanese Graphic Character Set</entry>
</row>
- <row rowsep="0">
+ <row>
<entry></entry>
<entry>defined as GL</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>JISX0208.1983-0:GR</entry>
<entry>JIS X0208-1983, Japanese Graphic Character Set</entry>
</row>
- <row rowsep="0">
+ <row>
<entry></entry>
<entry>defined as GR</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>KSC5601.1987-0:GL</entry>
<entry>KS C5601-1987, Korean Graphic Character Set</entry>
</row>
- <row rowsep="0">
+ <row>
<entry></entry>
<entry>defined as GL</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>KSC5601.1987-0:GR</entry>
<entry>KS C5601-1987, Korean Graphic Character Set</entry>
</row>
- <row rowsep="0">
+ <row>
<entry></entry>
<entry>defined as GR</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>JISX0212.1990-0:GL</entry>
<entry>JIS X0212-1990, Japanese Graphic Character Set</entry>
</row>
- <row rowsep="0">
+ <row>
<entry></entry>
<entry>defined as GL</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>JISX0212.1990-0:GR</entry>
<entry>JIS X0212-1990, Japanese Graphic Character Set</entry>
</row>
- <row rowsep="0">
+ <row>
<entry></entry>
<entry>defined as GR</entry>
</row>
@@ -636,45 +638,46 @@ be obtained. The following values are defined as standard arguments.
Other values are implementation dependent.
</para>
-<informaltable frame="none">
- <tgroup cols='3' align='left'>
- <colspec colname='c1' colwidth="3*" colsep="0"/>
- <colspec colname='c2' colwidth="1*" colsep="0"/>
- <colspec colname='c3' colwidth="3*" colsep="0"/>
+<informaltable frame="topbot">
+ <?dbfo keep-together="always" ?>
+ <tgroup cols='3' align='left' colsep='0' rowsep='0'>
+ <colspec colname='c1' colwidth="2.0*"/>
+ <colspec colname='c2' colwidth="1.0*"/>
+ <colspec colname='c3' colwidth="3.0*"/>
<thead>
- <row>
+ <row rowsep='1'>
<entry>Name</entry>
<entry>Type</entry>
<entry>Description</entry>
</row>
</thead>
<tbody>
- <row rowsep="0">
+ <row>
<entry>XlcNName</entry>
<entry>char*</entry>
<entry>charset name</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>XlcNEncodingName</entry>
<entry>char*</entry>
<entry>XLFD CharSet Registry and Encoding</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>XlcNSide</entry>
<entry>XlcSide</entry>
<entry>charset side (GL, GR, ...)</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>XlcNCharSize</entry>
<entry>int</entry>
<entry>number of octets per character</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>XlcNSetSize</entry>
<entry>int</entry>
<entry>number of character sets</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>XlcNControlSequence</entry>
<entry>char*</entry>
<entry>control sequence of Compound Text</entry>
@@ -750,14 +753,15 @@ The following types are pre-defined. Other types are implementation
dependent.
</para>
-<informaltable>
- <tgroup cols='4' align='left'>
- <colspec colname='c1' colwidth="3*" colsep="0"/>
- <colspec colname='c2' colwidth="1*" colsep="0"/>
- <colspec colname='c3' colwidth="3*" colsep="0"/>
- <colspec colname='c4' colwidth="2*" colsep="0"/>
+<informaltable frame="topbot">
+ <?dbfo keep-together="always" ?>
+ <tgroup cols='4' align='left' colsep='0' rowsep='0'>
+ <colspec colname='c1' colwidth="2.0*"/>
+ <colspec colname='c2' colwidth="1.0*"/>
+ <colspec colname='c3' colwidth="2.0*"/>
+ <colspec colname='c4' colwidth="3.0*"/>
<thead>
- <row>
+ <row rowsep='1'>
<entry>Name</entry>
<entry>Type</entry>
<entry>Description</entry>
@@ -765,37 +769,37 @@ dependent.
</row>
</thead>
<tbody>
- <row rowsep="0">
+ <row>
<entry>XlcNMultiByte</entry>
<entry>char *</entry>
<entry>multibyte</entry>
<entry>-</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>XlcNWideChar</entry>
<entry>wchar_t *</entry>
<entry>wide character</entry>
<entry>-</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>XlcNCompoundText</entry>
<entry>char *</entry>
<entry>COMPOUND_TEXT</entry>
<entry>-</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>XlcNString</entry>
<entry>char *</entry>
<entry>STRING</entry>
<entry>-</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>XlcNCharSet</entry>
<entry>char *</entry>
<entry>per charset</entry>
<entry>XlcCharSet</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>XlcNChar</entry>
<entry>char *</entry>
<entry>per character</entry>
@@ -863,25 +867,26 @@ The following 2 converters prepared by locale returns appropriate
charset (XlcCharSet) in an area pointed by args[0].
</para>
-<informaltable frame="none">
- <tgroup cols='3' align='left'>
- <colspec colname='c1' colwidth="1*" colsep="0"/>
- <colspec colname='c2' colwidth="1*" colsep="0"/>
- <colspec colname='c3' colwidth="2*" colsep="0"/>
+<informaltable frame="topbot">
+ <?dbfo keep-together="always" ?>
+ <tgroup cols='3' align='left' colsep='0' rowsep='0'>
+ <colspec colname='c1' colwidth="1.0*"/>
+ <colspec colname='c2' colwidth="1.0*"/>
+ <colspec colname='c3' colwidth="2.0*"/>
<thead>
- <row>
+ <row rowsep='1'>
<entry>From</entry>
<entry>To</entry>
<entry>Description</entry>
</row>
</thead>
<tbody>
- <row rowsep="0">
+ <row>
<entry>XlcNMultiByte</entry>
<entry>XlcNCharSet</entry>
<entry>Segmentation (Decomposing)</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>XlcNWideChar</entry>
<entry>XlcNCharSet</entry>
<entry>Segmentation (Decomposing)</entry>
diff --git a/libX11/specs/i18n/localedb/localedb.xml b/libX11/specs/i18n/localedb/localedb.xml
index c08516125..caacd82d5 100644
--- a/libX11/specs/i18n/localedb/localedb.xml
+++ b/libX11/specs/i18n/localedb/localedb.xml
@@ -155,127 +155,128 @@ The format of category definition is;
</para>
<informaltable frame="none">
- <tgroup cols='3' align='left'>
- <colspec colname='c1' colwidth="3*" colsep="0"/>
- <colspec colname='c2' colwidth="1*" colsep="0"/>
- <colspec colname='c3' colwidth="6*" colsep="0"/>
+ <?dbfo keep-together="auto" ?>
+ <tgroup cols='3' align='left' colsep='0' rowsep='0'>
+ <colspec colname='c1' colwidth='3.0*'/>
+ <colspec colname='c2' colwidth='1.0*'/>
+ <colspec colname='c3' colwidth='6.0*'/>
<tbody>
- <row rowsep="0">
+ <row>
<entry>CategoryDefinition</entry>
<entry>::=</entry>
<entry>CategoryHeader CategorySpec CategoryTrailer</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>CategoryHeader</entry>
<entry>::=</entry>
<entry>CategoryName NL</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>CategorySpec</entry>
<entry>::=</entry>
<entry>{ ClassSpec }</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>CategoryTrailer</entry>
<entry>::=</entry>
<entry>"END" Delimiter CategoryName NL</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>CategoryName</entry>
<entry>::=</entry>
<entry>String</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>ClassSpec</entry>
<entry>::=</entry>
<entry>ClassName Delimiter ClassValue NL</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>ClassName</entry>
<entry>::=</entry>
<entry>String</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>ClassValue</entry>
<entry>::=</entry>
<entry>ValueList | "{" NL { ClassSpec } "}"</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>ValueList</entry>
<entry>::=</entry>
<entry>Value | Value ";" ValueList</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>Value</entry>
<entry>::=</entry>
<entry>ValuePiece | ValuePiece Value</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>ValuePiece</entry>
<entry>::=</entry>
<entry>String | QuotedString | NumericString</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>String</entry>
<entry>::=</entry>
<entry>Char { Char }</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>QuotedString</entry>
<entry>::=</entry>
<entry>""" QuotedChar { QuotedChar } """</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>NumericString</entry>
<entry>::=</entry>
<entry>"\\o" OctDigit { OctDigit }</entry>
</row>
- <row rowsep="0">
+ <row>
<entry></entry>
<entry>|</entry>
<entry>"\\d" DecDigit { DecDigit }</entry>
</row>
- <row rowsep="0">
+ <row>
<entry></entry>
<entry>|</entry>
<entry>"\\x" HexDigit { HexDigit }</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>Char</entry>
<entry>::=</entry>
<entry>&lt;XPCS except NL, Space or unescaped reserved symbols&gt;</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>QuotedChar</entry>
<entry>::=</entry>
<entry>&lt;XPCS except unescaped """&gt;</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>OctDigit</entry>
<entry>::=</entry>
<entry>&lt;character in the range of "0" - "7"&gt;</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>DecDigit</entry>
<entry>::=</entry>
<entry>&lt;character in the range of "0" - "9"&gt;</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>HexDigit</entry>
<entry>::=</entry>
<entry>&lt;character in the range of "0" - "9", "a" - "f", "A" - "F"&gt;</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>Delimiter</entry>
<entry>::=</entry>
<entry>Space { Space }</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>Space</entry>
<entry>::=</entry>
<entry>&lt;space&gt; | &lt;horizontal tab&gt;</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>NL</entry>
<entry>::=</entry>
<entry>&lt;newline&gt;</entry>
@@ -317,14 +318,14 @@ In current sample implementation, categories listed below are available.
</para>
<informaltable frame="none">
- <tgroup cols='3' align='left'>
- <colspec colname='c1' colwidth="2*" colsep="0"/>
- <colspec colname='c2' colwidth="1*" colsep="0"/>
+ <?dbfo keep-together="always" ?>
+ <tgroup cols='1' align='left' colsep='0' rowsep='0'>
+ <colspec colname='c1' colwidth='1.0*'/>
<tbody>
- <row rowsep="0">
+ <row>
<entry>XLC_FONTSET:XFontSet relative information</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>XLC_XLOCALE:Character classification and conversion information</entry>
</row>
</tbody>
@@ -340,30 +341,31 @@ It contains the CHARSET_REGISTRY-CHARSET_ENCODING name and character
mapping side (GL, GR, etc), and is used in Output Method (OM).
</para>
-<informaltable frame="none">
- <tgroup cols='3' align='left'>
+<informaltable frame="topbot">
+ <?dbfo keep-together="always" ?>
+ <tgroup cols='3' align='left' colsep='0' rowsep='0'>
<thead>
- <colspec colname='c1' colwidth="3*" colsep="0"/>
- <colspec colname='c2' colwidth="1*" colsep="0"/>
- <colspec colname='c3' colwidth="3*" colsep="0"/>
- <row>
+ <colspec colname='c1' colwidth='3.0*'/>
+ <colspec colname='c2' colwidth='1.0*'/>
+ <colspec colname='c3' colwidth='3.0*'/>
+ <row rowsep='1'>
<entry>class</entry>
<entry>super class</entry>
<entry>description</entry>
</row>
</thead>
<tbody>
- <row rowsep="0">
+ <row>
<entry>fsN</entry>
<entry></entry>
<entry>Nth fontset (N=0,1,2, ...)</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>charset</entry>
<entry>fsN</entry>
<entry>list of encoding name</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>font</entry>
<entry>fsN</entry>
<entry>list of font encoding name</entry>
@@ -393,22 +395,23 @@ Specifies an encoding information to be used internally in Xlib
for this fontset. The format of value is;
</para>
<informaltable frame="none">
- <tgroup cols='3' align='left'>
- <colspec colname='c1' colwidth="3*" colsep="0"/>
- <colspec colname='c2' colwidth="1*" colsep="0"/>
- <colspec colname='c3' colwidth="4*" colsep="0"/>
+ <?dbfo keep-together="always" ?>
+ <tgroup cols='3' align='left' colsep='0' rowsep='0'>
+ <colspec colname='c1' colwidth='3.0*'/>
+ <colspec colname='c2' colwidth='1.0*'/>
+ <colspec colname='c3' colwidth='4.0*'/>
<tbody>
- <row rowsep="0">
+ <row>
<entry>EncodingInfo</entry>
<entry>::=</entry>
<entry>EncodingName [ ":" EncodingSide ]</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>EncodingName</entry>
<entry>::=</entry>
<entry>CHARSET_REGISTRY-CHARSET_ENCODING</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>EncodingSide</entry>
<entry>::=</entry>
<entry>"GL" | "GR"</entry>
@@ -447,70 +450,71 @@ The XLC_XLOCALE category defines character classification, conversion
and other character attributes.
</para>
-<informaltable frame="none">
- <tgroup cols='3' align='left'>
- <colspec colname='c1' colwidth="3*" colsep="0"/>
- <colspec colname='c2' colwidth="1*" colsep="0"/>
- <colspec colname='c3' colwidth="3*" colsep="0"/>
+<informaltable frame="topbot">
+ <?dbfo keep-together="always" ?>
+ <tgroup cols='3' align='left' colsep='0' rowsep='0'>
+ <colspec colname='c1' colwidth='3.0*'/>
+ <colspec colname='c2' colwidth='1.0*'/>
+ <colspec colname='c3' colwidth='3.0*'/>
<thead>
- <row>
+ <row rowsep='1'>
<entry>class</entry>
<entry>super class</entry>
<entry>description</entry>
</row>
</thead>
<tbody>
- <row rowsep="0">
+ <row>
<entry>encoding_name</entry>
<entry></entry>
<entry>codeset name</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>mb_cur_max</entry>
<entry></entry>
<entry>MB_CUR_MAX</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>state_depend_encoding</entry>
<entry></entry>
<entry>state dependent or not</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>wc_encoding_mask</entry>
<entry></entry>
<entry>for parsing wc string</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>wc_shift_bits</entry>
<entry></entry>
<entry>for conversion between wc and mb</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>csN</entry>
<entry></entry>
<entry>Nth charset (N=0,1,2,...)</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>side</entry>
<entry>csN</entry>
<entry>mapping side (GL, etc)</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>length</entry>
<entry>csN</entry>
<entry>length of a character</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>mb_encoding</entry>
<entry>csN</entry>
<entry>for parsing mb string</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>wc_encoding</entry>
<entry>csN</entry>
<entry>for parsing wc string</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>ct_encoding</entry>
<entry>csN</entry>
<entry>list of encoding name for ct</entry>
@@ -610,32 +614,33 @@ Specifies a list of shift sequence for parsing multi-byte string.
The format of this value is;
</para>
<informaltable frame="none">
- <tgroup cols='3' align='left'>
- <colspec colname='c1' colwidth="3*" colsep="0"/>
- <colspec colname='c2' colwidth="1*" colsep="0"/>
- <colspec colname='c3' colwidth="5*" colsep="0"/>
+ <?dbfo keep-together="always" ?>
+ <tgroup cols='3' align='left' colsep='0' rowsep='0'>
+ <colspec colname='c1' colwidth='3.0*'/>
+ <colspec colname='c2' colwidth='1.0*'/>
+ <colspec colname='c3' colwidth='5.0*'/>
<tbody>
- <row rowsep="0">
+ <row>
<entry>MBEncoding</entry>
<entry>::=</entry>
<entry>ShiftType ShiftSequence</entry>
</row>
- <row rowsep="0">
+ <row>
<entry></entry>
<entry>|</entry>
<entry>ShiftType ShiftSequence ";" MBEncoding</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>ShiftType</entry>
<entry>::=</entry>
<entry>"&lt;SS&gt;"|"&lt;LSL&gt;"|"&lt;LSR&gt;"</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>ShiftSequence</entry>
<entry>::=</entry>
<entry>SequenceValue|SequenceValue ShiftSequence</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>SequenceValue</entry>
<entry>::=</entry>
<entry>NumericString</entry>
diff --git a/libX11/specs/i18n/trans/trans.xml b/libX11/specs/i18n/trans/trans.xml
index afbc69403..68611ea34 100644
--- a/libX11/specs/i18n/trans/trans.xml
+++ b/libX11/specs/i18n/trans/trans.xml
@@ -152,15 +152,16 @@ typedef struct {
</literallayout>
<informaltable frame="none">
- <tgroup cols="2">
- <colspec colname="col1" colwidth="1*" colsep="0"/>
- <colspec colname="col2" colwidth="1*" colsep="0"/>
+ <?dbfo keep-together="always" ?>
+ <tgroup cols="2" align='left' colsep='0' rowsep='0'>
+ <colspec colname="col1" colwidth='1.0*'/>
+ <colspec colname="col2" colwidth='1.0*'/>
<tbody>
- <row rowsep="0">
+ <row>
<entry><emphasis>transport_name</emphasis></entry>
<entry>name of transport<footnote><para>Refer to "The Input Method Protocol: Appendix B</para></footnote></entry>
</row>
- <row rowsep="0">
+ <row>
<entry><emphasis>config</emphasis></entry>
<entry>initial configuration function</entry>
</row>
@@ -276,16 +277,17 @@ Following functions are used for the transport interface.
</para>
<table frame="all" id="transport_layer_functions_2">
+ <?dbfo keep-together="always" ?>
<title>The Transport Layer Functions</title>
- <tgroup cols="3">
- <colspec colname="col1" colwidth="3*" colsep="1"/>
- <colspec colname="col2" colwidth="3*" colsep="1"/>
- <colspec colname="col3" colwidth="1*" colsep="1"/>
+ <tgroup cols="3" align='left' colsep='1' rowsep='1'>
+ <colspec colname="col1" colwidth="3.0*"/>
+ <colspec colname="col2" colwidth="3.0*"/>
+ <colspec colname="col3" colwidth='1.0*'/>
<thead>
<row>
- <entry align="center">Alternate Entry (Interface Layer)</entry>
- <entry align="center">XimProto member (Transport Layer)</entry>
- <entry align="center">Section</entry>
+ <entry align='center'>Alternate Entry (Interface Layer)</entry>
+ <entry align='center'>XimProto member (Transport Layer)</entry>
+ <entry align='center'>Section</entry>
</row>
</thead>
<tbody>
@@ -1105,66 +1107,67 @@ window of XIM_SERVER selection, which the IM Server has created.
Refer to "The Input Method Protocol" for the XIM_SERVER atom.
</para>
-<table frame="none" id="transport_layer_functions">
+<table frame="topbot" id="transport_layer_functions">
+ <?dbfo keep-together="always" ?>
<title>The ClientMessage sent to the IMS window.</title>
- <tgroup cols="3">
- <colspec colname="col1" colwidth="1*" colsep="0"/>
- <colspec colname="col2" colwidth="1*" colsep="1"/>
- <colspec colname="col3" colwidth="3.5*" colsep="0"/>
- <spanspec namest="col1" nameend="col2" spanname="span-horiz" align="left"/>
+ <tgroup cols="3" align='left' colsep='0' rowsep='0'>
+ <colspec colname="col1" colwidth='1.0*'/>
+ <colspec colname="col2" colwidth='1.0*' colsep='1'/>
+ <colspec colname="col3" colwidth="3.5*"/>
+ <spanspec namest="col1" nameend="col2" spanname="span-horiz"/>
<thead>
- <row>
- <entry align="left" spanname="span-horiz">Structure Member</entry>
- <entry align="left">Contents</entry>
+ <row rowsep='1'>
+ <entry spanname="span-horiz" colsep='1'>Structure Member</entry>
+ <entry>Contents</entry>
</row>
</thead>
<tbody>
- <row rowsep="0">
+ <row>
<entry>int</entry>
<entry>type</entry>
<entry>ClientMessage</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>u_long</entry>
<entry>serial</entry>
<entry>Set by the X Window System</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>Bool</entry>
<entry>send_event</entry>
<entry>Set by the X Window System</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>Display</entry>
<entry>*display</entry>
<entry>The display to which connects</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>Window</entry>
<entry>window</entry>
<entry>IMS Window ID</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>Atom</entry>
<entry>message_type</entry>
<entry>XInternAtom(display, "_XIM_CONNECT", false)</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>int</entry>
<entry>format</entry>
<entry>32</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>long</entry>
<entry>data.1[0]</entry>
<entry>client communication window ID</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>long</entry>
<entry>data.1[1]</entry>
<entry>client-major-transport-version(*1)</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>long</entry>
<entry>data.1[2]</entry>
<entry>client-major-transport-version(*1)</entry>
@@ -1179,71 +1182,72 @@ window), the IM Server sends a ClientMessage in the following event's
format to the client communication window.
</para>
-<table frame="none" id="clientmessage_sent_by_im_server">
+<table frame="topbot" id="clientmessage_sent_by_im_server">
+ <?dbfo keep-together="always" ?>
<title>The ClientMessage sent by IM Server.</title>
- <tgroup cols="3">
- <colspec colname="col1" colwidth="1*" colsep="0"/>
- <colspec colname="col2" colwidth="1*" colsep="1"/>
- <colspec colname="col3" colwidth="3.5*" colsep="0"/>
- <spanspec namest="col1" nameend="col2" spanname="span-horiz" align="left"/>
+ <tgroup cols="3" colsep='0' rowsep='0'>
+ <colspec colname="col1" colwidth='1.0*'/>
+ <colspec colname="col2" colwidth='1.0*' colsep="1"/>
+ <colspec colname="col3" colwidth="3.5*"/>
+ <spanspec namest="col1" nameend="col2" spanname="span-horiz"/>
<thead>
- <row>
- <entry align="left" spanname="span-horiz">Structure Member</entry>
- <entry align="left">Contents</entry>
+ <row rowsep='1'>
+ <entry spanname="span-horiz" colsep='1'>Structure Member</entry>
+ <entry>Contents</entry>
</row>
</thead>
<tbody>
- <row rowsep="0">
+ <row>
<entry>int</entry>
<entry>type</entry>
<entry>ClientMessage</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>u_long</entry>
<entry>serial</entry>
<entry>Set by the X Window System</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>Bool</entry>
<entry>send_event</entry>
<entry>Set by the X Window System</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>Display</entry>
<entry>*display</entry>
<entry>The display to which connects</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>Window</entry>
<entry>window</entry>
<entry>IMS Window ID</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>Atom</entry>
<entry>message_type</entry>
<entry>XInternAtom(display, "_XIM_CONNECT", false)</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>int</entry>
<entry>format</entry>
<entry>32</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>long</entry>
<entry>data.1[0]</entry>
<entry>client communication window ID</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>long</entry>
<entry>data.1[1]</entry>
<entry>client-major-transport-version(*1)</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>long</entry>
<entry>data.1[2]</entry>
<entry>client-major-transport-version(*1)</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>long</entry>
<entry>data.1[3]</entry>
<entry>dividing size between ClientMessage and Property(*2)</entry>
@@ -1262,11 +1266,12 @@ major/minor-transport-version, as follows:
</para>
<table frame="all" id="readwrite_method_and_the_majorminor_transport_version">
-<title>The read/write method and the major/minor-transport-version</title>
- <tgroup cols="3">
- <colspec colname="col1" colwidth="1*" colsep="1"/>
- <colspec colname="col2" colwidth="1*" colsep="1"/>
- <colspec colname="col3" colwidth="3*" colsep="1"/>
+ <?dbfo keep-together="always" ?>
+ <title>The read/write method and the major/minor-transport-version</title>
+ <tgroup cols="3" colsep='1' rowsep='1'>
+ <colspec colname="col1" colwidth='1.0*'/>
+ <colspec colname="col2" colwidth='1.0*'/>
+ <colspec colname="col3" colwidth="3.0*"/>
<spanspec namest="col1" nameend="col2" spanname="span-horiz" align="center"/>
<thead>
<row>
@@ -1280,25 +1285,25 @@ major/minor-transport-version, as follows:
</row>
</thead>
<tbody>
- <row rowsep="0">
+ <row>
<entry morerows="2">0</entry>
<entry>0</entry>
<entry>only-CM &amp; Property-with-CM</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>1</entry>
<entry>only-CM &amp; multi-CM</entry>
</row>
- <row rowsep="1">
+ <row>
<entry>2</entry>
<entry>only-CM &amp; multi-CM &amp; Property-with-CM</entry>
</row>
- <row rowsep="1">
+ <row>
<entry>1</entry>
<entry>0</entry>
<entry>PropertyNotify</entry>
</row>
- <row rowsep="0">
+ <row>
<entry morerows="1">2</entry>
<entry>0</entry>
<entry>only-CM &amp; PropertyNotify</entry>
@@ -1380,56 +1385,57 @@ the X Window System.
If data is sent via ClientMessage event, the format is as follows:
</para>
-<table frame="none" id="clientmessage_events_format_first_or_middle">
+<table frame="topbot" id="clientmessage_events_format_first_or_middle">
+ <?dbfo keep-together="always" ?>
<title>The ClientMessage event's format (first or middle)</title>
- <tgroup cols="3">
- <colspec colname="col1" colwidth="1*" colsep="0"/>
- <colspec colname="col2" colwidth="1*" colsep="1"/>
- <colspec colname="col3" colwidth="3.5*" colsep="0"/>
- <spanspec namest="col1" nameend="col2" spanname="span-horiz" align="left"/>
+ <tgroup cols="3" align='left' colsep='0' rowsep='0'>
+ <colspec colname="col1" colwidth='1.0*'/>
+ <colspec colname="col2" colwidth='1.0*' colsep="1"/>
+ <colspec colname="col3" colwidth="3.5*"/>
+ <spanspec namest="col1" nameend="col2" spanname="span-horiz"/>
<thead>
- <row>
- <entry align="left" spanname="span-horiz">Structure Member</entry>
- <entry align="left">Contents</entry>
+ <row rowsep='1'>
+ <entry spanname="span-horiz" colsep='1'>Structure Member</entry>
+ <entry>Contents</entry>
</row>
</thead>
<tbody>
- <row rowsep="0">
+ <row>
<entry>int</entry>
<entry>type</entry>
<entry>ClientMessage</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>u_long</entry>
<entry>serial</entry>
<entry>Set by the X Window System</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>Bool</entry>
<entry>send_event</entry>
<entry>Set by the X Window System</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>Display</entry>
<entry>*display</entry>
<entry>The display to which connects</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>Window</entry>
<entry>window</entry>
<entry>IMS Window ID</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>Atom</entry>
<entry>message_type</entry>
<entry>XInternAtom(display, "_XIM_MOREDATA", False)</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>int</entry>
<entry>format</entry>
<entry>8</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>char</entry>
<entry>data.b[20]</entry>
<entry>(read/write DATA : 20 byte)</entry>
@@ -1440,56 +1446,57 @@ If data is sent via ClientMessage event, the format is as follows:
-<table frame="none" id="clientmessage_events_format_only_or_last">
+<table frame="topbot" id="clientmessage_events_format_only_or_last">
+ <?dbfo keep-together="always" ?>
<title>The ClientMessage event's format (only or last)</title>
- <tgroup cols="3">
- <colspec colname="col1" colwidth="1*" colsep="0"/>
- <colspec colname="col2" colwidth="1*" colsep="1"/>
- <colspec colname="col3" colwidth="3.5*" colsep="0"/>
- <spanspec namest="col1" nameend="col2" spanname="span-horiz" align="left"/>
+ <tgroup cols="3" align='left' colsep='0' rowsep='0'>
+ <colspec colname="col1" colwidth='1.0*'/>
+ <colspec colname="col2" colwidth='1.0*' colsep="1"/>
+ <colspec colname="col3" colwidth="3.5*"/>
+ <spanspec namest="col1" nameend="col2" spanname="span-horiz"/>
<thead>
- <row>
- <entry align="left" spanname="span-horiz">Structure Member</entry>
- <entry align="left">Contents</entry>
+ <row rowsep='1'>
+ <entry spanname="span-horiz" colsep='1'>Structure Member</entry>
+ <entry>Contents</entry>
</row>
</thead>
<tbody>
- <row rowsep="0">
+ <row>
<entry>int</entry>
<entry>type</entry>
<entry>ClientMessage</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>u_long</entry>
<entry>serial</entry>
<entry>Set by the X Window System</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>Bool</entry>
<entry>send_event</entry>
<entry>Set by the X Window System</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>Display</entry>
<entry>*display</entry>
<entry>The display to which connects</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>Window</entry>
<entry>window</entry>
<entry>IMS Window ID</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>Atom</entry>
<entry>message_type</entry>
<entry>XInternAtom(display, "_XIM_PROTOCOL", False)</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>int</entry>
<entry>format</entry>
<entry>8</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>char</entry>
<entry>data.b[20]</entry>
<entry>(read/write DATA : MAX 20 byte)
@@ -1534,51 +1541,52 @@ The arguments of the XChangeProperty are as follows:
</para>
-<table frame="none" id="xchangeproperty_events_format">
+<table frame="topbot" id="xchangeproperty_events_format">
+ <?dbfo keep-together="always" ?>
<title>The XChangeProperty event's format</title>
- <tgroup cols="3">
- <colspec colname="col1" colwidth="1*" colsep="0"/>
- <colspec colname="col2" colwidth="1*" colsep="1"/>
- <colspec colname="col3" colwidth="3.5*" colsep="0"/>
+ <tgroup cols="3" align='left' colsep='0' rowsep='0'>
+ <colspec colname="col1" colwidth='1.0*'/>
+ <colspec colname="col2" colwidth='1.0*' colsep="1"/>
+ <colspec colname="col3" colwidth="3.5*"/>
<spanspec namest="col1" nameend="col2" spanname="span-horiz" align="left"/>
<thead>
- <row>
- <entry align="left" spanname="span-horiz">Argument</entry>
- <entry align="left">Contents</entry>
+ <row rowsep='1'>
+ <entry spanname="span-horiz" colsep='1'>Argument</entry>
+ <entry>Contents</entry>
</row>
</thead>
<tbody>
- <row rowsep="0">
+ <row>
<entry>Display</entry>
<entry>*display</entry>
<entry>The display to which connects</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>Window</entry>
<entry>window</entry>
<entry>IMS communication window ID</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>Atom</entry>
<entry>property</entry>
<entry>read/write property Atom (*1)</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>int</entry>
<entry>format</entry>
<entry>8</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>int</entry>
<entry>mode</entry>
<entry>PropModeAppend</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>u_char</entry>
<entry>*data</entry>
<entry>read/write DATA</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>int</entry>
<entry>nelements</entry>
<entry>length of DATA</entry>
@@ -1603,61 +1611,62 @@ If Atom is notified via ClientMessage event, the format of the ClientMessage
is as follows:
</para>
-<table frame="none" id="clientmessage_events_format_to_send_atom_of_property">
+<table frame="topbot" id="clientmessage_events_format_to_send_atom_of_property">
+ <?dbfo keep-together="always" ?>
<title>The ClientMessage event's format to send Atom of property</title>
- <tgroup cols="3">
- <colspec colname="col1" colwidth="1*" colsep="0"/>
- <colspec colname="col2" colwidth="1*" colsep="1"/>
- <colspec colname="col3" colwidth="3.5*" colsep="0"/>
- <spanspec namest="col1" nameend="col2" spanname="span-horiz" align="left"/>
+ <tgroup cols="3" align='left' colsep='0' rowsep='0'>
+ <colspec colname="col1" colwidth='1.0*'/>
+ <colspec colname="col2" colwidth='1.0*' colsep="1"/>
+ <colspec colname="col3" colwidth="3.5*"/>
+ <spanspec namest="col1" nameend="col2" spanname="span-horiz"/>
<thead>
- <row>
- <entry align="left" spanname="span-horiz">Structure Member</entry>
- <entry align="left">Contents</entry>
+ <row rowsep='1'>
+ <entry spanname="span-horiz" colsep='1'>Structure Member</entry>
+ <entry>Contents</entry>
</row>
</thead>
<tbody>
- <row rowsep="0">
+ <row>
<entry>int</entry>
<entry>type</entry>
<entry>ClientMessage</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>u_long</entry>
<entry>serial</entry>
<entry>Set by the X Window System</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>Bool</entry>
<entry>send_event</entry>
<entry>Set by the X Window System</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>Display</entry>
<entry>*display</entry>
<entry>The display to which connects</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>Window</entry>
<entry>window</entry>
<entry>IMS Window ID</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>Atom</entry>
<entry>message_type</entry>
<entry>XInternAtom(display, "_XIM_PROTOCOL", False)</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>int</entry>
<entry>format</entry>
<entry>8</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>long</entry>
<entry>data.1[0]</entry>
<entry>length of read/write property Atom</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>long</entry>
<entry>data.1[1]</entry>
<entry>read/write property Atom</entry>
@@ -1677,56 +1686,57 @@ is as follows:
The format of the ClientMessage is as follows:
</para>
-<table frame="none" id="clientmessage_events_format_first_or_middle_2">
+<table frame="topbot" id="clientmessage_events_format_first_or_middle_2">
+ <?dbfo keep-together="always" ?>
<title>The ClientMessage event's format (first or middle)</title>
- <tgroup cols="3">
- <colspec colname="col1" colwidth="1*" colsep="0"/>
- <colspec colname="col2" colwidth="1*" colsep="1"/>
- <colspec colname="col3" colwidth="3.5*" colsep="0"/>
- <spanspec namest="col1" nameend="col2" spanname="span-horiz" align="left"/>
+ <tgroup cols="3" align='left' colsep='0' rowsep='0'>
+ <colspec colname="col1" colwidth='1.0*'/>
+ <colspec colname="col2" colwidth='1.0*' colsep="1"/>
+ <colspec colname="col3" colwidth="3.5*"/>
+ <spanspec namest="col1" nameend="col2" spanname="span-horiz"/>
<thead>
- <row>
- <entry align="left" spanname="span-horiz">Structure Member</entry>
- <entry align="left">Contents</entry>
+ <row rowsep='1'>
+ <entry spanname="span-horiz" colsep='1'>Structure Member</entry>
+ <entry>Contents</entry>
</row>
</thead>
<tbody>
- <row rowsep="0">
+ <row>
<entry>int</entry>
<entry>type</entry>
<entry>ClientMessage</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>u_long</entry>
<entry>serial</entry>
<entry>Set by the X Window System</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>Bool</entry>
<entry>send_event</entry>
<entry>Set by the X Window System</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>Display</entry>
<entry>*display</entry>
<entry>The display to which connects</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>Window</entry>
<entry>window</entry>
<entry>IMS Window ID</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>Atom</entry>
<entry>message_type</entry>
<entry>XInternAtom(display, "_XIM_MOREDATA", False)</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>int</entry>
<entry>format</entry>
<entry>8</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>char</entry>
<entry>data.b[20]</entry>
<entry>(read/write DATA : 20 byte)</entry>
@@ -1739,56 +1749,57 @@ The format of the ClientMessage is as follows:
-<table frame="none" id="clientmessage_events_format_only_or_last_2">
+<table frame="topbot" id="clientmessage_events_format_only_or_last_2">
+ <?dbfo keep-together="always" ?>
<title>The ClientMessage event's format (only or last)</title>
- <tgroup cols="3">
- <colspec colname="col1" colwidth="1*" colsep="0"/>
- <colspec colname="col2" colwidth="1*" colsep="1"/>
- <colspec colname="col3" colwidth="3.5*" colsep="0"/>
- <spanspec namest="col1" nameend="col2" spanname="span-horiz" align="left"/>
+ <tgroup cols="3" align='left' colsep='0' rowsep='0'>
+ <colspec colname="col1" colwidth='1.0*'/>
+ <colspec colname="col2" colwidth='1.0*' colsep="1"/>
+ <colspec colname="col3" colwidth="3.5*"/>
+ <spanspec namest="col1" nameend="col2" spanname="span-horiz"/>
<thead>
- <row>
- <entry align="left" spanname="span-horiz">Structure Member</entry>
- <entry align="left">Contents</entry>
+ <row rowsep='1'>
+ <entry spanname="span-horiz" colsep='1'>Structure Member</entry>
+ <entry>Contents</entry>
</row>
</thead>
<tbody>
- <row rowsep="0">
+ <row>
<entry>int</entry>
<entry>type</entry>
<entry>ClientMessage</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>u_long</entry>
<entry>serial</entry>
<entry>Set by the X Window System</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>Bool</entry>
<entry>send_event</entry>
<entry>Set by the X Window System</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>Display</entry>
<entry>*display</entry>
<entry>The display to which connects</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>Window</entry>
<entry>window</entry>
<entry>IMS Window ID</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>Atom</entry>
<entry>message_type</entry>
<entry>XInternAtom(display, "_XIM_PROTOCOL", False)</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>int</entry>
<entry>format</entry>
<entry>8</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>char</entry>
<entry>data.b[20]</entry>
<entry>(read/write DATA : MAX 20 byte) (*1)</entry>
@@ -1833,51 +1844,52 @@ PropertyNotify event.
The arguments of the XChangeProperty are as follows:
</para>
-<table frame="none" id="xchangeproperty_events_format_b">
+<table frame="topbot" id="xchangeproperty_events_format_b">
+ <?dbfo keep-together="always" ?>
<title>The XChangeProperty event's format</title>
- <tgroup cols="3">
- <colspec colname="col1" colwidth="1*" colsep="0"/>
- <colspec colname="col2" colwidth="1*" colsep="1"/>
- <colspec colname="col3" colwidth="3.5*" colsep="0"/>
+ <tgroup cols="3" align='left' colsep='0' rowsep='0'>
+ <colspec colname="col1" colwidth='1.0*'/>
+ <colspec colname="col2" colwidth='1.0*' colsep="1"/>
+ <colspec colname="col3" colwidth="3.5*"/>
<spanspec namest="col1" nameend="col2" spanname="span-horiz" align="left"/>
<thead>
- <row>
- <entry align="left" spanname="span-horiz">Argument</entry>
- <entry align="left">Contents</entry>
+ <row rowsep='1'>
+ <entry spanname="span-horiz" colsep='1'>Argument</entry>
+ <entry>Contents</entry>
</row>
</thead>
<tbody>
- <row rowsep="0">
+ <row>
<entry>Display</entry>
<entry>*display</entry>
<entry>The display to which connects</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>Window</entry>
<entry>window</entry>
<entry>IMS communication window ID</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>Atom</entry>
<entry>property</entry>
<entry>read/write property Atom (*1)</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>int</entry>
<entry>format</entry>
<entry>8</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>int</entry>
<entry>mode</entry>
<entry>PropModeAppend</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>u_char</entry>
<entry>*data</entry>
<entry>read/write DATA</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>int</entry>
<entry>nelements</entry>
<entry>length of DATA</entry>
@@ -1901,61 +1913,62 @@ If Atom is notified via ClientMessage event, the format of the ClientMessage
is as follows:
</para>
-<table frame="none" id="clientmessage_events_format_to_send_atom_of_property_2">
+<table frame="topbot" id="clientmessage_events_format_to_send_atom_of_property_2">
+ <?dbfo keep-together="always" ?>
<title>The ClientMessage event's format to send Atom of property</title>
- <tgroup cols="3">
- <colspec colname="col1" colwidth="1*" colsep="0"/>
- <colspec colname="col2" colwidth="1*" colsep="1"/>
- <colspec colname="col3" colwidth="3.5*" colsep="0"/>
- <spanspec namest="col1" nameend="col2" spanname="span-horiz" align="left"/>
+ <tgroup cols="3" align='left' colsep='0' rowsep='0'>
+ <colspec colname="col1" colwidth='1.0*'/>
+ <colspec colname="col2" colwidth='1.0*' colsep="1"/>
+ <colspec colname="col3" colwidth="3.5*"/>
+ <spanspec namest="col1" nameend="col2" spanname="span-horiz"/>
<thead>
- <row>
- <entry align="left" spanname="span-horiz">Structure Member</entry>
- <entry align="left">Contents</entry>
+ <row rowsep='1'>
+ <entry spanname="span-horiz" colsep='1'>Structure Member</entry>
+ <entry>Contents</entry>
</row>
</thead>
<tbody>
- <row rowsep="0">
+ <row>
<entry>int</entry>
<entry>type</entry>
<entry>ClientMessage</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>u_long</entry>
<entry>serial</entry>
<entry>Set by the X Window System</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>Bool</entry>
<entry>send_event</entry>
<entry>Set by the X Window System</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>Display</entry>
<entry>*display</entry>
<entry>The display to which connects</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>Window</entry>
<entry>window</entry>
<entry>IMS Window ID</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>Atom</entry>
<entry>message_type</entry>
<entry>XInternAtom(display, "_XIM_PROTOCOL", False)</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>int</entry>
<entry>format</entry>
<entry>8</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>long</entry>
<entry>data.1[0]</entry>
<entry>length of read/write property Atom</entry>
</row>
- <row rowsep="0">
+ <row>
<entry>long</entry>
<entry>data.1[1]</entry>
<entry>read/write property Atom</entry>
diff --git a/libX11/specs/libX11/AppA.xml b/libX11/specs/libX11/AppA.xml
index 6e168ac88..3ac6e86fd 100644
--- a/libX11/specs/libX11/AppA.xml
+++ b/libX11/specs/libX11/AppA.xml
@@ -9,13 +9,16 @@ and the X protocol.
The following table lists each Xlib function (in alphabetical order)
and the corresponding protocol request that it generates.
</para>
-<table>
+<table frame='topbot'>
+ <?dbfo keep-together="auto" ?>
<title>Protocol requests made by each Xlib function</title>
- <tgroup cols="2">
+ <tgroup cols="2" align='left' colsep='0' rowsep='0'>
+ <colspec colname="col1" colwidth="1.0*"/>
+ <colspec colname="col2" colwidth="1.0*"/>
<thead>
- <row>
- <entry align='left'>Xlib Function</entry>
- <entry align='left'>Protocol Request</entry>
+ <row rowsep='1'>
+ <entry>Xlib Function</entry>
+ <entry>Protocol Request</entry>
</row>
</thead>
<tbody>
@@ -1057,13 +1060,16 @@ and the corresponding protocol request that it generates.
The following table lists each X protocol request (in alphabetical
order) and the Xlib functions that reference it.
</para>
-<table>
+<table frame='topbot'>
+ <?dbfo keep-together="auto" ?>
<title>Xlib functions which use each Protocol Request</title>
- <tgroup cols="2">
+ <tgroup cols="2" align='left' colsep='0' rowsep='0'>
+ <colspec colname="col1" colwidth="1.0*"/>
+ <colspec colname="col2" colwidth="1.0*"/>
<thead>
- <row>
- <entry align='left'>Protocol Request</entry>
- <entry align='left'>Xlib Function</entry>
+ <row rowsep='1'>
+ <entry>Protocol Request</entry>
+ <entry>Xlib Function</entry>
</row>
</thead>
<tbody>
diff --git a/libX11/specs/libX11/CH03.xml b/libX11/specs/libX11/CH03.xml
index a16a3bb77..e2468580d 100644
--- a/libX11/specs/libX11/CH03.xml
+++ b/libX11/specs/libX11/CH03.xml
@@ -425,14 +425,15 @@ and
<symbol>InputOnly</symbol>
windows:
</para>
-<informaltable>
- <tgroup cols='4'>
- <colspec colname='c1' align='left'/>
- <colspec colname='c2' align='left'/>
- <colspec colname='c3' align='center'/>
- <colspec colname='c4' align='center'/>
+<informaltable frame='topbot'>
+ <?dbfo keep-together="auto" ?>
+ <tgroup cols='4' align='left' colsep='0' rowsep='0'>
+ <colspec colname='c1' colwidth='1.0*'/>
+ <colspec colname='c2' colwidth='1.0*'/>
+ <colspec colname='c3' colwidth='1.0*'/>
+ <colspec colname='c4' colwidth='1.0*'/>
<thead>
- <row>
+ <row rowsep='1'>
<entry>Attribute</entry>
<entry>Default</entry>
<entry>InputOutput</entry>
@@ -757,12 +758,13 @@ change of width and height, the (x, y) pairs are defined:
</para>
<para>
<!-- .LP -->
-<informaltable>
- <tgroup cols='2'>
- <colspec colname='c1' align='left'/>
- <colspec colname='c2' align='left'/>
+<informaltable frame='topbot'>
+ <?dbfo keep-together="always" ?>
+ <tgroup cols='2' align='left' colsep='0' rowsep='0'>
+ <colspec colname='c1' colwidth='1.0*'/>
+ <colspec colname='c2' colwidth='2.0*'/>
<thead>
- <row>
+ <row rowsep='1'>
<entry>Gravity Direction</entry>
<entry>Coordinates</entry>
</row>
@@ -2438,9 +2440,10 @@ If a sibling and a stack_mode are specified,
the window is restacked as follows:
</para>
<informaltable frame="none">
- <tgroup cols='2'>
- <colspec colname='c1'/>
- <colspec colname='c2'/>
+ <?dbfo keep-together="always" ?>
+ <tgroup cols='2' align='left' colsep='0' rowsep='0'>
+ <colspec colname='c1' colwidth='1.0*'/>
+ <colspec colname='c2' colwidth='3.0*'/>
<tbody>
<row>
<entry><symbol>Above</symbol></entry>
@@ -2477,9 +2480,10 @@ the window is restacked as follows:
</para>
<informaltable frame="none">
- <tgroup cols='2'>
- <colspec colname='c1'/>
- <colspec colname='c2'/>
+ <?dbfo keep-together="always" ?>
+ <tgroup cols='2' align='left' colsep='0' rowsep='0'>
+ <colspec colname='c1' colwidth='1.0*'/>
+ <colspec colname='c2' colwidth='3.0*'/>
<tbody>
<row>
<entry><symbol>Above</symbol></entry>
diff --git a/libX11/specs/libX11/CH06.xml b/libX11/specs/libX11/CH06.xml
index da19f7a09..1a6709cd7 100644
--- a/libX11/specs/libX11/CH06.xml
+++ b/libX11/specs/libX11/CH06.xml
@@ -6995,16 +6995,17 @@ Conversion functions are available globally for use by other color
spaces.
The conversion functions provided by Xlib are:
</para>
-<informaltable>
- <tgroup cols='3'>
- <colspec colname='c1'/>
- <colspec colname='c2'/>
- <colspec colname='c3'/>
+<informaltable frame='topbot'>
+ <?dbfo keep-together="auto" ?>
+ <tgroup cols='3' align='left' colsep='0' rowsep='0'>
+ <colspec colname='c1' colwidth='1.0*'/>
+ <colspec colname='c2' colwidth='1.0*'/>
+ <colspec colname='c3' colwidth='1.0*'/>
<thead>
- <row>
- <entry align='center'>Function</entry>
- <entry align='center'>Converts from</entry>
- <entry align='center'>Converts to</entry>
+ <row rowsep='1'>
+ <entry>Function</entry>
+ <entry>Converts from</entry>
+ <entry>Converts to</entry>
</row>
</thead>
<tbody>
diff --git a/libX11/specs/libX11/CH07.xml b/libX11/specs/libX11/CH07.xml
index 4941db32f..b50dc8363 100644
--- a/libX11/specs/libX11/CH07.xml
+++ b/libX11/specs/libX11/CH07.xml
@@ -136,14 +136,15 @@ typedef struct {
<!-- .eM -->
The default GC values are:
</para>
-<informaltable>
- <tgroup cols='2'>
- <colspec colname='c1'/>
- <colspec colname='c2'/>
+<informaltable frame='topbot'>
+ <?dbfo keep-together="auto" ?>
+ <tgroup cols='2' align='left' colsep='0' rowsep='0'>
+ <colspec colname='c1' colwidth='1.0*'/>
+ <colspec colname='c2' colwidth='1.0*'/>
<thead>
- <row>
- <entry align='center'>Component</entry>
- <entry align='center'>Default</entry>
+ <row rowsep='1'>
+ <entry>Component</entry>
+ <entry>Default</entry>
</row>
</thead>
<tbody>
@@ -278,16 +279,17 @@ are:
<!-- .\" and operation. -->
<!-- .\".CP T 1 -->
<!-- .\"Display Functions -->
-<informaltable>
- <tgroup cols='3'>
- <colspec colname='c1'/>
- <colspec colname='c2'/>
- <colspec colname='c3'/>
+<informaltable frame='topbot'>
+ <?dbfo keep-together="auto" ?>
+ <tgroup cols='3' align='left' colsep='0' rowsep='0'>
+ <colspec colname='c1' colwidth='1.0*'/>
+ <colspec colname='c2' colwidth='1.0*'/>
+ <colspec colname='c3' colwidth='1.0*'/>
<thead>
- <row>
- <entry align='center'>Function Name</entry>
- <entry align='center'>Value</entry>
- <entry align='center'>Operation</entry>
+ <row rowsep='1'>
+ <entry>Function Name</entry>
+ <entry>Value</entry>
+ <entry>Operation</entry>
</row>
</thead>
<tbody>
@@ -626,11 +628,12 @@ when the cap-style is applied to both endpoints,
the semantics depends on the line-width and the cap-style:
</para>
-<informaltable>
- <tgroup cols='3'>
- <colspec colname='c1'/>
- <colspec colname='c2'/>
- <colspec colname='c3'/>
+<informaltable frame='none'>
+ <?dbfo keep-together="always" ?>
+ <tgroup cols='3' align='left' colsep='0' rowsep='0'>
+ <colspec colname='c1' colwidth='1.0*'/>
+ <colspec colname='c2' colwidth='1.0*'/>
+ <colspec colname='c3' colwidth='3.0*'/>
<tbody>
<row>
<entry><symbol>CapNotLast</symbol></entry>
@@ -741,10 +744,11 @@ or
the following apply:
</para>
-<informaltable>
- <tgroup cols='2'>
- <colspec colname='c1'/>
- <colspec colname='c2'/>
+<informaltable frame='none'>
+ <?dbfo keep-together="always" ?>
+ <tgroup cols='2' align='left' colsep='0' rowsep='0'>
+ <colspec colname='c1' colwidth='1.0*'/>
+ <colspec colname='c2' colwidth='2.0*'/>
<tbody>
<row>
<entry><symbol>FillSolid</symbol></entry>
@@ -775,10 +779,11 @@ When drawing lines with line-style
the odd dashes are controlled by the fill-style in the following manner:
</para>
-<informaltable>
- <tgroup cols='2'>
- <colspec colname='c1'/>
- <colspec colname='c2'/>
+<informaltable frame='none'>
+ <?dbfo keep-together="always" ?>
+ <tgroup cols='2' align='left' colsep='0' rowsep='0'>
+ <colspec colname='c1' colwidth='1.0*'/>
+ <colspec colname='c2' colwidth='2.0*'/>
<tbody>
<row>
<entry><symbol>FillSolid</symbol></entry>
diff --git a/libX11/specs/libX11/CH10.xml b/libX11/specs/libX11/CH10.xml
index 0230549d4..2024592b5 100644
--- a/libX11/specs/libX11/CH10.xml
+++ b/libX11/specs/libX11/CH10.xml
@@ -79,14 +79,15 @@ The processing associated with these events is discussed in section 10.5.
</para>
<para>
<!-- .LP -->
-<informaltable>
- <tgroup cols='2'>
- <colspec colname='c1'/>
- <colspec colname='c2'/>
+<informaltable frame='topbot'>
+ <?dbfo keep-together="always" ?>
+ <tgroup cols='2' align='left' colsep='0' rowsep='0'>
+ <colspec colname='c1' colwidth='1.0*'/>
+ <colspec colname='c2' colwidth='4.0*'/>
<thead>
- <row>
- <entry align='left'>Event Category</entry>
- <entry align='left'>Event Type</entry>
+ <row rowsep='1'>
+ <entry>Event Category</entry>
+ <entry>Event Type</entry>
</row>
</thead>
<tbody>
@@ -369,14 +370,15 @@ event mask:
<!-- .LP -->
<!-- .\" .CP T 2 -->
<!-- .\"Event Mask Definitions -->
-<informaltable>
- <tgroup cols='2'>
- <colspec colname='c1'/>
- <colspec colname='c2'/>
+<informaltable frame='topbot'>
+ <?dbfo keep-together="auto" ?>
+ <tgroup cols='2' align='left' colsep='0' rowsep='0'>
+ <colspec colname='c1' colwidth='1.0*'/>
+ <colspec colname='c2' colwidth='2.5*'/>
<thead>
- <row>
- <entry align='left'>Event Mask</entry>
- <entry align='left'>Circumstances</entry>
+ <row rowsep='1'>
+ <entry>Event Mask</entry>
+ <entry>Circumstances</entry>
</row>
</thead>
<tbody>
@@ -557,18 +559,19 @@ Note that N.A. appears in columns for which the information is not applicable.
<!-- .LP -->
<!-- .ps 9 -->
<!-- .nr PS 9 -->
-<informaltable>
- <tgroup cols='4'>
- <colspec colname='c1'/>
- <colspec colname='c2'/>
- <colspec colname='c3'/>
- <colspec colname='c4'/>
+<informaltable frame='topbot'>
+ <?dbfo keep-together="auto" ?>
+ <tgroup cols='4' align='left' colsep='0' rowsep='0'>
+ <colspec colname='c1' colwidth='1.2*'/>
+ <colspec colname='c2' colwidth='1.0*'/>
+ <colspec colname='c3' colwidth='1.2*'/>
+ <colspec colname='c4' colwidth='1.0*'/>
<thead>
- <row>
- <entry align='left'>Event Mask</entry>
- <entry align='left'>Event Type</entry>
- <entry align='left'>Structure</entry>
- <entry align='left'>Generic Structure</entry>
+ <row rowsep='1'>
+ <entry>Event Mask</entry>
+ <entry>Event Type</entry>
+ <entry>Structure</entry>
+ <entry>Generic Structure</entry>
</row>
</thead>
<tbody>
@@ -890,14 +893,15 @@ The effect is essentially equivalent to an
<xref linkend='XGrabButton' xrefstyle='select: title'/>
with these client passed arguments:
</para>
-<informaltable>
- <tgroup cols='2'>
- <colspec colname='c1'/>
- <colspec colname='c2'/>
+<informaltable frame='topbot'>
+ <?dbfo keep-together="always" ?>
+ <tgroup cols='2' align='left' colsep='0' rowsep='0'>
+ <colspec colname='c1' colwidth='1.0*'/>
+ <colspec colname='c2' colwidth='4.0*'/>
<thead>
- <row>
- <entry align='left'>Argument</entry>
- <entry align='left'>Value</entry>
+ <row rowsep='1'>
+ <entry>Argument</entry>
+ <entry>Value</entry>
</row>
</thead>
<tbody>
@@ -1287,14 +1291,15 @@ or
Some of the symbols mentioned in this section have fixed values, as
follows:
</para>
-<informaltable>
- <tgroup cols='2'>
- <colspec colname='c1'/>
- <colspec colname='c2'/>
+<informaltable frame='topbot'>
+ <?dbfo keep-together="always" ?>
+ <tgroup cols='2' align='left' colsep='0' rowsep='0'>
+ <colspec colname='c1' colwidth='1.0*'/>
+ <colspec colname='c2' colwidth='3.0*'/>
<thead>
- <row>
- <entry align='left'>Symbol</entry>
- <entry align='left'>Value</entry>
+ <row rowsep='1'>
+ <entry>Symbol</entry>
+ <entry>Value</entry>
</row>
</thead>
<tbody>
diff --git a/libX11/specs/libX11/CH11.xml b/libX11/specs/libX11/CH11.xml
index 9795c3220..001e05d8f 100644
--- a/libX11/specs/libX11/CH11.xml
+++ b/libX11/specs/libX11/CH11.xml
@@ -2049,14 +2049,15 @@ chapter:
<indexterm significance="preferred"><primary>BadFont</primary></indexterm>
<indexterm significance="preferred"><primary>BadGC</primary></indexterm>
<indexterm significance="preferred"><primary>BadIDChoice</primary></indexterm>
-<informaltable frame='none'>
- <tgroup cols='2'>
- <colspec colname='c1'/>
- <colspec colname='c2'/>
+<informaltable frame='topbot'>
+ <?dbfo keep-together="auto" ?>
+ <tgroup cols='2' align='left' colsep='0' rowsep='0'>
+ <colspec colname='c1' colwidth='1.0*'/>
+ <colspec colname='c2' colwidth='3.5*'/>
<thead>
- <row>
- <entry align='left'>Error Code</entry>
- <entry align='left'>Description</entry>
+ <row rowsep='1'>
+ <entry>Error Code</entry>
+ <entry>Description</entry>
</row>
</thead>
<tbody>
diff --git a/libX11/specs/libX11/CH12.xml b/libX11/specs/libX11/CH12.xml
index e65bebc0c..ae8017b2b 100644
--- a/libX11/specs/libX11/CH12.xml
+++ b/libX11/specs/libX11/CH12.xml
@@ -1573,9 +1573,10 @@ is later than the current X server time.
Depending on the event_mode argument, the following occurs:
</para>
<informaltable frame='none'>
- <tgroup cols='2'>
- <colspec colname='c1'/>
- <colspec colname='c2'/>
+ <?dbfo keep-together="always" ?>
+ <tgroup cols='2' align='left' colsep='0' rowsep='0'>
+ <colspec colname='c1' colwidth='1.0*'/>
+ <colspec colname='c2' colwidth='4.0*'/>
<tbody>
<row>
<entry><symbol>AsyncPointer</symbol></entry>
diff --git a/libX11/specs/libX11/CH13.xml b/libX11/specs/libX11/CH13.xml
index 3a53f1f62..e710414c8 100644
--- a/libX11/specs/libX11/CH13.xml
+++ b/libX11/specs/libX11/CH13.xml
@@ -286,16 +286,17 @@ For each locale-dependent function,
the following table describes the locale (and modifiers) dependency:
</para>
-<informaltable>
- <tgroup cols='3'>
- <colspec colname='c1'/>
- <colspec colname='c2'/>
- <colspec colname='c3'/>
+<informaltable frame='topbot'>
+ <?dbfo keep-together="auto" ?>
+ <tgroup cols='3' align='left' colsep='0' rowsep='0'>
+ <colspec colname='c1' colwidth='1.0*'/>
+ <colspec colname='c2' colwidth='2.5*'/>
+ <colspec colname='c3' colwidth='1.5*'/>
<thead>
- <row>
- <entry align='center'>Locale from</entry>
- <entry align='center'>Affects the Function</entry>
- <entry align='center'>In</entry>
+ <row rowsep='1'>
+ <entry>Locale from</entry>
+ <entry>Affects the Function</entry>
+ <entry>In</entry>
</row>
</thead>
<tbody>
@@ -1028,14 +1029,15 @@ how each of the <acronym>XOM</acronym> values are treated by a particular output
The following key applies to this table.
</para>
-<informaltable>
- <tgroup cols='2'>
- <colspec colname='c1'/>
- <colspec colname='c2'/>
+<informaltable frame='topbot'>
+ <?dbfo keep-together="always" ?>
+ <tgroup cols='2' align='left' colsep='0' rowsep='0'>
+ <colspec colname='c1' colwidth='1.0*'/>
+ <colspec colname='c2' colwidth='4.0*'/>
<thead>
- <row>
- <entry align='left'>Key</entry>
- <entry align='left'>Explanation</entry>
+ <row rowsep='1'>
+ <entry>Key</entry>
+ <entry>Explanation</entry>
</row>
</thead>
<tbody>
@@ -1049,14 +1051,15 @@ The following key applies to this table.
<para></para>
-<informaltable>
- <tgroup cols='2'>
- <colspec colname='c1'/>
- <colspec colname='c2'/>
+<informaltable frame='topbot'>
+ <?dbfo keep-together="always" ?>
+ <tgroup cols='2' align='left' colsep='0' rowsep='0'>
+ <colspec colname='c1' colwidth='1.0*'/>
+ <colspec colname='c2' colwidth='1.0*'/>
<thead>
- <row>
- <entry align='left'><acronym>XOM</acronym> Value</entry>
- <entry align='left'>Key</entry>
+ <row rowsep='1'>
+ <entry><acronym>XOM</acronym> Value</entry>
+ <entry>Key</entry>
</row>
</thead>
<tbody>
@@ -1639,14 +1642,15 @@ The third column indicates how each of the <acronym>XOC</acronym> values is trea
<para>
The following keys apply to this table.
</para>
-<informaltable>
- <tgroup cols='2'>
- <colspec colname='c1'/>
- <colspec colname='c2'/>
+<informaltable frame='topbot'>
+ <?dbfo keep-together="always" ?>
+ <tgroup cols='2' align='left' colsep='0' rowsep='0'>
+ <colspec colname='c1' colwidth='1.0*'/>
+ <colspec colname='c2' colwidth='4.0*'/>
<thead>
- <row>
- <entry align='left'>Key</entry>
- <entry align='left'>Explanation</entry>
+ <row rowsep='1'>
+ <entry>Key</entry>
+ <entry>Explanation</entry>
</row>
</thead>
<tbody>
@@ -1673,13 +1677,14 @@ The following keys apply to this table.
<para></para>
-<informaltable>
- <tgroup cols='3'>
- <colspec colname='c1'/>
- <colspec colname='c2'/>
- <colspec colname='c3'/>
+<informaltable frame='topbot'>
+ <?dbfo keep-together="always" ?>
+ <tgroup cols='3' align='left' colsep='0' rowsep='0'>
+ <colspec colname='c1' colwidth='1.0*'/>
+ <colspec colname='c2' colwidth='1.0*'/>
+ <colspec colname='c3' colwidth='1.0*'/>
<thead>
- <row>
+ <row rowsep='1'>
<entry align='left'><acronym>XOC</acronym> Value</entry>
<entry align='left'>Alternative Interface</entry>
<entry align='left'>Key</entry>
@@ -5001,10 +5006,11 @@ Such customization may be desired without restarting the entire client.
To support management of input methods in these cases, the following
functions are provided:
</para>
-<informaltable>
- <tgroup cols='2'>
- <colspec colname='c1'/>
- <colspec colname='c2'/>
+<informaltable frame='none'>
+ <?dbfo keep-together="always" ?>
+ <tgroup cols='2' align='left' colsep='0' rowsep='0'>
+ <colspec colname='c1' colwidth='1.0*'/>
+ <colspec colname='c2' colwidth='1.0*'/>
<tbody>
<row>
<entry><xref linkend='XRegisterIMInstantiateCallback' xrefstyle='select: title'/></entry>
@@ -5743,14 +5749,15 @@ are treated by that input style.
<!-- .LP -->
The following keys apply to this table.
</para>
-<informaltable>
- <tgroup cols='2'>
- <colspec colname='c1'/>
- <colspec colname='c2'/>
+<informaltable frame='topbot'>
+ <?dbfo keep-together="always" ?>
+ <tgroup cols='2' align='left' colsep='0' rowsep='0'>
+ <colspec colname='c1' colwidth='1.0*'/>
+ <colspec colname='c2' colwidth='4.0*'/>
<thead>
- <row>
- <entry align='left'>Key</entry>
- <entry align='left'>Explanation</entry>
+ <row rowsep='1'>
+ <entry>Key</entry>
+ <entry>Explanation</entry>
</row>
</thead>
<tbody>
@@ -5775,14 +5782,15 @@ The following keys apply to this table.
<para></para>
-<informaltable>
- <tgroup cols='2'>
- <colspec colname='c1'/>
- <colspec colname='c2'/>
+<informaltable frame='topbot'>
+ <?dbfo keep-together="always" ?>
+ <tgroup cols='2' align='left' colsep='0' rowsep='0'>
+ <colspec colname='c1' colwidth='1.0*'/>
+ <colspec colname='c2' colwidth='1.0*'/>
<thead>
- <row>
- <entry align='left'><acronym>XIM</acronym> Value</entry>
- <entry align='left'>Key</entry>
+ <row rowsep='1'>
+ <entry><acronym>XIM</acronym> Value</entry>
+ <entry>Key</entry>
</row>
</thead>
<tbody>
@@ -5930,10 +5938,11 @@ by the input method for preedit information.
<indexterm significance="preferred"><primary>XIMPreeditCallbacks</primary></indexterm>
<indexterm significance="preferred"><primary>XIMPreeditNothing</primary></indexterm>
<indexterm significance="preferred"><primary>XIMPreeditNone</primary></indexterm>
-<informaltable>
- <tgroup cols='2'>
- <colspec colname='c1'/>
- <colspec colname='c2'/>
+<informaltable frame='none'>
+ <?dbfo keep-together="always" ?>
+ <tgroup cols='2' align='left' colsep='0' rowsep='0'>
+ <colspec colname='c1' colwidth='1.0*'/>
+ <colspec colname='c2' colwidth='2.0*'/>
<tbody>
<row>
<entry><symbol>XIMPreeditArea</symbol></entry>
@@ -5988,10 +5997,11 @@ by the input method for status information.
<indexterm significance="preferred"><primary>XIMStatusCallbacks</primary></indexterm>
<indexterm significance="preferred"><primary>XIMStatusNothing</primary></indexterm>
<indexterm significance="preferred"><primary>XIMStatusNone</primary></indexterm>
-<informaltable>
- <tgroup cols='2'>
- <colspec colname='c1'/>
- <colspec colname='c2'/>
+<informaltable frame='none'>
+ <?dbfo keep-together="always" ?>
+ <tgroup cols='2' align='left' colsep='0' rowsep='0'>
+ <colspec colname='c1' colwidth='1.0*'/>
+ <colspec colname='c2' colwidth='2.0*'/>
<tbody>
<row>
<entry><symbol>XIMStatusArea</symbol></entry>
@@ -6831,12 +6841,13 @@ are treated by that input style.
<!-- .LP -->
The following keys apply to these tables.
</para>
-<informaltable>
- <tgroup cols='2'>
- <colspec colname='c1'/>
- <colspec colname='c2'/>
+<informaltable frame='topbot'>
+ <?dbfo keep-together="always" ?>
+ <tgroup cols='2' align='left' colsep='0' rowsep='0'>
+ <colspec colname='c1' colwidth='1.0*'/>
+ <colspec colname='c2' colwidth='4.0*'/>
<thead>
- <row>
+ <row rowsep='1'>
<entry align='left'>Key</entry>
<entry align='left'>Explanation</entry>
</row>
@@ -6895,17 +6906,18 @@ The following keys apply to these tables.
<para></para>
<!-- .LP -->
-<informaltable>
- <tgroup cols='7'>
- <colspec colname='c1'/>
- <colspec colname='c2'/>
- <colspec colname='c3'/>
- <colspec colname='c4'/>
- <colspec colname='c5'/>
- <colspec colname='c6'/>
- <colspec colname='c7'/>
+<informaltable frame='topbot'>
+ <?dbfo keep-together="auto" ?>
+ <tgroup cols='7' align='left' colsep='0' rowsep='0'>
+ <colspec colname='c1' colwidth='1.0*'/>
+ <colspec colname='c2' colwidth='1.0*'/>
+ <colspec colname='c3' colwidth='1.0*'/>
+ <colspec colname='c4' colwidth='1.0*'/>
+ <colspec colname='c5' colwidth='1.0*'/>
+ <colspec colname='c6' colwidth='1.0*'/>
+ <colspec colname='c7' colwidth='1.0*'/>
<thead>
- <row>
+ <row rowsep='1'>
<entry><acronym>XIC</acronym> Value</entry>
<entry>Geometry Mangement</entry>
<entry>Preedit Callback</entry>
@@ -7160,16 +7172,17 @@ The following keys apply to these tables.
<para></para>
<!-- .LP -->
-<informaltable>
- <tgroup cols='6'>
- <colspec colname='c1'/>
- <colspec colname='c2'/>
- <colspec colname='c3'/>
- <colspec colname='c4'/>
- <colspec colname='c5'/>
- <colspec colname='c6'/>
+<informaltable frame='topbot'>
+ <?dbfo keep-together="auto" ?>
+ <tgroup cols='6' align='left' colsep='0' rowsep='0'>
+ <colspec colname='c1' colwidth='1.0*'/>
+ <colspec colname='c2' colwidth='1.0*'/>
+ <colspec colname='c3' colwidth='1.0*'/>
+ <colspec colname='c4' colwidth='1.0*'/>
+ <colspec colname='c5' colwidth='1.0*'/>
+ <colspec colname='c6' colwidth='1.0*'/>
<thead>
- <row>
+ <row rowsep='1'>
<entry><acronym>XIC</acronym> Value</entry>
<entry>Geomentry Management</entry>
<entry>Status Callback</entry>
@@ -7815,13 +7828,14 @@ When a modifier_mask bit is set to 0, the state of the associated modifier
is ignored when evaluating whether the key is hot or not.
</para>
-<informaltable>
- <tgroup cols='3'>
- <colspec colname='c1'/>
- <colspec colname='c2'/>
- <colspec colname='c3'/>
+<informaltable frame='topbot'>
+ <?dbfo keep-together="always" ?>
+ <tgroup cols='3' align='left' colsep='0' rowsep='0'>
+ <colspec colname='c1' colwidth='1.0*'/>
+ <colspec colname='c2' colwidth='1.0*'/>
+ <colspec colname='c3' colwidth='3.0*'/>
<thead>
- <row>
+ <row rowsep='1'>
<entry>Modifier Bit</entry>
<entry>Mask Bit</entry>
<entry>Meaning</entry>
@@ -8382,10 +8396,11 @@ The set of preedit callbacks is as follows:
<indexterm significance="preferred"><primary>XNPreeditDoneCallback</primary></indexterm>
<indexterm significance="preferred"><primary>XNPreeditDrawCallback</primary></indexterm>
<indexterm significance="preferred"><primary>XNPreeditCaretCallback</primary></indexterm>
-<informaltable>
- <tgroup cols='2'>
- <colspec colname='c1'/>
- <colspec colname='c2'/>
+<informaltable frame='topbot'>
+ <?dbfo keep-together="always" ?>
+ <tgroup cols='2' align='left' colsep='0' rowsep='0'>
+ <colspec colname='c1' colwidth='1.0*'/>
+ <colspec colname='c2' colwidth='2.0*'/>
<tbody>
<row>
<entry><symbol>XNPreeditStartCallback</symbol></entry>
@@ -8418,10 +8433,11 @@ The set of status callbacks is as follows:
<indexterm significance="preferred"><primary>XNStatusStartCallback</primary></indexterm>
<indexterm significance="preferred"><primary>XNStatusDoneCallback</primary></indexterm>
<indexterm significance="preferred"><primary>XNStatusDrawCallback</primary></indexterm>
-<informaltable>
- <tgroup cols='2'>
- <colspec colname='c1'/>
- <colspec colname='c2'/>
+<informaltable frame='topbot'>
+ <?dbfo keep-together="always" ?>
+ <tgroup cols='2' align='left' colsep='0' rowsep='0'>
+ <colspec colname='c1' colwidth='1.0*'/>
+ <colspec colname='c2' colwidth='2.0*'/>
<tbody>
<row>
<entry><symbol>XNStatusStartCallback</symbol></entry>
@@ -9520,10 +9536,11 @@ These values are defined as follows:
<indexterm significance="preferred"><primary>XIMBackwardWord</primary></indexterm>
<indexterm significance="preferred"><primary>XIMCaretUp</primary></indexterm>
<indexterm significance="preferred"><primary>XIMCaretDown</primary></indexterm>
-<informaltable>
- <tgroup cols='2'>
- <colspec colname='c1'/>
- <colspec colname='c2'/>
+<informaltable frame='none'>
+ <?dbfo keep-together="auto" ?>
+ <tgroup cols='2' align='left' colsep='0' rowsep='0'>
+ <colspec colname='c1' colwidth='1.0*'/>
+ <colspec colname='c2' colwidth='1.5*'/>
<tbody>
<row>
<entry><constant>XIMForwardChar</constant></entry>
@@ -10104,10 +10121,11 @@ that indicates what has been returned in the other arguments.
The possible values returned are:
</para>
-<informaltable>
- <tgroup cols='2'>
- <colspec colname='c1'/>
- <colspec colname='c2'/>
+<informaltable frame='none'>
+ <?dbfo keep-together="auto" ?>
+ <tgroup cols='2' align='left' colsep='0' rowsep='0'>
+ <colspec colname='c1' colwidth='1.0*'/>
+ <colspec colname='c2' colwidth='2.0*'/>
<tbody>
<row>
<entry><symbol>XBufferOverflow</symbol></entry>
diff --git a/libX11/specs/libX11/CH14.xml b/libX11/specs/libX11/CH14.xml
index 5e6f72da7..ee14b95ee 100644
--- a/libX11/specs/libX11/CH14.xml
+++ b/libX11/specs/libX11/CH14.xml
@@ -30,18 +30,19 @@ The standard properties that are of special interest for communicating with wind
managers are:
</para>
-<informaltable>
- <tgroup cols='4'>
- <colspec colname='c1'/>
- <colspec colname='c2'/>
- <colspec colname='c3'/>
- <colspec colname='c4'/>
+<informaltable frame='topbot'>
+ <?dbfo keep-together="always" ?>
+ <tgroup cols='4' align='left' colsep='0' rowsep='0'>
+ <colspec colname='c1' colwidth='3.0*'/>
+ <colspec colname='c2' colwidth='2.3*'/>
+ <colspec colname='c3' colwidth='0.9*'/>
+ <colspec colname='c4' colwidth='2.7*'/>
<thead>
- <row>
- <entry align='center'>Name</entry>
- <entry align='center'>Type</entry>
- <entry align='center'>Format</entry>
- <entry align='center'>Description</entry>
+ <row rowsep='1'>
+ <entry>Name</entry>
+ <entry>Type</entry>
+ <entry>Format</entry>
+ <entry>Description</entry>
</row>
</thead>
<tbody>
diff --git a/libxcb/xcb-proto/src/Makefile.am b/libxcb/xcb-proto/src/Makefile.am
index e1e2743be..eef2dbc45 100644
--- a/libxcb/xcb-proto/src/Makefile.am
+++ b/libxcb/xcb-proto/src/Makefile.am
@@ -6,6 +6,7 @@ xcbinclude_HEADERS = \
damage.xml \
dpms.xml \
dri2.xml \
+ ge.xml \
glx.xml \
randr.xml \
record.xml \
@@ -18,6 +19,7 @@ xcbinclude_HEADERS = \
xc_misc.xml \
xevie.xml \
xf86dri.xml \
+ xf86vidmode.xml \
xfixes.xml \
xinerama.xml \
xinput.xml \
diff --git a/mesalib/configs/autoconf.in b/mesalib/configs/autoconf.in
index 9ea7588a1..3e5da796f 100644
--- a/mesalib/configs/autoconf.in
+++ b/mesalib/configs/autoconf.in
@@ -15,7 +15,6 @@ ASM_FLAGS = @ASM_FLAGS@
PIC_FLAGS = @PIC_FLAGS@
DEFINES = @DEFINES@
API_DEFINES = @API_DEFINES@
-SHARED_GLAPI = @SHARED_GLAPI@
CFLAGS_NOVISIBILITY = @CPPFLAGS@ @CFLAGS@ \
$(OPT_FLAGS) $(PIC_FLAGS) $(ARCH_FLAGS) $(ASM_FLAGS) $(DEFINES)
CXXFLAGS_NOVISIBILITY = @CPPFLAGS@ @CXXFLAGS@ \
diff --git a/mesalib/configs/freebsd-dri b/mesalib/configs/freebsd-dri
index b18ac51e3..00a11d45c 100644
--- a/mesalib/configs/freebsd-dri
+++ b/mesalib/configs/freebsd-dri
@@ -46,6 +46,3 @@ SRC_DIRS = glx gallium mesa glu
DRIVER_DIRS = dri
DRM_SOURCE_PATH=$(TOP)/../drm
-
-DRI_DIRS = i915 i965 r200 radeon
-
diff --git a/mesalib/configs/linux-dri b/mesalib/configs/linux-dri
index dde640897..a5efea25d 100644
--- a/mesalib/configs/linux-dri
+++ b/mesalib/configs/linux-dri
@@ -62,7 +62,7 @@ GALLIUM_WINSYS_DIRS = sw sw/xlib drm/vmware drm/intel svga/drm
GALLIUM_TARGET_DIRS = dri-vmwgfx
GALLIUM_STATE_TRACKERS_DIRS = egl dri
-DRI_DIRS = i915 nouveau r200 radeon swrast
+DRI_DIRS = swrast
INTEL_LIBS = $(shell $(PKG_CONFIG) --libs libdrm_intel)
INTEL_CFLAGS = $(shell $(PKG_CONFIG) --cflags libdrm_intel)
diff --git a/mesalib/configs/linux-dri-debug b/mesalib/configs/linux-dri-debug
index a1a4465d8..4ee5d71ee 100644
--- a/mesalib/configs/linux-dri-debug
+++ b/mesalib/configs/linux-dri-debug
@@ -6,9 +6,3 @@ include $(TOP)/configs/linux-dri
CONFIG_NAME = linux-dri-debug
OPT_FLAGS = -O0 -g
ARCH_FLAGS = -DDEBUG
-
-# Helpful to reduce the amount of stuff that gets built sometimes:
-#DRI_DIRS = i915tex i915
-#DRI_DIRS = i965
-#DRI_DIRS = radeon r200
-
diff --git a/mesalib/configs/linux-dri-ppc b/mesalib/configs/linux-dri-ppc
index 5dd3615ff..fdf3c5c7a 100644
--- a/mesalib/configs/linux-dri-ppc
+++ b/mesalib/configs/linux-dri-ppc
@@ -7,11 +7,3 @@ CONFIG_NAME = linux-dri-ppc
OPT_FLAGS = -Os -mcpu=603
PIC_FLAGS = -fPIC
-
-ASM_FLAGS = -DUSE_PPC_ASM -DUSE_VMX_ASM
-MESA_ASM_SOURCES = $(PPC_SOURCES)
-
-# Build only the drivers for cards that exist on PowerPC. At some point MGA
-# will be added, but not yet.
-DRI_DIRS = r200 radeon
-
diff --git a/mesalib/configs/linux-dri-x86-64 b/mesalib/configs/linux-dri-x86-64
index c1dff630f..6cd629407 100644
--- a/mesalib/configs/linux-dri-x86-64
+++ b/mesalib/configs/linux-dri-x86-64
@@ -15,6 +15,3 @@ LIB_DIR = lib64
# Library/program dependencies
EXTRA_LIB_PATH=-L/usr/X11R6/lib64
-
-DRI_DIRS = i915 i965 r200 radeon
-
diff --git a/mesalib/configs/linux-dri-xcb b/mesalib/configs/linux-dri-xcb
index 85665207b..fd72c683f 100644
--- a/mesalib/configs/linux-dri-xcb
+++ b/mesalib/configs/linux-dri-xcb
@@ -52,4 +52,3 @@ GL_LIB_DEPS = $(EXTRA_LIB_PATH) -lX11 -lXext -lXxf86vm -lm -lpthread -ldl \
SRC_DIRS = glx gallium mesa glu
DRIVER_DIRS = dri
-DRI_DIRS = i915 r200 radeon
diff --git a/mesalib/configure.ac b/mesalib/configure.ac
index f3f5e3e94..959956862 100644
--- a/mesalib/configure.ac
+++ b/mesalib/configure.ac
@@ -47,6 +47,7 @@ AC_PROG_CXX
AC_CHECK_PROGS([MAKE], [gmake make])
AC_CHECK_PROGS([PYTHON2], [python2 python])
AC_PROG_SED
+AC_PROG_MKDIR_P
AC_PATH_PROG([MKDEP], [makedepend])
if test "x$MKDEP" = "x"; then
@@ -176,9 +177,6 @@ esac
dnl Add flags for gcc and g++
if test "x$GCC" = xyes; then
CFLAGS="$CFLAGS -Wall -Wmissing-prototypes -std=c99"
- if test "x$CLANG" = "xno"; then
- CFLAGS="$CFLAGS -ffast-math"
- fi
# Enable -fvisibility=hidden if using a gcc that supports it
save_CFLAGS="$CFLAGS"
@@ -522,11 +520,6 @@ if test "x$enable_asm" = xyes; then
GLAPI_ASM_SOURCES='$(X86-64_API)'
AC_MSG_RESULT([yes, x86_64])
;;
- ppc)
- ASM_FLAGS="-DUSE_PPC_ASM -DUSE_VMX_ASM"
- MESA_ASM_SOURCES='$(PPC_SOURCES)'
- AC_MSG_RESULT([yes, ppc])
- ;;
sparc)
ASM_FLAGS="-DUSE_SPARC_ASM"
MESA_ASM_SOURCES='$(SPARC_SOURCES)'
@@ -714,18 +707,6 @@ if test "x$enable_gles2" = xyes; then
fi
AC_SUBST([API_DEFINES])
-AC_ARG_ENABLE([shared-glapi],
- [AS_HELP_STRING([--enable-shared-glapi],
- [EXPERIMENTAL. Enable shared glapi for OpenGL @<:@default=no@:>@])],
- [enable_shared_glapi="$enableval"],
- [enable_shared_glapi=no])
-
-SHARED_GLAPI="0"
-if test "x$enable_shared_glapi" = xyes; then
- SHARED_GLAPI="1"
-fi
-AC_SUBST([SHARED_GLAPI])
-
dnl
dnl Driver configuration. Options are xlib, dri and osmesa right now.
dnl More later: fbdev, ...
@@ -809,7 +790,7 @@ dnl Driver specific build directories
dnl
dnl this variable will be prepended to SRC_DIRS and is not exported
-CORE_DIRS=""
+CORE_DIRS="mapi/shared-glapi"
SRC_DIRS=""
GLU_DIRS="sgi"
@@ -819,13 +800,6 @@ GALLIUM_WINSYS_DIRS="sw"
GALLIUM_DRIVERS_DIRS="galahad trace rbug noop identity"
GALLIUM_STATE_TRACKERS_DIRS=""
-# build shared-glapi if enabled for OpenGL or if OpenGL ES is enabled
-case "x$enable_shared_glapi$enable_gles1$enable_gles2" in
-x*yes*)
- CORE_DIRS="$CORE_DIRS mapi/shared-glapi"
- ;;
-esac
-
# build glapi if OpenGL is enabled
if test "x$enable_opengl" = xyes; then
CORE_DIRS="$CORE_DIRS mapi/glapi"
@@ -1086,26 +1060,14 @@ DRI_CXXFLAGS='$(CXXFLAGS)'
DRI_LIB_DEPS='$(TOP)/src/mesa/libmesa.a'
MESA_MODULES='$(TOP)/src/mesa/libmesa.a'
-AC_ARG_ENABLE([shared-dricore],
- [AS_HELP_STRING([--enable-shared-dricore],
- [link DRI modules with shared core DRI routines @<:@default=disabled@:>@])],
- [enable_dricore="$enableval"],
- [enable_dricore=no])
if test "x$enable_dri" = xyes ; then
- if test "$enable_dricore" = yes ; then
- if test "$GCC$GXX" != yesyes ; then
- AC_MSG_WARN([Shared dricore requires GCC-compatible rpath handling. Disabling shared dricore])
- enable_dricore=no
- else
- DRICORE_GLSL_LIBS='$(TOP)/$(LIB_DIR)/libglsl.so'
- DRICORE_LIBS='$(TOP)/$(LIB_DIR)/libdricore.so'
- DRICORE_LIB_DEPS='-L$(TOP)/$(LIB_DIR) -Wl,-R$(DRI_DRIVER_INSTALL_DIR) -lglsl'
- DRI_LIB_DEPS='-L$(TOP)/$(LIB_DIR) -Wl,-R$(DRI_DRIVER_INSTALL_DIR) -ldricore -lglsl'
- DRI_CFLAGS='$(CFLAGS_NOVISIBILITY) -DUSE_DRICORE'
- DRI_CXXFLAGS='$(CXXFLAGS_NOVISIBILITY) -DUSE_DRICORE'
- MESA_MODULES='$(DRICORE_LIBS) $(DRICORE_GLSL_LIBS)'
- fi
- fi
+ DRICORE_GLSL_LIBS='$(TOP)/$(LIB_DIR)/libglsl.so'
+ DRICORE_LIBS='$(TOP)/$(LIB_DIR)/libdricore.so'
+ DRICORE_LIB_DEPS='-L$(TOP)/$(LIB_DIR) -Wl,-R$(DRI_DRIVER_INSTALL_DIR) -lglsl'
+ DRI_LIB_DEPS='-L$(TOP)/$(LIB_DIR) -Wl,-R$(DRI_DRIVER_INSTALL_DIR) -ldricore -lglsl'
+ DRI_CFLAGS='$(CFLAGS_NOVISIBILITY) -DUSE_DRICORE'
+ DRI_CXXFLAGS='$(CXXFLAGS_NOVISIBILITY) -DUSE_DRICORE'
+ MESA_MODULES='$(DRICORE_LIBS) $(DRICORE_GLSL_LIBS)'
fi
AC_SUBST([DRICORE_LIBS])
AC_SUBST([DRICORE_GLSL_LIBS])
@@ -1280,7 +1242,7 @@ if test "x$enable_dri" = xyes; then
fi
fi
- # put all the necessary libs together, including possibly libdricore
+ # put all the necessary libs together
DRI_LIB_DEPS="$DRI_LIB_DEPS $SELINUX_LIBS $LIBDRM_LIBS $EXPAT_LIB -lm -lpthread $DLOPEN_LIBS"
fi
AC_SUBST([DRI_DIRS])
@@ -1291,29 +1253,57 @@ case $DRI_DIRS in
*i915*|*i965*)
PKG_CHECK_MODULES([INTEL], [libdrm_intel >= $LIBDRM_INTEL_REQUIRED])
- case $DRI_DIRS in
- *i965*)
- HAVE_I965_DRI=yes;
- ;;
- esac
+ for d in $(echo $DRI_DIRS | sed 's/,/ /g'); do
+ case $d in
+ i915)
+ HAVE_I915_DRI=yes;
+ ;;
+ i965)
+ HAVE_I965_DRI=yes;
+ ;;
+ esac
+ done
;;
esac
-AM_CONDITIONAL(HAVE_I965_DRI, test x$HAVE_I965_DRI = xyes)
-
case $DRI_DIRS in
*nouveau*)
PKG_CHECK_MODULES([NOUVEAU], [libdrm_nouveau >= $LIBDRM_NOUVEAU_REQUIRED])
+ HAVE_NOUVEAU_DRI=yes;
;;
esac
case $DRI_DIRS in
*radeon*|*r200*)
PKG_CHECK_MODULES([RADEON], [libdrm_radeon >= $LIBDRM_RADEON_REQUIRED])
+
+ for d in $(echo $DRI_DIRS | sed 's/,/ /g'); do
+ case $d in
+ radeon)
+ HAVE_RADEON_DRI=yes;
+ ;;
+ r200)
+ HAVE_R200_DRI=yes;
+ ;;
+ esac
+ done
+
;;
esac
+case $DRI_DIRS in
+*swrast*)
+ HAVE_SWRAST_DRI=yes;
+ ;;
+esac
+
+AM_CONDITIONAL(HAVE_I915_DRI, test x$HAVE_I915_DRI = xyes)
+AM_CONDITIONAL(HAVE_I965_DRI, test x$HAVE_I965_DRI = xyes)
+AM_CONDITIONAL(HAVE_NOUVEAU_DRI, test x$HAVE_NOUVEAU_DRI = xyes)
+AM_CONDITIONAL(HAVE_R200_DRI, test x$HAVE_R200_DRI = xyes)
+AM_CONDITIONAL(HAVE_RADEON_DRI, test x$HAVE_RADEON_DRI = xyes)
+AM_CONDITIONAL(HAVE_SWRAST_DRI, test x$HAVE_SWRAST_DRI = xyes)
dnl
dnl OSMesa configuration
@@ -1380,9 +1370,6 @@ if test "x$enable_gbm" = xyes; then
if test "x$enable_dri" = xyes; then
GBM_BACKEND_DIRS="$GBM_BACKEND_DIRS dri"
- if test "$SHARED_GLAPI" -eq 0; then
- AC_MSG_ERROR([gbm_dri requires --enable-shared-glapi])
- fi
fi
fi
AC_SUBST([GBM_LIB_DEPS])
@@ -1941,7 +1928,14 @@ CXXFLAGS="$CXXFLAGS $USER_CXXFLAGS"
dnl Substitute the config
AC_CONFIG_FILES([configs/autoconf
+ src/mesa/drivers/dri/dri.pc
+ src/mesa/drivers/dri/Makefile
+ src/mesa/drivers/dri/i915/Makefile
src/mesa/drivers/dri/i965/Makefile
+ src/mesa/drivers/dri/nouveau/Makefile
+ src/mesa/drivers/dri/r200/Makefile
+ src/mesa/drivers/dri/radeon/Makefile
+ src/mesa/drivers/dri/swrast/Makefile
tests/Makefile
tests/glx/Makefile])
@@ -1992,7 +1986,6 @@ if test "x$enable_dri" != xno; then
echo " DRI drivers: $dri_dirs"
fi
echo " DRI driver dir: $DRI_DRIVER_INSTALL_DIR"
- echo " Shared dricore: $enable_dricore"
fi
case "x$enable_glx$enable_xlib_glx" in
diff --git a/mesalib/src/glsl/glsl_types.cpp b/mesalib/src/glsl/glsl_types.cpp
index d4385a644..1489aae6d 100644
--- a/mesalib/src/glsl/glsl_types.cpp
+++ b/mesalib/src/glsl/glsl_types.cpp
@@ -147,12 +147,12 @@ glsl_type::sampler_index() const
return TEXTURE_RECT_INDEX;
case GLSL_SAMPLER_DIM_BUF:
assert(!"FINISHME: Implement ARB_texture_buffer_object");
- break;
+ return TEXTURE_BUFFER_INDEX;
case GLSL_SAMPLER_DIM_EXTERNAL:
return TEXTURE_EXTERNAL_INDEX;
default:
assert(!"Should not get here.");
- break;
+ return TEXTURE_BUFFER_INDEX;
}
}
diff --git a/mesalib/src/glsl/linker.cpp b/mesalib/src/glsl/linker.cpp
index adedfe6f3..509575192 100644
--- a/mesalib/src/glsl/linker.cpp
+++ b/mesalib/src/glsl/linker.cpp
@@ -1388,9 +1388,10 @@ public:
static bool is_same(const tfeedback_decl &x, const tfeedback_decl &y);
bool assign_location(struct gl_context *ctx, struct gl_shader_program *prog,
ir_variable *output_var);
+ bool accumulate_num_outputs(struct gl_shader_program *prog, unsigned *count);
bool store(struct gl_context *ctx, struct gl_shader_program *prog,
struct gl_transform_feedback_info *info, unsigned buffer,
- unsigned varying) const;
+ unsigned varying, const unsigned max_outputs) const;
/**
@@ -1624,16 +1625,9 @@ tfeedback_decl::assign_location(struct gl_context *ctx,
}
-/**
- * Update gl_transform_feedback_info to reflect this tfeedback_decl.
- *
- * If an error occurs, the error is reported through linker_error() and false
- * is returned.
- */
bool
-tfeedback_decl::store(struct gl_context *ctx, struct gl_shader_program *prog,
- struct gl_transform_feedback_info *info,
- unsigned buffer, unsigned varying) const
+tfeedback_decl::accumulate_num_outputs(struct gl_shader_program *prog,
+ unsigned *count)
{
if (!this->is_assigned()) {
/* From GL_EXT_transform_feedback:
@@ -1648,6 +1642,28 @@ tfeedback_decl::store(struct gl_context *ctx, struct gl_shader_program *prog,
return false;
}
+ unsigned translated_size = this->size;
+ if (this->is_clip_distance_mesa)
+ translated_size = (translated_size + 3) / 4;
+
+ *count += translated_size * this->matrix_columns;
+
+ return true;
+}
+
+
+/**
+ * Update gl_transform_feedback_info to reflect this tfeedback_decl.
+ *
+ * If an error occurs, the error is reported through linker_error() and false
+ * is returned.
+ */
+bool
+tfeedback_decl::store(struct gl_context *ctx, struct gl_shader_program *prog,
+ struct gl_transform_feedback_info *info,
+ unsigned buffer,
+ unsigned varying, const unsigned max_outputs) const
+{
/* From GL_EXT_transform_feedback:
* A program will fail to link if:
*
@@ -1663,19 +1679,6 @@ tfeedback_decl::store(struct gl_context *ctx, struct gl_shader_program *prog,
return false;
}
- /* Verify that the checks on MAX_TRANSFORM_FEEDBACK_INTERLEAVED_COMPONENTS
- * and MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS are sufficient to prevent
- * overflow of info->Outputs[]. In worst case we generate one entry in
- * Outputs[] per component so a conservative check is to verify that the
- * size of the array is greater than or equal to both
- * MAX_TRANSFORM_FEEDBACK_INTERLEAVED_COMPONENTS and
- * MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS.
- */
- assert(Elements(info->Outputs) >=
- ctx->Const.MaxTransformFeedbackInterleavedComponents);
- assert(Elements(info->Outputs) >=
- ctx->Const.MaxTransformFeedbackSeparateComponents);
-
unsigned translated_size = this->size;
if (this->is_clip_distance_mesa)
translated_size = (translated_size + 3) / 4;
@@ -1683,6 +1686,7 @@ tfeedback_decl::store(struct gl_context *ctx, struct gl_shader_program *prog,
for (unsigned index = 0; index < translated_size; ++index) {
for (unsigned v = 0; v < this->matrix_columns; ++v) {
unsigned num_components = this->vector_elements;
+ assert(info->NumOutputs < max_outputs);
info->Outputs[info->NumOutputs].ComponentOffset = 0;
if (this->is_clip_distance_mesa) {
if (this->is_subscripted) {
@@ -1976,6 +1980,7 @@ store_tfeedback_info(struct gl_context *ctx, struct gl_shader_program *prog,
prog->TransformFeedback.BufferMode == GL_SEPARATE_ATTRIBS;
ralloc_free(prog->LinkedTransformFeedback.Varyings);
+ ralloc_free(prog->LinkedTransformFeedback.Outputs);
memset(&prog->LinkedTransformFeedback, 0,
sizeof(prog->LinkedTransformFeedback));
@@ -1988,12 +1993,23 @@ store_tfeedback_info(struct gl_context *ctx, struct gl_shader_program *prog,
struct gl_transform_feedback_varying_info,
num_tfeedback_decls);
+ unsigned num_outputs = 0;
+ for (unsigned i = 0; i < num_tfeedback_decls; ++i)
+ if (!tfeedback_decls[i].accumulate_num_outputs(prog, &num_outputs))
+ return false;
+
+ prog->LinkedTransformFeedback.Outputs =
+ rzalloc_array(prog,
+ struct gl_transform_feedback_output,
+ num_outputs);
+
for (unsigned i = 0; i < num_tfeedback_decls; ++i) {
unsigned buffer = separate_attribs_mode ? i : 0;
if (!tfeedback_decls[i].store(ctx, prog, &prog->LinkedTransformFeedback,
- buffer, i))
+ buffer, i, num_outputs))
return false;
}
+ assert(prog->LinkedTransformFeedback.NumOutputs == num_outputs);
return true;
}
diff --git a/mesalib/src/mapi/glapi/Makefile b/mesalib/src/mapi/glapi/Makefile
index 9f1d42f88..37b178eee 100644
--- a/mesalib/src/mapi/glapi/Makefile
+++ b/mesalib/src/mapi/glapi/Makefile
@@ -1,77 +1,64 @@
-# src/mapi/glapi/Makefile
-
-TOP = ../../..
-include $(TOP)/configs/current
-
-TARGET = glapi
-
-MAPI = $(TOP)/src/mapi/mapi
-
-include sources.mak
-include $(MAPI)/sources.mak
-
-glapi_CPPFLAGS := \
- -I$(TOP)/include \
- -I$(TOP)/src/mapi \
- -I$(TOP)/src/mesa
-
-ifeq ($(SHARED_GLAPI),1)
-glapi_CPPFLAGS += \
- -DMAPI_MODE_BRIDGE \
- -DMAPI_ABI_HEADER=\"glapi/glapi_mapi_tmp.h\"
-glapi_SOURCES := $(addprefix $(MAPI)/, $(MAPI_BRIDGE_SOURCES))
-
-glapi_GLAPI_OBJECTS :=
-glapi_ASM_OBJECTS :=
-glapi_MAPI_OBJECTS := $(MAPI_BRIDGE_SOURCES:.c=.o)
-else
-glapi_CPPFLAGS += -DMAPI_MODE_UTIL
-glapi_SOURCES := $(GLAPI_SOURCES) $(addprefix $(MAPI)/, $(MAPI_UTIL_SOURCES))
-
-glapi_GLAPI_OBJECTS := $(GLAPI_SOURCES:.c=.o)
-glapi_ASM_OBJECTS := $(GLAPI_ASM_SOURCES:.S=.o)
-glapi_MAPI_OBJECTS := $(MAPI_UTIL_SOURCES:.c=.o)
-endif # SHARED_GLAPI
-
-glapi_OBJECTS := \
- $(glapi_GLAPI_OBJECTS) \
- $(glapi_ASM_OBJECTS) \
- $(glapi_MAPI_OBJECTS)
-
-default: depend lib$(TARGET).a
-
-lib$(TARGET).a: $(glapi_OBJECTS)
- @$(MKLIB) -o $(TARGET) -static $(glapi_OBJECTS)
-
-$(glapi_GLAPI_OBJECTS): %.o: %.c
- $(CC) -c $(glapi_CPPFLAGS) $(CFLAGS) $< -o $@
-
-$(glapi_ASM_OBJECTS): %.o: %.S
- $(CC) -c $(glapi_CPPFLAGS) $(CFLAGS) $< -o $@
-
-$(glapi_MAPI_OBJECTS): %.o: $(MAPI)/%.c
- $(CC) -c $(glapi_CPPFLAGS) $(CFLAGS) $< -o $@
-
-install:
-
-clean:
- -rm -f $(glapi_OBJECTS)
- -rm -f lib$(TARGET).a
- -rm -f depend depend.bak
-
-ifeq ($(SHARED_GLAPI),1)
-# workaround a bug in makedepend
-makedepend_CPPFLAGS := \
- $(filter-out -DMAPI_ABI_HEADER=%, $(glapi_CPPFLAGS))
-$(glapi_OBJECTS): glapi_mapi_tmp.h
-else
-makedepend_CPPFLAGS := $(glapi_CPPFLAGS)
-endif
-
-depend: $(glapi_SOURCES)
- @ echo "running $(MKDEP)"
- @ touch depend
- @$(MKDEP) $(MKDEP_OPTIONS) -f- $(DEFINES) $(makedepend_CPPFLAGS) \
- $(glapi_SOURCES) 2>/dev/null | sed -e 's,^$(MAPI)/,,' > depend
-
--include depend
+# src/mapi/glapi/Makefile
+
+TOP = ../../..
+include $(TOP)/configs/current
+
+TARGET = glapi
+
+MAPI = $(TOP)/src/mapi/mapi
+
+include sources.mak
+include $(MAPI)/sources.mak
+
+glapi_CPPFLAGS := \
+ -I$(TOP)/include \
+ -I$(TOP)/src/mapi \
+ -I$(TOP)/src/mesa
+
+glapi_CPPFLAGS += \
+ -DMAPI_MODE_BRIDGE \
+ -DMAPI_ABI_HEADER=\"glapi/glapi_mapi_tmp.h\"
+glapi_SOURCES := $(addprefix $(MAPI)/, $(MAPI_BRIDGE_SOURCES))
+
+glapi_GLAPI_OBJECTS :=
+glapi_ASM_OBJECTS :=
+glapi_MAPI_OBJECTS := $(MAPI_BRIDGE_SOURCES:.c=.o)
+
+glapi_OBJECTS := \
+ $(glapi_GLAPI_OBJECTS) \
+ $(glapi_ASM_OBJECTS) \
+ $(glapi_MAPI_OBJECTS)
+
+default: depend lib$(TARGET).a
+
+lib$(TARGET).a: $(glapi_OBJECTS)
+ @$(MKLIB) -o $(TARGET) -static $(glapi_OBJECTS)
+
+$(glapi_GLAPI_OBJECTS): %.o: %.c
+ $(CC) -c $(glapi_CPPFLAGS) $(CFLAGS) $< -o $@
+
+$(glapi_ASM_OBJECTS): %.o: %.S
+ $(CC) -c $(glapi_CPPFLAGS) $(CFLAGS) $< -o $@
+
+$(glapi_MAPI_OBJECTS): %.o: $(MAPI)/%.c
+ $(CC) -c $(glapi_CPPFLAGS) $(CFLAGS) $< -o $@
+
+install:
+
+clean:
+ -rm -f $(glapi_OBJECTS)
+ -rm -f lib$(TARGET).a
+ -rm -f depend depend.bak
+
+# workaround a bug in makedepend
+makedepend_CPPFLAGS := \
+ $(filter-out -DMAPI_ABI_HEADER=%, $(glapi_CPPFLAGS))
+$(glapi_OBJECTS): glapi_mapi_tmp.h
+
+depend: $(glapi_SOURCES)
+ @ echo "running $(MKDEP)"
+ @ touch depend
+ @$(MKDEP) $(MKDEP_OPTIONS) -f- $(DEFINES) $(makedepend_CPPFLAGS) \
+ $(glapi_SOURCES) 2>/dev/null | sed -e 's,^$(MAPI)/,,' > depend
+
+-include depend
diff --git a/mesalib/src/mapi/glapi/gen/glX_proto_send.py b/mesalib/src/mapi/glapi/gen/glX_proto_send.py
index bec022218..29bf0808b 100644
--- a/mesalib/src/mapi/glapi/gen/glX_proto_send.py
+++ b/mesalib/src/mapi/glapi/gen/glX_proto_send.py
@@ -361,8 +361,6 @@ const GLuint __glXDefaultPixelStore[9] = { 0, 0, 0, 0, 0, 0, 0, 0, 1 };
procs[n] = func.static_glx_name(n)
print """
-#ifdef GLX_SHARED_GLAPI
-
static const struct proc_pair
{
const char *name;
@@ -396,8 +394,6 @@ __indirect_get_proc_address(const char *name)
return (pair) ? pair->proc : NULL;
}
-
-#endif /* GLX_SHARED_GLAPI */
"""
return
@@ -1051,9 +1047,7 @@ extern _X_HIDDEN NOINLINE FASTCALL GLubyte * __glXSetupVendorRequest(
break
print ''
- print '#ifdef GLX_SHARED_GLAPI'
print 'extern _X_HIDDEN void (*__indirect_get_proc_address(const char *name))(void);'
- print '#endif'
def show_usage():
diff --git a/mesalib/src/mesa/SConscript b/mesalib/src/mesa/SConscript
index 4754fbfc8..e9b1f6aaf 100644
--- a/mesalib/src/mesa/SConscript
+++ b/mesalib/src/mesa/SConscript
@@ -423,14 +423,6 @@ if env['gcc'] and env['platform'] != 'windows':
'x86-64/x86-64.c',
'x86-64/xform4.S',
]
- elif env['machine'] == 'ppc':
- env.Append(CPPDEFINES = [
- 'USE_PPC_ASM',
- 'USE_VMX_ASM',
- ])
- mesa_sources += [
- 'ppc/common_ppc.c',
- ]
elif env['machine'] == 'sparc':
mesa_sources += [
'sparc/sparc.c',
diff --git a/mesalib/src/mesa/drivers/dri/Makefile b/mesalib/src/mesa/drivers/dri/Makefile
deleted file mode 100644
index 264648c3f..000000000
--- a/mesalib/src/mesa/drivers/dri/Makefile
+++ /dev/null
@@ -1,55 +0,0 @@
-# src/mesa/drivers/dri/Makefile
-
-TOP = ../../../..
-
-include $(TOP)/configs/current
-
-
-
-default: $(TOP)/$(LIB_DIR) subdirs dri.pc
-
-
-$(TOP)/$(LIB_DIR):
- -mkdir $(TOP)/$(LIB_DIR)
-
-
-subdirs:
- @for dir in $(DRI_DIRS) ; do \
- if [ -d $$dir ] ; then \
- (cd $$dir && $(MAKE)) || exit 1 ; \
- fi \
- done
-
-pcedit = sed \
- -e 's,@INSTALL_DIR@,$(INSTALL_DIR),' \
- -e 's,@INSTALL_LIB_DIR@,$(INSTALL_LIB_DIR),' \
- -e 's,@INSTALL_INC_DIR@,$(INSTALL_INC_DIR),' \
- -e 's,@VERSION@,$(MESA_MAJOR).$(MESA_MINOR).$(MESA_TINY),' \
- -e 's,@DRI_DRIVER_DIR@,$(DRI_DRIVER_INSTALL_DIR),' \
- -e 's,@DRI_PC_REQ_PRIV@,$(DRI_PC_REQ_PRIV),'
-
-dri.pc: dri.pc.in
- $(pcedit) $< > $@
-
-
-install: dri.pc
- @for dir in $(DRI_DIRS) ; do \
- if [ -d $$dir ] ; then \
- (cd $$dir && $(MAKE) install) || exit 1 ; \
- fi \
- done
- $(INSTALL) -d $(DESTDIR)$(INSTALL_INC_DIR)/GL/internal
- $(INSTALL) -m 0644 $(TOP)/include/GL/internal/dri_interface.h \
- $(DESTDIR)$(INSTALL_INC_DIR)/GL/internal
- $(INSTALL) -d $(DESTDIR)$(INSTALL_LIB_DIR)/pkgconfig
- $(INSTALL) -m 0644 dri.pc $(DESTDIR)$(INSTALL_LIB_DIR)/pkgconfig
-
-
-clean:
- -@for dir in $(DRI_DIRS) ; do \
- if [ -d $$dir ] ; then \
- (cd $$dir && $(MAKE) clean) ; \
- fi \
- done
- -rm -f common/*.o
- -rm -f *.pc
diff --git a/mesalib/src/mesa/drivers/dri/Makefile.defines b/mesalib/src/mesa/drivers/dri/Makefile.defines
deleted file mode 100644
index 6ff8df5c0..000000000
--- a/mesalib/src/mesa/drivers/dri/Makefile.defines
+++ /dev/null
@@ -1,27 +0,0 @@
-# -*-makefile-*-
-
-# Import mesa_dri_common_*
-include ../common/Makefile.sources
-
-COMMON_GALLIUM_SOURCES = \
- $(addprefix ../common/, $(mesa_dri_common_gallium_SOURCES))
-
-COMMON_SOURCES = \
- $(addprefix ../common/, $(mesa_dri_common_SOURCES))
-
-INCLUDES = $(SHARED_INCLUDES) $(EXPAT_INCLUDES)
-
-OBJECTS = $(C_SOURCES:.c=.o) \
- $(CXX_SOURCES:.cpp=.o) \
- $(ASM_SOURCES:.S=.o)
-
-
-### Include directories
-SHARED_INCLUDES = \
- -I. \
- -Iserver \
- $(addprefix -I$(TOP)/, $(mesa_dri_common_INCLUDES)) \
- $(LIBDRM_CFLAGS)
-
-INCLUDES += $(API_DEFINES)
-CXXFLAGS += $(API_DEFINES)
diff --git a/mesalib/src/mesa/drivers/dri/Makefile.targets b/mesalib/src/mesa/drivers/dri/Makefile.targets
deleted file mode 100644
index 436b2a3c4..000000000
--- a/mesalib/src/mesa/drivers/dri/Makefile.targets
+++ /dev/null
@@ -1,78 +0,0 @@
-# -*-makefile-*-
-
-##### RULES #####
-
-.c.o:
- $(CC) -c $(INCLUDES) $(DRI_CFLAGS) $(DRIVER_DEFINES) $< -o $@
-
-.cpp.o:
- $(CC) -c $(INCLUDES) $(DRI_CXXFLAGS) $(DRIVER_DEFINES) $< -o $@
-
-.S.o:
- $(CC) -c $(INCLUDES) $(DRI_CFLAGS) $(DRIVER_DEFINES) $< -o $@
-
-
-#### TARGETS #####
-
-default: subdirs lib
-
-
-.PHONY: lib
-lib: symlinks subdirs depend
- @$(MAKE) $(LIBNAME) $(TOP)/$(LIB_DIR)/$(LIBNAME)
-
-$(LIBNAME): $(OBJECTS) $(EXTRA_MODULES) $(MESA_MODULES) Makefile \
- $(TOP)/src/mesa/drivers/dri/Makefile.targets $(TOP)/src/mesa/drivers/dri/common/dri_test.o
- $(MKLIB) -o $@.tmp -noprefix -linker '$(CXX)' -ldflags '$(LDFLAGS)' \
- $(OBJECTS) $(EXTRA_MODULES) $(DRI_LIB_DEPS)
- $(CXX) $(CFLAGS) -o $@.test $(TOP)/src/mesa/drivers/dri/common/dri_test.o $@.tmp $(DRI_LIB_DEPS)
- @rm -f $@.test
- mv -f $@.tmp $@
-
-
-$(TOP)/$(LIB_DIR)/$(LIBNAME): $(LIBNAME)
- $(INSTALL) $(LIBNAME) $(TOP)/$(LIB_DIR)
-
-
-# If the Makefile defined SUBDIRS, run make in each
-.PHONY: subdirs
-subdirs:
- @if test -n "$(SUBDIRS)" ; then \
- for dir in $(SUBDIRS) ; do \
- if [ -d $$dir ] ; then \
- (cd $$dir && $(MAKE)) || exit 1; \
- fi \
- done \
- fi
-
-
-.PHONY: symlinks
-symlinks:
-
-
-depend: $(C_SOURCES) $(CXX_SOURCES) $(ASM_SOURCES) $(SYMLINKS)
- @ echo "running $(MKDEP)"
- @ rm -f depend
- @ touch depend
- @ $(MKDEP) $(MKDEP_OPTIONS) $(DRIVER_DEFINES) $(INCLUDES) \
- $(C_SOURCES) $(CXX_SOURCES) \
- $(ASM_SOURCES) > /dev/null 2>/dev/null
-
-
-# Emacs tags
-tags:
- etags `find . -name \*.[ch]` `find ../include`
-
-
-# Remove .o and backup files
-clean:
- -rm -f *.o */*.o *~ *.so *~ server/*.o $(SYMLINKS)
- -rm -f depend depend.bak
-
-
-install: $(LIBNAME)
- $(INSTALL) -d $(DESTDIR)$(DRI_DRIVER_INSTALL_DIR)
- $(MINSTALL) -m 755 $(LIBNAME) $(DESTDIR)$(DRI_DRIVER_INSTALL_DIR)
-
-
--include depend
diff --git a/mesalib/src/mesa/drivers/dri/dri.pc.in b/mesalib/src/mesa/drivers/dri/dri.pc.in
index 695aa6cfd..de6e08a4a 100644
--- a/mesalib/src/mesa/drivers/dri/dri.pc.in
+++ b/mesalib/src/mesa/drivers/dri/dri.pc.in
@@ -1,8 +1,8 @@
-prefix=@INSTALL_DIR@
-exec_prefix=${prefix}
-libdir=@INSTALL_LIB_DIR@
-includedir=@INSTALL_INC_DIR@
-dridriverdir=@DRI_DRIVER_DIR@
+prefix=@prefix@
+exec_prefix=@exec_prefix@
+libdir=@libdir@
+includedir=@includedir@
+dridriverdir=@DRI_DRIVER_INSTALL_DIR@
Name: dri
Description: Direct Rendering Infrastructure
diff --git a/mesalib/src/mesa/drivers/dri/swrast/Makefile b/mesalib/src/mesa/drivers/dri/swrast/Makefile
deleted file mode 100644
index 509fa28b6..000000000
--- a/mesalib/src/mesa/drivers/dri/swrast/Makefile
+++ /dev/null
@@ -1,27 +0,0 @@
-# src/mesa/drivers/dri/swrast/Makefile
-
-TOP = ../../../../..
-include $(TOP)/configs/current
-
-LIBNAME = swrast_dri.so
-
-include ../Makefile.defines
-
-DRIVER_DEFINES = -D__NOT_HAVE_DRM_H
-
-DRIVER_SOURCES = \
- swrast.c \
- swrast_span.c
-
-C_SOURCES = \
- $(SWRAST_COMMON_SOURCES) \
- $(DRIVER_SOURCES)
-
-ASM_SOURCES =
-
-SWRAST_COMMON_SOURCES = \
- ../common/utils.c \
- ../common/drisw_util.c
-
-include ../Makefile.targets
-
diff --git a/mesalib/src/mesa/main/cpuinfo.c b/mesalib/src/mesa/main/cpuinfo.c
index d19aef91b..0d7971bcc 100644
--- a/mesalib/src/mesa/main/cpuinfo.c
+++ b/mesalib/src/mesa/main/cpuinfo.c
@@ -1,109 +1,91 @@
-/*
- * Mesa 3-D graphics library
- * Version: 7.5
- *
- * Copyright (C) 2009 VMware, Inc. All Rights Reserved.
- *
- * Permission is hereby granted, free of charge, to any person obtaining a
- * copy of this software and associated documentation files (the "Software"),
- * to deal in the Software without restriction, including without limitation
- * the rights to use, copy, modify, merge, publish, distribute, sublicense,
- * and/or sell copies of the Software, and to permit persons to whom the
- * Software is furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included
- * in all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
- * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
- * BRIAN PAUL BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
- * AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
- * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
- */
-
-
-#include "main/compiler.h"
-#include "main/cpuinfo.h"
-
-
-/**
- * This function should be called before the various "cpu_has_foo" macros
- * are used.
- */
-void
-_mesa_get_cpu_features(void)
-{
-#ifdef USE_X86_ASM
- _mesa_get_x86_features();
-#endif
-}
-
-
-/**
- * Return a string describing the CPU architexture and extensions that
- * Mesa is using (such as SSE or Altivec).
- * \return information string, free it with free()
- */
-char *
-_mesa_get_cpu_string(void)
-{
-#define MAX_STRING 50
- char *buffer;
-
- buffer = (char *) malloc(MAX_STRING);
- if (!buffer)
- return NULL;
-
- buffer[0] = 0;
-
-#ifdef USE_X86_ASM
-
- if (_mesa_x86_cpu_features) {
- strcat(buffer, "x86");
- }
-
-# ifdef USE_MMX_ASM
- if (cpu_has_mmx) {
- strcat(buffer, (cpu_has_mmxext) ? "/MMX+" : "/MMX");
- }
-# endif
-# ifdef USE_3DNOW_ASM
- if (cpu_has_3dnow) {
- strcat(buffer, (cpu_has_3dnowext) ? "/3DNow!+" : "/3DNow!");
- }
-# endif
-# ifdef USE_SSE_ASM
- if (cpu_has_xmm) {
- strcat(buffer, (cpu_has_xmm2) ? "/SSE2" : "/SSE");
- }
-# endif
-
-#elif defined(USE_SPARC_ASM)
-
- strcat(buffer, "SPARC");
-
-#elif defined(USE_PPC_ASM)
-
- if (_mesa_ppc_cpu_features) {
- strcat(buffer, (cpu_has_64) ? "PowerPC 64" : "PowerPC");
- }
-
-# ifdef USE_VMX_ASM
-
- if (cpu_has_vmx) {
- strcat(buffer, "/Altivec");
- }
-
-# endif
-
- if (! cpu_has_fpu) {
- strcat(buffer, "/No FPU");
- }
-
-#endif
-
- assert(strlen(buffer) < MAX_STRING);
-
- return buffer;
-}
+/*
+ * Mesa 3-D graphics library
+ * Version: 7.5
+ *
+ * Copyright (C) 2009 VMware, Inc. All Rights Reserved.
+ *
+ * Permission is hereby granted, free of charge, to any person obtaining a
+ * copy of this software and associated documentation files (the "Software"),
+ * to deal in the Software without restriction, including without limitation
+ * the rights to use, copy, modify, merge, publish, distribute, sublicense,
+ * and/or sell copies of the Software, and to permit persons to whom the
+ * Software is furnished to do so, subject to the following conditions:
+ *
+ * The above copyright notice and this permission notice shall be included
+ * in all copies or substantial portions of the Software.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
+ * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
+ * BRIAN PAUL BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
+ * AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
+ * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+ */
+
+
+#include "main/compiler.h"
+#include "main/cpuinfo.h"
+
+
+/**
+ * This function should be called before the various "cpu_has_foo" macros
+ * are used.
+ */
+void
+_mesa_get_cpu_features(void)
+{
+#ifdef USE_X86_ASM
+ _mesa_get_x86_features();
+#endif
+}
+
+
+/**
+ * Return a string describing the CPU architexture and extensions that
+ * Mesa is using (such as SSE or Altivec).
+ * \return information string, free it with free()
+ */
+char *
+_mesa_get_cpu_string(void)
+{
+#define MAX_STRING 50
+ char *buffer;
+
+ buffer = (char *) malloc(MAX_STRING);
+ if (!buffer)
+ return NULL;
+
+ buffer[0] = 0;
+
+#ifdef USE_X86_ASM
+
+ if (_mesa_x86_cpu_features) {
+ strcat(buffer, "x86");
+ }
+
+# ifdef USE_MMX_ASM
+ if (cpu_has_mmx) {
+ strcat(buffer, (cpu_has_mmxext) ? "/MMX+" : "/MMX");
+ }
+# endif
+# ifdef USE_3DNOW_ASM
+ if (cpu_has_3dnow) {
+ strcat(buffer, (cpu_has_3dnowext) ? "/3DNow!+" : "/3DNow!");
+ }
+# endif
+# ifdef USE_SSE_ASM
+ if (cpu_has_xmm) {
+ strcat(buffer, (cpu_has_xmm2) ? "/SSE2" : "/SSE");
+ }
+# endif
+
+#elif defined(USE_SPARC_ASM)
+
+ strcat(buffer, "SPARC");
+
+#endif
+
+ assert(strlen(buffer) < MAX_STRING);
+
+ return buffer;
+}
diff --git a/mesalib/src/mesa/main/cpuinfo.h b/mesalib/src/mesa/main/cpuinfo.h
index c41a90b07..bf846ef40 100644
--- a/mesalib/src/mesa/main/cpuinfo.h
+++ b/mesalib/src/mesa/main/cpuinfo.h
@@ -31,10 +31,6 @@
#include "x86/common_x86_asm.h"
#endif
-#if defined(USE_PPC_ASM)
-#include "ppc/common_ppc_features.h"
-#endif
-
extern void
_mesa_get_cpu_features(void);
diff --git a/mesalib/src/mesa/main/fbobject.c b/mesalib/src/mesa/main/fbobject.c
index 052495907..2b3ac2e25 100644
--- a/mesalib/src/mesa/main/fbobject.c
+++ b/mesalib/src/mesa/main/fbobject.c
@@ -2709,9 +2709,13 @@ _mesa_BlitFramebufferEXT(GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1,
if ((readRb == NULL) || (drawRb == NULL)) {
mask &= ~GL_STENCIL_BUFFER_BIT;
}
- else if (readRb->Format != drawRb->Format) {
+ else if (_mesa_get_format_bits(readRb->Format, GL_STENCIL_BITS) !=
+ _mesa_get_format_bits(drawRb->Format, GL_STENCIL_BITS)) {
+ /* There is no need to check the stencil datatype here, because
+ * there is only one: GL_UNSIGNED_INT.
+ */
_mesa_error(ctx, GL_INVALID_OPERATION,
- "glBlitFramebufferEXT(stencil buffer format mismatch)");
+ "glBlitFramebufferEXT(stencil buffer size mismatch)");
return;
}
}
@@ -2731,7 +2735,10 @@ _mesa_BlitFramebufferEXT(GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1,
if ((readRb == NULL) || (drawRb == NULL)) {
mask &= ~GL_DEPTH_BUFFER_BIT;
}
- else if (readRb->Format != drawRb->Format) {
+ else if ((_mesa_get_format_bits(readRb->Format, GL_DEPTH_BITS) !=
+ _mesa_get_format_bits(drawRb->Format, GL_DEPTH_BITS)) ||
+ (_mesa_get_format_datatype(readRb->Format) !=
+ _mesa_get_format_datatype(drawRb->Format))) {
_mesa_error(ctx, GL_INVALID_OPERATION,
"glBlitFramebufferEXT(depth buffer format mismatch)");
return;
diff --git a/mesalib/src/mesa/main/mtypes.h b/mesalib/src/mesa/main/mtypes.h
index f8ef01d4e..2ff608596 100644
--- a/mesalib/src/mesa/main/mtypes.h
+++ b/mesalib/src/mesa/main/mtypes.h
@@ -1827,6 +1827,22 @@ struct gl_transform_feedback_varying_info {
GLint Size;
};
+struct gl_transform_feedback_output {
+ unsigned OutputRegister;
+ unsigned OutputBuffer;
+ unsigned NumComponents;
+
+ /** offset (in DWORDs) of this output within the interleaved structure */
+ unsigned DstOffset;
+
+ /**
+ * Offset into the output register of the data to output. For example,
+ * if NumComponents is 2 and ComponentOffset is 1, then the data to
+ * offset is in the y and z components of the output register.
+ */
+ unsigned ComponentOffset;
+};
+
/** Post-link transform feedback info. */
struct gl_transform_feedback_info {
unsigned NumOutputs;
@@ -1836,21 +1852,7 @@ struct gl_transform_feedback_info {
*/
unsigned NumBuffers;
- struct {
- unsigned OutputRegister;
- unsigned OutputBuffer;
- unsigned NumComponents;
-
- /** offset (in DWORDs) of this output within the interleaved structure */
- unsigned DstOffset;
-
- /**
- * Offset into the output register of the data to output. For example,
- * if NumComponents is 2 and ComponentOffset is 1, then the data to
- * offset is in the y and z components of the output register.
- */
- unsigned ComponentOffset;
- } Outputs[MAX_PROGRAM_OUTPUTS];
+ struct gl_transform_feedback_output *Outputs;
/** Transform feedback varyings used for the linking of this shader program.
*
diff --git a/mesalib/src/mesa/main/state.c b/mesalib/src/mesa/main/state.c
index adbb0c32b..39d7294f7 100644
--- a/mesalib/src/mesa/main/state.c
+++ b/mesalib/src/mesa/main/state.c
@@ -33,6 +33,7 @@
#include "glheader.h"
#include "mtypes.h"
+#include "arrayobj.h"
#include "context.h"
#include "debug.h"
#include "macros.h"
diff --git a/mesalib/src/mesa/math/m_xform.c b/mesalib/src/mesa/math/m_xform.c
index 369f2c6e9..61ad3c753 100644
--- a/mesalib/src/mesa/math/m_xform.c
+++ b/mesalib/src/mesa/math/m_xform.c
@@ -58,10 +58,6 @@
#include "sparc/sparc.h"
#endif
-#ifdef USE_PPC_ASM
-#include "ppc/common_ppc_features.h"
-#endif
-
clip_func _mesa_clip_tab[5];
clip_func _mesa_clip_np_tab[5];
dotprod_func _mesa_dotprod_tab[5];
@@ -120,8 +116,6 @@ _math_init_transformation( void )
_mesa_init_all_x86_transform_asm();
#elif defined( USE_SPARC_ASM )
_mesa_init_all_sparc_transform_asm();
-#elif defined( USE_PPC_ASM )
- _mesa_init_all_ppc_transform_asm();
#elif defined( USE_X86_64_ASM )
_mesa_init_all_x86_64_transform_asm();
#endif
diff --git a/mesalib/src/mesa/ppc/common_ppc.c b/mesalib/src/mesa/ppc/common_ppc.c
deleted file mode 100644
index c7cec96e5..000000000
--- a/mesalib/src/mesa/ppc/common_ppc.c
+++ /dev/null
@@ -1,91 +0,0 @@
-/*
- * (C) Copyright IBM Corporation 2004
- * All Rights Reserved.
- *
- * Permission is hereby granted, free of charge, to any person obtaining a
- * copy of this software and associated documentation files (the "Software"),
- * to deal in the Software without restriction, including without limitation
- * on the rights to use, copy, modify, merge, publish, distribute, sub
- * license, and/or sell copies of the Software, and to permit persons to whom
- * the Software is furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice (including the next
- * paragraph) shall be included in all copies or substantial portions of the
- * Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT. IN NO EVENT SHALL
- * IBM AND/OR THEIR SUPPLIERS BE LIABLE FOR ANY CLAIM,
- * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
- * OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
- * USE OR OTHER DEALINGS IN THE SOFTWARE.
- */
-
-/**
- * \file common_ppc.c
- * Check CPU capabilities & initialize optimized funtions for this particular
- * processor.
- *
- * \author Ian Romanick <idr@us.ibm.com>
- */
-
-#include <stdio.h>
-#include <unistd.h>
-#include <sys/types.h>
-
-#ifdef USE_PPC_ASM
-#include <elf.h>
-#endif
-
-#include "common_ppc_features.h"
-
-
-unsigned long _mesa_ppc_cpu_features = 0;
-
-/**
- * Detect CPU features and install optimized transform and lighting routines.
- * Currently, CPU features are only detected. The optimized routines have
- * yet to be written.
- *
- * \bug
- * This routine is highly specific to Linux kernel 2.6. I'm still waiting
- * to hear back from the glibc folk on how to do this "right".
- */
-
-void _mesa_init_all_ppc_transform_asm( void )
-{
-#ifdef USE_PPC_ASM
- const pid_t my_pid = getpid();
- char file_name[32];
- FILE * f;
-#ifdef __powerpc64__
- Elf64_auxv_t v;
-#else
- Elf32_auxv_t v;
-#endif
-
- sprintf( file_name, "/proc/%u/auxv", (unsigned) my_pid );
- f = fopen( file_name, "rb" );
- if ( f != NULL ) {
- while( 1 ) {
- ssize_t elem = fread( & v, sizeof( v ), 1, f );
-
- if ( elem < 1 ) {
- break;
- }
-
- if ( v.a_type == AT_HWCAP ) {
- _mesa_ppc_cpu_features = v.a_un.a_val;
- break;
- }
- }
-
- fclose( f );
- }
-
-# ifndef USE_VMX_ASM
- _mesa_ppc_cpu_features &= ~PPC_FEATURE_HAS_ALTIVEC;
-# endif
-#endif
-}
diff --git a/mesalib/src/mesa/ppc/common_ppc_features.h b/mesalib/src/mesa/ppc/common_ppc_features.h
deleted file mode 100644
index 9cde422d7..000000000
--- a/mesalib/src/mesa/ppc/common_ppc_features.h
+++ /dev/null
@@ -1,54 +0,0 @@
-/*
- * (C) Copyright IBM Corporation 2004
- * All Rights Reserved.
- *
- * Permission is hereby granted, free of charge, to any person obtaining a
- * copy of this software and associated documentation files (the "Software"),
- * to deal in the Software without restriction, including without limitation
- * on the rights to use, copy, modify, merge, publish, distribute, sub
- * license, and/or sell copies of the Software, and to permit persons to whom
- * the Software is furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice (including the next
- * paragraph) shall be included in all copies or substantial portions of the
- * Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT. IN NO EVENT SHALL
- * IBM AND/OR THEIR SUPPLIERS BE LIABLE FOR ANY CLAIM,
- * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
- * OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
- * USE OR OTHER DEALINGS IN THE SOFTWARE.
- */
-
-/**
- * \file common_ppc_features.h
- * Interface for determining which CPU features were detected.
- *
- * \author Ian Romanick <idr@us.ibm.com>
- */
-
-#ifndef COMMON_PPC_FEATURES_H
-#define COMMON_PPC_FEATURES_H
-
-#ifdef USE_PPC_ASM
-#include <asm/cputable.h>
-
-extern unsigned long _mesa_ppc_cpu_features;
-
-
-/* The PPC_FEATURE_* values come from asm/cputable.h. Should we define
- * versions of them here if that file does not exist? This will only
- * matter once these code paths are supported on non-Linux platforms.
- */
-
-#define cpu_has_64 ((_mesa_ppc_cpu_features & PPC_FEATURE_64) != 0)
-#define cpu_has_vmx ((_mesa_ppc_cpu_features & PPC_FEATURE_HAS_ALTIVEC) != 0)
-#define cpu_has_fpu ((_mesa_ppc_cpu_features & PPC_FEATURE_HAS_FPU) != 0)
-
-#endif /* USE_PPC_ASM */
-
-extern void _mesa_init_all_ppc_transform_asm( void );
-
-#endif /* COMMON_PPC_FEATURES_H */
diff --git a/mesalib/src/mesa/sources.mak b/mesalib/src/mesa/sources.mak
index 165a6c85e..b57a10e4d 100644
--- a/mesalib/src/mesa/sources.mak
+++ b/mesalib/src/mesa/sources.mak
@@ -277,7 +277,6 @@ ASM_C_SOURCES = \
x86/sse.c \
x86/rtasm/x86sse.c \
sparc/sparc.c \
- ppc/common_ppc.c \
x86-64/x86-64.c
X86_SOURCES = \
@@ -336,7 +335,6 @@ MESA_GALLIUM_SOURCES = \
$(VBO_SOURCES) \
$(STATETRACKER_SOURCES) \
$(PROGRAM_SOURCES) \
- ppc/common_ppc.c \
x86/common_x86.c
MESA_GALLIUM_CXX_SOURCES = \
diff --git a/xorg-server/xkeyboard-config/symbols/am b/xorg-server/xkeyboard-config/symbols/am
index 33711c4a8..5e6954e0b 100644
--- a/xorg-server/xkeyboard-config/symbols/am
+++ b/xorg-server/xkeyboard-config/symbols/am
@@ -86,7 +86,7 @@ xkb_symbols "phonetic" {
key <AE08> { [ 0x100057c, 0x100054c ] };
key <AE09> { [ 0x1000579, 0x1000549 ] };
key <AE10> { [ 0x1000573, 0x1000543 ] };
- key <AE11> { [ 0x100002D, 0x1002015 ] };
+ key <AE11> { [ 0x100058a, 0x1002015 ] };
key <AE12> { [ 0x100056a, 0x100053a ] };
key <LatQ> { [ 0x1000584, 0x1000554 ] };