Changeset 86447 in webkit
- Timestamp:
- May 13, 2011 11:11:58 AM (13 years ago)
- Location:
- trunk
- Files:
-
- 2 added
- 9 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/LayoutTests/ChangeLog
r86443 r86447 1 2011-05-13 Robert Hogan <robert@webkit.org> 2 3 Reviewed by Benjamin Poulain. 4 5 [Qt] fix http/tests/plugins/plugin-document-has-focus.html 6 7 For some reason the platform-independent expected result has 8 no newline at the end of the file. The unix test plugin also 9 reports the event from a different line. These are harmless 10 differences, so create platform-specific result. 11 12 Note that nearly every platform skips this test at the moment. 13 14 https://bugs.webkit.org/show_bug.cgi?id=60722 15 16 * platform/qt/Skipped: 17 * platform/qt/http/tests/plugins/plugin-document-has-focus-expected.txt: Added. 18 1 19 2011-05-05 Pavel Podivilov <podivilov@chromium.org> 2 20 -
trunk/LayoutTests/platform/qt/Skipped
r86440 r86447 358 358 plugins/embed-attributes-setting.html 359 359 plugins/plugin-initiate-popup-window.html 360 # ---- to be reviewed361 http/tests/plugins/plugin-document-has-focus.html362 360 363 361 # [Qt] plugins/keyboard-events.html fails after r72717 -
trunk/Source/WebKit/qt/ChangeLog
r86438 r86447 1 2011-05-13 Robert Hogan <robert@webkit.org> 2 3 Reviewed by Benjamin Poulain. 4 5 [Qt] fix http/tests/plugins/plugin-document-has-focus.html 6 https://bugs.webkit.org/show_bug.cgi?id=60722 7 8 QWebPage::setView() will display the browser window, so 9 implement a private version that does just enough to 10 satisfy EventSender's requirement to install an event 11 filter on a page's web view. 12 13 * WebCoreSupport/DumpRenderTreeSupportQt.cpp: 14 (DumpRenderTreeSupportQt::setView): 15 * WebCoreSupport/DumpRenderTreeSupportQt.h: 16 1 17 2011-05-11 Jocelyn Turcotte <jocelyn.turcotte@nokia.com> 2 18 -
trunk/Source/WebKit/qt/WebCoreSupport/DumpRenderTreeSupportQt.cpp
r86329 r86447 1143 1143 } 1144 1144 1145 void DumpRenderTreeSupportQt::setView(QWebPage* page, QWidget* view) 1146 { 1147 page->d->view = view; 1148 } 1149 1145 1150 // Provide a backward compatibility with previously exported private symbols as of QtWebKit 4.6 release 1146 1151 -
trunk/Source/WebKit/qt/WebCoreSupport/DumpRenderTreeSupportQt.h
r86329 r86447 108 108 static void setMediaType(QWebFrame* qframe, const QString& type); 109 109 static void setDumpRenderTreeModeEnabled(bool b); 110 static void setView(QWebPage*, QWidget* view); 110 111 111 112 static void garbageCollectorCollect(); -
trunk/Tools/ChangeLog
r86445 r86447 1 2011-05-13 Robert Hogan <robert@webkit.org> 2 3 Reviewed by Benjamin Poulain. 4 5 [Qt] fix http/tests/plugins/plugin-document-has-focus.html 6 7 The support for this test added to the unix test plugin here 8 may allow other platforms to pass it (nearly everyone 9 skips it). On Qt it required a bit of trickiness with 10 the page's EventSender object to get it working fully though, 11 so only unskipping Qt here. 12 13 https://bugs.webkit.org/show_bug.cgi?id=60722 14 15 * DumpRenderTree/qt/DumpRenderTreeQt.cpp: 16 (WebCore::WebPage::WebPage): 17 (WebCore::WebPage::eventSender): 18 (WebCore::DumpRenderTree::DumpRenderTree): 19 (WebCore::DumpRenderTree::initJSObjects): 20 (WebCore::DumpRenderTree::createWindow): 21 * DumpRenderTree/qt/DumpRenderTreeQt.h: 22 * DumpRenderTree/unix/TestNetscapePlugin/TestNetscapePlugin.cpp: 23 (webkit_test_plugin_new_instance): 24 (webkit_test_plugin_set_window): 25 (webkit_test_plugin_handle_event): 26 1 27 2011-05-13 Adam Roben <aroben@apple.com> 2 28 -
trunk/Tools/DumpRenderTree/qt/DumpRenderTreeQt.cpp
r85474 r86447 137 137 : QWebPage(parent) 138 138 , m_webInspector(0) 139 , m_eventSender(0) 139 140 , m_drt(drt) 140 141 { … … 169 170 delete m_webInspector; 170 171 } 172 173 EventSender* WebPage::eventSender() 174 { 175 if (!m_eventSender) 176 m_eventSender = new EventSender(this); 177 return m_eventSender; 178 } 179 171 180 172 181 QWebInspector* WebPage::webInspector() … … 465 474 466 475 connect(m_controller, SIGNAL(done()), this, SLOT(dump())); 467 m_eventSender = new EventSender(m_page);476 m_eventSender = m_page->eventSender(); 468 477 m_textInputController = new TextInputController(m_page); 469 478 m_plainTextController = new PlainTextController(m_page); … … 776 785 Q_ASSERT(frame); 777 786 frame->addToJavaScriptWindowObject(QLatin1String("layoutTestController"), m_controller); 778 frame->addToJavaScriptWindowObject(QLatin1String("eventSender"), m_eventSender);787 frame->addToJavaScriptWindowObject(QLatin1String("eventSender"), qobject_cast<WebPage*>(frame->page())->eventSender()); 779 788 frame->addToJavaScriptWindowObject(QLatin1String("textInputController"), m_textInputController); 780 789 frame->addToJavaScriptWindowObject(QLatin1String("GCController"), m_gcController); … … 1098 1107 // create a QWebPage we want to return 1099 1108 QWebPage* page = static_cast<QWebPage*>(new WebPage(container, this)); 1109 // QWebPage::setView() will display the page, so use a minimal version 1110 // that is just enough to allow EventSender to interact with the page's view 1111 DumpRenderTreeSupportQt::setView(page, m_mainView); 1112 1100 1113 // gets cleaned up in closeRemainingWindows() 1101 1114 windows.append(container); -
trunk/Tools/DumpRenderTree/qt/DumpRenderTreeQt.h
r83137 r86447 90 90 91 91 LayoutTestController *layoutTestController() const { return m_controller; } 92 EventSender *eventSender() const { return m_eventSender; }93 92 TextInputController *textInputController() const { return m_textInputController; } 94 93 QString persistentStoragePath() const { return m_persistentStoragePath; } … … 185 184 virtual ~WebPage(); 186 185 QWebInspector* webInspector(); 186 EventSender* eventSender(); 187 187 void closeWebInspector(); 188 188 … … 217 217 private: 218 218 QWebInspector* m_webInspector; 219 EventSender* m_eventSender; 219 220 QList<QWebFrame*> m_pendingGeolocationRequests; 220 221 DumpRenderTree *m_drt; -
trunk/Tools/DumpRenderTree/unix/TestNetscapePlugin/TestNetscapePlugin.cpp
r86086 r86447 99 99 else if (strcasecmp(argn[i], "onSetWindow") == 0 && !obj->onSetWindow) 100 100 obj->onSetWindow = strdup(argv[i]); 101 else if (!strcasecmp(argn[i], "src") && strstr(argv[i], "plugin-document-has-focus.pl")) { 102 browser->setvalue(instance, NPPVpluginWindowBool, false); 103 obj->testKeyboardFocusForPlugins = TRUE; 104 } 101 105 } 102 106 … … 164 168 } 165 169 170 if (obj->testKeyboardFocusForPlugins) { 171 obj->eventLogging = true; 172 browser->setvalue(instance, NPPVpluginWindowBool, false); 173 executeScript(obj, "eventSender.keyDown('A');"); 174 } 166 175 } 167 176 … … 293 302 case KeyRelease: 294 303 pluginLog(instance, "keyUp '%c'", keyEventToChar(&evt->xkey)); 304 if (obj->testKeyboardFocusForPlugins) { 305 obj->eventLogging = false; 306 obj->testKeyboardFocusForPlugins = FALSE; 307 executeScript(obj, "layoutTestController.notifyDone();"); 308 } 295 309 break; 296 310 case KeyPress:
Note: See TracChangeset
for help on using the changeset viewer.