{"action":"created","issue":{"url":"https://api.github.com/repos/kivy/kivy/issues/4078","repository_url":"https://api.github.com/repos/kivy/kivy","labels_url":"https://api.github.com/repos/kivy/kivy/issues/4078/labels{/name}","comments_url":"https://api.github.com/repos/kivy/kivy/issues/4078/comments","events_url":"https://api.github.com/repos/kivy/kivy/issues/4078/events","html_url":"https://github.com/kivy/kivy/issues/4078","id":139922130,"number":4078,"title":"HIDInputMotionEventProvider class should include \"absolute\" options (fixes eGalax problems)","user":{"login":"dgoadby","id":1812006,"avatar_url":"https://avatars1.githubusercontent.com/u/1812006?v=4","gravatar_id":"","url":"https://api.github.com/users/dgoadby","html_url":"https://github.com/dgoadby","followers_url":"https://api.github.com/users/dgoadby/followers","following_url":"https://api.github.com/users/dgoadby/following{/other_user}","gists_url":"https://api.github.com/users/dgoadby/gists{/gist_id}","starred_url":"https://api.github.com/users/dgoadby/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/dgoadby/subscriptions","organizations_url":"https://api.github.com/users/dgoadby/orgs","repos_url":"https://api.github.com/users/dgoadby/repos","events_url":"https://api.github.com/users/dgoadby/events{/privacy}","received_events_url":"https://api.github.com/users/dgoadby/received_events","type":"User","site_admin":false},"labels":[{"id":712641310,"url":"https://api.github.com/repos/kivy/kivy/labels/stale","name":"stale","color":"c5def5","default":false}],"state":"closed","locked":false,"assignee":null,"assignees":[],"milestone":{"url":"https://api.github.com/repos/kivy/kivy/milestones/26","html_url":"https://github.com/kivy/kivy/milestone/26","labels_url":"https://api.github.com/repos/kivy/kivy/milestones/26/labels","id":1075858,"number":26,"title":"2.0.0","description":"","creator":{"login":"dessant","id":7513068,"avatar_url":"https://avatars0.githubusercontent.com/u/7513068?v=4","gravatar_id":"","url":"https://api.github.com/users/dessant","html_url":"https://github.com/dessant","followers_url":"https://api.github.com/users/dessant/followers","following_url":"https://api.github.com/users/dessant/following{/other_user}","gists_url":"https://api.github.com/users/dessant/gists{/gist_id}","starred_url":"https://api.github.com/users/dessant/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/dessant/subscriptions","organizations_url":"https://api.github.com/users/dessant/orgs","repos_url":"https://api.github.com/users/dessant/repos","events_url":"https://api.github.com/users/dessant/events{/privacy}","received_events_url":"https://api.github.com/users/dessant/received_events","type":"User","site_admin":false},"open_issues":113,"closed_issues":105,"state":"open","created_at":"2015-04-20T19:06:41Z","updated_at":"2018-05-07T22:35:56Z","due_on":null,"closed_at":null},"comments":3,"created_at":"2016-03-10T15:29:20Z","updated_at":"2018-05-07T22:35:56Z","closed_at":"2018-05-07T22:35:56Z","author_association":"NONE","body":"I am using an eGalax touch screen. Linux recognises this USB device ok. The problem is the eGalax touch co-ordinates are absolute so getting the calibration right involves telling Kivy the absolute upper and lower limits of X & Y. \n\nTo add my eGalax touch to the config.ini [Input] section I need to add:\n\n`eGalax=hidinput,/dev/input/event2,invert_x=1, min_abs_x=112,max_abs_x=1949,min_abs_y=166,max_abs_y=1877`\n\nThe problem is although the ?_abs_? tokens included in the code and are checked for, they are not included in the list of valid options for the HIDInputMotionEventProvider class so any use of them is rejected with an error message.\n\nThis is the current class:\n\n`class HIDInputMotionEventProvider(MotionEventProvider):\n        options = ('min_position_x', 'max_position_x',\n                   'min_position_y', 'max_position_y',\n                   'min_pressure', 'max_pressure',\n                   'invert_x', 'invert_y', 'rotation')`\n\nThe fix is simple, just add the ?_abs_? options to the class like this:\n\n`class HIDInputMotionEventProvider(MotionEventProvider):\n        options = ('min_position_x', 'max_position_x',\n                   'min_position_y', 'max_position_y',\n                   'min_pressure', 'max_pressure',\n                   'min_abs_x', 'max_abs_x',\n                   'min_abs_y, 'max_abs_y',\n                   'invert_x', 'invert_y', 'rotation')`\n\nI have applied this change to my code and it solves the problem and there are no side effects I can see.\n\nThe eGalax touch screen controller is becoming popular, because it is cheap. As the code was clearly written to handle absolute X & Y then I see no reason why this change cannot be made permanent.\n"},"comment":{"url":"https://api.github.com/repos/kivy/kivy/issues/comments/387227709","html_url":"https://github.com/kivy/kivy/issues/4078#issuecomment-387227709","issue_url":"https://api.github.com/repos/kivy/kivy/issues/4078","id":387227709,"user":{"login":"tshirtman","id":22759,"avatar_url":"https://avatars1.githubusercontent.com/u/22759?v=4","gravatar_id":"","url":"https://api.github.com/users/tshirtman","html_url":"https://github.com/tshirtman","followers_url":"https://api.github.com/users/tshirtman/followers","following_url":"https://api.github.com/users/tshirtman/following{/other_user}","gists_url":"https://api.github.com/users/tshirtman/gists{/gist_id}","starred_url":"https://api.github.com/users/tshirtman/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/tshirtman/subscriptions","organizations_url":"https://api.github.com/users/tshirtman/orgs","repos_url":"https://api.github.com/users/tshirtman/repos","events_url":"https://api.github.com/users/tshirtman/events{/privacy}","received_events_url":"https://api.github.com/users/tshirtman/received_events","type":"User","site_admin":false},"created_at":"2018-05-07T22:35:56Z","updated_at":"2018-05-07T22:35:56Z","author_association":"OWNER","body":"closing as #5652 was merged, please reopen if needed."}}
{"actor":{"display_login":"tshirtman"}}