Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Emulate Touch Screen option absent, Device Emulation provides no touch screen response

I am working on a mobile website at the moment and I refreshed the page, Chrome quit unexpectedly, and since then all touch screen emulation is absent and/or failing.

Chrome Version: 36.0.1985.125 m, OS: Windows 7 Ultimate SP1

Google Chrome suddenly and unexpectedly stopped emulating devices properly. All touch screen functionality has been disabled and apparently removed. When I emulate a device, the Sensors box fails to be checked and upon inspection, does not show any 'Emulate Touch Screen' option.

I have tried the following, all in conjunction:

  • Uninstalling/Reinstalling Chrome and deleting all personal settings, including uninstalling all extensions, restoring all defaults, etc.
  • Restarting the computer
  • Running anti-virus software
  • EDIT: Installed Chrome Canary which produced the exact same problem

Please let me know if there are any other relevant details that I might need to add.

Missing 'Emulate Touch Screen'

like image 655
Matt Avatar asked Jul 19 '14 03:07

Matt


2 Answers

Sorry about this. We overhauled the touch emulation in Chrome 36 to be much more accurate (sharing code with what really happens in Chrome Android): https://plus.sandbox.google.com/+RickByers/posts/CBCmhVttj5C. In the process we ended up disabling touch emulation when real touch support was present (at the time we thought this was no big deal because if you've got a real touchscreen why would you want to fake one with mouse?). But some Windows PCs report that they have a touchscreen when in fact they don't really (Eg. Visual Studio installs a touch screen emulator I believe).

We're fixing this at http://crbug.com/395531 - hopefully there will be a Chrome Canary build soon that re-enables touch emulation in these cases.

In the meantime you can mostly work around the issue by disabling Chrome's support for built-in touchscreens at chrome://flags/#touch-events. Make sure you set this back to 'Enabled' after Chrome is updated to fix the issue. With this disabled, some minor aspects of touch emulation (eg. DOM0 ontouchstart= handlers) will not work properly.

like image 100
Rick Byers Avatar answered Oct 12 '22 08:10

Rick Byers


Stop the "Tablet PC Input Service" and restart chrome. If chrome thinks you have a touch screen, it won't let you emulate one.

I stumbled across the answer here: https://github.com/Modernizr/Modernizr/issues/880

like image 40
Matt White Avatar answered Oct 12 '22 07:10

Matt White