<html>
    <head>
      <base href="https://bugs.webkit.org/" />
    </head>
    <body>
      <p>
        <div>
            <b><a class="bz_bug_link 
          bz_status_NEW "
   title="NEW - [GTK] Implement rendering frames timeline panel for GTK+ port"
   href="https://bugs.webkit.org/show_bug.cgi?id=150392#c7">Comment # 7</a>
              on <a class="bz_bug_link 
          bz_status_NEW "
   title="NEW - [GTK] Implement rendering frames timeline panel for GTK+ port"
   href="https://bugs.webkit.org/show_bug.cgi?id=150392">bug 150392</a>
              from <span class="vcard"><a class="email" href="mailto:cgarcia&#64;igalia.com" title="Carlos Garcia Campos &lt;cgarcia&#64;igalia.com&gt;"> <span class="fn">Carlos Garcia Campos</span></a>
</span></b>
        <pre>(In reply to <a href="show_bug.cgi?id=150392#c5">comment #5</a>)
<span class="quote">&gt; (In reply to <a href="show_bug.cgi?id=150392#c0">comment #0</a>)
&gt; &gt; The mac implementation is based on RunLoopObserver, that only has
&gt; &gt; an implementation based on CF. It's not currently possible to do the same
&gt; &gt; with the glib main loop, so even if there's a proper platform abstraction of
&gt; &gt; RunLoopObserver, we won't be able to provide a glib implementation. Maybe
&gt; &gt; when persistent sources patch lands (see <a class="bz_bug_link 
          bz_status_NEW "
   title="NEW - [GTK] Add persistent GSource wrapper"
   href="show_bug.cgi?id=138691">bug #138691</a>), we can provide a way
&gt; &gt; to monitor our sources.
&gt; 
&gt; If you could provide some rationale for why RunLoopObserver isn't a
&gt; sufficient abstraction in &lt;<a class="bz_bug_link 
          bz_status_NEW "
   title="NEW - Provide a better RunLoopObserver platform abstraction"
   href="show_bug.cgi?id=142748">https://bugs.webkit.org/show_bug.cgi?id=142748</a>&gt;,
&gt; that would be helpful in moving that discussion forward.</span >

Yes, the glib main loop doesn't provide any way to know its status, and there isn't any GMainLoopObserver in glib either. We could implement something like that in glib, though, but in the meantime we need a different way to implement at least the rendering frames panel. What we can do with the current glib main loop, is to use custom sources, that we can dispatch. That way we can do whatever before and after the source is actually dispatched, which is what I'm doing in this patch. We plan to change some glib sources used in WebKit with custom sources like the one I'm using in this patch, but in a more generic way. Once we have that we could implement a RunLoopObserver, but only to monitor our own custom sources.</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>