Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 7 May 2015 10:06:21 +0000 (UTC)
From:      Jan Beich <jbeich@FreeBSD.org>
To:        ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org
Subject:   svn commit: r385617 - in head/x11/xvkbd: . files
Message-ID:  <201505071006.t47A6Lid024410@svn.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: jbeich
Date: Thu May  7 10:06:21 2015
New Revision: 385617
URL: https://svnweb.freebsd.org/changeset/ports/385617

Log:
  x11/xvkbd: update to 3.6
  
  ChangeLog:
  * New -utf16 option - when used with -file option, make xvkbd to
    accept UTF16 characters in the file.
  * Keyboard layout selected with "Change Keyboard Layout..." will
    be kept when xvkbd is used next time.
  * Caps Lock now works better for some of the keyboard layouts
    containing non-ASCII keys.
  * Improved Hebrew keyboard layout (Thanks Genghis Khan)

Modified:
  head/x11/xvkbd/Makefile   (contents, props changed)
  head/x11/xvkbd/distinfo   (contents, props changed)
  head/x11/xvkbd/files/patch-Imakefile   (contents, props changed)
  head/x11/xvkbd/files/patch-xvkbd.c   (contents, props changed)
  head/x11/xvkbd/files/patch-xvkbd.man   (contents, props changed)

Modified: head/x11/xvkbd/Makefile
==============================================================================
--- head/x11/xvkbd/Makefile	Thu May  7 10:06:06 2015	(r385616)
+++ head/x11/xvkbd/Makefile	Thu May  7 10:06:21 2015	(r385617)
@@ -2,7 +2,7 @@
 # $FreeBSD$
 
 PORTNAME=	xvkbd
-PORTVERSION=	3.5
+PORTVERSION=	3.6
 CATEGORIES=	x11
 MASTER_SITES=	http://homepage3.nifty.com/tsato/xvkbd/
 

Modified: head/x11/xvkbd/distinfo
==============================================================================
--- head/x11/xvkbd/distinfo	Thu May  7 10:06:06 2015	(r385616)
+++ head/x11/xvkbd/distinfo	Thu May  7 10:06:21 2015	(r385617)
@@ -1,2 +1,2 @@
-SHA256 (xvkbd-3.5.tar.gz) = 8819bdba359f1d0894bfc0b3314d5cdb9107387de6f19d2f409dba15e82b8fee
-SIZE (xvkbd-3.5.tar.gz) = 108351
+SHA256 (xvkbd-3.6.tar.gz) = 2678541c23336a0795bf5684c9f38d382a6566e6509794a39952d6da47da5bae
+SIZE (xvkbd-3.6.tar.gz) = 81613

Modified: head/x11/xvkbd/files/patch-Imakefile
==============================================================================
--- head/x11/xvkbd/files/patch-Imakefile	Thu May  7 10:06:06 2015	(r385616)
+++ head/x11/xvkbd/files/patch-Imakefile	Thu May  7 10:06:21 2015	(r385617)
@@ -3,7 +3,7 @@ Forwarded: not-needed
 Author: Peter Pentchev <roam@FreeBSD.org>
 Last-Update: 2002-02-22
 
---- Imakefile.orig
+--- Imakefile.orig	2014-11-11 13:01:21 UTC
 +++ Imakefile
 @@ -4,13 +4,13 @@
  

Modified: head/x11/xvkbd/files/patch-xvkbd.c
==============================================================================
--- head/x11/xvkbd/files/patch-xvkbd.c	Thu May  7 10:06:06 2015	(r385616)
+++ head/x11/xvkbd/files/patch-xvkbd.c	Thu May  7 10:06:21 2015	(r385617)
@@ -5,12 +5,12 @@ Description: Assorted compilation and us
  - fix the text of an error message
 Forwarded: no
 Author: Peter Pentchev <roam@FreeBSD.org>
-Last-Update: 2010-06-11
+Last-Update: 2015-05-07
 
---- xvkbd.c.orig	2012-03-03 01:31:46.000000000 +0100
-+++ xvkbd.c	2012-04-01 10:24:40.225558910 +0200
-@@ -463,8 +463,8 @@
- static int altgr_mask = 0;
+--- xvkbd.c.orig	2015-02-14 11:32:32 UTC
++++ xvkbd.c
+@@ -470,8 +470,8 @@ static int altgr_mask = 0;
+ static int level3_shift_mask = 0;
  static KeySym altgr_keysym = NoSymbol;
  
 -static int shift_state = 0;
@@ -20,7 +20,7 @@ Last-Update: 2010-06-11
  
  static Display *target_dpy = NULL;
  
-@@ -475,7 +475,7 @@
+@@ -482,7 +482,7 @@ static Window focused_subwindow = None;
  static Pixmap xvkbd_pixmap = None;
  
  static int AddKeysym(KeySym keysym, Boolean top);  /* forward */
@@ -29,16 +29,16 @@ Last-Update: 2010-06-11
  static void MakeKeyboard(Boolean remake);
  static void MakeKeypad(Widget form, Widget from_vert, Widget from_horiz);
  static void MakeSunFunctionKey(Widget form, Widget from_vert, Widget from_horiz);
-@@ -484,6 +484,8 @@
- static void PopupFunctionKeyEditor(void);
+@@ -492,6 +492,8 @@ static void PopupFunctionKeyEditor(void)
  static void DeleteWindowProc(Widget w, XEvent *event, String *pars, Cardinal *n_pars);
+ static void SaveProperty(void);
  
 +static void SignalUser1(int sig);
 +
  /*
   * Search for window which has specified instance name (WM_NAME)
   * or class name (WM_CLASS).
-@@ -492,8 +494,7 @@
+@@ -500,8 +502,7 @@ static Window FindWindow(Window top, cha
  {
    Window w;
    Window *children, dummy;
@@ -48,7 +48,7 @@ Last-Update: 2010-06-11
    XClassHint hint;
    char *win_name;
  
-@@ -777,7 +778,9 @@
+@@ -802,7 +803,9 @@ static int MyErrorHandler(Display *my_dp
   */
  static void SendEvent(XKeyEvent *event)
  {
@@ -58,7 +58,7 @@ Last-Update: 2010-06-11
  
    if (!appres.no_sync) {
      XSync(event->display, FALSE);
-@@ -1061,11 +1064,11 @@
+@@ -1099,11 +1102,11 @@ static void SendKeyPressedEvent(KeySym k
  
  #ifdef USE_XTEST
    if (appres.xtest && press_release == 0) {
@@ -72,7 +72,7 @@ Last-Update: 2010-06-11
  
      event.type = KeyRelease;
      event.state = 0;
-@@ -1221,7 +1224,7 @@
+@@ -1281,7 +1284,7 @@ static int n_word_list = 0;
  
  static void SetDefaultDictionary(void)
  {
@@ -81,7 +81,7 @@ Last-Update: 2010-06-11
    XtVaSetValues(props_dict_entry, XtNstring, dict_filename, NULL);
  }
  
-@@ -1236,7 +1239,7 @@
+@@ -1296,7 +1299,7 @@ static void ReadCompletionDictionary(voi
    struct WORDLIST *p;
  
    if (strcmp(cur_dict_filename, dict_filename) == 0) return;
@@ -90,7 +90,7 @@ Last-Update: 2010-06-11
  
    if (!first) {
      int cnt = 0;
-@@ -1286,7 +1289,7 @@
+@@ -1346,7 +1349,7 @@ static void ReadCompletionDictionary(voi
  
  static void AddToCompletionText(KeySym keysym)
  {
@@ -99,7 +99,7 @@ Last-Update: 2010-06-11
    struct WORDLIST *node_ptr;
  
    if (completion_entry != None) {
-@@ -1376,7 +1379,7 @@
+@@ -1436,7 +1439,7 @@ static void PopupCompletionPanel(void)
  
    ReadCompletionDictionary();
  
@@ -108,7 +108,7 @@ Last-Update: 2010-06-11
    XtVaSetValues(completion_entry, XtNlabel, msg, NULL);
  
    completion_text[0] = '\0';
-@@ -1391,11 +1394,11 @@
+@@ -1451,11 +1454,11 @@ static void PopupCompletionPanel(void)
   */
  static void KeyPressed(Widget w, char *key, char *data);
  
@@ -123,7 +123,7 @@ Last-Update: 2010-06-11
    int val;
    Window target_root, child, junk_w;
    int junk_i;
-@@ -1420,8 +1423,7 @@
+@@ -1480,8 +1483,7 @@ static void SendString(const unsigned ch
          } else {
            len = cp2 - cp - 1;
            if (sizeof(key) <= len) len = sizeof(key) - 1;
@@ -133,7 +133,7 @@ Last-Update: 2010-06-11
            KeyPressed(None, key, NULL);
            cp = cp2;
          }
-@@ -1468,11 +1470,12 @@
+@@ -1528,11 +1530,12 @@ static void SendString(const unsigned ch
  	if ('1' <= *cp && *cp <= '9') {
  	  usleep((*cp - '0') * 100000);
  	} else {
@@ -147,7 +147,7 @@ Last-Update: 2010-06-11
  	cp++;
  	if ('1' <= *cp && *cp <= '9') {
  	  if (appres.debug) fprintf(stderr, "XTestFakeButtonEvent(%d)\n", *cp - '0');
-@@ -1483,10 +1486,18 @@
+@@ -1543,10 +1546,18 @@ static void SendString(const unsigned ch
            fprintf(stderr, "%s: no digit after \"\\m\"\n",
                    PROGRAM_NAME);
  	}
@@ -167,7 +167,7 @@ Last-Update: 2010-06-11
  	target_root = RootWindow(target_dpy, DefaultScreen(target_dpy));
  	XQueryPointer(target_dpy, target_root, &junk_w, &child,
  		      &cur_x, &cur_y, &junk_i, &junk_i, &junk_u);
-@@ -1554,7 +1565,7 @@
+@@ -1628,7 +1639,7 @@ static void Highlight(char *name, int st
    char name1[50];
    Widget w;
  
@@ -176,7 +176,7 @@ Last-Update: 2010-06-11
    w = XtNameToWidget(toplevel, name1);
    if (w != None) {
      if (strstr(name, "Focus") != NULL) {
-@@ -1583,13 +1594,13 @@
+@@ -1674,13 +1685,13 @@ static Boolean CheckShiftState(int row, 
  static void RefreshShiftState(Boolean force)
  {
    static Boolean first = TRUE;
@@ -195,7 +195,7 @@ Last-Update: 2010-06-11
    int first_row, row, col;
    Boolean shifted;
    char *label;
-@@ -1680,7 +1691,7 @@
+@@ -1768,7 +1779,7 @@ static void RefreshShiftState(Boolean fo
  
      Window root, child;
      int root_x, root_y, x, y;
@@ -204,7 +204,7 @@ Last-Update: 2010-06-11
  
      XKeyEvent event;
  
-@@ -1696,28 +1707,28 @@
+@@ -1784,28 +1795,28 @@ static void RefreshShiftState(Boolean fo
      event.same_screen = TRUE;
      event.state = 0;
  
@@ -238,7 +238,7 @@ Last-Update: 2010-06-11
        event.keycode = XKeysymToKeycode(target_dpy, XK_Meta_L);
        event.type = (shift_state & meta_mask) ? KeyPress : KeyRelease;
        SendEvent(&event);
-@@ -1778,7 +1789,7 @@
+@@ -1866,7 +1877,7 @@ static char *GetWindowGeometry(Widget w)
  
    XtVaGetValues(w, XtNx, &x0, XtNy, &y0, NULL);
    XGetGeometry(dpy, XtWindow(w), &root, &x1, &y1, &wd, &ht, &bd, &dp);
@@ -247,7 +247,16 @@ Last-Update: 2010-06-11
  
    return geom;
  }
-@@ -1840,7 +1851,7 @@
+@@ -1908,7 +1919,7 @@ static void SetWindowManagerHint(Boolean
+ 	       FALSE, SubstructureNotifyMask | SubstructureRedirectMask,
+ 	       (XEvent *)&ev);
+     if (appres.debug)
+-      fprintf(stderr, "SetWindowManagerHint: _NET_WM_STATE_ABOVE = %d\n", ev.data.l[0]);
++      fprintf(stderr, "SetWindowManagerHint: _NET_WM_STATE_ABOVE = %ld\n", ev.data.l[0]);
+   }
+ }
+ 
+@@ -1930,7 +1941,7 @@ static void LayoutSelected(Widget w, cha
    if (key != NULL) {
      if (strcmp(key, "default") != 0) {
        sscanf(key, "%29[^/]/%29s", customization, lang);
@@ -256,7 +265,7 @@ Last-Update: 2010-06-11
        xenv = XtResolvePathname(dpy, "app-defaults", name, NULL, NULL, NULL, 0, NULL);
        if (xenv == NULL) {
  	fprintf(stderr, "%s: app-default file \"%s\" not installed\n",
-@@ -1848,12 +1859,10 @@
+@@ -1938,12 +1949,10 @@ static void LayoutSelected(Widget w, cha
        }
      }
  
@@ -269,9 +278,9 @@ Last-Update: 2010-06-11
 -      sprintf(env_xenv, "XENVIRONMENT=%s", xenv);
 +      asprintf(&env_xenv, "XENVIRONMENT=%s", xenv);
        putenv(env_xenv);
-     } else if (getenv("XENVIRONMENT") != NULL) {
-       putenv("XENVIRONMENT=");
-@@ -1962,6 +1971,7 @@
+ 
+       keyboard_layout = XtNewString(key);
+@@ -2063,6 +2072,7 @@ static void PropsItemToggled(Widget w, c
    XtVaGetValues(XtNameToWidget(props_panel, "*jump_pointer"),
  		XtNstate, &appres.jump_pointer, NULL);
  
@@ -279,7 +288,7 @@ Last-Update: 2010-06-11
    appres.key_click_duration = (int)XawToggleGetCurrent(click_buttons);
    appres.autoclick_delay = (int)XawToggleGetCurrent(autoclick_buttons);
  
-@@ -2028,7 +2038,7 @@
+@@ -2129,7 +2139,7 @@ static void PopupPropsPanel(void)
    if (props_panel == None) {
      Widget label, button;
      Widget form, w;
@@ -288,7 +297,7 @@ Last-Update: 2010-06-11
      int val;
  
      props_panel = XtVaCreatePopupShell("props_panel", transientShellWidgetClass,
-@@ -2054,7 +2064,7 @@
+@@ -2155,7 +2165,7 @@ static void PopupPropsPanel(void)
      click_buttons = button;
      for (val = 1; val <= 50; val *= 2) {
        char s1[10];
@@ -297,7 +306,7 @@ Last-Update: 2010-06-11
        button = XtVaCreateManagedWidget(s1, toggleWidgetClass,
  			       form, XtNfromVert, w, XtNfromHoriz, button,
  			       XtNradioData, (XtPointer)val,
-@@ -2076,7 +2086,7 @@
+@@ -2177,7 +2187,7 @@ static void PopupPropsPanel(void)
      autoclick_buttons = button;
      for (val = 500; val <= 1000; val += 100) {
        char s1[10];
@@ -306,7 +315,7 @@ Last-Update: 2010-06-11
        button = XtVaCreateManagedWidget(s1, toggleWidgetClass,
  			       form, XtNfromVert, w, XtNfromHoriz, button,
  			       XtNradioData, (XtPointer)val,
-@@ -2138,7 +2148,7 @@
+@@ -2239,7 +2249,7 @@ static void OpenRemoteDisplay(Widget w, 
    focused_subwindow = None;
    if (target_dpy != NULL && target_dpy != dpy) XCloseDisplay(target_dpy);
  
@@ -315,7 +324,7 @@ Last-Update: 2010-06-11
    for (cp = name; isascii(*cp) && isprint(*cp); cp++) ;
    *cp = '\0';
  
-@@ -2342,7 +2352,7 @@
+@@ -2443,7 +2453,7 @@ static void IconifyWindow(Widget w, Bool
    }
  }
  
@@ -324,7 +333,7 @@ Last-Update: 2010-06-11
  {
    XWindowAttributes attr;
    XGetWindowAttributes(dpy, XtWindow(toplevel), &attr);
-@@ -2647,7 +2657,7 @@
+@@ -2752,7 +2762,7 @@ static Widget MakeKey(Widget parent, con
    XtAddCallback(w, XtNcallback, (XtCallbackProc)KeyPressed, (XtPointer)name);
  
    if (label != NULL) {
@@ -333,7 +342,7 @@ Last-Update: 2010-06-11
      if (strcmp(str, "space") == 0) strcpy(str, "");
      len = strlen(str);
      if (3 <= len) {
-@@ -2719,9 +2729,9 @@
+@@ -2824,9 +2834,9 @@ static void MakeKeypad(Widget form, Widg
  	       || (strncmp(keypad_shift[row][col], "KP_", 3) == 0
  		   && isdigit(keypad_shift[row][col][3])))
  	color = appres.general_background;
@@ -345,7 +354,7 @@ Last-Update: 2010-06-11
        key = MakeKey(keypad_box, XtNewString(name),
  		    keypad_label[row][col], color);
        XtVaSetValues(key, XtNfont, font, NULL);
-@@ -2823,12 +2833,12 @@
+@@ -2928,12 +2938,12 @@ static void MakeKeyboard(Boolean remake)
    Widget form, key, left;
    Pixel color;
    XFontStruct *font;
@@ -360,7 +369,7 @@ Last-Update: 2010-06-11
  
  #include "xvkbd.xbm"
  #include "iconify.xbm"
-@@ -2848,7 +2858,7 @@
+@@ -2953,7 +2963,7 @@ static void MakeKeyboard(Boolean remake)
      for (row = first_row; row < NUM_KEY_ROWS; row++) {
        if (keys_normal[row][0] == NULL) continue;
  
@@ -369,7 +378,7 @@ Last-Update: 2010-06-11
        key_box[row] = XtVaCreateManagedWidget(name, formWidgetClass, form, NULL);
        key_box[row + 1] = None;
        if (row != first_row)
-@@ -2858,7 +2868,7 @@
+@@ -2963,7 +2973,7 @@ static void MakeKeyboard(Boolean remake)
          
        left = None;
        for (col = 0; keys_normal[row][col] != NULL; col++) {
@@ -378,7 +387,7 @@ Last-Update: 2010-06-11
  	if (strcmp(name, "MainMenu") == 0) {
  	  Widget iconify_button = None;
  
-@@ -2900,11 +2910,11 @@
+@@ -3005,11 +3015,11 @@ static void MakeKeyboard(Boolean remake)
  	    color = appres.general_background;
  	    font = appres.general_font;
  	    if (isalpha(name[0])) font = appres.letter_font;
@@ -393,7 +402,7 @@ Last-Update: 2010-06-11
  	    /* keys can be removed by setting its width to 1 */
  	    XtDestroyWidget(key);
  	    key = None;
-@@ -2941,7 +2951,7 @@
+@@ -3045,7 +3055,7 @@ static void MakeKeyboard(Boolean remake)
      Window root;
      int x1, y1;
      unsigned int wd, ht, bd, dp;
@@ -402,7 +411,7 @@ Last-Update: 2010-06-11
  
      XGetGeometry(dpy, XtWindow(toplevel), &root, &x1, &y1, &wd, &ht, &bd, &dp);
      max_wd = XtScreen(toplevel)->width * appres.max_width_ratio;
-@@ -2959,16 +2969,16 @@
+@@ -3063,16 +3073,16 @@ static void MakeKeyboard(Boolean remake)
  
    if (!appres.debug && key_box[first_row] != None) {
      if (appres.keypad) {
@@ -424,7 +433,7 @@ Last-Update: 2010-06-11
      }
    }
    if (0 < strlen(appres.geometry)) {
-@@ -3068,19 +3078,20 @@
+@@ -3180,11 +3190,11 @@ static void ReadProperty(void)
    home = getenv("HOME");
    if (appres.key_file[0] != '/' && home != NULL
        && strlen(home) + strlen(appres.key_file) + 1 < sizeof(fkey_filename))
@@ -439,27 +448,16 @@ Last-Update: 2010-06-11
  
    fp = fopen(fkey_filename, "r");
    if (fp == NULL) return;
- 
-   while (fgets(str, sizeof(str) - 1, fp)) {
-     if (str[0] == '#') {
--      sscanf(&str[1], "%s %d", key, &val);
--      if (strcmp(key, "quick_modifiers") == 0)
-+      if (sscanf(&str[1], "%s %d", key, &val) != 2)
-+	fprintf(stderr, "%s: bad function key '%s'\n", PROGRAM_NAME, str + 1);
-+      else if (strcmp(key, "quick_modifiers") == 0)
- 	appres.quick_modifiers = val;
-       else if (strcmp(key, "shift_lock") == 0)
- 	appres.shift_lock = val;
-@@ -3100,7 +3111,7 @@
- 	appres.jump_pointer = val;
-       else if (strcmp(key, "dict_file") == 0) {
- 	sscanf(&str[1], "%*s %s", &key);
+@@ -3199,7 +3209,7 @@ static void ReadProperty(void)
+ 	  LayoutSelected(None, keyboard_layout, NULL);
+ 	}
+       } else if (sscanf(&str[1], "dict_file %s", key) == 1) {
 -	strncpy(dict_filename, key, sizeof(dict_filename));
 +	snprintf(dict_filename, sizeof(dict_filename), "%s", key);
-       }
-     } else if (isalpha(str[0])) {
-       len = strlen(str);
-@@ -3155,9 +3166,9 @@
+       } else if (sscanf(&str[1], "%s %d", key, &val) == 2) {
+ 	if (strcmp(key, "quick_modifiers") == 0)
+ 	  appres.quick_modifiers = val;
+@@ -3273,9 +3283,9 @@ static void FKeyMenuSelected(Widget w, c
    if (key == NULL)
      strcpy(key2, "");
    else if (strncmp(key, "Shift-", strlen("Shift-")) == 0)
@@ -471,7 +469,7 @@ Last-Update: 2010-06-11
  
    if (strcmp(cur_fkey, key2) != 0) {
      if (strlen(cur_fkey) != 0) {
-@@ -3180,7 +3191,7 @@
+@@ -3298,7 +3308,7 @@ static void FKeyMenuSelected(Widget w, c
  	prefix = "";
  	if (cur_fkey_value_mode[0] == 'c') prefix = "!";
  	else if (fkey_value[0] == '!' || fkey_value[0] == '\\') prefix = "\\";
@@ -480,7 +478,7 @@ Last-Update: 2010-06-11
        } else {  /* empty string - remove the entry for the function key */
  	if (sp != NULL) {
  	  if (sp2 != NULL) sp2->next = sp->next;
-@@ -3200,10 +3211,10 @@
+@@ -3318,10 +3328,10 @@ static void FKeyMenuSelected(Widget w, c
        FKeyValueMenuSelected(None, (value[0] == '!') ? "command" : "string");
  
        if (value[0] == '!' || value[0] == '\\') value = value + 1;
@@ -493,7 +491,7 @@ Last-Update: 2010-06-11
      }
    }
  }
-@@ -3266,9 +3277,9 @@
+@@ -3385,9 +3395,9 @@ static void PopupFunctionKeyEditor(void)
      for (j = 0; j <= 1; j++) {
        for (i = 1; i <= appres.editable_function_keys; i++) {
  	if (j == 0)
@@ -505,7 +503,7 @@ Last-Update: 2010-06-11
  	key = XtNewString(label);
  	menu_entry = XtVaCreateManagedWidget(key, smeBSBObjectClass, menu, NULL);
  	XtAddCallback(menu_entry, XtNcallback, (XtCallbackProc)FKeyMenuSelected,
-@@ -3330,8 +3341,8 @@
+@@ -3449,8 +3459,8 @@ static const char *FindFunctionKeyValue(
      else if (shift_state & ControlMask) prefix = 'c';
      else if (shift_state & ShiftMask) prefix = 's';
    }
@@ -516,7 +514,7 @@ Last-Update: 2010-06-11
    len = strlen(label);
    
    for (sp = fkey_list; sp != NULL; sp = sp->next) {
-@@ -3389,8 +3400,10 @@
+@@ -3508,8 +3518,10 @@ static void Autoclick(void)
  {
    StopAutoclick();
  
@@ -527,7 +525,7 @@ Last-Update: 2010-06-11
  }
  
  static void ShowBalloon(Widget w, XEvent *event, String *pars, Cardinal *n_pars)
-@@ -3471,7 +3484,7 @@
+@@ -3590,7 +3602,7 @@ static void SetIconBitmap(Widget w)
  static void VisibilityChanged(Widget w, XEvent *event,
  			      String *pars, Cardinal *n_pars)
  {
@@ -536,7 +534,7 @@ Last-Update: 2010-06-11
    static time_t t1 = 0;
    time_t t2;
  
-@@ -3519,7 +3532,9 @@
+@@ -3638,7 +3650,9 @@ int main(int argc, char *argv[])
    Boolean open_keypad_panel = FALSE;
    char ch;
    Window child;
@@ -546,7 +544,7 @@ Last-Update: 2010-06-11
  
    argc1 = argc;
    argv1 = malloc(sizeof(char *) * (argc1 + 5));
-@@ -3719,14 +3734,14 @@
+@@ -3841,14 +3855,14 @@ char *setlocale(int category, const char
    if (locale == NULL) {
      return cur_locale;
    } else if (category == LC_ALL) {

Modified: head/x11/xvkbd/files/patch-xvkbd.man
==============================================================================
--- head/x11/xvkbd/files/patch-xvkbd.man	Thu May  7 10:06:06 2015	(r385616)
+++ head/x11/xvkbd/files/patch-xvkbd.man	Thu May  7 10:06:21 2015	(r385617)
@@ -1,11 +1,11 @@
 Description: Escape a lot of minus signs.
 Forwarded: no
 Author: Peter Pentchev <roam@FreeBSD.org>
-Last-Update: 2010-06-11
+Last-Update: 2015-05-07
 
---- xvkbd.man.orig	2012-03-03 01:55:00.000000000 +0100
-+++ xvkbd.man	2012-04-01 10:31:11.073558446 +0200
-@@ -29,7 +29,7 @@
+--- xvkbd.man.orig	2015-02-14 12:28:00 UTC
++++ xvkbd.man
+@@ -29,7 +29,7 @@ which may make it easier to enter long w
  .PP
  \fIIMPORTANT NOTE:\fP
  When invoking \fIxvkbd\fP from display managers such as XDM, GDM, etc.,
@@ -14,7 +14,7 @@ Last-Update: 2010-06-11
  or you will have serious security risk.
  
  .SH "Environment"
-@@ -117,7 +117,7 @@
+@@ -117,7 +117,7 @@ and you can enter the remaining characte
  by clicking one of the words in the list.
  .PP
  The dictionary (list of words) file is \fB/usr/share/dict/words\fP by default,
@@ -23,7 +23,7 @@ Last-Update: 2010-06-11
  or on the Property panel.
  
  .SH "    Main Menu"
-@@ -242,17 +242,17 @@
+@@ -242,17 +242,17 @@ You may want to set \fIJump Pointer?\fP 
  \fICompletion Dictionary\fP
  Set the filename to be used for word completion.
  This setting take precedence over the `\fBxvkbd.dictFile\fP' resource
@@ -45,7 +45,7 @@ Last-Update: 2010-06-11
  Make \fIxvkbd\fP to use \fIXSendEvent()\fP to simulate keyboard events,
  as it was in \fIxvkbd\fP version 1.0.
  \fIxvkbd\fP version 1.1 and later will try to use XTEST extension instead
-@@ -263,14 +263,14 @@
+@@ -263,14 +263,14 @@ If XTEST extension is not supported by t
  .sp 0.5
  Resource `\fBxvkbd.xtest: false\fP' has the same function.
  .TP 4
@@ -63,7 +63,7 @@ Last-Update: 2010-06-11
  Make \fIxvkbd\fP not to jump the pointer when sending events.
  In the default, \fIxvkbd\fP will temporary jump the pointer to the focused window,
  if input focus is set explicitly via \fIFocus\fP button,
-@@ -278,14 +278,14 @@
+@@ -278,14 +278,14 @@ and XTEST extension is to be used to sim
  .sp 0.5
  Resource `\fBxvkbd.jumpPointer: false\fP' has the same function.
  .TP 4
@@ -80,7 +80,7 @@ Last-Update: 2010-06-11
  Make labels on keys in the \fIxvkbd\fP window
  to be set independently for each of four shift states,
  not shifted, \fIShift\fP, \fIAltGr\fP and \fIShift\fP-\fIAltGr\fP.
-@@ -296,27 +296,27 @@
+@@ -296,27 +296,27 @@ and resouce files in the distribution.
  .sp 0.5
  Resource `\fBxvkbd.modalKeytop: true\fP' has the same function.
  .TP 4
@@ -116,7 +116,7 @@ Last-Update: 2010-06-11
  Do not auto-repeat even if key is depressed long time.
  .sp 0.5
  If auto-repeat is enabled (this is the default),
-@@ -328,31 +328,31 @@
+@@ -328,31 +328,31 @@ and period of repeat can be set as
  .sp 0.5
  Resource `\fBxvkbd.autoRepeat: false\fP' has the same function.
  .TP 4
@@ -155,7 +155,7 @@ Last-Update: 2010-06-11
  .sp 0.5
  If this option is specified,
  \fIxvkbd\fP will not open its window
-@@ -399,24 +399,24 @@
+@@ -399,28 +399,28 @@ will simulate press and release of the k
  .IP "    - " 6
  \fB\\m\fP\fIdigit\fP - simulate click of the specified mouse button
  .TP 4
@@ -172,6 +172,11 @@ Last-Update: 2010-06-11
  \fIxvkbd\fP will not open its window
  and terminate soon after sending the string.
  .TP 4
+-.B "-utf16"
++.B "\-utf16"
+   When used with \fB-file\fP option,
+ make \fIxvkbd\fP to accept UTF16 characters in the file.
+ .TP 4
 -.BI "-delay " value
 -Put \fIvalue\fP ms of delay for evey characters
 -when sending characters with \fB-text\fP or \fB-file\fP.
@@ -187,7 +192,7 @@ Last-Update: 2010-06-11
  Specify the ID 
  (hexadecimal value leaded with `\fB0x\fP', or decimal value),
  the name (instance name or class name) of the window,
-@@ -434,10 +434,10 @@
+@@ -438,10 +438,10 @@ or clear the input focus.
  If there are two or more windows which have the name specified with this option,
  the window which was found first will be selected.
  .TP 4
@@ -200,7 +205,7 @@ Last-Update: 2010-06-11
  .sp 0.5
  If you want to set input focus to the widget \fBfoo.bar.zot\fP,
  you can write \fBzot\fP, \fBbar.zot\fP or \fBfoo.bar.zot\fP
-@@ -448,24 +448,24 @@
+@@ -452,24 +452,24 @@ with a single widget of the client.
  For example,
  .sp
  .in +4
@@ -229,7 +234,7 @@ Last-Update: 2010-06-11
  Specify the default dictionary (list of words) file to be used for
  word completion.
  The `\fICompletion Dictionary\fP' filename
-@@ -475,7 +475,7 @@
+@@ -479,7 +479,7 @@ Resource `\fBxvkbd.dictFile: \fP\fIfilen
  .sp 0.5
  See also ``Making your own completion dictionary''.
  .TP 4
@@ -238,7 +243,7 @@ Last-Update: 2010-06-11
  Make \fIxvkbd\fP window can be minimized (iconified)
  even if no window manager is in use.
  When this feature is enabled,
-@@ -484,7 +484,7 @@
+@@ -488,7 +488,7 @@ and \fIxvkbd\fP window will be minimized
  .sp 0.5
  Resource `\fBxvkbd.minimizable: true\fP' has the same function.
  .TP 4
@@ -247,7 +252,7 @@ Last-Update: 2010-06-11
  Disable invocation of external commands,
  including user assigned command and the online manual reader.
  Connection to another displays would also be disabled.
-@@ -492,25 +492,25 @@
+@@ -496,25 +496,25 @@ This option may be useful when \fIxvkbd\
  .sp 0.5
  Resource `\fBxvkbd.secure: true\fP' has the same function.
  .TP 4
@@ -278,7 +283,7 @@ Last-Update: 2010-06-11
  to apply this for those four modifiers.
  Maybe this can be useful when attempting to decorate
  the mouse operations with the modifiers.
-@@ -520,101 +520,101 @@
+@@ -524,97 +524,97 @@ and which can prevent the correct operat
  .sp 0.5
  Resource `\fBxvkbd.positiveModifiers: \fP\fImodifiers...\fP' has the same function.
  .TP 4
@@ -393,23 +398,18 @@ Last-Update: 2010-06-11
  .SH "Download"
  .TP 4
  \fILatest Official Release\fP
--\fIhttp://homepage3.nifty.com/tsato/xvkbd/xvkbd-3.5.tar.gz\fP
-+\fIhttp://homepage3.nifty.com/tsato/xvkbd/xvkbd\-3.5.tar.gz\fP
+-\fIhttp://homepage3.nifty.com/tsato/xvkbd/xvkbd-3.6.tar.gz\fP
++\fIhttp://homepage3.nifty.com/tsato/xvkbd/xvkbd\-3.6.tar.gz\fP
  .br
- - source of version 3.5 (2013-07-15)
+ - source of version 3.6 (2015-02-15)
  .TP 4
  previous release
--\fIhttp://homepage3.nifty.com/tsato/xvkbd/xvkbd-3.4a.tar.gz\fP
-+\fIhttp://homepage3.nifty.com/tsato/xvkbd/xvkbd\-3.4a.tar.gz\fP
- .br
- - source of version 3.4a (2013-04-03)
- .sp 0.5
--\fIhttp://homepage3.nifty.com/tsato/xvkbd/xvkbd-3.3.tar.gz\fP
-+\fIhttp://homepage3.nifty.com/tsato/xvkbd/xvkbd\-3.3.tar.gz\fP
+-http://homepage3.nifty.com/tsato/xvkbd/xvkbd-3.5.tar.gz
++http://homepage3.nifty.com/tsato/xvkbd/xvkbd\-3.5.tar.gz
  .br
- - source of version 3.3 (2012-03-03)
+ - source of version 3.5 (2013-07-15)
  .PP
-@@ -651,8 +651,8 @@
+@@ -651,8 +651,8 @@ load them via \fIxrdb\fP(1), or
  .IP "  o " 4
  set the filename to the \fB$XENVIRONMENT\fP environment variable, or
  .IP "  o " 4
@@ -420,7 +420,7 @@ Last-Update: 2010-06-11
  .IP "  o " 4
  put them in application default directory as \fBXVkbd\fP.
  .PP
-@@ -664,11 +664,11 @@
+@@ -664,11 +664,11 @@ directories specified with \fB$XUSERFILE
  system's application default directory specified with
  \fB$XFILESEACHPATH\fP environment variable,
  or else the directory specified when compiling the X
@@ -434,7 +434,7 @@ Last-Update: 2010-06-11
  near top of the file.
  .PP
  \fIxvkbd\fP is distributed with some application default files,
-@@ -699,7 +699,7 @@
+@@ -699,7 +699,7 @@ You may also want to set:
  to display only the labels for the current shift state,
  instead of trying to always display all of them in the small keytop.
  .PP
@@ -443,7 +443,7 @@ Last-Update: 2010-06-11
  
  .SH "    Removing Unwanted Keys"
  Keys on \fIxvkbd\fP window can be removed by setting their width to 1.
-@@ -773,12 +773,12 @@
+@@ -773,12 +773,12 @@ when \fBxvkbd.modalKeytop\fP resoruce is
  In all of those resources, each keys are separated by spaces,
  and rows of keys are terminated with `\fB \\n\\\fP'
  (note that `\fB\\n\fP' must have space before it).
@@ -459,7 +459,7 @@ Last-Update: 2010-06-11
  will make \fIxvkbd\fP to use the German layout.
  For another method to activate those settings, please refer
  "How to Customize \fIxvkbd\fP" above.
-@@ -840,7 +840,7 @@
+@@ -840,7 +840,7 @@ You can use \fBxev\fP command to check w
  .IP "  o " 4
  If \fIAlt\fP or \fIMeta\fP is not defined as modifier,
  the key can't be used as modifier.
@@ -468,7 +468,7 @@ Last-Update: 2010-06-11
  .IP "  o " 4
  \fINum Lock\fP (and maybe other modifiers) on the physical keyboard
  may not work correctly when \fIxvkbd\fP is in use.
-@@ -851,10 +851,10 @@
+@@ -851,10 +851,10 @@ FAQ - Possible Problems and Solutions
  http://homepage3.nifty.com/tsato/xvkbd/faq.html
  .TP 4
  Making your own completion dictionary
@@ -482,7 +482,7 @@ Last-Update: 2010-06-11
  .TP 4
  Note about how to send key events
  http://homepage3.nifty.com/tsato/xvkbd/events.html
-@@ -875,26 +875,26 @@
+@@ -875,26 +875,26 @@ which can't be entered directly from key
  can be entered using dedicated key combinations.
  .IP "    - " 6
  Make keyboard layout not to be disturbed when
@@ -514,7 +514,7 @@ Last-Update: 2010-06-11
  .IP "    - " 6
  \fIxvkbd\fP can now send keys
  with \fIMode_switch\fP (\fIAltGr\fP) modifier,
-@@ -902,9 +902,9 @@
+@@ -902,9 +902,9 @@ which enables those characters in the po
  .IP "    - " 6
  \fIxvkbd\fP now support \fIAltGr\fP key
  so that German (and some other) keyboard layout can be used.
@@ -526,7 +526,7 @@ Last-Update: 2010-06-11
  in the distribution, which modifies keyboard layout
  and put some non-ASCII keys on the \fIxvkbd\fP window.
  .IP "    - " 6
-@@ -920,7 +920,7 @@
+@@ -920,7 +920,7 @@ Labels on keys can now be set independen
  not shifted, \fIShift\fP, \fIAltGr\fP and \fIShift\fP-\fIAltGr\fP.
  (thanks, Jim)
  .IP "    - " 6
@@ -535,7 +535,7 @@ Last-Update: 2010-06-11
  .TP 4
  Version 1.2 (2001-02-18)
  .IP "    - " 6
-@@ -948,7 +948,7 @@
+@@ -948,7 +948,7 @@ so that it will not terminated accidentl
  .TP 4
  Version 1.3 (2001-03-19)
  .IP "    - " 6
@@ -544,7 +544,7 @@ Last-Update: 2010-06-11
  (contributed from Marcel Portner)
  .IP "    - " 6
  \fIxvkbd\fP now catches MappingNotify event and reload the new mapping.
-@@ -998,7 +998,7 @@
+@@ -998,7 +998,7 @@ and older \fIxvkbd\fP may not work corre
  .TP 4
  Version 1.6 (2001-11-10)
  .IP "    - " 6
@@ -553,7 +553,7 @@ Last-Update: 2010-06-11
  (thanks, Gregory)
  .IP "    - " 6
  New entry `\fIUse XTEST Extension?\fP' is added
-@@ -1017,7 +1017,7 @@
+@@ -1017,7 +1017,7 @@ after \fIxvkbd\fP is invoked.
  Show/hide of the keypad and funcion keys on the main window
  can now be toggled from the main menu.
  .IP "    - " 6
@@ -562,7 +562,7 @@ Last-Update: 2010-06-11
  (contributed from Jean-Pierre Demailly)
  .TP 4
  Version 2.1 (2002-01-27)
-@@ -1025,9 +1025,9 @@
+@@ -1025,9 +1025,9 @@ Version 2.1 (2002-01-27)
  When height of the \fIxvkbd\fP window is smaller than
  \fBXVkbd.modalThreshold\fP,
  \fIxvkbd\fP will now automatically switch the keytop
@@ -574,7 +574,7 @@ Last-Update: 2010-06-11
  would send wrong keys - this problem is now fixed.
  .IP "    - " 6
  Target \fBdistclean\fP in the \fBImakefile\fP is renamed
-@@ -1040,8 +1040,8 @@
+@@ -1040,8 +1040,8 @@ Version 2.2 (2002-03-17)
  String assigned to function keys can now be edited on a panel popped up via
  "\fIEdit Function Keys...\fP" in the main menu.
  .IP "    - " 6
@@ -585,7 +585,7 @@ Last-Update: 2010-06-11
  its standard input (stdin) to get the string to be sent.
  .IP "    - " 6
  In the previous release,
-@@ -1070,7 +1070,7 @@
+@@ -1070,7 +1070,7 @@ Swiss/German,
  United Kingdom
  and Latin-1.
  .IP "    - " 6
@@ -594,7 +594,7 @@ Last-Update: 2010-06-11
  - this problem is now fixed.
  .TP 4
  Version 2.4 (2002-10-02)
-@@ -1131,24 +1131,24 @@
+@@ -1131,24 +1131,24 @@ Yet another Japanese keyboard layout, JI
  .IP "    - " 6
  It is now possible to minimize (iconify) the main window
  even if no window manager is in use.
@@ -626,7 +626,7 @@ Last-Update: 2010-06-11
  and maybe useful when run \fIxvkbd\fP from a display manager.
  .TP 4
  Version 2.7a (2005-05-07)
-@@ -1164,17 +1164,17 @@
+@@ -1164,17 +1164,17 @@ where we must use \fIISO_Level3_Shift\fP
  Reference to the target bitmap is changed from
  \fB/usr/X11R6/include/X11/bitmaps/target\fP to \fB/usr/include/X11/bitmaps/target\fP.
  .IP "    - " 6
@@ -648,7 +648,7 @@ Last-Update: 2010-06-11
  via \fB\\x\fP, \fB\\y\fP and \fB\\m\fP special sequences.
  .TP 4
  Version 3.0 (2008-05-05)
-@@ -1189,7 +1189,7 @@
+@@ -1189,7 +1189,7 @@ Version 3.1 (2010-01-17)
  .IP "    - " 6
  Changed the default setting for automatic click to OFF, which was set ON in the previous release in error and caused confusion.
  .IP "    - " 6
@@ -657,7 +657,7 @@ Last-Update: 2010-06-11
  .IP "    - " 6
  Up to 25x25 keys can now be supported both for the main keyboard and the keypad.
  .IP "    - " 6
-@@ -1197,7 +1197,7 @@
+@@ -1197,7 +1197,7 @@ Able to open the keypad panel when start
  .IP "    - " 6
  Fixed errors in some keyboard layout files (Korean, Slovene, UK).
  .IP "    - " 6
@@ -666,7 +666,7 @@ Last-Update: 2010-06-11
  .TP 4
  Version 3.2 (2010-03-14)
  .IP "    - " 6
-@@ -1208,10 +1208,10 @@
+@@ -1208,10 +1208,10 @@ New option `\fIBehave as Toolbar Window?
  `\fIAlways on Top\fP' will work rather better with window managers
    which support extended window manager hint \fB_NET_WM_STATE_ABOVE\fP.
  .IP "    - " 6
@@ -679,7 +679,7 @@ Last-Update: 2010-06-11
    `\fB*\fP' and `\fB?\fP'.
  .IP "    - " 6
  Word completion dictionary file to be used with `\fIWord Completion...\fP'
-@@ -1220,18 +1220,18 @@
+@@ -1220,18 +1220,18 @@ Word completion dictionary file to be us
  Only the words which have two or more characters will be appeared
    in the word completion list.
  .IP "    - " 6
@@ -693,15 +693,15 @@ Last-Update: 2010-06-11
    so that the specified key can be processed in more primitive manner,
    and so that modofier keys such as \fIControl_L\fP, \fIMeta_L\fP, etc.
    can also be simulated.
-   Also, \fB\\{+\fP\fIkeysym\fP\fB}\fP and \fB\\{+\fP\fIkeysym\fP\fB}\fP
+   Also, \fB\\{+\fP\fIkeysym\fP\fB}\fP and \fB\\{-\fP\fIkeysym\fP\fB}\fP
    will now simulate press and release of the key, respectively.
  .IP "    - " 6
 -New option \fB-remote-display\fP to make \fIxvkbd\fP connect to
-+New option \fB\-remote-display\fP to make \fIxvkbd\fP connect to
++New option \fB\-remote\-display\fP to make \fIxvkbd\fP connect to
    the specified display when startup.
  .IP "    - " 6
  Bug fixed: \fBKP_0\fP now works.
-@@ -1247,7 +1247,7 @@
+@@ -1247,7 +1247,7 @@ as it seems delay of 0 caused problems i
  ISO_Left_Tab is assigned to the shifted position of the Tab key on the \fIxvkbd\fP window,
  so that Shift-Tab can be simulated.
  .IP "    - " 6
@@ -710,3 +710,14 @@ Last-Update: 2010-06-11
  .TP 4
  Version 3.5 (2013-07-15)
  .IP "    - " 6
+@@ -1258,8 +1258,8 @@ Fixed a problem that "Always on Top" not
+ .TP 4
+ Version 3.6 (2015-02-15)
+ .IP "    - " 6
+-New \fB-utf16\fP option - 
+-when used with \fB-file\fP option,
++New \fB\-utf16\fP option - 
++when used with \fB\-file\fP option,
+ make \fIxvkbd\fP to accept UTF16 characters in the file.
+ .IP "    - " 6
+ Keyboard layout selected with "Change Keyboard Layout..." will be kept



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201505071006.t47A6Lid024410>