Changeset 91985 in webkit
- Timestamp:
- Jul 29, 2011 4:55:06 AM (13 years ago)
- Location:
- trunk/Source/WebKit2
- Files:
-
- 11 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/Source/WebKit2/ChangeLog
r91979 r91985 1 2011-07-29 Alexis Menard <alexis.menard@openbossa.org> 2 3 [Qt] Make QDesktopWebView/QTouchWebView loadProgress property more usable in QML. 4 https://bugs.webkit.org/show_bug.cgi?id=65315 5 6 Reviewed by Benjamin Poulain. 7 8 In order to use the loadProgress value in QML we need to make it 9 a Q_PROPERTY, therefore we need a getter to get it. 10 11 * UIProcess/API/qt/qdesktopwebview.cpp: 12 (QDesktopWebViewPrivate::didChangeLoadProgress): 13 (QDesktopWebView::url): 14 (QDesktopWebView::loadProgress): 15 * UIProcess/API/qt/qdesktopwebview.h: 16 * UIProcess/API/qt/qtouchwebpage.cpp: 17 (QTouchWebPage::loadProgress): 18 * UIProcess/API/qt/qtouchwebpage.h: 19 * UIProcess/API/qt/tests/commonviewtests/tst_commonviewtests.cpp: 20 (tst_CommonViewTests::stop): 21 (tst_CommonViewTests::loadProgress): 22 * UIProcess/API/qt/tests/commonviewtests/webviewabstraction.cpp: 23 (WebViewAbstraction::WebViewAbstraction): 24 (WebViewAbstraction::loadProgress): 25 (WebViewAbstraction::desktopViewLoadFailed): 26 (WebViewAbstraction::touchViewLoadProgressChanged): 27 (WebViewAbstraction::desktopViewLoadProgressChanged): 28 * UIProcess/API/qt/tests/commonviewtests/webviewabstraction.h: 29 * UIProcess/qt/QtWebPageProxy.cpp: 30 (QtWebPageProxy::QtWebPageProxy): 31 (QtWebPageProxy::didChangeLoadProgress): 32 * UIProcess/qt/QtWebPageProxy.h: 33 (QtWebPageProxy::loadProgress): 34 * UIProcess/qt/TouchViewInterface.cpp: 35 (WebKit::TouchViewInterface::didChangeLoadProgress): 36 1 37 2011-07-27 Jocelyn Turcotte <jocelyn.turcotte@nokia.com> 2 38 -
trunk/Source/WebKit2/UIProcess/API/qt/qdesktopwebview.cpp
r91863 r91985 133 133 void QDesktopWebViewPrivate::didChangeLoadProgress(int percentageLoaded) 134 134 { 135 emit q->loadProgress (percentageLoaded);135 emit q->loadProgressChanged(percentageLoaded); 136 136 } 137 137 … … 197 197 { 198 198 return d->page.url(); 199 } 200 201 int QDesktopWebView::loadProgress() const 202 { 203 return d->page.loadProgress(); 199 204 } 200 205 -
trunk/Source/WebKit2/UIProcess/API/qt/qdesktopwebview.h
r91863 r91985 52 52 Q_PROPERTY(QString title READ title NOTIFY titleChanged) 53 53 Q_PROPERTY(QUrl url READ url NOTIFY urlChanged) 54 Q_PROPERTY(int loadProgress READ loadProgress NOTIFY loadProgressChanged) 54 55 55 56 Q_ENUMS(NavigationAction) 56 57 57 58 public: 59 58 60 QDesktopWebView(QSGItem* parent = 0); 59 61 virtual ~QDesktopWebView(); … … 61 63 QUrl url() const; 62 64 QString title() const; 65 int loadProgress() const; 63 66 64 67 Q_INVOKABLE QAction* navigationAction(QtWebKit::NavigationAction which) const; … … 73 76 void loadSucceeded(); 74 77 void loadFailed(const QWebError&); 75 void loadProgress (int progress);78 void loadProgressChanged(int progress); 76 79 void urlChanged(const QUrl&); 77 80 -
trunk/Source/WebKit2/UIProcess/API/qt/qtouchwebpage.cpp
r91863 r91985 59 59 { 60 60 return d->page->title(); 61 } 62 63 int QTouchWebPage::loadProgress() const 64 { 65 return d->page->loadProgress(); 61 66 } 62 67 -
trunk/Source/WebKit2/UIProcess/API/qt/qtouchwebpage.h
r91863 r91985 40 40 Q_PROPERTY(QString title READ title NOTIFY titleChanged) 41 41 Q_PROPERTY(QUrl url READ url NOTIFY urlChanged) 42 Q_PROPERTY(int loadProgress READ loadProgress NOTIFY loadProgressChanged) 42 43 43 44 public: … … 50 51 51 52 Q_INVOKABLE QString title() const; 53 int loadProgress() const; 52 54 53 55 QAction* navigationAction(QtWebKit::NavigationAction which); … … 62 64 void loadSucceeded(); 63 65 void loadFailed(const QWebError&); 64 void loadProgress (int progress);66 void loadProgressChanged(int progress); 65 67 66 68 protected: -
trunk/Source/WebKit2/UIProcess/API/qt/tests/commonviewtests/tst_commonviewtests.cpp
r90820 r91985 38 38 void reload(); 39 39 void stop(); 40 void loadProgress(); 40 41 41 42 void show(); … … 151 152 } 152 153 154 void tst_CommonViewTests::loadProgress() 155 { 156 QCOMPARE(viewAbstraction->loadProgress(), 0); 157 158 viewAbstraction->load(QUrl::fromLocalFile(QLatin1String(TESTS_SOURCE_DIR "/html/basic_page.html"))); 159 QSignalSpy loadProgressChangedSpy(viewAbstraction.data(), SIGNAL(loadProgressChanged(int))); 160 QVERIFY(waitForSignal(viewAbstraction.data(), SIGNAL(loadSucceeded()))); 161 162 QVERIFY(loadProgressChangedSpy.count() >= 1); 163 164 QCOMPARE(viewAbstraction->loadProgress(), 100); 165 } 166 153 167 void tst_CommonViewTests::show() 154 168 { -
trunk/Source/WebKit2/UIProcess/API/qt/tests/commonviewtests/webviewabstraction.cpp
r90820 r91985 36 36 connect(touchWebView()->page(), SIGNAL(loadSucceeded()), this, SLOT(touchViewLoadSucceeded())); 37 37 connect(touchWebView()->page(), SIGNAL(loadFailed(QWebError)), this, SLOT(touchViewLoadFailed(QWebError))); 38 connect(touchWebView()->page(), SIGNAL(loadProgressChanged(int)), this, SLOT(touchViewLoadProgressChanged(int))); 38 39 39 40 screenHalf.moveLeft(screenHalf.right()); … … 43 44 connect(desktopWebView(), SIGNAL(loadSucceeded()), this, SLOT(desktopViewLoadSucceeded())); 44 45 connect(desktopWebView(), SIGNAL(loadFailed(QWebError)), this, SLOT(desktopViewLoadFailed(QWebError))); 46 connect(desktopWebView(), SIGNAL(loadProgressChanged(int)), this, SLOT(desktopViewLoadProgressChanged(int))); 45 47 } 46 48 … … 78 80 url = touchViewUrl; 79 81 return true; 82 } 83 84 int WebViewAbstraction::loadProgress() const 85 { 86 int touchViewProgress = touchWebView()->page()->loadProgress(); 87 int desktopViewProgress = desktopWebView()->loadProgress(); 88 89 if (touchViewProgress != desktopViewProgress) { 90 qWarning() << "WebViewAbstraction::loadProgress(): the load progress are different."; 91 qWarning() << "QTouchView's load progress = " << touchViewProgress; 92 qWarning() << "QDesktopView's load progress = " << desktopViewProgress; 93 return -1; 94 } 95 96 return touchViewProgress; 80 97 } 81 98 … … 130 147 } 131 148 149 void WebViewAbstraction::touchViewLoadProgressChanged(int progress) 150 { 151 m_touchViewSignalsCounter[SIGNAL(loadProgressChanged(int))]++; 152 if (m_touchViewSignalsCounter[SIGNAL(loadProgressChanged(int))] == m_desktopViewSignalsCounter[SIGNAL(loadProgressChanged(int))]) 153 emit loadProgressChanged(progress); 154 } 155 156 void WebViewAbstraction::desktopViewLoadProgressChanged(int progress) 157 { 158 m_desktopViewSignalsCounter[SIGNAL(loadProgressChanged(int))]++; 159 if (m_touchViewSignalsCounter[SIGNAL(loadProgressChanged(int))] == m_desktopViewSignalsCounter[SIGNAL(loadProgressChanged(int))]) 160 emit loadProgressChanged(progress); 161 } 162 132 163 QTouchWebView* WebViewAbstraction::touchWebView() const 133 164 { -
trunk/Source/WebKit2/UIProcess/API/qt/tests/commonviewtests/webviewabstraction.h
r90820 r91985 40 40 void load(const QUrl&); 41 41 bool url(QUrl&) const; 42 int loadProgress() const; 42 43 43 44 void triggerNavigationAction(QtWebKit::NavigationAction); … … 47 48 void loadSucceeded(); 48 49 void loadFailed(const QWebError&); 50 void loadProgressChanged(int); 49 51 50 52 private Q_SLOTS: … … 55 57 void touchViewLoadFailed(const QWebError&); 56 58 void desktopViewLoadFailed(const QWebError&); 59 void touchViewLoadProgressChanged(int); 60 void desktopViewLoadProgressChanged(int); 57 61 58 62 private: -
trunk/Source/WebKit2/UIProcess/qt/QtWebPageProxy.cpp
r91840 r91985 100 100 , m_preferences(0) 101 101 , m_undoStack(adoptPtr(new QUndoStack(this))) 102 , m_loadProgress(0) 102 103 { 103 104 ASSERT(viewInterface); … … 427 428 void QtWebPageProxy::didChangeLoadProgress(int newLoadProgress) 428 429 { 430 m_loadProgress = newLoadProgress; 429 431 m_viewInterface->didChangeLoadProgress(newLoadProgress); 430 432 } -
trunk/Source/WebKit2/UIProcess/qt/QtWebPageProxy.h
r91831 r91985 135 135 void loadDidFail(const QWebError&); 136 136 void didChangeLoadProgress(int); 137 int loadProgress() const { return m_loadProgress; } 137 138 138 139 void paint(QPainter* painter, QRect); … … 198 199 199 200 OwnPtr<QUndoStack> m_undoStack; 201 int m_loadProgress; 200 202 }; 201 203 -
trunk/Source/WebKit2/UIProcess/qt/TouchViewInterface.cpp
r91863 r91985 178 178 void TouchViewInterface::didChangeLoadProgress(int percentageLoaded) 179 179 { 180 emit m_pageView->loadProgress (percentageLoaded);180 emit m_pageView->loadProgressChanged(percentageLoaded); 181 181 } 182 182
Note: See TracChangeset
for help on using the changeset viewer.