State of the kit (FOSDEM 2013)
Upcoming SlideShare
Loading in...5
×
 

Like this? Share it with your network

Share

State of the kit (FOSDEM 2013)

on

  • 254 views

By Adrian Perez de Castro. ...

By Adrian Perez de Castro.

In the session we will talk about WebKitGTK+ new release and plans. The new WebKit2 API is going to be stable very soon, we will explain the differences, new additions and current situation of the API in more detail and we will show how to embed and use the new widget. We also will explain the multiple features we have added in the last year (accelerated compositing, gstreamer 1.0, networking, etc.) and the roadmap for the next year. Also as usual we will add nice demos.

The talk should be interesting for embedders because new WebKit2GTK+ API should be used in the near future.

Statistics

Views

Total Views
254
Views on SlideShare
253
Embed Views
1

Actions

Likes
0
Downloads
3
Comments
0

1 Embed 1

http://www.slideee.com 1

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

State of the kit (FOSDEM 2013) Presentation Transcript

  • 1. State of the ${kit} (kit=WebKitGTK+) Adrián Pérez Igalia
  • 2. WebKit Basics Includes WebKitGTK+
  • 3. What is WebKit? # webkitgtk # fosdem 4/24
  • 4. What is WebKitGTK+? # webkitgtk # fosdem 5/24
  • 5. What is WebKit2? # webkitgtk # fosdem 6/24
  • 6. Who is using it? # webkitgtk # fosdem 7/24
  • 7. Previously on WebKitGTK+… Stable release 1.10.x · Now enabled by default: - Geolocation - WebGL - Web Timing · New features: - Accelerated compositing - Smooth scrolling Full-screen mode HTML5 History API WebAudio - JSC LLint · Boatloads of bugfixes. · WebKit2GTK+ API augmented, nearing stabilization: - To happen # webkitgtk # fosdem with GNOME 3.8, including Epiphany. 8/24
  • 8. WebKit2 now State of the art · · · · WebKit2 announced in April 2010 Apple has released Safari using it Cross-platform internal C API exists One Two Qt browsers out there in the wild - N9 browser: uses the C API - Snowshoe: uses Qt5 · WebKitGTK+ is the next to have support ☺ # webkitgtk # fosdem 9/24
  • 9. So… How's WebKit2GTK+ doing? The evil is in the details Doing nicely: · The basics have been working for quite a while · Most of the small details are already in place as of 1.10: - Context menus - Web inspector - Favicons - On-disk cache - Spell checking - Printing support - Documentation, GI annotations… # webkitgtk # fosdem 10/24
  • 10. WebKit2 changes (For developers)
  • 11. WebKit1GTK+ Goal: same API for WebKit1GTK+ and WebKit2GTK+ Gkigt*k =wbi_e_iwnw(; tWde wt ektwbve_e ) WbiWbetns*etns=wbi_e_iwgtstig (EKTWBVE (k) eKteStig stig ektwbve_e_etns WBI_E_IW wt) / Cniueuigtete“etns ojc * * ofgr sn h h stig” bet / Gkigt*i =gkwno_e (T_IDWTPEE) tWde wn t_idwnw GKWNO_OLVL; gkcnanrad(T_OTIE (i) wt; t_otie_d GKCNANR wn, k) wbi_e_iwla_r (EKTWBVE (k) "tp/fse.r"; ektwbve_odui WBI_E_IW wt, ht:/odmog) gkwde_hwal(i) t_igtso_l wn; gkmi (; t_an ) # webkitgtk # fosdem C 12/24
  • 12. WebKit2GTK+ Goal: same API for WebKit1GTK+ and WebKit2GTK+ Gkigt*k =wbi_e_iwnw(; tWde wt ektwbve_e ) WbiStig *etns=wbi_e_iwgtstig (EKTWBVE (k) eKtetns stig ektwbve_e_etns WBI_E_IW wt) / Cniueuigtete“etns ojc * * ofgr sn h h stig” bet / Gkigt*i =gkwno_e (T_IDWTPEE) tWde wn t_idwnw GKWNO_OLVL; gkcnanrad(T_OTIE (i) wt; t_otie_d GKCNANR wn, k) wbi_e_iwla_r (EKTWBVE (k) "tp/fse.r"; ektwbve_odui WBI_E_IW wt, ht:/odmog) gkwde_hwal(i) t_igtso_l wn; gkmi (; t_an ) C · There are some changes, though! · For simple uses changes are none or minimal · Start porting your application now! # webkitgtk # fosdem 13/24
  • 13. Differences are small(–ish) · Some classes renamed (mostly removing “Web”): - W b i W b e t n s→ W b i S t i g eKteStig eKtetns - W b i W b l g n→ W b i P u i eKtePui eKtlgn - WbiWbitrIe → WbiBcFradittm eKteHsoytm eKtakowrLsIe - … · Some new classes (mostly new fatures): - WbiCneteu eKtotxMn - WbiScrtMngr eKteuiyaae - … · Some classes gone away (no longer needed, or missing): - WbiWblgnaaae eKtePuiDtbs - WbiWbrm eKteFae - … # webkitgtk # fosdem 14/24
  • 14. What next? A sneak peek
  • 15. To the future… and beyond Slicker media controls New media controls Old media controls # webkitgtk # fosdem 16/24
  • 16. To the future… and beyond WebKitGTK+ on Wayland with WebGL 0:51 # webkitgtk # fosdem 17/24
  • 17. To the future… and beyond Epiphany overview Epiphany overview # webkitgtk # fosdem 18/24
  • 18. To the future… and beyond Epiphany “UXperiments” 0:00 # webkitgtk # fosdem 19/24
  • 19. To the future… and beyond And more! · Text rendering with Harfbuzz · GObject Introspection for WebKit2GTK+ · GStreamer 1.0 for multimedia · HW accelerated video rendering · WebP and Opus support · Native notifications · Web applications · Print preview · Win32 (printing, IPC, etc.) · … · ${FEATURE} # webkitgtk # fosdem 20/24
  • 20. Wrapping up Conclusions, everybody ♥ these
  • 21. Conclusions tl;dr · Mature port, widely used · Released regularly, every ~6 months · Well maintained · Useable for developing serious browsers · Scales from desktop to embedded · WebKit2GTK+ API nearing completion, stabilization approaching - Beta since 3.6 - Epiphany adopting it for 3.8 · WebKit1GTK+ API still being maintained - New features and improvements for WebKit2GTK+ first # webkitgtk # fosdem 22/24
  • 22. Contributing Every single bit matters · bugs.webkit.org · webkitgtk.org · webkit.org · Mailing lists: - wbi-t@it.ektog ektgklsswbi.r - wbi-e@it.ektog ektdvlsswbi.r · IRC channels on i c f e n d . e : r.reoent - #ektt+ wbigk - #ekt wbi # webkitgtk # fosdem 23/24
  • 23. Thank You! …and enjoy the rest of FOSDEM twitter @aperezdc www perezdecastro.org github github.com/aperezdc