m_impl->selection_text = NULL;
}
- for (int i = 0; i < 3; i++) {
- filter_event ();
- if (!m_impl->socket.is_connected ())
- break;
+ const int WAIT_FOR_SYNC_RESPONSE_TIMEOUT = 1000;
+ /* Now we are waiting for the ISM_TRANS_CMD_UPDATE_SELECTION message */
+ if (wait_for_message(ISM_TRANS_CMD_UPDATE_SELECTION, WAIT_FOR_SYNC_RESPONSE_TIMEOUT)) {
+ MessageItem *message = message_queue.get_pending_message_by_cmd(ISM_TRANS_CMD_UPDATE_SELECTION);
+ handle_message(message);
+ message_queue.remove_message(message);
if (m_impl->selection_text) {
text = m_impl->selection_text;
- break;
}
- //timeout
}
if (m_impl->selection_text) {