<html>
    <head>
      <base href="https://bugs.freedesktop.org/" />
    </head>
    <body><span class="vcard"><a class="email" href="mailto:psychon@znc.in" title="Uli Schlachter <psychon@znc.in>"> <span class="fn">Uli Schlachter</span></a>
</span> changed
              <a class="bz_bug_link 
          bz_status_RESOLVED  bz_closed"
   title="RESOLVED INVALID - Redraw Surface"
   href="https://bugs.freedesktop.org/show_bug.cgi?id=68152">bug 68152</a>
        <br>
             <table border="1" cellspacing="0" cellpadding="8">
          <tr>
            <th>What</th>
            <th>Removed</th>
            <th>Added</th>
          </tr>

         <tr>
           <td style="text-align:right;">Status</td>
           <td>NEW
           </td>
           <td>RESOLVED
           </td>
         </tr>

         <tr>
           <td style="text-align:right;">Resolution</td>
           <td>---
           </td>
           <td>INVALID
           </td>
         </tr></table>
      <p>
        <div>
            <b><a class="bz_bug_link 
          bz_status_RESOLVED  bz_closed"
   title="RESOLVED INVALID - Redraw Surface"
   href="https://bugs.freedesktop.org/show_bug.cgi?id=68152#c1">Comment # 1</a>
              on <a class="bz_bug_link 
          bz_status_RESOLVED  bz_closed"
   title="RESOLVED INVALID - Redraw Surface"
   href="https://bugs.freedesktop.org/show_bug.cgi?id=68152">bug 68152</a>
              from <span class="vcard"><a class="email" href="mailto:psychon@znc.in" title="Uli Schlachter <psychon@znc.in>"> <span class="fn">Uli Schlachter</span></a>
</span></b>
        <pre>Cairo let's you draw to surface. That's it. It has nothing to do with automatic
redraw when needed.

This is why normally Gtk uses double buffering. It let's you draw to an
off-screen surface and then copies that to the screen whenever needed. You
still have to implement the "draw" signal on your widgets to redraw when then
needed (e.g. window was resized and thus your widget now has more/less space
available).

So alltogether, your code has to handle redrawing, because only your code can
do so. There is no bug here, neither in Gtk nor in Cairo.

(I don't know why the double buffering does not work in your case, but I guess
you somehow disabled that. I have never really used Gtk and thus cannot say for
sure and certainly not without looking at your code.)</pre>
        </div>
      </p>
      <hr>
      <span>You are receiving this mail because:</span>
      
      <ul>
          <li>You are the QA Contact for the bug.</li>
          <li>You are the assignee for the bug.</li>
      </ul>
    </body>
</html>