<html>
    <head>
      <base href="https://bugs.freedesktop.org/" />
    </head>
    <body><table border="1" cellspacing="0" cellpadding="8">
        <tr>
          <th>Bug ID</th>
          <td><a class="bz_bug_link 
          bz_status_NEW "
   title="NEW - Whether to use the "subsurfaces"?"
   href="https://bugs.freedesktop.org/show_bug.cgi?id=94312">94312</a>
          </td>
        </tr>

        <tr>
          <th>Summary</th>
          <td>Whether to use the "subsurfaces"?
          </td>
        </tr>

        <tr>
          <th>Product</th>
          <td>Wayland
          </td>
        </tr>

        <tr>
          <th>Version</th>
          <td>unspecified
          </td>
        </tr>

        <tr>
          <th>Hardware</th>
          <td>Other
          </td>
        </tr>

        <tr>
          <th>OS</th>
          <td>All
          </td>
        </tr>

        <tr>
          <th>Status</th>
          <td>NEW
          </td>
        </tr>

        <tr>
          <th>Severity</th>
          <td>normal
          </td>
        </tr>

        <tr>
          <th>Priority</th>
          <td>medium
          </td>
        </tr>

        <tr>
          <th>Component</th>
          <td>wayland
          </td>
        </tr>

        <tr>
          <th>Assignee</th>
          <td>wayland-bugs@lists.freedesktop.org
          </td>
        </tr>

        <tr>
          <th>Reporter</th>
          <td>belnd@grr.la
          </td>
        </tr></table>
      <p>
        <div>
        <pre>So, consider a button with text. In the shm file are:
    * three button states: normal, pressed and hovered pointer,
    * the rendered text.
A total of 4 bitmaps.

How best to organize the rendering of the button?
    1. To use the "subsurfaces" for the text and for the button, changing its 3
state when needed.
    2. To draw directly in "shellsurface". The text and the button state is
stored in memory, but each time the update button will be copied into a
separate memory area "wl_buffer" for "shellsurface".

At the end of the article concludes that the surface is better not to use when
building widgets. <a href="http://ppaalanen.blogspot.ru/2013/11/sub-surfaces-now.html">http://ppaalanen.blogspot.ru/2013/11/sub-surfaces-now.html</a>

It turns out that you need to use method #2, but then each time you hover the
cursor, the client will copy the button state and text. You can make a crutch:
cutting text bitmap from the bitmaps of the button states, then when you hover
the cursor would to copy _only_ the button state. But still not effective..

Stop, handling the pointer-hover is possible because only in the presence of
the surface.. of a button.</pre>
        </div>
      </p>
      <hr>
      <span>You are receiving this mail because:</span>
      
      <ul>
          <li>You are the assignee for the bug.</li>
      </ul>
    </body>
</html>