Ignore:
Timestamp:
Mar 8, 2010, 12:52:58 PM (15 years ago)
Author:
Dmitry A. Kuminov
Message:

trunk: Merged in qt 4.6.2 sources.

Location:
trunk
Files:
5 edited

Legend:

Unmodified
Added
Removed
  • trunk

  • trunk/examples/webkit/googlechat/form.ui

    r561 r651  
    4949          <set>Qt::AlignCenter</set>
    5050         </property>
     51         <property name="wordWrap">
     52          <bool>true</bool>
     53         </property>
    5154        </widget>
    5255       </item>
     
    160163           <property name="text">
    161164            <string>Login</string>
     165           </property>
     166           <property name="default">
     167            <bool>true</bool>
    162168           </property>
    163169          </widget>
  • trunk/examples/webkit/googlechat/googlechat.cpp

    r561 r651  
    11/****************************************************************************
    22**
    3 ** Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies).
     3** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
    44** All rights reserved.
    55** Contact: Nokia Corporation (qt-info@nokia.com)
     
    8181}
    8282
    83 QString GoogleChat::evalJS(const QString &js) {
    84     QWebFrame *frame = form.webView->page()->mainFrame();
    85     return frame->evaluateJavaScript(js).toString();
     83QWebElement GoogleChat::document() const {
     84    return form.webView->page()->mainFrame()->documentElement();
    8685}
    8786
     
    113112
    114113    QString userEmail = userName + "@gmail.com";
    115     evalJS(QString("document.getElementById('Email').value = \"%1\";").arg(userEmail));
    116     evalJS(QString("document.getElementById('Passwd').value = \"%1\";").arg(password));
    117     evalJS("document.getElementById('gaia_loginform').submit();");
     114
     115    document().findFirst("#Email").setAttribute("value", userEmail);
     116    document().findFirst("#Passwd").setAttribute("value", password);
     117    document().findFirst("#gaia_loginform").evaluateJavaScript("this.submit();");
     118
    118119}
    119120
     
    125126
    126127    if (ok) {
    127         QString s1 = evalJS("document.getElementById('Email').name");
    128         QString s2 = evalJS("document.getElementById('Passwd').name");
    129         QString s3 = evalJS("document.getElementById('gaia_loginform').id");
    130         if (s1 == "Email" && s2 == "Passwd" && s3 == "gaia_loginform") {
     128        QWebElement email = document().findFirst("#Email");
     129        QWebElement passwd = document().findFirst("#Passwd");
     130        QWebElement loginForm = document().findFirst("#gaia_loginform");
     131        if (!email.isNull() && !passwd.isNull() && !loginForm.isNull()) {
    131132            form.stackedWidget->setCurrentIndex(1);
     133            form.userNameEdit->setFocus();
    132134            form.webView->disconnect();
    133135            return;
     
    140142void GoogleChat::hideElements()
    141143{
    142     evalJS("var e = document.getElementsByClassName('footer-footer')[0]; e.parentElement.removeChild(e)");
    143     evalJS("var e = document.getElementsByClassName('title-bar-bg title-bar')[0]; e.parentElement.removeChild(e)");
     144    document().findFirst(".footer-footer").removeFromDocument();
     145    document().findFirst(".title-bar-bg .title-bar").removeFromDocument();
    144146    QTimer::singleShot(2000, this, SLOT(hideElements()));
    145147}
     
    153155    } else {
    154156        // check for any error message
    155         QString c = evalJS("document.getElementsByClassName('errormsg').length");
    156         if (c == "0") {
     157
     158        QWebElement  e = document().findFirst(".errormsg");
     159        if (e.isNull()) {
    157160            form.stackedWidget->setCurrentIndex(2);
    158161            QTimer::singleShot(500, this, SLOT(hideElements()));
     
    160163        }
    161164
    162         QString err = "Unknown login failure.";
    163         if (c == "1") {
    164             err = evalJS("document.getElementsByClassName('errormsg')[0].textContent");
     165       QString err = "Unknown login failure.";
     166       const QString errorMessage = e.toPlainText();
     167        if (!errorMessage.isEmpty()) {
     168            err = errorMessage;
    165169            err = err.simplified();
    166170        }
  • trunk/examples/webkit/googlechat/googlechat.h

    r561 r651  
    11/****************************************************************************
    22**
    3 ** Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies).
     3** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
    44** All rights reserved.
    55** Contact: Nokia Corporation (qt-info@nokia.com)
     
    4141
    4242#include <QWidget>
     43#include <QWebElement>
    4344
    4445#include "ui_form.h"
     
    5455    void showStatus(const QString &msg);
    5556    void showError(const QString &msg);
    56     QString evalJS(const QString &js);
     57    QWebElement document() const;
    5758
    5859private slots:
  • trunk/examples/webkit/googlechat/main.cpp

    r561 r651  
    11/****************************************************************************
    22**
    3 ** Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies).
     3** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
    44** All rights reserved.
    55** Contact: Nokia Corporation (qt-info@nokia.com)
Note: See TracChangeset for help on using the changeset viewer.