{"id":19665964,"url":"https://github.com/microsoftedge/pan-tool","last_synced_at":"2025-04-28T22:31:32.368Z","repository":{"id":137928560,"uuid":"203646900","full_name":"MicrosoftEdge/pan-tool","owner":"MicrosoftEdge","description":"A tool that injects touch input on the screen. It sends pointerdown, pointerupdate and pointerup to simulate pan, scrolling and fling gestures.","archived":false,"fork":false,"pushed_at":"2022-10-25T17:13:03.000Z","size":27,"stargazers_count":17,"open_issues_count":2,"forks_count":10,"subscribers_count":55,"default_branch":"master","last_synced_at":"2025-04-05T11:34:19.041Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/MicrosoftEdge.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":"SECURITY.md","support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2019-08-21T18:59:12.000Z","updated_at":"2025-03-15T21:57:44.000Z","dependencies_parsed_at":null,"dependency_job_id":"d5a01e7f-9c5e-4316-b326-1ecdd3fb3e07","html_url":"https://github.com/MicrosoftEdge/pan-tool","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MicrosoftEdge%2Fpan-tool","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MicrosoftEdge%2Fpan-tool/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MicrosoftEdge%2Fpan-tool/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MicrosoftEdge%2Fpan-tool/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/MicrosoftEdge","download_url":"https://codeload.github.com/MicrosoftEdge/pan-tool/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":251397611,"owners_count":21583041,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-11-11T16:25:40.918Z","updated_at":"2025-04-28T22:31:32.339Z","avatar_url":"https://github.com/MicrosoftEdge.png","language":"C++","funding_links":[],"categories":[],"sub_categories":[],"readme":"\r\n# Contributing\r\n\r\nThis project welcomes contributions and suggestions.  Most contributions require you to agree to a\r\nContributor License Agreement (CLA) declaring that you have the right to, and actually do, grant us\r\nthe rights to use your contribution. For details, visit https://cla.opensource.microsoft.com.\r\n\r\nWhen you submit a pull request, a CLA bot will automatically determine whether you need to provide\r\na CLA and decorate the PR appropriately (e.g., status check, comment). Simply follow the instructions\r\nprovided by the bot. You will only need to do this once across all repos using our CLA.\r\n\r\nThis project has adopted the [Microsoft Open Source Code of Conduct](https://opensource.microsoft.com/codeofconduct/).\r\nFor more information see the [Code of Conduct FAQ](https://opensource.microsoft.com/codeofconduct/faq/) or\r\ncontact [opencode@microsoft.com](mailto:opencode@microsoft.com) with any additional questions or comments.\r\n\r\n# About Pan Tool\r\n\r\nThis is a C++ tool that provides a way of injecting touch input on the primary monitor. \r\nIt sends pointerdown, pointerupdate and pointerup to simulate touch gestures. Depending \r\non the arguments passed to the tool, it can result in either tap, pan or a fling gesture.\r\n\r\nArguments that can be passed to the tool:\r\n  * repeat - number of times to repeat the input sequence. The default value is 1.\r\n  * startdelay - number of seconds to wait before starting any input. The default value is 1 second.\r\n  * segmentdelay - number of seconds to wait between each repetition of the input segment. The default value is 3 seconds.\r\n  * sequencedelay - number of seconds to wait between each input sequence of a segment. The default value is 3 seconds.\r\n  * distance - total number of pixels to move in a vertical direction. The default value is 500 pixels.\r\n  * duration - number of second to take to perform the pan gesture. The default value is 1 second.\r\n  * frequency - frequency/frame rate at which input needs to be injected. The default value is 100 frames per second.\r\n  * accelerate - accelerate injection tool instead of linear movement. The default value is false.\r\n  * onedir - do not reverse the pan direction after completing a input sequence. The default value is false\r\n  \r\nNote that touch input is injected at  100, 100 + distance.\r\n\r\nExample usage:\r\n1) pan.exe - Inject touch input using default values. This will inject touch gesture with a velocity of 500 pixels/sec.\r\n2) pan.exe distance 400 duration 0.75 repeat 10 - This command-line argument will inject touch gesture with velocity \r\n                                                  of 533.33 pixels/sec. This input sequence will be repeated 10 with \r\n                                                  delay of 3 seconds in between consecutive input.\r\n3) pan.exe accelerate - This command-line argument will inject touch gesture with non-linear velocity.\r\n4) pan.exe frequency 60 - This command-line argument will inject touch inputs with a time interval of 16.66ms instead \r\n                          of 10ms(default value).\r\n\r\nNote: This project requires VS 2019 to build.","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmicrosoftedge%2Fpan-tool","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmicrosoftedge%2Fpan-tool","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmicrosoftedge%2Fpan-tool/lists"}