diff -r d508aa856878 -r d30183af6ca6 phonebookengines/cntactions/src/cntbrowseraction.cpp --- a/phonebookengines/cntactions/src/cntbrowseraction.cpp Wed Aug 11 09:06:35 2010 +0300 +++ b/phonebookengines/cntactions/src/cntbrowseraction.cpp Mon Aug 23 16:06:28 2010 +0300 @@ -19,6 +19,7 @@ #include #include +#include //Action class CntBrowserAction::CntBrowserAction() : @@ -57,13 +58,23 @@ void CntBrowserAction::performAction() { - QVariant retValue; - emitResult(GeneralError, retValue); - - /* - QString service("com.nokia.services.telephony"); - QString type("dial(QString,int)"); - - performNumberAction(service, type); - */ + if (m_detail.definitionName() == QContactUrl::DefinitionName) + { + const QContactUrl &contactUrl = static_cast(m_detail); + + QString address = contactUrl.url(); + if (!address.startsWith("http://")) + { + address.prepend("http://"); + } + + bool success = QDesktopServices::openUrl(QUrl(address)); + QVariant retValue; + emitResult(success, retValue); + } + else + { + QVariant retValue; + emitResult(GeneralError, retValue); + } }