keyboard: Delete selected text on backspace

Previously backspace would only ever remove a single character left of the cursor, regardless of selection.

This requires the application to correctly set the anchor position in text_input::set_surrounding_text(), which currently only gtk4 seems to do. When there is no selection or on other applications that always set cursor = anchor, like gtk3 does, the behavior is not changed and still only deletes one character.

Merge request reports