{"id":20465176,"url":"https://github.com/spkersten/flutter_transparent_pointer","last_synced_at":"2025-04-13T08:42:39.952Z","repository":{"id":56841439,"uuid":"323886750","full_name":"spkersten/flutter_transparent_pointer","owner":"spkersten","description":null,"archived":false,"fork":false,"pushed_at":"2024-04-12T14:27:28.000Z","size":10,"stargazers_count":22,"open_issues_count":0,"forks_count":3,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-03-27T00:22:01.382Z","etag":null,"topics":["flutter","gestures","hittesting"],"latest_commit_sha":null,"homepage":"https://pub.dev/packages/transparent_pointer","language":"Dart","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/spkersten.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}},"created_at":"2020-12-23T11:41:00.000Z","updated_at":"2025-03-14T07:09:52.000Z","dependencies_parsed_at":"2024-04-12T15:41:33.671Z","dependency_job_id":"99ee69ac-ff8c-4bc6-86ac-58350854ab00","html_url":"https://github.com/spkersten/flutter_transparent_pointer","commit_stats":{"total_commits":2,"total_committers":1,"mean_commits":2.0,"dds":0.0,"last_synced_commit":"1dda26f629301a587bc1ad5b669622720737d4e1"},"previous_names":[],"tags_count":3,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/spkersten%2Fflutter_transparent_pointer","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/spkersten%2Fflutter_transparent_pointer/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/spkersten%2Fflutter_transparent_pointer/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/spkersten%2Fflutter_transparent_pointer/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/spkersten","download_url":"https://codeload.github.com/spkersten/flutter_transparent_pointer/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248687524,"owners_count":21145724,"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":["flutter","gestures","hittesting"],"created_at":"2024-11-15T13:17:37.494Z","updated_at":"2025-04-13T08:42:39.929Z","avatar_url":"https://github.com/spkersten.png","language":"Dart","funding_links":[],"categories":[],"sub_categories":[],"readme":"# transparent_pointer\n\nTransparentPointer is a widget that is invisible for its parent to hit testing,\nbut still allows its subtree to receive pointer events. This is useful to allow\na gesture detector that is visually behind another widget to still receive pointer\nevents, while at the same time allowing that other widget to receive those events\nas well. \n\n## Example\n\nIn this example, a drag can be started anywhere in the widget, including on\ntop of the text button, even though the button is visually in front of the\nbackground gesture detector. At the same time, the button is tappable.\n\n```dart\nclass MyWidget extends StatelessWidget {\n  @override\n  Widget build(BuildContext context) {\n    return Stack(\n      children: [\n        GestureDetector(\n          behavior: HitTestBehavior.opaque,\n          onVerticalDragStart: (_) =\u003e print(\"Background drag started\"),\n        ),\n        Positioned(\n          top: 60,\n          left: 60,\n          height: 60,\n          width: 60,\n          child: TransparentPointer(\n            child: TextButton(\n              child: Text(\"Tap me\"),\n              onPressed: () =\u003e print(\"You tapped me\"),\n            ),\n          ),\n        ),\n      ],\n    );\n  }\n}\n```","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fspkersten%2Fflutter_transparent_pointer","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fspkersten%2Fflutter_transparent_pointer","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fspkersten%2Fflutter_transparent_pointer/lists"}