Karsten Hopp 9012c4
To: vim-dev@vim.org
Karsten Hopp 9012c4
Subject: Patch 7.3.031
Karsten Hopp 9012c4
Fcc: outbox
Karsten Hopp 9012c4
From: Bram Moolenaar <Bram@moolenaar.net>
Karsten Hopp 9012c4
Mime-Version: 1.0
Karsten Hopp 9012c4
Content-Type: text/plain; charset=UTF-8
Karsten Hopp 9012c4
Content-Transfer-Encoding: 8bit
Karsten Hopp 9012c4
------------
Karsten Hopp 9012c4
Karsten Hopp 9012c4
Patch 7.3.031
Karsten Hopp 9012c4
Problem:    Can't pass the X window ID to another application.
Karsten Hopp 9012c4
Solution:   Add v:windowid. (Christian J. Robinson, Lech Lorens)
Karsten Hopp 9012c4
Files:	    runtime/doc/eval.txt, src/eval.c, src/gui.c, src/vim.h,
Karsten Hopp 9012c4
	    src/os_unix.c
Karsten Hopp 9012c4
Karsten Hopp 9012c4
Karsten Hopp 9012c4
*** ../vim-7.3.030/runtime/doc/eval.txt	2010-08-15 21:57:15.000000000 +0200
Karsten Hopp 9012c4
--- runtime/doc/eval.txt	2010-10-20 19:11:03.000000000 +0200
Karsten Hopp 9012c4
***************
Karsten Hopp 9012c4
*** 1657,1662 ****
Karsten Hopp 9012c4
--- 1657,1667 ----
Karsten Hopp 9012c4
  					*v:warningmsg* *warningmsg-variable*
Karsten Hopp 9012c4
  v:warningmsg	Last given warning message.  It's allowed to set this variable.
Karsten Hopp 9012c4
  
Karsten Hopp 9012c4
+ 					*v:windowid* *windowid-variable*
Karsten Hopp 9012c4
+ v:windowid	When any X11 based GUI is running or when running in a
Karsten Hopp 9012c4
+ 		terminal and Vim connects to the X server (|-X|) this will be
Karsten Hopp 9012c4
+ 		set to the window ID.  Otherwise the value is zero.
Karsten Hopp 9012c4
+ 
Karsten Hopp 9012c4
  ==============================================================================
Karsten Hopp 9012c4
  4. Builtin Functions					*functions*
Karsten Hopp 9012c4
  
Karsten Hopp 9012c4
*** ../vim-7.3.030/src/eval.c	2010-10-20 17:44:01.000000000 +0200
Karsten Hopp 9012c4
--- src/eval.c	2010-10-20 18:48:40.000000000 +0200
Karsten Hopp 9012c4
***************
Karsten Hopp 9012c4
*** 362,367 ****
Karsten Hopp 9012c4
--- 362,368 ----
Karsten Hopp 9012c4
      {VV_NAME("operator",	 VAR_STRING), VV_RO},
Karsten Hopp 9012c4
      {VV_NAME("searchforward",	 VAR_NUMBER), 0},
Karsten Hopp 9012c4
      {VV_NAME("oldfiles",	 VAR_LIST), 0},
Karsten Hopp 9012c4
+     {VV_NAME("windowid",	 VAR_NUMBER), VV_RO},
Karsten Hopp 9012c4
  };
Karsten Hopp 9012c4
  
Karsten Hopp 9012c4
  /* shorthand */
Karsten Hopp 9012c4
*** ../vim-7.3.030/src/gui.c	2010-09-29 17:26:57.000000000 +0200
Karsten Hopp 9012c4
--- src/gui.c	2010-10-20 19:15:56.000000000 +0200
Karsten Hopp 9012c4
***************
Karsten Hopp 9012c4
*** 105,112 ****
Karsten Hopp 9012c4
--- 105,122 ----
Karsten Hopp 9012c4
  
Karsten Hopp 9012c4
  #if defined(FEAT_GUI_GTK) || defined(FEAT_GUI_X11)
Karsten Hopp 9012c4
      if (gui.in_use)
Karsten Hopp 9012c4
+     {
Karsten Hopp 9012c4
+ # ifdef FEAT_EVAL
Karsten Hopp 9012c4
+ 	Window	x11_window;
Karsten Hopp 9012c4
+ 	Display	*x11_display;
Karsten Hopp 9012c4
+ 
Karsten Hopp 9012c4
+ 	if (gui_get_x11_windis(&x11_window, &x11_display) == OK)
Karsten Hopp 9012c4
+ 	    set_vim_var_nr(VV_WINDOWID, (long)x11_window);
Karsten Hopp 9012c4
+ # endif
Karsten Hopp 9012c4
+ 
Karsten Hopp 9012c4
  	/* Display error messages in a dialog now. */
Karsten Hopp 9012c4
  	display_errors();
Karsten Hopp 9012c4
+     }
Karsten Hopp 9012c4
  #endif
Karsten Hopp 9012c4
  
Karsten Hopp 9012c4
  #if defined(MAY_FORK) && !defined(__QNXNTO__)
Karsten Hopp 9012c4
*** ../vim-7.3.030/src/vim.h	2010-10-10 17:08:28.000000000 +0200
Karsten Hopp 9012c4
--- src/vim.h	2010-10-20 18:48:40.000000000 +0200
Karsten Hopp 9012c4
***************
Karsten Hopp 9012c4
*** 1842,1848 ****
Karsten Hopp 9012c4
  #define VV_OP		52
Karsten Hopp 9012c4
  #define VV_SEARCHFORWARD 53
Karsten Hopp 9012c4
  #define VV_OLDFILES	54
Karsten Hopp 9012c4
! #define VV_LEN		55	/* number of v: vars */
Karsten Hopp 9012c4
  
Karsten Hopp 9012c4
  #ifdef FEAT_CLIPBOARD
Karsten Hopp 9012c4
  
Karsten Hopp 9012c4
--- 1842,1849 ----
Karsten Hopp 9012c4
  #define VV_OP		52
Karsten Hopp 9012c4
  #define VV_SEARCHFORWARD 53
Karsten Hopp 9012c4
  #define VV_OLDFILES	54
Karsten Hopp 9012c4
! #define VV_WINDOWID	55
Karsten Hopp 9012c4
! #define VV_LEN		56	/* number of v: vars */
Karsten Hopp 9012c4
  
Karsten Hopp 9012c4
  #ifdef FEAT_CLIPBOARD
Karsten Hopp 9012c4
  
Karsten Hopp 9012c4
*** ../vim-7.3.030/src/os_unix.c	2010-10-13 16:22:05.000000000 +0200
Karsten Hopp 9012c4
--- src/os_unix.c	2010-10-20 19:15:46.000000000 +0200
Karsten Hopp 9012c4
***************
Karsten Hopp 9012c4
*** 1738,1743 ****
Karsten Hopp 9012c4
--- 1738,1748 ----
Karsten Hopp 9012c4
      }
Karsten Hopp 9012c4
      if (x11_window == 0 || x11_display == NULL)
Karsten Hopp 9012c4
  	return (result = FAIL);
Karsten Hopp 9012c4
+ 
Karsten Hopp 9012c4
+ # ifdef FEAT_EVAL
Karsten Hopp 9012c4
+     set_vim_var_nr(VV_WINDOWID, (long)x11_window);
Karsten Hopp 9012c4
+ # endif
Karsten Hopp 9012c4
+ 
Karsten Hopp 9012c4
      return (result = OK);
Karsten Hopp 9012c4
  }
Karsten Hopp 9012c4
  
Karsten Hopp 9012c4
*** ../vim-7.3.030/src/version.c	2010-10-20 17:44:01.000000000 +0200
Karsten Hopp 9012c4
--- src/version.c	2010-10-20 19:11:31.000000000 +0200
Karsten Hopp 9012c4
***************
Karsten Hopp 9012c4
*** 716,717 ****
Karsten Hopp 9012c4
--- 716,719 ----
Karsten Hopp 9012c4
  {   /* Add new patch number below this line */
Karsten Hopp 9012c4
+ /**/
Karsten Hopp 9012c4
+     31,
Karsten Hopp 9012c4
  /**/
Karsten Hopp 9012c4
Karsten Hopp 9012c4
-- 
Karsten Hopp 9012c4
What the word 'politics' means: 'Poli' in Latin meaning 'many' and 'tics'
Karsten Hopp 9012c4
meaning 'bloodsucking creatures'.
Karsten Hopp 9012c4
Karsten Hopp 9012c4
 /// Bram Moolenaar -- Bram@Moolenaar.net -- http://www.Moolenaar.net   \\\
Karsten Hopp 9012c4
///        sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
Karsten Hopp 9012c4
\\\        download, build and distribute -- http://www.A-A-P.org        ///
Karsten Hopp 9012c4
 \\\            help me help AIDS victims -- http://ICCF-Holland.org    ///