From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: joakim@verona.se Newsgroups: gmane.emacs.devel Subject: make-xwidget api change patch Date: Sun, 27 Mar 2016 18:55:48 +0200 Message-ID: NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: text/plain X-Trace: ger.gmane.org 1459097795 1434 80.91.229.3 (27 Mar 2016 16:56:35 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Sun, 27 Mar 2016 16:56:35 +0000 (UTC) To: Emacs developers , Eli Zaretskii Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Sun Mar 27 18:56:25 2016 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by plane.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1akDzD-0001N5-Ii for ged-emacs-devel@m.gmane.org; Sun, 27 Mar 2016 18:56:23 +0200 Original-Received: from localhost ([::1]:36720 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1akDzC-000184-C7 for ged-emacs-devel@m.gmane.org; Sun, 27 Mar 2016 12:56:22 -0400 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:48810) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1akDz8-00017o-CA for emacs-devel@gnu.org; Sun, 27 Mar 2016 12:56:19 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1akDz7-0000EE-5M for emacs-devel@gnu.org; Sun, 27 Mar 2016 12:56:18 -0400 Original-Received: from mx2.bahnhof.se ([213.80.101.12]:45734) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1akDz3-0000D8-5j; Sun, 27 Mar 2016 12:56:13 -0400 Original-Received: from localhost (mf.bahnhof.se [213.80.101.20]) by mx2-reinject (Postfix) with ESMTP id 58FB940905; Sun, 27 Mar 2016 18:56:06 +0200 (CEST) X-Virus-Scanned: by amavisd-new using ClamAV at bahnhof.se (MF4) Original-Received: from mf4.bahnhof.se ([127.0.0.1]) by localhost (mf4.bahnhof.se [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id Oqrfi10O7jml; Sun, 27 Mar 2016 18:56:01 +0200 (CEST) Original-Received: from mta.verona.se (h-235-62.a149.priv.bahnhof.se [85.24.235.62]) by mf4.bahnhof.se (Postfix) with ESMTP id 7D6E23D77DF; Sun, 27 Mar 2016 18:55:59 +0200 (CEST) Original-Received: from localhost (unknown [127.0.0.1]) by mta.verona.se (Postfix) with ESMTP id F24234EE0E1; Sun, 27 Mar 2016 16:55:58 +0000 (UTC) X-Virus-Scanned: amavisd-new at verona.se Original-Received: from mta.verona.se ([127.0.0.1]) by localhost (exodia.verona.se [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id suGVlz4cbkrg; Sun, 27 Mar 2016 18:55:49 +0200 (CEST) Original-Received: from exodia.verona.se (www.verona.se [192.168.200.15]) by mta.verona.se (Postfix) with ESMTP id 00DDB4EE0DD; Sun, 27 Mar 2016 18:55:49 +0200 (CEST) User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/25.0.91 (gnu/linux) X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 213.80.101.12 X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.14 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-bounces+ged-emacs-devel=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.devel:202297 Archived-At: Eli noticed a problem in the make-xwidget function a while back. The problem is that the function takes 2 arguments that are never used. The type for the webkit widget also has a redundant -osr suffix. The patch below attempts to fix these issues. The changes are uncontroversial, but since it is late in the cycle I ask for a review. /Joakim commit 210ba7fbae4daf1e631b1c1b9ca0ea553d18d6f5 Author: Joakim Verona Date: Sun Mar 27 18:38:30 2016 +0200 Remove unused arguments from make-xwidget The arguments BEG and END were unused, and are now removed. * display.texi (Xwidgets): Document the change * xwidget.el (make-xwidget, xwidget-insert) (xwidget-webkit-new-session): Reflect changed arguments * xwidget.c (Fmake_xwidget, syms_of_xwidget): Reflect changed arguments diff --git a/doc/lispref/display.texi b/doc/lispref/display.texi index e4aff43..2d8b60d 100644 --- a/doc/lispref/display.texi +++ b/doc/lispref/display.texi @@ -5641,7 +5641,7 @@ Xwidgets in a @code{display} text or overlay property (@pxref{Display Property}). -@defun make-xwidget beg end type title width height arguments &optional buffer +@defun make-xwidget type title width height arguments &optional buffer This creates an xwidget object between @var{beg} and @var{end}, buffer positions in @var{buffer}, and returns the new object. If @var{buffer} is omitted or @code{nil}, it defaults to the current @@ -5650,8 +5650,8 @@ Xwidgets it can be one of the following: @table @code -@item webkit-osr -The WebKit OSR (@dfn{on-stack replacement}) component. +@item webkit +The WebKit (@dfn{on-stack replacement}) component. @end table The @var{width} and @var{height} arguments specify the widget size in diff --git a/lisp/xwidget.el b/lisp/xwidget.el index cd8ec0e..19f631f 100644 --- a/lisp/xwidget.el +++ b/lisp/xwidget.el @@ -42,7 +42,7 @@ xwidget-webkit-scroll-behavior :type '(choice (const native) (const image))) (declare-function make-xwidget "xwidget.c" - (beg end type title width height arguments &optional buffer)) + (type title width height arguments &optional buffer)) (declare-function xwidget-set-adjustment "xwidget.c" (xwidget axis relative value)) (declare-function xwidget-buffer "xwidget.c" (xwidget)) @@ -66,8 +66,7 @@ xwidget-insert The usage of optional argument ARGS depends on the xwidget. This returns the result of `make-xwidget'." (goto-char pos) - (let ((id (make-xwidget (point) (point) - type title width height args))) + (let ((id (make-xwidget type title width height args))) (put-text-property (point) (+ 1 (point)) 'display (list 'xwidget ':xwidget id)) id)) @@ -454,7 +453,7 @@ xwidget-webkit-new-session (setq xwidget-webkit-last-session-buffer (switch-to-buffer (get-buffer-create bufname))) (insert " 'a' adjusts the xwidget size.") - (setq xw (xwidget-insert 1 'webkit-osr bufname 1000 1000)) + (setq xw (xwidget-insert 1 'webkit bufname 1000 1000)) (xwidget-put xw 'callback 'xwidget-webkit-callback) (xwidget-webkit-mode) (xwidget-webkit-goto-uri (xwidget-webkit-last-session) url))) diff --git a/src/xwidget.c b/src/xwidget.c index 54b8004..2c69c24 100644 --- a/src/xwidget.c +++ b/src/xwidget.c @@ -156,27 +156,23 @@ webkit_navigation_policy_decision_requested_cb (WebKitWebView *, DEFUN ("make-xwidget", Fmake_xwidget, Smake_xwidget, - 7, 8, 0, - doc: /* Make an xwidget from BEG to END of TYPE. + 5, 6, 0, + doc: /* Make an xwidget of TYPE. If BUFFER is nil, use the current buffer. If BUFFER is a string and no such buffer exists, create it. TYPE is a symbol which can take one of the following values: -- webkit-osr +- webkit Returns the newly constructed xwidget, or nil if construction fails. */) - (Lisp_Object beg, Lisp_Object end, Lisp_Object type, + (Lisp_Object type, Lisp_Object title, Lisp_Object width, Lisp_Object height, Lisp_Object arguments, Lisp_Object buffer) { CHECK_SYMBOL (type); CHECK_NATNUM (width); CHECK_NATNUM (height); - /* This should work a bit like "make-button" - (make-button BEG END &rest PROPERTIES) - TYPE etc. should be keyword args eventually. - (make-xwidget 3 3 'button "oei" 31 31 nil) - (xwidget-info (car xwidget-list)) */ + struct xwidget *xw = allocate_xwidget (); Lisp_Object val; xw->type = type; @@ -987,7 +983,7 @@ syms_of_xwidget (void) defsubr (&Sxwidget_webkit_goto_uri); defsubr (&Sxwidget_webkit_execute_script); defsubr (&Sxwidget_webkit_get_title); - DEFSYM (Qwebkit_osr, "webkit-osr"); + DEFSYM (Qwebkit_osr, "webkit"); defsubr (&Sxwidget_size_request); defsubr (&Sdelete_xwidget_view); -- Joakim Verona