qt webkit 4.7.1 编译问题

1015补充:ubuntu 10下, qt474也存在同样问题。

centos下编译qtwebkit。

选用qt-everywhere-opensource-src-4.7.1包。下载地址:ftp://ftp.trolltech.com/qt/source/

编译命令:

./configure --prefix=/usr/local/qt47 -release -opensource -shared -webkit -largefile -qt-sql-mysql -no-multimedia -no-qt3support -no-gtkstyle -no-opengl -no-xvideo -nomake examples -nomake demos -nomake docs


./configure --prefix=/opt/qtsdk474 -debug-and-release -opensource -shared -webkit -largefile -qt-sql-mysql -no-qt3support -no-gtkstyle -I/opt/local/include/mysql5/mysql -L/opt/local/lib/mysql5/mysql


报错:


../WebKit/qt/Api/qwebpage.cpp:1571: error: class WebCore::EventHandler has no member named handleTouchEvent


定位到 对应文件,修改为:

   1564 #if QT_VERSION >= QT_VERSION_CHECK(4, 6, 0)
   1565 void QWebPagePrivate::touchEvent(QTouchEvent* event)
   1566 {
   1567 //add by alex
   1568 #if ENABLE(TOUCH_EVENTS)
   1569 //end add.
   1570     WebCore::Frame* frame = QWebFramePrivate::core(mainFrame);
   1571     if (!frame->view())
   1572         return;
   1573     
   1574     bool accepted = frame->eventHandler()->handleTouchEvent(PlatformTouchEvent(event));
   1575     event->setAccepted(accepted);
   1576 //add by alex
   1577 #else
   1578     event->ignore();
   1579     return;
   1580 #endif
   1581 //end add.
   1582 }
   1583 #endif



即 加上 判断: if ENABLE(TOUCH_EVENTS)


对应的Diff 看这里: DIFF


webkit bugzilla 的解释为: The call to ignore() is mandatory because touch event are accepted by default.

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值