Отправка нажатий клавиш в окно X

В настоящее время я экспериментирую с xdotool для отправки ключей процессу (я понимаю, что он может работать не для всех процессов, для которых не установлен _NET_WM_PID). У меня проблемы с отправкой нажатий клавиш в другие окна из фокуса. Это работает, если вы отправляете нажатия клавиш наCURRENTWINDOW, Ниже приведен фрагмент кода, который я использовал для проверки xdotool 'с функциональностью.

extern "C"{
  #include 
}
//extern "C" xdo_window_search
#include 
#include 

using namespace std;

int main(){
    xdo_t* p_xdo = xdo_new(NULL);

    // Allocate memory for search query.
    xdo_search_t s;
    // Clear the allocated memory.
    memset(&s, 0, sizeof(xdo_search_t));
    // Set the search query.
    s.pid = 1916;
    s.max_depth = -1;
    s.searchmask = SEARCH_PID;
    s.require = xdo_search::SEARCH_ANY;
    // Allocate memory for output
    Window* windows;
    int no_windows;
    xdo_window_search(p_xdo,&s,&windows,&no_windows);
    cout < no_windows < endl;
    // Prints all windows' names with matching criteria
    for( int i=0;i

Ответы на вопрос(1)

Ваш ответ на вопрос