]> code.delx.au - gnu-emacs/commitdiff
upstream
authorJoakim Verona <joakim@verona.se>
Wed, 4 Jun 2014 21:50:06 +0000 (23:50 +0200)
committerJoakim Verona <joakim@verona.se>
Wed, 4 Jun 2014 21:50:06 +0000 (23:50 +0200)
28 files changed:
1  2 
configure.ac
lisp/desktop.el
lisp/net/browse-url.el
lisp/progmodes/cc-mode.el
lisp/vc/vc-dir.el
make-dist
src/.gdbinit
src/Makefile.in
src/buffer.c
src/dispextern.h
src/dispnew.c
src/emacs.c
src/emacsgtkfixed.c
src/emacsgtkfixed.h
src/keyboard.c
src/lisp.h
src/print.c
src/termhooks.h
src/window.c
src/xdisp.c
src/xterm.c
test/automated/data/decompress/foo-gzipped
test/automated/data/package/multi-file-readme.txt
test/automated/data/package/newer-versions/archive-contents
test/automated/data/package/newer-versions/new-pkg-1.0.el
test/automated/data/package/newer-versions/simple-single-1.4.el
test/automated/data/package/simple-depend-1.0.el
test/automated/data/package/simple-single-readme.txt

diff --cc configure.ac
index 6deeb0452733ab577a963d40841ee52d9f8e140f,e9f5099becd0e495662e2d15de3b3959edede88e..582b94ee278503ab92d10efefd334a7f0a7754a0
@@@ -2334,42 -2386,8 +2388,44 @@@ if test "${HAVE_GTK}" = "yes"; the
   term_header=gtkutil.h
  fi
  
 +
 +HAVE_XWIDGETS=no
 +HAVE_WEBKIT=no
 +HAVE_GIR=no
 +
 +if test "${with_xwidgets}" != "no"; then
 +   echo "xwidgets enabled, checking webkit, and others"
 +   HAVE_XWIDGETS=yes
 +   AC_DEFINE(HAVE_XWIDGETS, 1, [Define to 1 if you have xwidgets support.])        
 +#xwidgets
 +#TODO
 +# - enable only if gtk/gtk3 enabled
 +# - webkit
 +# - only webkit_osr is good so remove plain webkit laterish
 +
 +#webkit version for gtk3. 
 +  WEBKIT_REQUIRED=1.4.0
 +  WEBKIT_MODULES="webkitgtk-3.0 >= $WEBKIT_REQUIRED"
 +
 +  if test "${with_gtk3}" = "yes"; then
 +    PKG_CHECK_MODULES(WEBKIT, $WEBKIT_MODULES, HAVE_WEBKIT=yes, HAVE_WEBKIT=no)
 +    if test $HAVE_WEBKIT = yes; then
 +        AC_DEFINE(HAVE_WEBKIT_OSR, 1, [Define to 1 if you have webkit_osr support.])     
 +    fi
 +  fi
 +
 +  GIR_REQUIRED=1.32.1
 +  GIR_MODULES="gobject-introspection-1.0 >= $GIR_REQUIRED"
 +  PKG_CHECK_MODULES(GIR, $GIR_MODULES, HAVE_GIR=yes, HAVE_GIR=no)
 +  if test $HAVE_GIR = yes; then
 +     AC_DEFINE(HAVE_GIR, 1, [Define to 1 if you have GIR support.])
 +  fi
 +
 +  
 +fi
 +
+ CFLAGS=$OLD_CFLAGS
+ LIBS=$OLD_LIBS
  
  dnl D-Bus has been tested under GNU/Linux only.  Must be adapted for
  dnl other platforms.
diff --cc lisp/desktop.el
index 9667b512e7a6040badcd006b1c9e740f8528dcdb,ded73c065f07e737b5742d92924636c70a6775d5..2843e8795e7b2b15edb0f6b726ab253485ee62f9
@@@ -1450,12 -1493,14 +1493,11 @@@ If there are no buffers left to create
      (let ((key "--no-desktop"))
        (when (member key command-line-args)
          (setq command-line-args (delete key command-line-args))
-         (setq desktop-save-mode nil)))
+         (desktop-save-mode 0)))
      (when desktop-save-mode
        (desktop-read)
-       (desktop-auto-save-set-timer)
        (setq inhibit-startup-screen t))))
  
 -;; So we can restore vc-dir buffers.
 -(autoload 'vc-dir-mode "vc-dir" nil t)
 -
  (provide 'desktop)
  
  ;;; desktop.el ends here
index ea13aa36a704f570549efd3fff7bb852d375b178,09d84795f4f9a9394cb61379bd3c8c13dd68aeab..be9e4aa94bf4eb3636be6459703724add33ce1fe
@@@ -812,7 -807,8 +815,9 @@@ first, if that exists.
    (interactive (browse-url-interactive-arg "URL: "))
    (unless (called-interactively-p 'interactive)
      (setq args (or args (list browse-url-new-window-flag))))
 +  (setq url (url-tidy url))
+   (when (and url-handler-mode (not (file-name-absolute-p url)))
+     (setq url (expand-file-name url)))
    (let ((process-environment (copy-sequence process-environment))
        (function (or (and (string-match "\\`mailto:" url)
                           browse-url-mailto-function)
Simple merge
Simple merge
diff --cc make-dist
Simple merge
diff --cc src/.gdbinit
Simple merge
diff --cc src/Makefile.in
index 3e45a5bfff89c2871c5e7ee19ffa077927854897,020ecd62a5eb9eb6350c118a98a91fc8291d93da..3671b4d912be87ccfc4795e38b107571edaf1006
@@@ -349,11 -322,11 +328,12 @@@ MKDEPDIR=@MKDEPDIR
  ##
  ## FIXME? MYCPPFLAGS only referenced in etc/DEBUG.
  ALL_CFLAGS=-Demacs $(MYCPPFLAGS) -I. -I$(srcdir) \
-   -I$(lib) -I$(srcdir)/../lib \
+   -I$(lib) -I$(srcdir)/../lib $(C_HEAP_SWITCH) \
    $(C_SWITCH_MACHINE) $(C_SWITCH_SYSTEM) $(C_SWITCH_X_SITE) \
    $(GNUSTEP_CFLAGS) $(CFLAGS_SOUND) $(RSVG_CFLAGS) $(IMAGEMAGICK_CFLAGS) \
-   $(LIBXML2_CFLAGS) $(DBUS_CFLAGS) $(XRANDR_CFLAGS) $(XINERAMA_CFLAGS) \
+   $(PNG_CFLAGS) $(LIBXML2_CFLAGS) $(DBUS_CFLAGS) \
+   $(XRANDR_CFLAGS) $(XINERAMA_CFLAGS) $(XFIXES_CFLAGS) \
 +  $(WEBKIT_CFLAGS) $(CLUTTER_CFLAGS) $(GIR_CFLAGS) \
    $(SETTINGS_CFLAGS) $(FREETYPE_CFLAGS) $(FONTCONFIG_CFLAGS) \
    $(LIBOTF_CFLAGS) $(M17N_FLT_CFLAGS) $(DEPFLAGS) \
    $(LIBGNUTLS_CFLAGS) $(GFILENOTIFY_CFLAGS) \
@@@ -434,9 -405,8 +414,9 @@@ ALLOBJS = $(FIRSTFILE_OBJ) $(VMLIMIT_OB
  LIBES = $(LIBS) $(W32_LIBS) $(LIBS_GNUSTEP) $(LIBX_BASE) $(LIBIMAGE) \
     $(LIBX_OTHER) $(LIBSOUND) \
     $(RSVG_LIBS) $(IMAGEMAGICK_LIBS) $(LIB_ACL) $(LIB_CLOCK_GETTIME) \
 +   $(WEBKIT_LIBS) $(CLUTTER_LIBS) $(GIR_LIBS) \
     $(LIB_EACCESS) $(LIB_FDATASYNC) $(LIB_TIMER_TIME) $(DBUS_LIBS) \
-    $(LIB_EXECINFO) $(XRANDR_LIBS) $(XINERAMA_LIBS) \
+    $(LIB_EXECINFO) $(XRANDR_LIBS) $(XINERAMA_LIBS) $(XFIXES_LIBS) \
     $(LIBXML2_LIBS) $(LIBGPM) $(LIBRESOLV) $(LIBS_SYSTEM) \
     $(LIBS_TERMCAP) $(GETLOADAVG_LIBS) $(SETTINGS_LIBS) $(LIBSELINUX_LIBS) \
     $(FREETYPE_LIBS) $(FONTCONFIG_LIBS) $(LIBOTF_LIBS) $(M17N_FLT_LIBS) \
diff --cc src/buffer.c
index 71c01237205d09b3a0c919ebd8b8c230ab55ebc9,909b3779b063d6ffdb7f005ee7a9dd93b7b5a7f1..bc0a796ea7177ba8153cacb45759ec7000a500e6
@@@ -44,9 -41,9 +41,12 @@@ along with GNU Emacs.  If not, see <htt
  #include "keymap.h"
  #include "frame.h"
  
 +#ifdef HAVE_XWIDGETS
 +#include "xwidget.h"
 +#endif  /* HAVE_XWIDGETS */
+ #ifdef WINDOWSNT
+ #include "w32heap.h"          /* for mmap_* */
+ #endif
  
  struct buffer *current_buffer;                /* The current buffer.  */
  
index e9f57d9fa22c5a4a1fc9896c57aeb1b9c2729080,9ecd4ecdf7e26a3105031ab96ff80ab04b94d391..994afb3a4608f04fd5403af4fd828e25433cc542
@@@ -2372,16 -2366,9 +2383,16 @@@ struct i
        struct {
        Lisp_Object object;
        } stretch;
 +#ifdef HAVE_XWIDGETS
 +      /* method == GET_FROM_XWIDGET */
 +      struct {
 +      Lisp_Object object;
 +        struct xwidget* xwidget;
 +      } xwidget;
 +#endif
      } u;
  
-     /* current text and display positions.  */
+     /* Current text and display positions.  */
      struct text_pos position;
      struct display_pos current;
      Lisp_Object from_overlay;
diff --cc src/dispnew.c
index cd7be59c122095fa360711ed918a1200b3f7d85b,7833f8e8af56130f0178674a4f79fa24f3bcb173..2541f88732c00026f60f02a8afbc31f931019100
@@@ -17,10 -17,9 +17,8 @@@ GNU General Public License for more det
  
  You should have received a copy of the GNU General Public License
  along with GNU Emacs.  If not, see <http://www.gnu.org/licenses/>.  */
 -
  #include <config.h>
  
- #define DISPEXTERN_INLINE EXTERN_INLINE
  #include "sysstdio.h"
  #include <unistd.h>
  
@@@ -4046,14 -4076,8 +4081,14 @@@ scrolling_window (struct window *w, boo
        break;
      }
  
 +#ifdef HAVE_XWIDGETS
 + //currently this is needed to detect xwidget movement reliably. or probably not.
 +  //printf("scrolling_window\n");
 +    return 0;
 +#endif
 +  
    /* Give up if some rows in the desired matrix are not enabled.  */
-   if (!MATRIX_ROW (desired_matrix, i)->enabled_p)
+   if (! MATRIX_ROW_ENABLED_P (desired_matrix, i))
      return -1;
  
    first_old = first_new = i;
diff --cc src/emacs.c
Simple merge
Simple merge
Simple merge
diff --cc src/keyboard.c
Simple merge
diff --cc src/lisp.h
Simple merge
diff --cc src/print.c
index 03e781cac18ba9e465e91010d573a666e80dafe1,475be9ec28542c213462367dfe43835a90adbb25..c6d9f44bdb5f40b7c1a9438a0bbfe1cb0358c6c9
@@@ -1764,22 -1774,11 +1776,23 @@@ print_object (Lisp_Object obj, Lisp_Obj
          strout (XSUBR (obj)->symbol_name, -1, -1, printcharfun);
          PRINTCHAR ('>');
        }
 +#ifdef HAVE_XWIDGETS
 +      else if (XWIDGETP (obj))
 +      {
 +        strout ("#<xwidget ", -1, -1, printcharfun);
 +        PRINTCHAR ('>');
 +      }
 +      else if (XWIDGET_VIEW_P (obj))
 +      {
 +        strout ("#<xwidget-view ", -1, -1, printcharfun);
 +        PRINTCHAR ('>');
 +      }
 +#endif      
        else if (WINDOWP (obj))
        {
-         void *ptr = XWINDOW (obj);
-         int len = sprintf (buf, "#<window %p", ptr);
+         int len;
+         strout ("#<window ", -1, -1, printcharfun);
+         len = sprintf (buf, "%d", XWINDOW (obj)->sequence_number);
          strout (buf, len, len, printcharfun);
          if (BUFFERP (XWINDOW (obj)->contents))
            {
diff --cc src/termhooks.h
Simple merge
diff --cc src/window.c
index 74b763414461f439ce291501d1b2bbf296ac20bd,919cc7b1c4e48be1c7b94235d04f05588934caa0..7f28ccd19b2fa14c2bd870f637a4164229602984
@@@ -4004,11 -4518,7 +4524,10 @@@ Signal an error when WINDOW is the onl
  
        /* Block input.  */
        block_input ();
 +#ifdef HAVE_XWIDGETS
 +      xwidget_view_delete_all_in_window(w);
 +#endif
        window_resize_apply (p, horflag);
        /* If this window is referred to by the dpyinfo's mouse
         highlight, invalidate that slot to be safe (Bug#9904).  */
        if (!FRAME_INITIAL_P (f))
diff --cc src/xdisp.c
Simple merge
diff --cc src/xterm.c
Simple merge
diff --cc test/automated/data/decompress/foo-gzipped
index a68653fcbb93502b6a01f019d28679a0d01a52fa,a68653fcbb93502b6a01f019d28679a0d01a52fa..0000000000000000000000000000000000000000
deleted file mode 100644,100644
Binary files differ
diff --cc test/automated/data/package/multi-file-readme.txt
index affd2e96fb03739058b6409f9dc966c79e1076f9,affd2e96fb03739058b6409f9dc966c79e1076f9..0000000000000000000000000000000000000000
deleted file mode 100644,100644
+++ /dev/null
@@@ -1,1 -1,1 +1,0 @@@
--This is a bare-bones readme file for the multi-file package.
diff --cc test/automated/data/package/newer-versions/archive-contents
index add5f2909d09d7541709e544b572cb07d20b19c2,add5f2909d09d7541709e544b572cb07d20b19c2..0000000000000000000000000000000000000000
deleted file mode 100644,100644
+++ /dev/null
@@@ -1,13 -1,13 +1,0 @@@
--(1
-- (simple-single .
--                [(1 4)
--                 nil "A single-file package with no dependencies" single])
-- (simple-depend .
--                [(1 0)
--                 ((simple-single (1 3))) "A single-file package with a dependency." single])
-- (new-pkg .
--                [(1 0)
--                 nil "A package only seen after "updating" archive-contents" single])
-- (multi-file .
--             [(0 2 3)
--              nil "Example of a multi-file tar package" tar]))
diff --cc test/automated/data/package/newer-versions/new-pkg-1.0.el
index 7251622fa593a615278ad64cc13f9b68a90d97d1,7251622fa593a615278ad64cc13f9b68a90d97d1..0000000000000000000000000000000000000000
deleted file mode 100644,100644
+++ /dev/null
@@@ -1,18 -1,18 +1,0 @@@
--;;; new-pkg.el --- A package only seen after "updating" archive-contents
--
--;; Author: J. R. Hacker <jrh@example.com>
--;; Version: 1.0
--
--;;; Commentary:
--
--;; This will only show up after updating "archive-contents".
--
--;;; Code:
--
--(defun new-pkg-frob ()
--  "Ignore me."
--  (ignore))
--
--(provide 'new-pkg)
--
--;;; new-pkg.el ends here
diff --cc test/automated/data/package/newer-versions/simple-single-1.4.el
index 7d8178c05a5897dee34daa2c72117d36bfc9abe2,7d8178c05a5897dee34daa2c72117d36bfc9abe2..0000000000000000000000000000000000000000
deleted file mode 100644,100644
+++ /dev/null
@@@ -1,36 -1,36 +1,0 @@@
--;;; simple-single.el --- A single-file package with no dependencies
--
--;; Author: J. R. Hacker <jrh@example.com>
--;; Version: 1.4
--;; Keywords: frobnicate
--
--;;; Commentary:
--
--;; This package provides a minor mode to frobnicate and/or bifurcate
--;; any flanges you desire. To activate it, type "C-M-r M-3 butterfly"
--;; and all your dreams will come true.
--;;
--;; This is a new, updated version.
--
--;;; Code:
--
--(defgroup simple-single nil "Simply a file"
--  :group 'lisp)
--
--(defcustom simple-single-super-sunday nil
--  "How great is this?
--Default changed to `nil'."
--  :type 'boolean
--  :group 'simple-single
--  :package-version "1.4")
--
--(defvar simple-single-sudo-sandwich nil
--  "Make a sandwich?")
--
--;;;###autoload
--(define-minor-mode simple-single-mode
--  "It does good things to stuff")
--
--(provide 'simple-single)
--
--;;; simple-single.el ends here
diff --cc test/automated/data/package/simple-depend-1.0.el
index b58b658d024d3ad04d725fb728c03e24c7564f36,b58b658d024d3ad04d725fb728c03e24c7564f36..0000000000000000000000000000000000000000
deleted file mode 100644,100644
+++ /dev/null
@@@ -1,17 -1,17 +1,0 @@@
--;;; simple-depend.el --- A single-file package with a dependency.
--
--;; Author: J. R. Hacker <jrh@example.com>
--;; Version: 1.0
--;; Keywords: frobnicate
--;; Package-Requires: ((simple-single "1.3"))
--
--;;; Commentary:
--
--;; Depends on another package.
--
--;;; Code:
--
--(defvar simple-depend "Value"
--  "Some trivial code")
--
--;;; simple-depend.el ends here
diff --cc test/automated/data/package/simple-single-readme.txt
index 25d3034032bf01601b905790837e5ed01807cc4a,25d3034032bf01601b905790837e5ed01807cc4a..0000000000000000000000000000000000000000
deleted file mode 100644,100644
+++ /dev/null
@@@ -1,3 -1,3 +1,0 @@@
--This package provides a minor mode to frobnicate and/or bifurcate
--any flanges you desire. To activate it, type "C-M-r M-3 butterfly"
--and all your dreams will come true.