Eli Zaretskii<address@hidden> writes:
I'd rather turn the table and ask why is the call to
xd_read_queued_messages made in gobble_input and not elsewhere? Why
are we mixing input from D-Bus with keyboard input? And why in
gobble_input?
D-Bus messages arrive asynchronously. xd_read_queued_messages() converts
them into special events, which are stored via kbd_buffer_store_event().
gobble_input() is used, because it is called at several places, for
instance in sit_for(), kbd_buffer_get_event(), get_input_pending(),
ns_select() - D-Bus messages shall be handled as soon as they arrive.