未验证 提交 46e3bba9 编写于 作者: S stuartmorgan 提交者: GitHub

Defer Windows arrow key and delete handling (#22207)

The framework handles arrow keys, delete, and backspace (and with better
unicode support), so we shouldn't handle them at the embedding level.

Fixes #69202
上级 eea98b2b
......@@ -61,35 +61,9 @@ void TextInputPlugin::KeyboardHook(FlutterWindowsView* view,
return;
}
if (action == WM_KEYDOWN) {
// Most editing keys (arrow keys, backspace, delete, etc.) are handled in
// the framework, so don't need to be handled at this layer.
switch (key) {
case VK_LEFT:
if (active_model_->MoveCursorBack()) {
SendStateUpdate(*active_model_);
}
break;
case VK_RIGHT:
if (active_model_->MoveCursorForward()) {
SendStateUpdate(*active_model_);
}
break;
case VK_END:
active_model_->MoveCursorToEnd();
SendStateUpdate(*active_model_);
break;
case VK_HOME:
active_model_->MoveCursorToBeginning();
SendStateUpdate(*active_model_);
break;
case VK_BACK:
if (active_model_->Backspace()) {
SendStateUpdate(*active_model_);
}
break;
case VK_DELETE:
if (active_model_->Delete()) {
SendStateUpdate(*active_model_);
}
break;
case VK_RETURN:
EnterPressed(active_model_.get());
break;
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册