{"id":14960909,"url":"https://github.com/lokosologames/unity_pinchablescrollrect","last_synced_at":"2025-10-24T19:30:32.421Z","repository":{"id":59379978,"uuid":"458506405","full_name":"LokoSoloGames/Unity_PinchableScrollRect","owner":"LokoSoloGames","description":"Unity - Pinchable Scroll Rect allow user to zoom in and out on the Scroll Rect with both Touch Input and Mouse Input","archived":false,"fork":false,"pushed_at":"2023-07-15T18:33:30.000Z","size":517,"stargazers_count":44,"open_issues_count":0,"forks_count":2,"subscribers_count":1,"default_branch":"master","last_synced_at":"2024-10-10T10:24:20.457Z","etag":null,"topics":["csharp","unity","unity-input","unity-scripts","unity-touch","unity-ui"],"latest_commit_sha":null,"homepage":"https://youtu.be/y7vdNfElQzw","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/LokoSoloGames.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2022-02-12T11:47:57.000Z","updated_at":"2024-09-07T16:13:39.000Z","dependencies_parsed_at":"2024-09-29T06:19:14.253Z","dependency_job_id":null,"html_url":"https://github.com/LokoSoloGames/Unity_PinchableScrollRect","commit_stats":{"total_commits":14,"total_committers":1,"mean_commits":14.0,"dds":0.0,"last_synced_commit":"cc04f1a02ed77442f6edadd96c91ddfad0db2854"},"previous_names":[],"tags_count":8,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/LokoSoloGames%2FUnity_PinchableScrollRect","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/LokoSoloGames%2FUnity_PinchableScrollRect/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/LokoSoloGames%2FUnity_PinchableScrollRect/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/LokoSoloGames%2FUnity_PinchableScrollRect/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/LokoSoloGames","download_url":"https://codeload.github.com/LokoSoloGames/Unity_PinchableScrollRect/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":219868063,"owners_count":16555878,"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":["csharp","unity","unity-input","unity-scripts","unity-touch","unity-ui"],"created_at":"2024-09-24T13:23:24.868Z","updated_at":"2025-10-24T19:30:32.050Z","avatar_url":"https://github.com/LokoSoloGames.png","language":"C#","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Pinchable ScrollRect for Unity\nPinchable ScrollRect allows users to zoom in and out on the ScrollRect with both touches pinching input or mouse scroll input. \n\n[![openupm](https://img.shields.io/npm/v/com.lokosolo.pinchable-scrollrect?label=openupm\u0026registry_uri=https://package.openupm.com)](https://openupm.com/packages/com.lokosolo.pinchable-scrollrect/)\n\n## Features\n* Customizable pinching behaviour with inherited Unity ScrollRect behaviour.\n* Overridden OnScroll behaviour for mouse scroll to perform zooming behaviour.\n* Customized pinching gesture to perform the same zooming behaviour as mouse scroll input for touches.\n* Transformed standard Unity Event IPointerUp \u0026 IPointerDown interface into IPinch interface for further customization of touch behaviour\n\n## Getting Started\n* Use it same as the way you use the Unity ScrollRect component.\n* Add a UI/ScrollView from the GameObject Menu\n* Select the ScrollRect added, click on the context dropdown menu\n* Select \"Replace as Pinchable\"\n\n## Important Remarks\n* PinchInputDetector component must have a higher execution order than PinchableScrollRect component or any IPinchHandler component in order to consume the original OnDrag pointer event beforehand.\n* Without PinchInputDetector, the ScrollRect can still perform zooming with mouse scroll input but not touch input.\n* The absolute minimum scale of the Content of the ScrollRect is 1. A customizable lower bound and upper bound of the scale can be set on inspector.\n* Any third touches detected after pinching will be ignore, even after both pinching touches are lifted.\n* Editor script is needed in order to serialize the extra fields added to the PinchableScrollRect component.\n\n## License\nThis plugin is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flokosologames%2Funity_pinchablescrollrect","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Flokosologames%2Funity_pinchablescrollrect","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flokosologames%2Funity_pinchablescrollrect/lists"}