Как автокоррекции SIP передаются в TextBox? - PullRequest
1 голос
/ 31 октября 2011

Я пытаюсь отладить сложную ситуацию, когда автокоррекция неправильно обрабатывается в TextBox, но я застрял: Я не могу найти, как постукивание предложения автокоррекции в SIP передается в TextBox. Я проследил события KeyUp, KeyDown, TextInput, TextInputStart и TextInputUpdate, но, похоже, они не участвуют в обновлении текста в объекте TextBox.

Справочная информация:

Когда используется язык, отличный от греческого, автокоррекция работает так же, как и для TextBox в моем приложении. Однако, когда язык установлен на греческий, при нажатии на предложенное слово ничего не происходит ... С другой стороны, в текстовых полях в стандартных телефонных приложениях (например, при добавлении текста в раздел заметок контакта) греческая автокоррекция работает отлично. , Итак, мое первое предположение - что-то не так с TextBox, а не с SIP. Мой план состоит в том, чтобы создать подкласс TextBox, изменяя только части обработки автокоррекции.

Любая помощь будет высоко ценится,

Герасим

Обновление:

Я провел несколько тестов, и это, похоже, проблема во всех нестандартных приложениях. В частности, я протестировал приложения eBay и SkyMap, и в обоих случаях английская автокоррекция работает, а греческая - нет.

Проблема легко воспроизводится:

  • поместить текстовое поле в приложение (с inputScope, для которого включена автокоррекция)
  • использовать греческую раскладку клавиатуры
  • нажмите 1-2 случайные буквы.
  • нажмите на одну из предложенных автокоррекций. Вводится только последний пробел, и в случаях, когда курсор находится между двумя пробелами (как я предпочел проверить), ничего не происходит.

Итак, я считаю, что есть ошибка где-то в части фреймворка, а не в коде приложения. Теперь, если бы мы могли найти, как эта автокоррекция передается в TextBox ...: -)

1 Ответ

0 голосов
/ 31 октября 2011

Вы не должны иметь возможность прерывать SIP напрямую. Вы можете редактировать содержимое текстового поля после того, как значение было введено / изменено. В качестве альтернативы вы можете реализовать что-то вроде автозаполнения, если вы намерены изменить содержимое вместо визуальных элементов.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...