QtWebkit,不能使用'@'键

时间:2013-08-07 11:45:03

标签: qt webview webkit qt5 qtwebkit

我的Qt程序(使用qt v5.0.2)包含一个QWebView,用户应该使用他们的电子邮件地址和密码登录。 一切正常在Windows上运行(在w7和服务器2008上试过)但在Mac(10.7.5)上我遇到了一个烦人的问题。 按下alt-2(@的组合键)时没有任何反应。

我花了无数个小时测试并尝试在网上找到有关它的任何信息,但我真的找不到任何关于它的信息。

有没有解决方法?固定?或者这甚至是一个已知问题?

编辑: 如下面的评论中所述,我的键盘是欧洲/瑞典语。

1 个答案:

答案 0 :(得分:2)

这是一个真正的Qt Bug。我将其报告为https://bugreports.qt-project.org/browse/QTBUG-34981

今天我们在

中找到了负责它的代码
./qtwebkit/Source/WebKit/qt/WebCoreSupport/EditorClientQt.cpp

第480行附近说

#ifndef Q_WS_MAC
    // We need to exclude checking for Alt because it is just a different Shift                                                            
     if (!kevent->altKey())
#endif
     shouldInsertText = true;

显然,目前还没有在Mac Builds上定义Q_WS_MAC - 我认为它已被弃用,转而支持Q_OS_MAC.S

只需将声明更改为

即可
shouldInsertText = true;

在Mac上编译时为我们解决了问题。