Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: add support for gesture recognizer autocapture #196

Merged
merged 28 commits into from
Jul 16, 2024

Conversation

PouriaAmini
Copy link
Contributor

Summary

This PR adds support for gesture recognizer autocapture. A new property will be added to the [Amplitude] User Interaction event.

New property

[Amplitude] Gesture Recognizer: The class of the gesture recognizer that recognized a gesture. Possible values are Tap, Pinch, Rotation, Swipe, Pan, Screen Edge Pan, Long Press, and Custom Gesture for gestures recognized by a custom UIGestureRecognizer.

Checklist

  • Does your PR title have the correct title format?
  • Does your PR have a breaking change?: no

PouriaAmini and others added 26 commits July 2, 2024 09:28
@PouriaAmini PouriaAmini requested a review from crleona July 16, 2024 18:06
@PouriaAmini PouriaAmini self-assigned this Jul 16, 2024
Copy link
Collaborator

@crleona crleona left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM!

@PouriaAmini PouriaAmini merged commit 956b313 into amplitude:feature-autocapture Jul 16, 2024
3 checks passed
PouriaAmini added a commit that referenced this pull request Aug 8, 2024
* feat: add user interactions capture (#190)

* Fix indentation issue

* feat: add user interactions capture

* fix: fix typo

* fix: remove support for UITextField action message capture

* refactor: add dispatch once for method swizzling

* fix: remove support for UISlider to reduce noise

* feat: add support for UITextField and UISlider event capture

* style: remove return keyword for one line functions

* fix: fix typo

* feat: add support for text field gained/lost focus

* fix: fix lint

* fix: remove tag as textfield title

* refactor: refactor title and shouldTrack

* refactor: add a protocol to track control elements

* feat: add support for uitextview autocapture (#195)

* Fix indentation issue

* feat: add user interactions capture

* fix: fix typo

* fix: remove support for UITextField action message capture

* refactor: add dispatch once for method swizzling

* fix: remove support for UISlider to reduce noise

* feat: add support for UITextField and UISlider event capture

* style: remove return keyword for one line functions

* fix: fix typo

* feat: add support for text field gained/lost focus

* fix: fix lint

* fix: remove tag as textfield title

* refactor: refactor title and shouldTrack

* refactor: add a protocol to track control elements

* refactor: guard on action name

* feat: add support for uitextview capture

* fix: disable action method tracking support for UITextView

* fix: fix lint issue

* style: remove amp_ prefix from objc methods

* feat: add support for gesture recognizer autocapture (#196)

* Fix indentation issue

* feat: add user interactions capture

* fix: fix typo

* fix: remove support for UITextField action message capture

* refactor: add dispatch once for method swizzling

* fix: remove support for UISlider to reduce noise

* feat: add support for UITextField and UISlider event capture

* style: remove return keyword for one line functions

* fix: fix typo

* feat: add support for text field gained/lost focus

* fix: fix lint

* fix: remove tag as textfield title

* refactor: refactor title and shouldTrack

* refactor: add a protocol to track control elements

* refactor: guard on action name

* feat: add support for uitextview capture

* fix: disable action method tracking support for UITextView

* fix: fix lint issue

* style: remove amp_ prefix from objc methods

* feat: add support for gesture recognizers autocapture

* fix: fix lint issue

* fix: exclude unsupported gestures in tvos

* fix: track touchupinside and valuechanged only (#199)

* fix: just track touchupinside and valuechanged for some elements

* fix: fix tvos issue

* feat: capture control events for autocapture (#202)

* fix: just track touchupinside and valuechanged for some elements

* fix: fix tvos issue

* feat: capture control events

* fix: remove row selected event

* fix: track touchUpInside for any element (#203)

* fix: just track touchupinside and valuechanged for some elements

* fix: fix tvos issue

* feat: capture control events

* fix: remove row selected event

* fix: track any touchUpInside

* fix: capture image name as a fallback for buttons title

* fix: deprecate defaultTracking and add autocapture (#204)

* fix: deprecate defaultTracking and add autocapture

* fix: fix schema for the new test

* fix: fix typo

* fix: fix typo

* fix: support optionset for autocapture options

* fix: fix autocaptureoptions test

* fix: fix failing test

* fix: simplified the logic to deprecate defaultTracking

* style: make autocapture options for objc as properties

* fix: disable swiftui support for autocapture (#206)

* fix: disable swiftui support for autocapture

* fix: disable support for swiftui gesture recognizers autocapture

* fix: fix typo

* fix: filter scrolls for scrollable views

* fix: imporve support for swiftui

* fix: track screen name autocapture (#207)

* fix: change element viewController to screenName

* fix: remove title since it's already captured by screenName

* fix: track changes to defaultTracking after initialization (#208)

* fix: track changes to defaultTracking after initialization

* fix: replace defaultTracking with autocapture if changed

* fix: fix typo

* fix: fix nit

* style: rename parameter name
github-actions bot pushed a commit that referenced this pull request Aug 8, 2024
# [1.8.0](v1.7.0...v1.8.0) (2024-08-08)

### Features

* Feature Autocapture ([#209](#209)) ([4ab5673](4ab5673)), closes [#190](#190) [#195](#195) [#196](#196) [#199](#199) [#202](#202) [#203](#203) [#204](#204) [#206](#206) [#207](#207) [#208](#208)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants