Sophie

Sophie

distrib > Fedora > 14 > x86_64 > by-pkgid > c67c6057ffd14254a26624517a2352e6 > files > 11

i3-doc-3.e-3.bf1.fc14.noarch.rpm

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<title>i3: Client Struct Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<link href="doxygen.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<!-- Generated by Doxygen 1.6.2-20100208 -->
<div class="navigation" id="top">
  <div class="tabs">
    <ul>
      <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
      <li class="current"><a href="annotated.html"><span>Data&nbsp;Structures</span></a></li>
      <li><a href="files.html"><span>Files</span></a></li>
    </ul>
  </div>
  <div class="tabs">
    <ul>
      <li><a href="annotated.html"><span>Data&nbsp;Structures</span></a></li>
      <li><a href="functions.html"><span>Data&nbsp;Fields</span></a></li>
    </ul>
  </div>
</div>
<div class="contents">
<h1>Client Struct Reference</h1><!-- doxytag: class="Client" -->
<p>A client is X11-speak for a window.  
<a href="#_details">More...</a></p>

<p><code>#include &lt;<a class="el" href="a00036_source.html">data.h</a>&gt;</code></p>
<div class="dynheader">
Collaboration diagram for Client:</div>
<div class="dynsection">
<center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
<table border="0" cellpadding="0" cellspacing="0">
<tr><td colspan="2"><h2>Public Types</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">enum &nbsp;</td><td class="memItemRight" valign="bottom">{ <a class="el" href="a00007.html#a9cbfb03ac8724732687a65f1dd322f52a1c63eb3fb96671ecc282662e9a9794c4">FLOATING_AUTO_OFF</a> =  0, 
<a class="el" href="a00007.html#a9cbfb03ac8724732687a65f1dd322f52ad0ac3c5c5683bb6f5874b1f60c8de805">FLOATING_USER_OFF</a> =  1, 
<a class="el" href="a00007.html#a9cbfb03ac8724732687a65f1dd322f52a78261e07b9b6dcae45cecebb49b726d0">FLOATING_AUTO_ON</a> =  2, 
<a class="el" href="a00007.html#a9cbfb03ac8724732687a65f1dd322f52a16f5c711341db4d8c1a3f9b1e91415f0">FLOATING_USER_ON</a> =  3
 }</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight"><p>floating? (= not in tiling layout) This cannot be simply a bool because we want to keep track of whether the status was set by the application (by setting WM_CLASS to tools for example) or by the user. </p>
 <a href="a00007.html#a9cbfb03ac8724732687a65f1dd322f52">More...</a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">enum &nbsp;</td><td class="memItemRight" valign="bottom">{ <br/>
&nbsp;&nbsp;<a class="el" href="a00007.html#a13524424b7ae9daed074889de8ba19bdab4032c63a389fc6641f83300a6c99ed7">TITLEBAR_TOP</a> =  0, 
<a class="el" href="a00007.html#a13524424b7ae9daed074889de8ba19bda664360f8e0f0fc0a5683581614a7f3cd">TITLEBAR_LEFT</a>, 
<a class="el" href="a00007.html#a13524424b7ae9daed074889de8ba19bda5c73b93a98e3c2b8a2068e36c91efc57">TITLEBAR_RIGHT</a>, 
<a class="el" href="a00007.html#a13524424b7ae9daed074889de8ba19bda426f24dfc43f01bdecb8ac91fc8a3dd1">TITLEBAR_BOTTOM</a>, 
<br/>
&nbsp;&nbsp;<a class="el" href="a00007.html#a13524424b7ae9daed074889de8ba19bdab92e044f07ef4c95e96f0ed36341912d">TITLEBAR_OFF</a>
<br/>
 }</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight"><p>Ensure TITLEBAR_TOP maps to 0 because we use calloc for initialization later. </p>
 <a href="a00007.html#a13524424b7ae9daed074889de8ba19bd">More...</a><br/></td></tr>
<tr><td colspan="2"><h2>Public Member Functions</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00007.html#ad518d0cc2d51eef56a490112fdc64263">CIRCLEQ_ENTRY</a> (<a class="el" href="a00007.html">Client</a>) clients</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The following entry provides the necessary list pointers to use <a class="el" href="a00007.html" title="A client is X11-speak for a window.">Client</a> with LIST_* macros.  <a href="#ad518d0cc2d51eef56a490112fdc64263"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00007.html#a8e6ed86ea2f1eb000296cc51f83e7483">SLIST_ENTRY</a> (<a class="el" href="a00007.html">Client</a>) dock_clients</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00007.html#ad198bfe91f07daaad7a5353e216680b9">SLIST_ENTRY</a> (<a class="el" href="a00007.html">Client</a>) focus_clients</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00007.html#a4c6f7281f994459a9a388acc59c746b5">TAILQ_ENTRY</a> (<a class="el" href="a00007.html">Client</a>) floating_clients</td></tr>
<tr><td colspan="2"><h2>Data Fields</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00007.html#ac9aa39c193b1dd1688db6eb7ebf7b4fa">initialized</a></td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">initialized will be set to true if the client was fully initialized by <a class="el" href="a00072.html#a4a34e4e6e27dfe96206b43297c001f9c" title="Do some sanity checks and then reparent the window.">manage_window()</a> and all functions can be used normally  <a href="#ac9aa39c193b1dd1688db6eb7ebf7b4fa"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="a00006.html">Cell</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00007.html#a50e3e5823ffc3ae2019698b069ddf70a">old_position</a></td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">if you set a client to floating and set it back to managed, it does remember its old position and *tries* to get back there  <a href="#a50e3e5823ffc3ae2019698b069ddf70a"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="a00013.html">Container</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00007.html#a022927d41b4140a623f72fa360c46a17">container</a></td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Backpointer.  <a href="#a022927d41b4140a623f72fa360c46a17"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="a00025.html">Workspace</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00007.html#ab9573ba898dbd1932f5200be5eb2a990">workspace</a></td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Because dock clients don’t have a container, we have this workspace-backpointer.  <a href="#ab9573ba898dbd1932f5200be5eb2a990"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="a00020.html">Rect</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00007.html#aea76187592ae1a87eb8bb1af77af62d4">rect</a></td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">x, y, width, height of the frame  <a href="#aea76187592ae1a87eb8bb1af77af62d4"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="a00020.html">Rect</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00007.html#a7af57ac287f68a6e55b9279b720d7491">floating_rect</a></td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Position in floating mode and in tiling mode are saved separately.  <a href="#a7af57ac287f68a6e55b9279b720d7491"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="a00020.html">Rect</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00007.html#a694f6f127e048521451f931174a6e140">child_rect</a></td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">x, y, width, height of the child (relative to its frame)  <a href="#a694f6f127e048521451f931174a6e140"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00007.html#a4d2a7cf214d7d756d1e87fa99d284741">proportional_height</a></td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">contains the size calculated from the hints set by the window or 0 if the client did not send any hints  <a href="#a4d2a7cf214d7d756d1e87fa99d284741"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00007.html#a2324d36fb1ad3c0d9cae70f975cd3fe4">proportional_width</a></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00007.html#a92916a2b042c07b01eb6e3a4269413cc">base_height</a></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00007.html#a51ffa9095f0fba59737c1252cf0031cb">base_width</a></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00007.html#afa6b690b03609a16c555a22f976a364c">border_width</a></td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The amount of pixels which X will draw around the client.  <a href="#afa6b690b03609a16c555a22f976a364c"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00007.html#a80130d5f48f9c1db1e9206b578873002">width_increment</a></td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">contains the minimum increment size as specified for the window (in pixels).  <a href="#a80130d5f48f9c1db1e9206b578873002"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00007.html#aec47a7c174216266483e8a6a9e51d2f7">height_increment</a></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00007.html#a101bf3d37c729260e8a8e3ef808799de">desired_height</a></td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Height which was determined by reading the _NET_WM_STRUT_PARTIAL top/bottom of the screen reservation.  <a href="#a101bf3d37c729260e8a8e3ef808799de"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">char *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00007.html#a14c9eb7f57edfd939ed2fada25e83916">name</a></td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Name (= window title).  <a href="#a14c9eb7f57edfd939ed2fada25e83916"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00007.html#aa6a6f0505f2d751ea862bc97343dd6df">name_len</a></td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">name_len stores the real string length (glyphs) of the window title if the client uses _NET_WM_NAME.  <a href="#aa6a6f0505f2d751ea862bc97343dd6df"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00007.html#ab88a383fe1d2388cf4d4c792c899a766">uses_net_wm_name</a></td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">This will be set to true as soon as the first _NET_WM_NAME comes in.  <a href="#ab88a383fe1d2388cf4d4c792c899a766"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">char *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00007.html#ac39c70e8b92f752b81f2c5cca3522399">window_class_instance</a></td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Holds the WM_CLASS (which consists of two strings, the instance and the class), useful for matching the client in commands.  <a href="#ac39c70e8b92f752b81f2c5cca3522399"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">char *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00007.html#a1c231d29bfbf4213354bb5ac43bacfa4">window_class_class</a></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">char *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00007.html#a08f4887a64c4ea1812e5a27efe641d18">mark</a></td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Holds the client’s mark, for vim-like jumping.  <a href="#a08f4887a64c4ea1812e5a27efe641d18"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">xcb_window_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00007.html#a0385211b35d62a177e4eed5e58fbb693">leader</a></td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Holds the xcb_window_t (just an ID) for the leader window (logical parent for toolwindows and similar floating windows).  <a href="#a0385211b35d62a177e4eed5e58fbb693"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00007.html#a9eeeb880b93223456c2eae445beccf94">fullscreen</a></td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">fullscreen is pretty obvious  <a href="#a9eeeb880b93223456c2eae445beccf94"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">enum Client:: { ... } &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00007.html#ad5e886955e668cc51fbb17acb2871cea">floating</a></td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">floating? (= not in tiling layout) This cannot be simply a bool because we want to keep track of whether the status was set by the application (by setting WM_CLASS to tools for example) or by the user.  <a href="#ad5e886955e668cc51fbb17acb2871cea"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">enum Client:: { ... } &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00007.html#a990cfbc44d87127fd05d8f6a5293d2fd">titlebar_position</a></td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Ensure TITLEBAR_TOP maps to 0 because we use calloc for initialization later.  <a href="#a990cfbc44d87127fd05d8f6a5293d2fd"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00007.html#a5a1078f3b194418aa54c1837ff82351c">borderless</a></td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Contains a bool specifying whether this window should not be drawn with the usual decorations.  <a href="#a5a1078f3b194418aa54c1837ff82351c"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00007.html#a994b0c5a9eb35e42f04a0b845a3166ef">dock</a></td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">If a client is set as a dock, it is placed at the very bottom of the screen and its requested size is used.  <a href="#a994b0c5a9eb35e42f04a0b845a3166ef"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00007.html#ad169bd46b1c1edf6f7cddf2c0c5306c7">urgent</a></td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">True if the client set the urgency flag in its WM_HINTS property.  <a href="#ad169bd46b1c1edf6f7cddf2c0c5306c7"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00007.html#a873c62703ab51afe96b38df2b30ffa66">force_reconfigure</a></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00007.html#a0817c563b1f63c30c7873067a22d2607">awaiting_useless_unmap</a></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">xcb_window_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00007.html#ae6bb442465a95e5794ed34936fa67bac">frame</a></td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Our window: The frame around the client.  <a href="#ae6bb442465a95e5794ed34936fa67bac"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">xcb_gcontext_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00007.html#ab9525d9a134fa0d25a1352f8e58bee2e">titlegc</a></td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The titlebar’s graphic context inside the frame.  <a href="#ab9525d9a134fa0d25a1352f8e58bee2e"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">xcb_window_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00007.html#afba312b946fa74727ce619a33f8f28aa">child</a></td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The client’s window.  <a href="#afba312b946fa74727ce619a33f8f28aa"></a><br/></td></tr>
</table>
<hr/><a name="_details"></a><h2>Detailed Description</h2>
<p>A client is X11-speak for a window. </p>

<p>Definition at line <a class="el" href="a00036_source.html#l00342">342</a> of file <a class="el" href="a00036_source.html">data.h</a>.</p>
<hr/><h2>Member Enumeration Documentation</h2>
<a class="anchor" id="a9cbfb03ac8724732687a65f1dd322f52"></a><!-- doxytag: member="Client::@2" ref="a9cbfb03ac8724732687a65f1dd322f52" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">anonymous enum</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>floating? (= not in tiling layout) This cannot be simply a bool because we want to keep track of whether the status was set by the application (by setting WM_CLASS to tools for example) or by the user. </p>
<p>The user’s choice overwrites automatic mode, of course. The order of the values is important because we check with &gt;= FLOATING_AUTO_ON if a client is floating. </p>
<dl><dt><b>Enumerator: </b></dt><dd><table border="0" cellspacing="2" cellpadding="0">
<tr><td valign="top"><em><a class="anchor" id="a9cbfb03ac8724732687a65f1dd322f52a1c63eb3fb96671ecc282662e9a9794c4"></a><!-- doxytag: member="FLOATING_AUTO_OFF" ref="a9cbfb03ac8724732687a65f1dd322f52a1c63eb3fb96671ecc282662e9a9794c4" args="" -->FLOATING_AUTO_OFF</em>&nbsp;</td><td>
</td></tr>
<tr><td valign="top"><em><a class="anchor" id="a9cbfb03ac8724732687a65f1dd322f52ad0ac3c5c5683bb6f5874b1f60c8de805"></a><!-- doxytag: member="FLOATING_USER_OFF" ref="a9cbfb03ac8724732687a65f1dd322f52ad0ac3c5c5683bb6f5874b1f60c8de805" args="" -->FLOATING_USER_OFF</em>&nbsp;</td><td>
</td></tr>
<tr><td valign="top"><em><a class="anchor" id="a9cbfb03ac8724732687a65f1dd322f52a78261e07b9b6dcae45cecebb49b726d0"></a><!-- doxytag: member="FLOATING_AUTO_ON" ref="a9cbfb03ac8724732687a65f1dd322f52a78261e07b9b6dcae45cecebb49b726d0" args="" -->FLOATING_AUTO_ON</em>&nbsp;</td><td>
</td></tr>
<tr><td valign="top"><em><a class="anchor" id="a9cbfb03ac8724732687a65f1dd322f52a16f5c711341db4d8c1a3f9b1e91415f0"></a><!-- doxytag: member="FLOATING_USER_ON" ref="a9cbfb03ac8724732687a65f1dd322f52a16f5c711341db4d8c1a3f9b1e91415f0" args="" -->FLOATING_USER_ON</em>&nbsp;</td><td>
</td></tr>
</table>
</dd>
</dl>

<p>Definition at line <a class="el" href="a00036_source.html#l00419">419</a> of file <a class="el" href="a00036_source.html">data.h</a>.</p>

</div>
</div>
<a class="anchor" id="a13524424b7ae9daed074889de8ba19bd"></a><!-- doxytag: member="Client::@3" ref="a13524424b7ae9daed074889de8ba19bd" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">anonymous enum</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Ensure TITLEBAR_TOP maps to 0 because we use calloc for initialization later. </p>
<dl><dt><b>Enumerator: </b></dt><dd><table border="0" cellspacing="2" cellpadding="0">
<tr><td valign="top"><em><a class="anchor" id="a13524424b7ae9daed074889de8ba19bdab4032c63a389fc6641f83300a6c99ed7"></a><!-- doxytag: member="TITLEBAR_TOP" ref="a13524424b7ae9daed074889de8ba19bdab4032c63a389fc6641f83300a6c99ed7" args="" -->TITLEBAR_TOP</em>&nbsp;</td><td>
</td></tr>
<tr><td valign="top"><em><a class="anchor" id="a13524424b7ae9daed074889de8ba19bda664360f8e0f0fc0a5683581614a7f3cd"></a><!-- doxytag: member="TITLEBAR_LEFT" ref="a13524424b7ae9daed074889de8ba19bda664360f8e0f0fc0a5683581614a7f3cd" args="" -->TITLEBAR_LEFT</em>&nbsp;</td><td>
</td></tr>
<tr><td valign="top"><em><a class="anchor" id="a13524424b7ae9daed074889de8ba19bda5c73b93a98e3c2b8a2068e36c91efc57"></a><!-- doxytag: member="TITLEBAR_RIGHT" ref="a13524424b7ae9daed074889de8ba19bda5c73b93a98e3c2b8a2068e36c91efc57" args="" -->TITLEBAR_RIGHT</em>&nbsp;</td><td>
</td></tr>
<tr><td valign="top"><em><a class="anchor" id="a13524424b7ae9daed074889de8ba19bda426f24dfc43f01bdecb8ac91fc8a3dd1"></a><!-- doxytag: member="TITLEBAR_BOTTOM" ref="a13524424b7ae9daed074889de8ba19bda426f24dfc43f01bdecb8ac91fc8a3dd1" args="" -->TITLEBAR_BOTTOM</em>&nbsp;</td><td>
</td></tr>
<tr><td valign="top"><em><a class="anchor" id="a13524424b7ae9daed074889de8ba19bdab92e044f07ef4c95e96f0ed36341912d"></a><!-- doxytag: member="TITLEBAR_OFF" ref="a13524424b7ae9daed074889de8ba19bdab92e044f07ef4c95e96f0ed36341912d" args="" -->TITLEBAR_OFF</em>&nbsp;</td><td>
</td></tr>
</table>
</dd>
</dl>

<p>Definition at line <a class="el" href="a00036_source.html#l00423">423</a> of file <a class="el" href="a00036_source.html">data.h</a>.</p>

</div>
</div>
<hr/><h2>Member Function Documentation</h2>
<a class="anchor" id="ad518d0cc2d51eef56a490112fdc64263"></a><!-- doxytag: member="Client::CIRCLEQ_ENTRY" ref="ad518d0cc2d51eef56a490112fdc64263" args="(Client) clients" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">Client::CIRCLEQ_ENTRY </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="a00007.html">Client</a>&nbsp;</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>The following entry provides the necessary list pointers to use <a class="el" href="a00007.html" title="A client is X11-speak for a window.">Client</a> with LIST_* macros. </p>

</div>
</div>
<a class="anchor" id="ad198bfe91f07daaad7a5353e216680b9"></a><!-- doxytag: member="Client::SLIST_ENTRY" ref="ad198bfe91f07daaad7a5353e216680b9" args="(Client) focus_clients" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">Client::SLIST_ENTRY </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="a00007.html">Client</a>&nbsp;</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

</div>
</div>
<a class="anchor" id="a8e6ed86ea2f1eb000296cc51f83e7483"></a><!-- doxytag: member="Client::SLIST_ENTRY" ref="a8e6ed86ea2f1eb000296cc51f83e7483" args="(Client) dock_clients" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">Client::SLIST_ENTRY </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="a00007.html">Client</a>&nbsp;</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

</div>
</div>
<a class="anchor" id="a4c6f7281f994459a9a388acc59c746b5"></a><!-- doxytag: member="Client::TAILQ_ENTRY" ref="a4c6f7281f994459a9a388acc59c746b5" args="(Client) floating_clients" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">Client::TAILQ_ENTRY </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="a00007.html">Client</a>&nbsp;</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

</div>
</div>
<hr/><h2>Field Documentation</h2>
<a class="anchor" id="a0817c563b1f63c30c7873067a22d2607"></a><!-- doxytag: member="Client::awaiting_useless_unmap" ref="a0817c563b1f63c30c7873067a22d2607" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool <a class="el" href="a00007.html#a0817c563b1f63c30c7873067a22d2607">Client::awaiting_useless_unmap</a></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Definition at line <a class="el" href="a00036_source.html#l00445">445</a> of file <a class="el" href="a00036_source.html">data.h</a>.</p>

<p>Referenced by <a class="el" href="a00067_source.html#l00460">handle_unmap_notify_event()</a>.</p>

</div>
</div>
<a class="anchor" id="a92916a2b042c07b01eb6e3a4269413cc"></a><!-- doxytag: member="Client::base_height" ref="a92916a2b042c07b01eb6e3a4269413cc" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int <a class="el" href="a00007.html#a92916a2b042c07b01eb6e3a4269413cc">Client::base_height</a></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Definition at line <a class="el" href="a00036_source.html#l00371">371</a> of file <a class="el" href="a00036_source.html">data.h</a>.</p>

<p>Referenced by <a class="el" href="a00060_source.html#l00457">client_min_height()</a>, <a class="el" href="a00067_source.html#l00880">handle_normal_hints()</a>, and <a class="el" href="a00069_source.html#l00248">resize_client()</a>.</p>

</div>
</div>
<a class="anchor" id="a51ffa9095f0fba59737c1252cf0031cb"></a><!-- doxytag: member="Client::base_width" ref="a51ffa9095f0fba59737c1252cf0031cb" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int <a class="el" href="a00007.html#a51ffa9095f0fba59737c1252cf0031cb">Client::base_width</a></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Definition at line <a class="el" href="a00036_source.html#l00372">372</a> of file <a class="el" href="a00036_source.html">data.h</a>.</p>

<p>Referenced by <a class="el" href="a00060_source.html#l00474">client_min_width()</a>, <a class="el" href="a00067_source.html#l00880">handle_normal_hints()</a>, and <a class="el" href="a00069_source.html#l00248">resize_client()</a>.</p>

</div>
</div>
<a class="anchor" id="afa6b690b03609a16c555a22f976a364c"></a><!-- doxytag: member="Client::border_width" ref="afa6b690b03609a16c555a22f976a364c" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int <a class="el" href="a00007.html#afa6b690b03609a16c555a22f976a364c">Client::border_width</a></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>The amount of pixels which X will draw around the client. </p>

<p>Definition at line <a class="el" href="a00036_source.html#l00375">375</a> of file <a class="el" href="a00036_source.html">data.h</a>.</p>

<p>Referenced by <a class="el" href="a00069_source.html#l00248">resize_client()</a>.</p>

</div>
</div>
<a class="anchor" id="a5a1078f3b194418aa54c1837ff82351c"></a><!-- doxytag: member="Client::borderless" ref="a5a1078f3b194418aa54c1837ff82351c" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool <a class="el" href="a00007.html#a5a1078f3b194418aa54c1837ff82351c">Client::borderless</a></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Contains a bool specifying whether this window should not be drawn with the usual decorations. </p>

<p>Definition at line <a class="el" href="a00036_source.html#l00427">427</a> of file <a class="el" href="a00036_source.html">data.h</a>.</p>

<p>Referenced by <a class="el" href="a00060_source.html#l00349">client_init_border()</a>, <a class="el" href="a00060_source.html#l00457">client_min_height()</a>, <a class="el" href="a00060_source.html#l00474">client_min_width()</a>, <a class="el" href="a00069_source.html#l00098">decorate_window()</a>, <a class="el" href="a00067_source.html#l00292">handle_configure_request()</a>, <a class="el" href="a00067_source.html#l00770">handle_expose_event()</a>, <a class="el" href="a00061_source.html#l00950">parse_command()</a>, and <a class="el" href="a00069_source.html#l00248">resize_client()</a>.</p>

</div>
</div>
<a class="anchor" id="afba312b946fa74727ce619a33f8f28aa"></a><!-- doxytag: member="Client::child" ref="afba312b946fa74727ce619a33f8f28aa" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">xcb_window_t <a class="el" href="a00007.html#afba312b946fa74727ce619a33f8f28aa">Client::child</a></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>The client’s window. </p>

<p>Definition at line <a class="el" href="a00036_source.html#l00452">452</a> of file <a class="el" href="a00036_source.html">data.h</a>.</p>

<p>Referenced by <a class="el" href="a00060_source.html#l00156">client_enter_fullscreen()</a>, <a class="el" href="a00060_source.html#l00095">client_kill()</a>, <a class="el" href="a00060_source.html#l00244">client_leave_fullscreen()</a>, <a class="el" href="a00060_source.html#l00414">client_map()</a>, <a class="el" href="a00060_source.html#l00072">client_supports_protocol()</a>, <a class="el" href="a00060_source.html#l00402">client_unmap()</a>, <a class="el" href="a00060_source.html#l00062">client_warp_pointer_into()</a>, <a class="el" href="a00076_source.html#l00299">dump_table()</a>, <a class="el" href="a00079_source.html#l00190">fake_absolute_configure_notify()</a>, <a class="el" href="a00067_source.html#l00292">handle_configure_request()</a>, <a class="el" href="a00067_source.html#l00994">handle_hints()</a>, <a class="el" href="a00067_source.html#l00880">handle_normal_hints()</a>, <a class="el" href="a00067_source.html#l00460">handle_unmap_notify_event()</a>, <a class="el" href="a00069_source.html#l00652">ignore_enter_notify_forall()</a>, <a class="el" href="a00073_source.html#l00246">output_change_mode()</a>, <a class="el" href="a00069_source.html#l00248">resize_client()</a>, <a class="el" href="a00072_source.html#l00074">restore_geometry()</a>, <a class="el" href="a00077_source.html#l00232">set_focus()</a>, <a class="el" href="a00066_source.html#l00041">toggle_floating_mode()</a>, and <a class="el" href="a00078_source.html#l00375">workspace_unmap_clients()</a>.</p>

</div>
</div>
<a class="anchor" id="a694f6f127e048521451f931174a6e140"></a><!-- doxytag: member="Client::child_rect" ref="a694f6f127e048521451f931174a6e140" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="a00020.html">Rect</a> <a class="el" href="a00007.html#a694f6f127e048521451f931174a6e140">Client::child_rect</a></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>x, y, width, height of the child (relative to its frame) </p>

<p>Definition at line <a class="el" href="a00036_source.html#l00364">364</a> of file <a class="el" href="a00036_source.html">data.h</a>.</p>

<p>Referenced by <a class="el" href="a00079_source.html#l00190">fake_absolute_configure_notify()</a>, <a class="el" href="a00059_source.html#l00255">handle_button_press()</a>, <a class="el" href="a00069_source.html#l00248">resize_client()</a>, and <a class="el" href="a00066_source.html#l00041">toggle_floating_mode()</a>.</p>

</div>
</div>
<a class="anchor" id="a022927d41b4140a623f72fa360c46a17"></a><!-- doxytag: member="Client::container" ref="a022927d41b4140a623f72fa360c46a17" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="a00013.html">Container</a>* <a class="el" href="a00007.html#a022927d41b4140a623f72fa360c46a17">Client::container</a></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Backpointer. </p>
<p>A client is inside a container </p>

<p>Definition at line <a class="el" href="a00036_source.html#l00353">353</a> of file <a class="el" href="a00036_source.html">data.h</a>.</p>

<p>Referenced by <a class="el" href="a00060_source.html#l00377">client_change_border()</a>, <a class="el" href="a00069_source.html#l00098">decorate_window()</a>, <a class="el" href="a00059_source.html#l00187">floating_mod_on_tiled_client()</a>, <a class="el" href="a00077_source.html#l00217">get_last_focused_client()</a>, <a class="el" href="a00059_source.html#l00255">handle_button_press()</a>, <a class="el" href="a00067_source.html#l00292">handle_configure_request()</a>, <a class="el" href="a00067_source.html#l00173">handle_enter_notify()</a>, <a class="el" href="a00067_source.html#l00770">handle_expose_event()</a>, <a class="el" href="a00067_source.html#l00880">handle_normal_hints()</a>, <a class="el" href="a00067_source.html#l00460">handle_unmap_notify_event()</a>, <a class="el" href="a00067_source.html#l00603">handle_windowname_change()</a>, <a class="el" href="a00067_source.html#l00675">handle_windowname_change_legacy()</a>, <a class="el" href="a00061_source.html#l00312">move_current_window()</a>, <a class="el" href="a00061_source.html#l00287">move_current_window_in_container()</a>, <a class="el" href="a00061_source.html#l00638">move_current_window_to_workspace()</a>, <a class="el" href="a00061_source.html#l00950">parse_command()</a>, <a class="el" href="a00061_source.html#l00869">parse_resize_command()</a>, <a class="el" href="a00069_source.html#l00081">redecorate_window()</a>, <a class="el" href="a00072_source.html#l00151">reparent_window()</a>, <a class="el" href="a00069_source.html#l00248">resize_client()</a>, <a class="el" href="a00077_source.html#l00232">set_focus()</a>, and <a class="el" href="a00066_source.html#l00041">toggle_floating_mode()</a>.</p>

</div>
</div>
<a class="anchor" id="a101bf3d37c729260e8a8e3ef808799de"></a><!-- doxytag: member="Client::desired_height" ref="a101bf3d37c729260e8a8e3ef808799de" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int <a class="el" href="a00007.html#a101bf3d37c729260e8a8e3ef808799de">Client::desired_height</a></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Height which was determined by reading the _NET_WM_STRUT_PARTIAL top/bottom of the screen reservation. </p>

<p>Definition at line <a class="el" href="a00036_source.html#l00384">384</a> of file <a class="el" href="a00036_source.html">data.h</a>.</p>

<p>Referenced by <a class="el" href="a00067_source.html#l00292">handle_configure_request()</a>, <a class="el" href="a00069_source.html#l00576">render_bars()</a>, <a class="el" href="a00069_source.html#l00680">render_workspace()</a>, and <a class="el" href="a00078_source.html#l00463">workspace_height()</a>.</p>

</div>
</div>
<a class="anchor" id="a994b0c5a9eb35e42f04a0b845a3166ef"></a><!-- doxytag: member="Client::dock" ref="a994b0c5a9eb35e42f04a0b845a3166ef" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool <a class="el" href="a00007.html#a994b0c5a9eb35e42f04a0b845a3166ef">Client::dock</a></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>If a client is set as a dock, it is placed at the very bottom of the screen and its requested size is used. </p>

<p>Definition at line <a class="el" href="a00036_source.html#l00431">431</a> of file <a class="el" href="a00036_source.html">data.h</a>.</p>

<p>Referenced by <a class="el" href="a00060_source.html#l00281">client_toggle_fullscreen()</a>, <a class="el" href="a00060_source.html#l00296">client_toggle_fullscreen_global()</a>, <a class="el" href="a00069_source.html#l00098">decorate_window()</a>, <a class="el" href="a00059_source.html#l00255">handle_button_press()</a>, <a class="el" href="a00067_source.html#l00292">handle_configure_request()</a>, <a class="el" href="a00067_source.html#l00770">handle_expose_event()</a>, <a class="el" href="a00067_source.html#l00460">handle_unmap_notify_event()</a>, <a class="el" href="a00067_source.html#l00603">handle_windowname_change()</a>, <a class="el" href="a00067_source.html#l00675">handle_windowname_change_legacy()</a>, <a class="el" href="a00061_source.html#l00312">move_current_window()</a>, <a class="el" href="a00072_source.html#l00151">reparent_window()</a>, <a class="el" href="a00077_source.html#l00232">set_focus()</a>, <a class="el" href="a00066_source.html#l00041">toggle_floating_mode()</a>, and <a class="el" href="a00078_source.html#l00113">workspace_show()</a>.</p>

</div>
</div>
<a class="anchor" id="ad5e886955e668cc51fbb17acb2871cea"></a><!-- doxytag: member="Client::floating" ref="ad5e886955e668cc51fbb17acb2871cea" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">enum { ... }   <a class="el" href="a00007.html#ad5e886955e668cc51fbb17acb2871cea">Client::floating</a></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>floating? (= not in tiling layout) This cannot be simply a bool because we want to keep track of whether the status was set by the application (by setting WM_CLASS to tools for example) or by the user. </p>
<p>The user’s choice overwrites automatic mode, of course. The order of the values is important because we check with &gt;= FLOATING_AUTO_ON if a client is floating. </p>

<p>Referenced by <a class="el" href="a00060_source.html#l00339">client_is_floating()</a>, <a class="el" href="a00066_source.html#l00466">floating_focus_direction()</a>, <a class="el" href="a00067_source.html#l01044">handle_transient_for()</a>, and <a class="el" href="a00066_source.html#l00041">toggle_floating_mode()</a>.</p>

</div>
</div>
<a class="anchor" id="a7af57ac287f68a6e55b9279b720d7491"></a><!-- doxytag: member="Client::floating_rect" ref="a7af57ac287f68a6e55b9279b720d7491" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="a00020.html">Rect</a> <a class="el" href="a00007.html#a7af57ac287f68a6e55b9279b720d7491">Client::floating_rect</a></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Position in floating mode and in tiling mode are saved separately. </p>

<p>Definition at line <a class="el" href="a00036_source.html#l00362">362</a> of file <a class="el" href="a00036_source.html">data.h</a>.</p>

<p>Referenced by <a class="el" href="a00066_source.html#l00041">toggle_floating_mode()</a>.</p>

</div>
</div>
<a class="anchor" id="a873c62703ab51afe96b38df2b30ffa66"></a><!-- doxytag: member="Client::force_reconfigure" ref="a873c62703ab51afe96b38df2b30ffa66" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool <a class="el" href="a00007.html#a873c62703ab51afe96b38df2b30ffa66">Client::force_reconfigure</a></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Definition at line <a class="el" href="a00036_source.html#l00440">440</a> of file <a class="el" href="a00036_source.html">data.h</a>.</p>

<p>Referenced by <a class="el" href="a00060_source.html#l00377">client_change_border()</a>, <a class="el" href="a00060_source.html#l00244">client_leave_fullscreen()</a>, <a class="el" href="a00067_source.html#l00880">handle_normal_hints()</a>, <a class="el" href="a00073_source.html#l00246">output_change_mode()</a>, <a class="el" href="a00069_source.html#l00576">render_bars()</a>, <a class="el" href="a00069_source.html#l00348">render_container()</a>, <a class="el" href="a00069_source.html#l00680">render_workspace()</a>, <a class="el" href="a00069_source.html#l00206">reposition_client()</a>, <a class="el" href="a00077_source.html#l00347">switch_layout_mode()</a>, and <a class="el" href="a00078_source.html#l00223">workspace_assign_to()</a>.</p>

</div>
</div>
<a class="anchor" id="ae6bb442465a95e5794ed34936fa67bac"></a><!-- doxytag: member="Client::frame" ref="ae6bb442465a95e5794ed34936fa67bac" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">xcb_window_t <a class="el" href="a00007.html#ae6bb442465a95e5794ed34936fa67bac">Client::frame</a></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Our window: The frame around the client. </p>

<p>Definition at line <a class="el" href="a00036_source.html#l00448">448</a> of file <a class="el" href="a00036_source.html">data.h</a>.</p>

<p>Referenced by <a class="el" href="a00060_source.html#l00156">client_enter_fullscreen()</a>, <a class="el" href="a00060_source.html#l00414">client_map()</a>, <a class="el" href="a00060_source.html#l00313">client_set_below_floating()</a>, <a class="el" href="a00060_source.html#l00402">client_unmap()</a>, <a class="el" href="a00069_source.html#l00098">decorate_window()</a>, <a class="el" href="a00059_source.html#l00255">handle_button_press()</a>, <a class="el" href="a00067_source.html#l00770">handle_expose_event()</a>, <a class="el" href="a00067_source.html#l00460">handle_unmap_notify_event()</a>, <a class="el" href="a00067_source.html#l00603">handle_windowname_change()</a>, <a class="el" href="a00067_source.html#l00675">handle_windowname_change_legacy()</a>, <a class="el" href="a00069_source.html#l00652">ignore_enter_notify_forall()</a>, <a class="el" href="a00061_source.html#l00566">move_floating_window_to_workspace()</a>, <a class="el" href="a00073_source.html#l00246">output_change_mode()</a>, <a class="el" href="a00069_source.html#l00081">redecorate_window()</a>, <a class="el" href="a00069_source.html#l00348">render_container()</a>, <a class="el" href="a00069_source.html#l00206">reposition_client()</a>, <a class="el" href="a00069_source.html#l00248">resize_client()</a>, <a class="el" href="a00077_source.html#l00232">set_focus()</a>, <a class="el" href="a00077_source.html#l00347">switch_layout_mode()</a>, <a class="el" href="a00066_source.html#l00041">toggle_floating_mode()</a>, and <a class="el" href="a00078_source.html#l00375">workspace_unmap_clients()</a>.</p>

</div>
</div>
<a class="anchor" id="a9eeeb880b93223456c2eae445beccf94"></a><!-- doxytag: member="Client::fullscreen" ref="a9eeeb880b93223456c2eae445beccf94" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool <a class="el" href="a00007.html#a9eeeb880b93223456c2eae445beccf94">Client::fullscreen</a></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>fullscreen is pretty obvious </p>

<p>Definition at line <a class="el" href="a00036_source.html#l00411">411</a> of file <a class="el" href="a00036_source.html">data.h</a>.</p>

<p>Referenced by <a class="el" href="a00060_source.html#l00156">client_enter_fullscreen()</a>, <a class="el" href="a00060_source.html#l00244">client_leave_fullscreen()</a>, <a class="el" href="a00060_source.html#l00281">client_toggle_fullscreen()</a>, <a class="el" href="a00060_source.html#l00296">client_toggle_fullscreen_global()</a>, <a class="el" href="a00066_source.html#l00149">floating_assign_to_workspace()</a>, <a class="el" href="a00066_source.html#l00488">floating_move()</a>, <a class="el" href="a00059_source.html#l00255">handle_button_press()</a>, <a class="el" href="a00067_source.html#l00840">handle_client_message()</a>, <a class="el" href="a00067_source.html#l00292">handle_configure_request()</a>, <a class="el" href="a00067_source.html#l00880">handle_normal_hints()</a>, <a class="el" href="a00067_source.html#l00460">handle_unmap_notify_event()</a>, <a class="el" href="a00061_source.html#l00638">move_current_window_to_workspace()</a>, <a class="el" href="a00061_source.html#l00566">move_floating_window_to_workspace()</a>, and <a class="el" href="a00061_source.html#l00950">parse_command()</a>.</p>

</div>
</div>
<a class="anchor" id="aec47a7c174216266483e8a6a9e51d2f7"></a><!-- doxytag: member="Client::height_increment" ref="aec47a7c174216266483e8a6a9e51d2f7" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int <a class="el" href="a00007.html#aec47a7c174216266483e8a6a9e51d2f7">Client::height_increment</a></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Definition at line <a class="el" href="a00036_source.html#l00380">380</a> of file <a class="el" href="a00036_source.html">data.h</a>.</p>

<p>Referenced by <a class="el" href="a00067_source.html#l00880">handle_normal_hints()</a>, and <a class="el" href="a00069_source.html#l00248">resize_client()</a>.</p>

</div>
</div>
<a class="anchor" id="ac9aa39c193b1dd1688db6eb7ebf7b4fa"></a><!-- doxytag: member="Client::initialized" ref="ac9aa39c193b1dd1688db6eb7ebf7b4fa" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool <a class="el" href="a00007.html#ac9aa39c193b1dd1688db6eb7ebf7b4fa">Client::initialized</a></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>initialized will be set to true if the client was fully initialized by <a class="el" href="a00072.html#a4a34e4e6e27dfe96206b43297c001f9c" title="Do some sanity checks and then reparent the window.">manage_window()</a> and all functions can be used normally </p>

<p>Definition at line <a class="el" href="a00036_source.html#l00346">346</a> of file <a class="el" href="a00036_source.html">data.h</a>.</p>

</div>
</div>
<a class="anchor" id="a0385211b35d62a177e4eed5e58fbb693"></a><!-- doxytag: member="Client::leader" ref="a0385211b35d62a177e4eed5e58fbb693" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">xcb_window_t <a class="el" href="a00007.html#a0385211b35d62a177e4eed5e58fbb693">Client::leader</a></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Holds the xcb_window_t (just an ID) for the leader window (logical parent for toolwindows and similar floating windows). </p>

<p>Definition at line <a class="el" href="a00036_source.html#l00408">408</a> of file <a class="el" href="a00036_source.html">data.h</a>.</p>

<p>Referenced by <a class="el" href="a00067_source.html#l01076">handle_clientleader_change()</a>.</p>

</div>
</div>
<a class="anchor" id="a08f4887a64c4ea1812e5a27efe641d18"></a><!-- doxytag: member="Client::mark" ref="a08f4887a64c4ea1812e5a27efe641d18" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">char* <a class="el" href="a00007.html#a08f4887a64c4ea1812e5a27efe641d18">Client::mark</a></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Holds the client’s mark, for vim-like jumping. </p>

<p>Definition at line <a class="el" href="a00036_source.html#l00404">404</a> of file <a class="el" href="a00036_source.html">data.h</a>.</p>

<p>Referenced by <a class="el" href="a00060_source.html#l00428">client_mark()</a>, and <a class="el" href="a00061_source.html#l00066">jump_to_mark()</a>.</p>

</div>
</div>
<a class="anchor" id="a14c9eb7f57edfd939ed2fada25e83916"></a><!-- doxytag: member="Client::name" ref="a14c9eb7f57edfd939ed2fada25e83916" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">char* <a class="el" href="a00007.html#a14c9eb7f57edfd939ed2fada25e83916">Client::name</a></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Name (= window title). </p>

<p>Definition at line <a class="el" href="a00036_source.html#l00387">387</a> of file <a class="el" href="a00036_source.html">data.h</a>.</p>

<p>Referenced by <a class="el" href="a00060_source.html#l00125">client_matches_class_name()</a>, <a class="el" href="a00069_source.html#l00098">decorate_window()</a>, <a class="el" href="a00076_source.html#l00299">dump_table()</a>, <a class="el" href="a00077_source.html#l00440">get_matching_client()</a>, <a class="el" href="a00067_source.html#l00460">handle_unmap_notify_event()</a>, <a class="el" href="a00067_source.html#l00603">handle_windowname_change()</a>, and <a class="el" href="a00067_source.html#l00675">handle_windowname_change_legacy()</a>.</p>

</div>
</div>
<a class="anchor" id="aa6a6f0505f2d751ea862bc97343dd6df"></a><!-- doxytag: member="Client::name_len" ref="aa6a6f0505f2d751ea862bc97343dd6df" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int <a class="el" href="a00007.html#aa6a6f0505f2d751ea862bc97343dd6df">Client::name_len</a></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>name_len stores the real string length (glyphs) of the window title if the client uses _NET_WM_NAME. </p>
<p>Otherwise, it is set to -1 to indicate that name should be just passed to X as 8-bit string and therefore will not be rendered correctly. This behaviour is to support legacy applications which do not set _NET_WM_NAME </p>

<p>Definition at line <a class="el" href="a00036_source.html#l00393">393</a> of file <a class="el" href="a00036_source.html">data.h</a>.</p>

<p>Referenced by <a class="el" href="a00060_source.html#l00125">client_matches_class_name()</a>, <a class="el" href="a00069_source.html#l00098">decorate_window()</a>, <a class="el" href="a00067_source.html#l00603">handle_windowname_change()</a>, and <a class="el" href="a00067_source.html#l00675">handle_windowname_change_legacy()</a>.</p>

</div>
</div>
<a class="anchor" id="a50e3e5823ffc3ae2019698b069ddf70a"></a><!-- doxytag: member="Client::old_position" ref="a50e3e5823ffc3ae2019698b069ddf70a" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="a00006.html">Cell</a> <a class="el" href="a00007.html#a50e3e5823ffc3ae2019698b069ddf70a">Client::old_position</a></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>if you set a client to floating and set it back to managed, it does remember its old position and *tries* to get back there </p>

<p>Definition at line <a class="el" href="a00036_source.html#l00350">350</a> of file <a class="el" href="a00036_source.html">data.h</a>.</p>

</div>
</div>
<a class="anchor" id="a4d2a7cf214d7d756d1e87fa99d284741"></a><!-- doxytag: member="Client::proportional_height" ref="a4d2a7cf214d7d756d1e87fa99d284741" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int <a class="el" href="a00007.html#a4d2a7cf214d7d756d1e87fa99d284741">Client::proportional_height</a></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>contains the size calculated from the hints set by the window or 0 if the client did not send any hints </p>

<p>Definition at line <a class="el" href="a00036_source.html#l00368">368</a> of file <a class="el" href="a00036_source.html">data.h</a>.</p>

<p>Referenced by <a class="el" href="a00067_source.html#l00880">handle_normal_hints()</a>, and <a class="el" href="a00069_source.html#l00248">resize_client()</a>.</p>

</div>
</div>
<a class="anchor" id="a2324d36fb1ad3c0d9cae70f975cd3fe4"></a><!-- doxytag: member="Client::proportional_width" ref="a2324d36fb1ad3c0d9cae70f975cd3fe4" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int <a class="el" href="a00007.html#a2324d36fb1ad3c0d9cae70f975cd3fe4">Client::proportional_width</a></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Definition at line <a class="el" href="a00036_source.html#l00369">369</a> of file <a class="el" href="a00036_source.html">data.h</a>.</p>

<p>Referenced by <a class="el" href="a00067_source.html#l00880">handle_normal_hints()</a>, and <a class="el" href="a00069_source.html#l00248">resize_client()</a>.</p>

</div>
</div>
<a class="anchor" id="aea76187592ae1a87eb8bb1af77af62d4"></a><!-- doxytag: member="Client::rect" ref="aea76187592ae1a87eb8bb1af77af62d4" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="a00020.html">Rect</a> <a class="el" href="a00007.html#aea76187592ae1a87eb8bb1af77af62d4">Client::rect</a></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>x, y, width, height of the frame </p>

<p>Definition at line <a class="el" href="a00036_source.html#l00359">359</a> of file <a class="el" href="a00036_source.html">data.h</a>.</p>

<p>Referenced by <a class="el" href="a00060_source.html#l00062">client_warp_pointer_into()</a>, <a class="el" href="a00069_source.html#l00098">decorate_window()</a>, <a class="el" href="a00066_source.html#l00380">drag_pointer()</a>, <a class="el" href="a00079_source.html#l00190">fake_absolute_configure_notify()</a>, <a class="el" href="a00066_source.html#l00234">floating_border_click()</a>, <a class="el" href="a00059_source.html#l00187">floating_mod_on_tiled_client()</a>, <a class="el" href="a00066_source.html#l00488">floating_move()</a>, <a class="el" href="a00066_source.html#l00350">floating_resize_window()</a>, <a class="el" href="a00059_source.html#l00255">handle_button_press()</a>, <a class="el" href="a00067_source.html#l00292">handle_configure_request()</a>, <a class="el" href="a00067_source.html#l00770">handle_expose_event()</a>, <a class="el" href="a00067_source.html#l00880">handle_normal_hints()</a>, <a class="el" href="a00061_source.html#l00566">move_floating_window_to_workspace()</a>, <a class="el" href="a00073_source.html#l00246">output_change_mode()</a>, <a class="el" href="a00061_source.html#l00869">parse_resize_command()</a>, <a class="el" href="a00069_source.html#l00081">redecorate_window()</a>, <a class="el" href="a00069_source.html#l00576">render_bars()</a>, <a class="el" href="a00069_source.html#l00348">render_container()</a>, <a class="el" href="a00072_source.html#l00151">reparent_window()</a>, <a class="el" href="a00069_source.html#l00206">reposition_client()</a>, <a class="el" href="a00069_source.html#l00248">resize_client()</a>, <a class="el" href="a00072_source.html#l00074">restore_geometry()</a>, and <a class="el" href="a00066_source.html#l00041">toggle_floating_mode()</a>.</p>

</div>
</div>
<a class="anchor" id="a990cfbc44d87127fd05d8f6a5293d2fd"></a><!-- doxytag: member="Client::titlebar_position" ref="a990cfbc44d87127fd05d8f6a5293d2fd" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">enum { ... }   <a class="el" href="a00007.html#a990cfbc44d87127fd05d8f6a5293d2fd">Client::titlebar_position</a></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Ensure TITLEBAR_TOP maps to 0 because we use calloc for initialization later. </p>

<p>Referenced by <a class="el" href="a00060_source.html#l00349">client_init_border()</a>, <a class="el" href="a00060_source.html#l00457">client_min_height()</a>, <a class="el" href="a00060_source.html#l00474">client_min_width()</a>, <a class="el" href="a00069_source.html#l00098">decorate_window()</a>, <a class="el" href="a00067_source.html#l00292">handle_configure_request()</a>, <a class="el" href="a00067_source.html#l00770">handle_expose_event()</a>, <a class="el" href="a00061_source.html#l00950">parse_command()</a>, and <a class="el" href="a00069_source.html#l00248">resize_client()</a>.</p>

</div>
</div>
<a class="anchor" id="ab9525d9a134fa0d25a1352f8e58bee2e"></a><!-- doxytag: member="Client::titlegc" ref="ab9525d9a134fa0d25a1352f8e58bee2e" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">xcb_gcontext_t <a class="el" href="a00007.html#ab9525d9a134fa0d25a1352f8e58bee2e">Client::titlegc</a></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>The titlebar’s graphic context inside the frame. </p>

<p>Definition at line <a class="el" href="a00036_source.html#l00450">450</a> of file <a class="el" href="a00036_source.html">data.h</a>.</p>

<p>Referenced by <a class="el" href="a00069_source.html#l00098">decorate_window()</a>, <a class="el" href="a00067_source.html#l00770">handle_expose_event()</a>, <a class="el" href="a00067_source.html#l00603">handle_windowname_change()</a>, <a class="el" href="a00067_source.html#l00675">handle_windowname_change_legacy()</a>, and <a class="el" href="a00069_source.html#l00081">redecorate_window()</a>.</p>

</div>
</div>
<a class="anchor" id="ad169bd46b1c1edf6f7cddf2c0c5306c7"></a><!-- doxytag: member="Client::urgent" ref="ad169bd46b1c1edf6f7cddf2c0c5306c7" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool <a class="el" href="a00007.html#ad169bd46b1c1edf6f7cddf2c0c5306c7">Client::urgent</a></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>True if the client set the urgency flag in its WM_HINTS property. </p>

<p>Definition at line <a class="el" href="a00036_source.html#l00434">434</a> of file <a class="el" href="a00036_source.html">data.h</a>.</p>

<p>Referenced by <a class="el" href="a00069_source.html#l00098">decorate_window()</a>, <a class="el" href="a00067_source.html#l00770">handle_expose_event()</a>, <a class="el" href="a00067_source.html#l00994">handle_hints()</a>, <a class="el" href="a00067_source.html#l00460">handle_unmap_notify_event()</a>, <a class="el" href="a00077_source.html#l00232">set_focus()</a>, and <a class="el" href="a00078_source.html#l00431">workspace_update_urgent_flag()</a>.</p>

</div>
</div>
<a class="anchor" id="ab88a383fe1d2388cf4d4c792c899a766"></a><!-- doxytag: member="Client::uses_net_wm_name" ref="ab88a383fe1d2388cf4d4c792c899a766" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool <a class="el" href="a00007.html#ab88a383fe1d2388cf4d4c792c899a766">Client::uses_net_wm_name</a></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>This will be set to true as soon as the first _NET_WM_NAME comes in. </p>
<p>If set to true, legacy window names are ignored. </p>

<p>Definition at line <a class="el" href="a00036_source.html#l00396">396</a> of file <a class="el" href="a00036_source.html">data.h</a>.</p>

<p>Referenced by <a class="el" href="a00067_source.html#l00603">handle_windowname_change()</a>, and <a class="el" href="a00067_source.html#l00675">handle_windowname_change_legacy()</a>.</p>

</div>
</div>
<a class="anchor" id="a80130d5f48f9c1db1e9206b578873002"></a><!-- doxytag: member="Client::width_increment" ref="a80130d5f48f9c1db1e9206b578873002" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int <a class="el" href="a00007.html#a80130d5f48f9c1db1e9206b578873002">Client::width_increment</a></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>contains the minimum increment size as specified for the window (in pixels). </p>

<p>Definition at line <a class="el" href="a00036_source.html#l00379">379</a> of file <a class="el" href="a00036_source.html">data.h</a>.</p>

<p>Referenced by <a class="el" href="a00067_source.html#l00880">handle_normal_hints()</a>, and <a class="el" href="a00069_source.html#l00248">resize_client()</a>.</p>

</div>
</div>
<a class="anchor" id="a1c231d29bfbf4213354bb5ac43bacfa4"></a><!-- doxytag: member="Client::window_class_class" ref="a1c231d29bfbf4213354bb5ac43bacfa4" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">char* <a class="el" href="a00007.html#a1c231d29bfbf4213354bb5ac43bacfa4">Client::window_class_class</a></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Definition at line <a class="el" href="a00036_source.html#l00401">401</a> of file <a class="el" href="a00036_source.html">data.h</a>.</p>

<p>Referenced by <a class="el" href="a00060_source.html#l00125">client_matches_class_name()</a>, <a class="el" href="a00077_source.html#l00440">get_matching_client()</a>, <a class="el" href="a00067_source.html#l00460">handle_unmap_notify_event()</a>, and <a class="el" href="a00067_source.html#l00738">handle_windowclass_change()</a>.</p>

</div>
</div>
<a class="anchor" id="ac39c70e8b92f752b81f2c5cca3522399"></a><!-- doxytag: member="Client::window_class_instance" ref="ac39c70e8b92f752b81f2c5cca3522399" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">char* <a class="el" href="a00007.html#ac39c70e8b92f752b81f2c5cca3522399">Client::window_class_instance</a></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Holds the WM_CLASS (which consists of two strings, the instance and the class), useful for matching the client in commands. </p>

<p>Definition at line <a class="el" href="a00036_source.html#l00400">400</a> of file <a class="el" href="a00036_source.html">data.h</a>.</p>

<p>Referenced by <a class="el" href="a00060_source.html#l00125">client_matches_class_name()</a>, <a class="el" href="a00077_source.html#l00440">get_matching_client()</a>, <a class="el" href="a00067_source.html#l00460">handle_unmap_notify_event()</a>, and <a class="el" href="a00067_source.html#l00738">handle_windowclass_change()</a>.</p>

</div>
</div>
<a class="anchor" id="ab9573ba898dbd1932f5200be5eb2a990"></a><!-- doxytag: member="Client::workspace" ref="ab9573ba898dbd1932f5200be5eb2a990" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="a00025.html">Workspace</a>* <a class="el" href="a00007.html#ab9573ba898dbd1932f5200be5eb2a990">Client::workspace</a></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Because dock clients don’t have a container, we have this workspace-backpointer. </p>

<p>Definition at line <a class="el" href="a00036_source.html#l00356">356</a> of file <a class="el" href="a00036_source.html">data.h</a>.</p>

<p>Referenced by <a class="el" href="a00060_source.html#l00156">client_enter_fullscreen()</a>, <a class="el" href="a00060_source.html#l00313">client_set_below_floating()</a>, <a class="el" href="a00069_source.html#l00098">decorate_window()</a>, <a class="el" href="a00066_source.html#l00149">floating_assign_to_workspace()</a>, <a class="el" href="a00066_source.html#l00466">floating_focus_direction()</a>, <a class="el" href="a00066_source.html#l00488">floating_move()</a>, <a class="el" href="a00067_source.html#l00292">handle_configure_request()</a>, <a class="el" href="a00067_source.html#l00173">handle_enter_notify()</a>, <a class="el" href="a00067_source.html#l00994">handle_hints()</a>, <a class="el" href="a00067_source.html#l00880">handle_normal_hints()</a>, <a class="el" href="a00067_source.html#l00460">handle_unmap_notify_event()</a>, <a class="el" href="a00067_source.html#l00603">handle_windowname_change()</a>, <a class="el" href="a00067_source.html#l00675">handle_windowname_change_legacy()</a>, <a class="el" href="a00061_source.html#l00066">jump_to_mark()</a>, <a class="el" href="a00061_source.html#l00713">jump_to_window()</a>, <a class="el" href="a00061_source.html#l00312">move_current_window()</a>, <a class="el" href="a00061_source.html#l00638">move_current_window_to_workspace()</a>, <a class="el" href="a00061_source.html#l00566">move_floating_window_to_workspace()</a>, <a class="el" href="a00061_source.html#l00950">parse_command()</a>, <a class="el" href="a00061_source.html#l00869">parse_resize_command()</a>, <a class="el" href="a00072_source.html#l00151">reparent_window()</a>, <a class="el" href="a00069_source.html#l00206">reposition_client()</a>, <a class="el" href="a00077_source.html#l00232">set_focus()</a>, <a class="el" href="a00066_source.html#l00041">toggle_floating_mode()</a>, <a class="el" href="a00078_source.html#l00113">workspace_show()</a>, and <a class="el" href="a00078_source.html#l00375">workspace_unmap_clients()</a>.</p>

</div>
</div>
<hr/>The documentation for this struct was generated from the following file:<ul>
<li>include/<a class="el" href="a00036_source.html">data.h</a></li>
</ul>
</div>
<hr class="footer"/><address style="text-align: right;"><small>Generated by&nbsp;
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.6.2-20100208 </small></address>
</body>
</html>