diff options
Diffstat (limited to 'daemon/jskitobjects.cpp')
| -rw-r--r-- | daemon/jskitobjects.cpp | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/daemon/jskitobjects.cpp b/daemon/jskitobjects.cpp index d9ef02f..481c077 100644 --- a/daemon/jskitobjects.cpp +++ b/daemon/jskitobjects.cpp @@ -413,6 +413,16 @@ void JSKitXMLHttpRequest::setOnload(const QJSValue &value) _onload = value; } +QJSValue JSKitXMLHttpRequest::onreadystatechange() const +{ + return _onreadystatechange; +} + +void JSKitXMLHttpRequest::setOnreadystatechange(const QJSValue &value) +{ + _onreadystatechange = value; +} + QJSValue JSKitXMLHttpRequest::ontimeout() const { return _ontimeout; @@ -541,6 +551,16 @@ void JSKitXMLHttpRequest::handleReplyFinished() } else { qCDebug(l) << "No onload set"; } + + if (_onreadystatechange.isCallable()) { + qCDebug(l) << "going to call onreadystatechange handler:" << _onreadystatechange.toString(); + QJSValue result = _onreadystatechange.callWithInstance(_mgr->engine()->newQObject(this)); + if (result.isError()) { + qCWarning(l) << "JS error on onreadystatechange handler:" << JSKitManager::describeError(result); + } + } else { + qCDebug(l) << "No onreadystatechange set"; + } } void JSKitXMLHttpRequest::handleReplyError(QNetworkReply::NetworkError code) |
