text: Fix text-input for multi-seat
Multi-seat configurations currently break the text-backend, crashing
weston. This is an attempt to clean up any crashes and have somewhat
sensible input panel behavior with multi-seat.
Store a link to the manager that created a text_input, use this to
ensure that only a single panel gets popped up at a time, since there
is only one manager.
Replace deactivate_text_input with deactivate_input_method: multiple
input methods may focus the same text_input, so deactivating a text_input
is weird in multi-seat and confusing to perform.
In destroy_input_method_context set the context's input_method's context
pointer to NULL to prevent a dangling pointer.
Reviewed-by: Jan Arne Petersen <janarne@gmail.com>
Reviewed-by: Bryce Harrington <bryce@osg.samsung.com>
Signed-off-by: Derek Foreman <derekf@osg.samsung.com>