pub struct Submission {
    imservice: Option<Box<IMService>>,
    virtual_keyboard: VirtualKeyboard,
    modifiers_active: Vec<(KeyStateId, Modifier)>,
    pressed: Vec<(KeyStateId, SubmittedAction)>,
    keymap_fds: Vec<KeyMap>,
    keymap_idx: Option<usize>,
}

Fields

imservice: Option<Box<IMService>>virtual_keyboard: VirtualKeyboardmodifiers_active: Vec<(KeyStateId, Modifier)>pressed: Vec<(KeyStateId, SubmittedAction)>keymap_fds: Vec<KeyMap>keymap_idx: Option<usize>

Implementations

Sends a submit text event if possible; otherwise sends key press and makes a note of it

Changes keymap and clears pressed keys and modifiers.

It’s not obvious if clearing is the right thing to do, but keymap update may (or may not) do that, possibly putting self.modifiers_active and self.pressed out of sync, so a consistent stance is adopted to avoid that. Alternatively, modifiers could be restored on the new keymap. That approach might be difficult due to modifiers meaning different things in different keymaps.

Auto Trait Implementations

Blanket Implementations

Gets the TypeId of self. Read more

Immutably borrows from an owned value. Read more

Mutably borrows from an owned value. Read more

Returns the argument unchanged.

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

The type returned in the event of a conversion error.

Performs the conversion.

The type returned in the event of a conversion error.

Performs the conversion.