<div dir="ltr"><div class="gmail_extra"><div class="gmail_quote">On Wed, Dec 10, 2014 at 9:46 AM, Žan Doberšek <span dir="ltr">&lt;<a href="mailto:zandobersek@gmail.com" target="_blank">zandobersek@gmail.com</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div class="gmail_extra"><div class="gmail_quote"><span class="">On Tue, Dec 9, 2014 at 5:52 PM, Gyuyoung Kim <span dir="ltr">&lt;<a href="mailto:gyuyoung.kim@webkit.org" target="_blank">gyuyoung.kim@webkit.org</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div>Hello,</div><span><div><br></div><div><font><span style="background-color:rgba(255,255,255,0)">&gt; <span></span>Do you know what are the plans for GTK and EFL?</span></font><br></div><div><br></div></span>As far as I know, EFL community has tried to support wayland. Thus some folks of WebKit EFL port seem to plan to support the wayland based of EFL support when it is ready.</blockquote><div><br></div></span><div>Basically same goes for the GTK+ port -- we mainly rely on the toolkit to properly support the Wayland protocol.</div><div><br></div><div>Despite that we must deploy a few custom solutions for specific problems. For instance, in order to efficiently transfer the composited results from the WebProcess to the Wayland compositor we are planning to use a nested Wayland compositor in the UIProcess to relay that data to GTK+.</div><div><br></div><div>First implementations of this approach ended up blitting the rendered data onto the Cairo surface of the relevant GtkWidget. To make things worse, the surface was using shared memory, and had its data invalidated completely whenever the GtkWidget had a redraw queued. This meant that </div></div></div></div></blockquote><div> </div><div>... a whole lot of data was being sent to the parent compositor for each update of the widget, which obviously caused problems on weaker embedded systems running in 1080p resolution.</div><div><br></div><div>Luckily in the last few months GTK+ finally received support for drawing OpenGL content in GtkWidgets, so the final implementation will be much more efficient.</div><div><br></div><div>Cheers,</div><div>Zan</div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div class="gmail_extra"><div class="gmail_quote"><div><div class="h5"><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div><br></div><div>Gyuyoung.<div><div><br><br>On Wednesday, December 10, 2014, Benjamin Poulain &lt;<a href="mailto:benjamin@webkit.org" target="_blank">benjamin@webkit.org</a>&gt; wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Hi Žan,<br>
<br>
Thanks for announcing this project here.<br>
<br>
Can you explain a bit why you decided to use the UIProcess directly inside the compositor?<br>
<br>
I am a bit concerned about the security of this model because the UIProcess becomes an attack vector for the compositor. Sharing the memory space with the compositor would prevent aggressive sandboxing.<br>
<br>
Great Wayland support seems like an important target for WebKit on Linux. Do you know what are the plans for GTK and EFL?<br>
<br>
Benjamin<br>
<br>
<br>
On 12/9/14 7:44 AM, Žan Doberšek wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
Hi,<br>
<br>
now with proper formatting, Igalia is happy to announce the Wayland port<br>
of WebKit.<br>
<br>
This port avoids using traditional GUI toolkits in favor of directly<br>
operating with the Wayland display protocol. Leveraging the WebKit2<br>
multi-process architecture, the UIProcess is implemented as a shared<br>
library and loaded by the Wayland compositor, enabling the WebProcess to<br>
act as a direct client of the compositor while still being controlled by<br>
the UIProcess.<br>
<br>
EGL, the Wayland EGL platform, and OpenGL ES are used for<br>
hardware-accelerated compositing of the rendered Web content. GLib,<br>
Libsoup and Cairo are used under the hood.<br>
<br>
The port serves as a good base for building systems and environments<br>
that are mostly or completely relying on the Web platform technologies<br>
for building the desired interface.<br>
<br>
Overall the port is still in its early days, with some basic<br>
functionality (e.g. functional keyboard and mouse input support) and<br>
many other Web platform features still not supported. But with Wayland<br>
EGL support constantly growing in graphics drivers for different GPUs,<br>
it can already be tested on devices like the Raspberry Pi or the Jetson<br>
TK1 development board.<br>
<br>
In terms of supported Wayland compositors, for the moment we only<br>
support Weston (the reference Wayland compositor implementation), which<br>
is also used for development purposes. It&#39;s also used for running the<br>
layout tests by again pushing WebKitTestRunner functionality into a<br>
shared library, though all that is still in very early stages.<br>
<br>
The code is available on GitHub. There are also short instructions for<br>
building the dependencies and the port, and how to run it.<br>
<a href="https://github.com/WebKitForWayland/webkit" target="_blank">https://github.com/<u></u>WebKitForWayland/webkit</a><br>
<br>
There&#39;s also additional repositories there (for Cairo, Weston),<br>
containing changes that haven&#39;t yet been pushed upstream. In the<br>
following days we&#39;ll also be providing Buildroot configurations that can<br>
be used for cross-compiling the whole software stack for the supported<br>
hardware.<br>
<br>
We look forward to continuing evolving this work, enabling further<br>
features and improving performance on the software side and adding<br>
support for additional devices. As with all open-source projects,<br>
contributions are welcome.<br>
<br>
Regards,<br>
Zan Dobersek<br>
<br>
<br>
On Tue, Dec 9, 2014 at 7:28 AM, Žan Doberšek &lt;<a>zandobersek@gmail.com</a><br>
&lt;mailto:<a>zandobersek@gmail.com</a>&gt;&gt; wrote:<br>
<br>
    Hi,<br>
    Igalia is happy to announce the Wayland port of WebKit.<br>
    This port avoids using traditional GUI toolkits in favor of directly<br>
    operating with the Wayland display protocol. Leveraging the WebKit2<br>
    multi-process architecture, the UIProcess is implemented as a shared<br>
    library and loaded by the Wayland compositor, enabling the<br>
    WebProcess to act as a direct client of the compositor while still<br>
    being controlled by the UIProcess.<br>
    EGL, the Wayland EGL platform, and OpenGL ES are used for<br>
    hardware-accelerated compositing of the rendered Web content. GLib,<br>
    Libsoup and Cairo are used under the hood.<br>
    The port serves as a good base for building systems and environments<br>
    that are mostly or completely relying on the Web platform<br>
    technologies for building the desired interface.<br>
    Overall the port is still in its early days, with some basic<br>
    functionality (e.g. functional keyboard and mouse input support) and<br>
    many other Web platform features still not supported. But with<br>
    Wayland EGL support constantly growing in graphics drivers for<br>
    different GPUs, it can already be tested on devices like the<br>
    Raspberry Pi or the Jetson TK1 development board.<br>
    In terms of supported Wayland compositors, for the moment we only<br>
    support Weston (the reference Wayland compositor implementation),<br>
    which is also used for development purposes. It&#39;s also used for<br>
    running the layout tests by again pushing WebKitTestRunner<br>
    functionality into a shared library, though all that is still in<br>
    very early stages.<br>
    The code is available on GitHub. There are also short instructions<br>
    for building the dependencies and the port, and how to run<br>
    it.<a href="https://github.com/WebKitForWayland/webkit" target="_blank">https://github.com/<u></u>WebKitForWayland/webkit</a><br>
    There&#39;s also additional repositories there (for Cairo, Weston),<br>
    containing changes that haven&#39;t yet been pushed upstream. In the<br>
    following days we&#39;ll also be providing Buildroot configurations that<br>
    can be used for cross-compiling the whole software stack for the<br>
    supported hardware.<br>
    We look forward to continuing evolving this work, enabling further<br>
    features and improving performance on the software side and adding<br>
    support for additional devices. As with all open-source projects,<br>
    contributions are welcome.<br>
    Regards,Zan Dobersek<br>
<br>
<br>
<br>
<br>
______________________________<u></u>_________________<br>
webkit-dev mailing list<br>
<a>webkit-dev@lists.webkit.org</a><br>
<a href="https://lists.webkit.org/mailman/listinfo/webkit-dev" target="_blank">https://lists.webkit.org/<u></u>mailman/listinfo/webkit-dev</a><br>
<br>
</blockquote>
<br>
______________________________<u></u>_________________<br>
webkit-dev mailing list<br>
<a>webkit-dev@lists.webkit.org</a><br>
<a href="https://lists.webkit.org/mailman/listinfo/webkit-dev" target="_blank">https://lists.webkit.org/<u></u>mailman/listinfo/webkit-dev</a><br>
</blockquote></div></div></div><span><font color="#888888"><br><br>-- <br>Sent from Gyuyoung Iphone<br>
</font></span><br>_______________________________________________<br>
webkit-dev mailing list<br>
<a href="mailto:webkit-dev@lists.webkit.org" target="_blank">webkit-dev@lists.webkit.org</a><br>
<a href="https://lists.webkit.org/mailman/listinfo/webkit-dev" target="_blank">https://lists.webkit.org/mailman/listinfo/webkit-dev</a><br>
<br></blockquote></div></div></div><br></div></div>
</blockquote></div><br></div></div>