Package: keynav
Version: 0.20110708.0-1
Severity: important
Tags: patch
User: [email protected]
Usertags: origin-ubuntu saucy ubuntu-patch



In Ubuntu, the attached patch was applied to achieve the following:

  * port-to-libxdo3.diff: Follow API changes in the new libxdo version.

This should be fairly self-explanatory.  xdotools upstream renamed
a ton of functions between libxdo2 and libxdo3, this patch tracks
that so it can build with the new version.

... Adam

-- System Information:
Debian Release: wheezy/sid
  APT prefers saucy-updates
  APT policy: (500, 'saucy-updates'), (500, 'saucy-security'), (500, 'saucy')
Architecture: amd64 (x86_64)
Foreign Architectures: i386

Kernel: Linux 3.9.0-0-generic (SMP w/4 CPU cores)
Locale: LANG=en_CA.UTF-8, LC_CTYPE=en_CA.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
diff -Nru keynav-0.20110708.0/debian/changelog keynav-0.20110708.0/debian/changelog
diff -Nru keynav-0.20110708.0/debian/patches/port-to-libxdo3.diff keynav-0.20110708.0/debian/patches/port-to-libxdo3.diff
--- keynav-0.20110708.0/debian/patches/port-to-libxdo3.diff	1969-12-31 17:00:00.000000000 -0700
+++ keynav-0.20110708.0/debian/patches/port-to-libxdo3.diff	2013-05-08 18:24:14.000000000 -0600
@@ -0,0 +1,88 @@
+Description: Follow API changes in the new libxdo version.
+Author: Adam Conrad <[email protected]>
+Forwarded: no
+
+--- keynav-0.20110708.0.orig/keynav.c
++++ keynav-0.20110708.0/keynav.c
+@@ -290,7 +290,7 @@ int parse_mods(char *keyseq) {
+ 
+   int i = 0;
+   /* Use all but the last token as modifiers */
+-  const char **symbol_map = xdo_symbol_map();
++  const char **symbol_map = xdo_get_symbol_map();
+   for (i = 0; i < mods->len; i++) {
+     KeySym keysym = 0;
+     int j = 0;
+@@ -857,7 +857,7 @@ void cmd_start(char *args) {
+ 
+     zone = XCreateSimpleWindow(dpy, viewport->root,
+                                wininfo.x, wininfo.y, wininfo.w, wininfo.h, 0, 0, 0);
+-    xdo_window_setclass(xdo, zone, "keynav", "keynav");
++    xdo_set_window_class(xdo, zone, "keynav", "keynav");
+     canvas_gc = XCreateGC(dpy, zone, 0, NULL);
+ 
+     canvas = XCreatePixmap(dpy, zone, viewport->w, viewport->h,
+@@ -1020,7 +1020,7 @@ void cmd_cursorzoom(char *args) {
+     height = width;
+   }
+ 
+-  xdo_mouselocation(xdo, &xloc, &yloc, NULL);
++  xdo_get_mouse_location(xdo, &xloc, &yloc, NULL);
+ 
+   wininfo.x = xloc - (width / 2);
+   wininfo.y = yloc - (height / 2);
+@@ -1035,7 +1035,7 @@ void cmd_windowzoom(char *args) {
+   int x, y;
+   unsigned int width, height, border_width, depth;
+ 
+-  xdo_window_get_active(xdo, &curwin);
++  xdo_get_active_window(xdo, &curwin);
+   XGetGeometry(xdo->xdpy, curwin, &rootwin, &x, &y, &width, &height,
+                &border_width, &depth);
+   XTranslateCoordinates(xdo->xdpy, curwin, rootwin, 
+@@ -1064,8 +1064,8 @@ void cmd_warp(char *args) {
+   mouseinfo.y = y - wininfo.y;
+   openpixel(dpy, zone, &mouseinfo);
+ 
+-  xdo_mousemove(xdo, x, y, viewports[wininfo.curviewport].screen_num);
+-  xdo_mouse_wait_for_move_to(xdo, x, y);
++  xdo_move_mouse(xdo, x, y, viewports[wininfo.curviewport].screen_num);
++  xdo_wait_for_mouse_move_to(xdo, x, y);
+ 
+   /* TODO(sissel): do we need to open again? */
+   openpixel(dpy, zone, &mouseinfo);
+@@ -1078,7 +1078,7 @@ void cmd_click(char *args) {
+   int button;
+   button = atoi(args);
+   if (button > 0)
+-    xdo_click(xdo, CURRENTWINDOW, button);
++    xdo_click_window(xdo, CURRENTWINDOW, button);
+   else
+     fprintf(stderr, "Negative mouse button is invalid: %d\n", button);
+ }
+@@ -1116,19 +1116,19 @@ void cmd_drag(char *args) {
+ 
+   if (ISDRAGGING) { /* End dragging */
+     appstate.dragging = False;
+-    xdo_mouseup(xdo, CURRENTWINDOW, button);
++    xdo_mouse_up(xdo, CURRENTWINDOW, button);
+   } else { /* Start dragging */
+     cmd_warp(NULL);
+     appstate.dragging = True;
+-    xdo_keysequence_down(xdo, 0, drag_modkeys, 12000);
+-    xdo_mousedown(xdo, CURRENTWINDOW, button);
++    xdo_send_keysequence_window_down(xdo, 0, drag_modkeys, 12000);
++    xdo_mouse_down(xdo, CURRENTWINDOW, button);
+ 
+     /* Sometimes we need to move a little to tell the app we're dragging */
+     /* TODO(sissel): Make this a 'mousewiggle' command */
+-    xdo_mousemove_relative(xdo, 1, 0);
+-    xdo_mousemove_relative(xdo, -1, 0);
++    xdo_move_mouse_relative(xdo, 1, 0);
++    xdo_move_mouse_relative(xdo, -1, 0);
+     XSync(xdo->xdpy, 0);
+-    xdo_keysequence_up(xdo, 0, drag_modkeys, 12000);
++    xdo_send_keysequence_window_up(xdo, 0, drag_modkeys, 12000);
+   }
+ }
+ 
diff -Nru keynav-0.20110708.0/debian/patches/series keynav-0.20110708.0/debian/patches/series
--- keynav-0.20110708.0/debian/patches/series	2011-08-05 12:56:04.000000000 -0600
+++ keynav-0.20110708.0/debian/patches/series	2013-05-08 18:23:48.000000000 -0600
@@ -1 +1,2 @@
 remove-unnecessarily-linking-libxtst.diff
+port-to-libxdo3.diff

Reply via email to