From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!.POSTED!not-for-mail From: Ricardo Wurmus Newsgroups: gmane.emacs.devel Subject: [PATCH 0/6] xwidget webkit: Use WebKit2 API. Date: Wed, 21 Sep 2016 13:50:12 +0200 Message-ID: <20160921115018.29576-1-rekado@elephly.net> NNTP-Posting-Host: blaine.gmane.org X-Trace: blaine.gmane.org 1474458732 3892 195.159.176.226 (21 Sep 2016 11:52:12 GMT) X-Complaints-To: usenet@blaine.gmane.org NNTP-Posting-Date: Wed, 21 Sep 2016 11:52:12 +0000 (UTC) Cc: Ricardo Wurmus To: emacs-devel@gnu.org Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Wed Sep 21 13:52:03 2016 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by blaine.gmane.org with esmtp (Exim 4.84_2) (envelope-from ) id 1bmg4B-0007OW-0u for ged-emacs-devel@m.gmane.org; Wed, 21 Sep 2016 13:51:55 +0200 Original-Received: from localhost ([::1]:41751 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1bmg49-0002pT-9n for ged-emacs-devel@m.gmane.org; Wed, 21 Sep 2016 07:51:53 -0400 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:43553) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1bmg2t-0001wu-QF for emacs-devel@gnu.org; Wed, 21 Sep 2016 07:50:36 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1bmg2q-0008Bs-K1 for emacs-devel@gnu.org; Wed, 21 Sep 2016 07:50:35 -0400 Original-Received: from sender163-mail.zoho.com ([74.201.84.163]:21354) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1bmg2q-0008Au-CG for emacs-devel@gnu.org; Wed, 21 Sep 2016 07:50:32 -0400 Original-Received: from localhost (x2f76e23.dyn.telefonica.de [2.247.110.35]) by mx.zohomail.com with SMTPS id 1474458624112501.14948879608767; Wed, 21 Sep 2016 04:50:24 -0700 (PDT) X-Mailer: git-send-email 2.10.0 X-detected-operating-system: by eggs.gnu.org: GNU/Linux 3.x X-Received-From: 74.201.84.163 X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Original-Sender: "Emacs-devel" Xref: news.gmane.org gmane.emacs.devel:207650 Archived-At: O fellow humans on emacs-devel! I noticed that for the embedding of a WebKit widget in Emacs an old version of WebKitGtk is needed, because the code in "src/xwidget.c" targets the WebKit1 API. As far as I know, only the latest version of WebKitGtk is actively maintained, so it seems like a good idea to make Emacs work with the latest version. The first patch in this series adjusts the code such that the WebKit2 API is used instead, which allows users to build Emacs with the latest version of WebKit(2)Gtk. Due to process separation in WebKit2Gtk, scrolling is now supposed to be done in the UI process. This is what the second patch does; it implements scrolling by executing JavaScript in the WebKit view. (Maybe the first two commits should be squashed?) The other patches are simple changes to make interacting with the WebKit widget a little easier. If these patches are okay I'd like to continue by removing the title hack, which is currently used to get a stringified return value from JavaScript. This is no longer needed when using the WebKit2 API as it supports passing a callback to process any JS return values. ~~ Ricardo PS: I did copyright assigment for GNU Guile already, but I'm not sure if copyright assignment is on file for Emacs already. Ricardo Wurmus (6): xwidget: Use WebKit2 API Remove scrolled window container around WebKit widget Implement zoom for WebKit widget. xwidget: Bind "beginning-of-buffer" and "end-of-buffer" Let initial WebKit view fill window xwidget: Map "previous-line" and "next-line" to scroll configure.ac | 4 +- lisp/xwidget.el | 56 +++++++++--- src/xwidget.c | 270 ++++++++++++++++++++++---------------------------------- src/xwidget.h | 3 - 4 files changed, 151 insertions(+), 182 deletions(-) -- 2.10.0