Android Клавиатура срабатывает при нажатии кнопки с помощью Ext JS 7.2 - PullRequest
0 голосов
/ 20 июня 2020

Я работаю над проектом Ext JS, мы обновили sencha ext js с 6.0 до 7.2 . После этого обновления у нас возникают некоторые проблемы с клавиатурой на Android устройствах .

Проблема в том, что у меня сфокусировано текстовое поле (с уже закрытой клавиатурой), а затем я нажимаю на какая-то кнопка, клавиатура открывается.

Шаги:

  1. Щелкните текстовое поле.
  2. Визуализируйте мобильную клавиатуру.
  3. Щелкните по кнопку Android назад, чтобы закрыть мобильную клавиатуру.
  4. Визуализируйте, что текстовое поле остается в фокусе.
  5. Щелкните компонент кнопки.
  6. Визуализируйте, что клавиатура была открыта .

PS: Следует отметить, что в более старой версии sencha у нас нет этой проблемы. В этой более старой версии фокус остается на поле, но при нажатии на кнопку фокус удаляется и клавиатура не открывается.

Спасибо, Ренато.

1 Ответ

1 голос
/ 20 июня 2020

Нашел эту ошибку в современном наборе инструментов. Проблема в кнопке, при нажатии на нее она не фокусируется. Следующее переопределение поможет:

Ext.define('Overrides.Button', {
    override: 'Ext.Button',
    doTap: function(me, e) {
        this.focus();
        this.callParent(arguments);
    }
});

Скрипка для воспроизведения: https://fiddle.sencha.com/#view / editor & fiddle / 36rb Результат скрипта для открытия на устройстве adroid с мягкой клавиатурой: https://fiddle.sencha.com/fiddle/36rb/preview

Вы также можете увидеть ошибку на настольной версии chrome, просто откройте поле результата в браузере, переключитесь в мобильный режим в инструментах разработчика (консоль). При нажатии на кнопку фокус не перемещается на кнопку и остается в текстовом поле. Думаю, поэтому открывается мягкая клавиатура.

...