Portanto, o primeiro problema é causado por não ter a versão development da biblioteca xdo, e é corrigido por
dnf install libxdo-devel
O segundo problema é causado pelo arquivo keynav.c
ter um monte de chamadas incorretamente nomeadas do arquivo de cabeçalho xdo.h
. (Estou assumindo alguma inconsistência entre as versões aqui, mas não analisei isso.)
De qualquer forma, eles podem ser corrigidos manualmente, encontrando as funções com nomes semelhantes no arquivo de cabeçalho e editando os nomes no arquivo de origem. Aqui está o resultado de diff
do emendado e do original:
292c289
< const char **symbol_map = xdo_get_symbol_map();
---
> const char **symbol_map = xdo_symbol_map();
846c843
< xdo_set_window_class(xdo, zone, "keynav", "keynav");
---
> xdo_window_setclass(xdo, zone, "keynav", "keynav");
1004c1001
< xdo_get_mouse_location(xdo, &xloc, &yloc, NULL);
---
> xdo_mouselocation(xdo, &xloc, &yloc, NULL);
1019c1016
< xdo_get_active_window(xdo, &curwin);
---
> xdo_window_get_active(xdo, &curwin);
1048,1049c1045,1046
< xdo_move_mouse(xdo, x, y, viewports[wininfo.curviewport].screen_num);
< xdo_wait_for_mouse_move_to(xdo, x, y);
---
> xdo_mousemove(xdo, x, y, viewports[wininfo.curviewport].screen_num);
> xdo_mouse_wait_for_move_to(xdo, x, y);
1062c1059
< xdo_click_window(xdo, CURRENTWINDOW, button);
---
> xdo_click(xdo, CURRENTWINDOW, button);
1100c1097
< xdo_mouse_up(xdo, CURRENTWINDOW, button);
---
> xdo_mouseup(xdo, CURRENTWINDOW, button);
1104,1105c1101,1102
< xdo_send_keysequence_window_down(xdo, 0, drag_modkeys, 12000);
< xdo_mouse_down(xdo, CURRENTWINDOW, button);
---
> xdo_keysequence_down(xdo, 0, drag_modkeys, 12000);
> xdo_mousedown(xdo, CURRENTWINDOW, button);
1109,1110c1106,1107
< xdo_move_mouse_relative(xdo, 1, 0);
< xdo_move_mouse_relative(xdo, -1, 0);
---
> xdo_mousemove_relative(xdo, 1, 0);
> xdo_mousemove_relative(xdo, -1, 0);
1112c1109
< xdo_send_keysequence_window_up(xdo, 0, drag_modkeys, 12000);
---
> xdo_keysequence_up(xdo, 0, drag_modkeys, 12000);
Como você pode ver, são apenas os nomes das funções que precisam ser alteradas, não os parâmetros.
[Se você não sabe diff
: neste caso, as linhas acima de cada ---
são as novas (começando com <
) e a (s) linha (s) abaixo de cada ---
são os antigos que foram alterados (começando com >
e que você precisará alterar também no arquivo keynav.c
.)]
Espero que ajude!