Xlib 如何在 XSelectionRequestEvent 中回答错误的目标?
Xlib how to answer to wrong target in XSelectionRequestEvent?
我正在开发在不同计算机之间发送剪贴板内容的程序。
现在我在 Linux 上使用 Xorg 处理从剪贴板向请求者发送数据的请求。
例如,我的程序有自己的 image/bmp
数据,但其他程序向我发送了 image/png
的请求,我只是忽略了。大约 30 秒后,其他程序向我发送其他请求 image/jpeg
等等。
如何正确地将答案发送到这个错误的目标,以便其他程序不会等待这 30 秒超时?
我只是发送 XSelectionEvent
并将 property
字段设置为 None
。
// event is event that i responde
XEvent ev;
auto& sel_resp = ev.xselection;
sel_resp.type = SelectionNotify;
sel_resp.display = event.display;
sel_resp.requestor = event.requestor;
sel_resp.selection = event.selection;
sel_resp.target = event.target;
// Set property to None
sel_resp.property = None;
sel_resp.time = event.time;
XSendEvent( mDisplay, event.requestor, False, 0, &ev );
我正在开发在不同计算机之间发送剪贴板内容的程序。
现在我在 Linux 上使用 Xorg 处理从剪贴板向请求者发送数据的请求。
例如,我的程序有自己的 image/bmp
数据,但其他程序向我发送了 image/png
的请求,我只是忽略了。大约 30 秒后,其他程序向我发送其他请求 image/jpeg
等等。
如何正确地将答案发送到这个错误的目标,以便其他程序不会等待这 30 秒超时?
我只是发送 XSelectionEvent
并将 property
字段设置为 None
。
// event is event that i responde
XEvent ev;
auto& sel_resp = ev.xselection;
sel_resp.type = SelectionNotify;
sel_resp.display = event.display;
sel_resp.requestor = event.requestor;
sel_resp.selection = event.selection;
sel_resp.target = event.target;
// Set property to None
sel_resp.property = None;
sel_resp.time = event.time;
XSendEvent( mDisplay, event.requestor, False, 0, &ev );