What event is used for Maximizing/Minimizing?
<p>Currently I am in charge of developing a (C++) window class for a little project; the goal is to keep dependencies at a bare minimum.
The implementation for Win32/WinAPI works as supposed, however, I am struggling when it comes to Linux/XCB.</p>

<p>I am aware, that I am able to check the "_NET_WM_STATE" property, however, the documentation doesn't specify any event, which would occur when the window is being maximized or minimized.
The <em>Extended Window Manager Hints</em> specification doesn't seem to define a event either.</p>

<p>So, how would one intercept the Maximize/Minimize event? </p>

<p>EDIT:
My code looks basically like that, but doesn't work:
(By doesn't work, I mean the if-condition below is never met.)</p>

<pre><code>// xcb_generic_event_t* msg;
// xcb_intern_atom_reply_t*    wmStateMinimized;   

case XCB_PROPERTY_NOTIFY: {
    xcb_property_notify_event_t* data{reinterpret_cast&lt;xcb_property_notify_event_t*&gt;(msg)};
    if(data-&gt;atom == wmStateMinimized-&gt;atom)
        eventQueue.emplace(Event::Minimized);

} break;
</code></pre>

<p>I have also checked the atoms the event provides me. They differ from the atom provided by 'wmStateMinimized', altough the atom for 'wmStateMinimized' is provided by the window manager.</p>

<p>EDIT 2:
Ok, the <em>xcb_property_notify_event_t</em> supplies the atom that has been change, not the value it self.
So the if should look like this then:</p>

<pre><code>if(data-&gt;atom == wmState-&gt;atom)
</code></pre>

<p>Gotta figure out, how to retrieve the value properly.</p>