{"action":"created","issue":{"url":"https://api.github.com/repos/koenbok/Framer/issues/245","labels_url":"https://api.github.com/repos/koenbok/Framer/issues/245/labels{/name}","comments_url":"https://api.github.com/repos/koenbok/Framer/issues/245/comments","events_url":"https://api.github.com/repos/koenbok/Framer/issues/245/events","html_url":"https://github.com/koenbok/Framer/issues/245","id":106126545,"number":245,"title":"Events.coffee should check for Utils.deviceType() before Utils.isTouch() when overriding Touch* events","user":{"login":"Cryclops","id":709153,"avatar_url":"https://avatars.githubusercontent.com/u/709153?v=3","gravatar_id":"","url":"https://api.github.com/users/Cryclops","html_url":"https://github.com/Cryclops","followers_url":"https://api.github.com/users/Cryclops/followers","following_url":"https://api.github.com/users/Cryclops/following{/other_user}","gists_url":"https://api.github.com/users/Cryclops/gists{/gist_id}","starred_url":"https://api.github.com/users/Cryclops/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Cryclops/subscriptions","organizations_url":"https://api.github.com/users/Cryclops/orgs","repos_url":"https://api.github.com/users/Cryclops/repos","events_url":"https://api.github.com/users/Cryclops/events{/privacy}","received_events_url":"https://api.github.com/users/Cryclops/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":1,"created_at":"2015-09-12T03:48:28Z","updated_at":"2015-09-17T06:57:27Z","closed_at":null,"body":"Currently we have:\r\n\r\n```coffeescript\r\n# Let's make sure the touch events work on desktop too\r\nif not Utils.isTouch()\r\n\tEvents.TouchStart = Events.MouseDown\r\n\tEvents.TouchEnd = Events.MouseUp\r\n\tEvents.TouchMove = Events.MouseMove\r\n```\r\n\r\nThis causes issues on 2-in-1 laptop computers (that have a touch screen), since Utils.isTouch() will return true (at least with Chrome on Windows). Consider the scenario where the designer is projecting their Framer prototype to a room. They'd probably prefer to use their mouse instead of touch while presenting so that the audience can follow along. Ideally, we'd support both, but that doesn't seem to be an option.\r\n\r\nSo before looking at Utils.isTouch(), look at `Utils.deviceType() == \"desktop\"`. If that's true, just go with mouse events. So more like:\r\n\r\n```coffeescript\r\nif Utils.deviceType() is \"desktop\" or not Utils.isTouch()\r\n\t...\r\n```\r\n\r\nWhat does everyone think?"},"comment":{"url":"https://api.github.com/repos/koenbok/Framer/issues/comments/140987039","html_url":"https://github.com/koenbok/Framer/issues/245#issuecomment-140987039","issue_url":"https://api.github.com/repos/koenbok/Framer/issues/245","id":140987039,"user":{"login":"jordandobson","id":39778,"avatar_url":"https://avatars.githubusercontent.com/u/39778?v=3","gravatar_id":"","url":"https://api.github.com/users/jordandobson","html_url":"https://github.com/jordandobson","followers_url":"https://api.github.com/users/jordandobson/followers","following_url":"https://api.github.com/users/jordandobson/following{/other_user}","gists_url":"https://api.github.com/users/jordandobson/gists{/gist_id}","starred_url":"https://api.github.com/users/jordandobson/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jordandobson/subscriptions","organizations_url":"https://api.github.com/users/jordandobson/orgs","repos_url":"https://api.github.com/users/jordandobson/repos","events_url":"https://api.github.com/users/jordandobson/events{/privacy}","received_events_url":"https://api.github.com/users/jordandobson/received_events","type":"User","site_admin":false},"created_at":"2015-09-17T06:57:27Z","updated_at":"2015-09-17T06:57:27Z","body":"+1 - Yes! I've run into this numerous times.\r\n\r\nI'm not sure if we shouldn't return isTouch... because it is touch however. Ideally it would support both. When I send protos to people with touch screens... some will touch the screen and others just use the mouse."}}