Web developers writing for mobile devices will want to debug touch events on their desktop hardware lacking touch screens. We need to enable the emulation of touch events using the similar, mouse-related ones (like, mousedown -> touchstart).
Created attachment 124562 [details] Patch
Comment on attachment 124562 [details] Patch Attachment 124562 [details] did not pass qt-ews (qt): Output: http://queues.webkit.org/results/11371212
Comment on attachment 124562 [details] Patch Attachment 124562 [details] did not pass chromium-ews (chromium-xvfb): Output: http://queues.webkit.org/results/11360958
Comment on attachment 124562 [details] Patch This is a provisional patch, pending the commit of a patch for the bug 77105.
Comment on attachment 124562 [details] Patch Attachment 124562 [details] did not pass efl-ews (efl): Output: http://queues.webkit.org/results/11368589
Comment on attachment 124562 [details] Patch Attachment 124562 [details] did not pass gtk-ews (gtk): Output: http://queues.webkit.org/results/11367631
Created attachment 125299 [details] [PATCH] Rebased
Comment on attachment 125299 [details] [PATCH] Rebased View in context: https://bugs.webkit.org/attachment.cgi?id=125299&action=review > Source/WebCore/inspector/Inspector.json:1517 > + "description": "Toggles mouse event-based touch event emulation." "hidden" :true > Source/WebCore/inspector/InspectorDOMAgent.cpp:412 > + documents.at(i)->settings()->setTouchEventEmulationEnabled(enabled); What about the documents that are added / removed from the list dynamically? You should also adjust their settings. > Source/WebCore/inspector/front-end/Settings.js:48 > + emulateTouchEvents: false I don't think you need this change. > Source/WebCore/inspector/front-end/SettingsScreen.js:45 > + p.appendChild(this._createCheckboxSetting(WebInspector.UIString("Emulate touch events"), WebInspector.settings.emulateTouchEvents)); This should not be under the showDockToRight.
Created attachment 125323 [details] Patch
Comment on attachment 125323 [details] Patch Attachment 125323 [details] did not pass efl-ews (efl): Output: http://queues.webkit.org/results/11416361
Created attachment 125335 [details] [PATCH] Fixed for builds without ENABLE(TOUCH_EVENTS)
Created attachment 125344 [details] [PATCH] Fixed unused param in conditional compilation
Created attachment 125615 [details] [PATCH] Return error from agent method if touch events are not enabled in webkit
Comment on attachment 125615 [details] [PATCH] Return error from agent method if touch events are not enabled in webkit View in context: https://bugs.webkit.org/attachment.cgi?id=125615&action=review > Source/WebCore/inspector/InspectorDOMAgent.cpp:409 > + m_document->settings()->setTouchEventEmulationEnabled(enabled); You should do this via the page agent. > Source/WebCore/inspector/InspectorDOMAgent.cpp:1069 > + m_state->setBoolean(DOMAgentState::touchEventEmulationEnabled, enabled); You should move this into the updateTouchEventEmulationInPage. > Source/WebCore/inspector/front-end/SettingsScreen.js:42 > + var p = this._appendSection(WebInspector.UIString("General")); I think we should rename "Network" to "User Agent", move Disable cache into "General"
Comment on attachment 125615 [details] [PATCH] Return error from agent method if touch events are not enabled in webkit View in context: https://bugs.webkit.org/attachment.cgi?id=125615&action=review > Source/WebCore/page/EventHandler.cpp:1782 > + I thought backend was ready for the emulation. Please fix this separately as a follow up to the backend change.
Created attachment 125639 [details] Patch
Comment on attachment 125639 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=125639&action=review > Source/WebCore/inspector/InspectorDOMAgent.cpp:222 > + m_state->setBoolean(DOMAgentState::touchEventEmulationEnabled, false); You should hide this. > Source/WebCore/inspector/InspectorDOMAgent.cpp:1068 > + if (m_state->getBoolean(DOMAgentState::touchEventEmulationEnabled) == enabled) You could put this above the ENABLE as an entry guard. > Source/WebCore/inspector/InspectorDOMAgent.cpp:1072 > + *error = "Touch event emulation not enabled"; Touch events emulation not supported. > Source/WebCore/inspector/front-end/SettingsScreen.js:43 > + if (Preferences.showDockToRight && Preferences.exposeDisableCache) { && -> || > Source/WebCore/page/EventHandler.cpp:1783 > +#if ENABLE(TOUCH_EVENTS) Should be in a separate change.
Created attachment 125643 [details] [PATCH] Comments addressed
Comment on attachment 125643 [details] [PATCH] Comments addressed Attachment 125643 [details] did not pass gtk-ews (gtk): Output: http://queues.webkit.org/results/11429420
Comment on attachment 125643 [details] [PATCH] Comments addressed Attachment 125643 [details] did not pass efl-ews (efl): Output: http://queues.webkit.org/results/11433334
Created attachment 125645 [details] [PATCH] Efl build fixed
Comment on attachment 125645 [details] [PATCH] Efl build fixed Clearing flags on attachment: 125645 Committed r106811: <http://trac.webkit.org/changeset/106811>
All reviewed patches have been landed. Closing bug.