Отправка нажатий клавиш в окно 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