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

Assign components to their HTMLElements #626

Merged
merged 5 commits into from
May 28, 2024

Conversation

stonko1994
Copy link
Collaborator

@stonko1994 stonko1994 commented May 23, 2024

Description

Problem

We are trying to fix an issue on touch devices that certain elements, which are always visible, need to be touched twice in order to trigger the desired click action. This affects the AdSkipButton and the AdClickOverlay.

See this PR for more details on the problem and the solution: #627

Changes

As preparation for fixing the problem in a feasible way, this PR attaches the Component instances to their corresponding DOM / HTMLElements for easier access. This removes the need to traverse all components and find the correct instance e.g. in a touchend listener.

Details

  • A new type (HTMLElementWithComponent) was introduced to prevent any casts. This type adds an optional component attribute to the HTMLElement for setting and accessing of it.
    The DOM constructor was extended to allow passing the Component on DOM element creation.
  • Only the root DOM element of Components gets the instance attached. This means that child components from elements (e.g. a Label, which is a child element of Button) do not have any component attached to it. A parent lookup needs to be performed to get the component from those elements. This was done to prevent confusion about where to get the instance and where not.

Checklist (for PR submitter and reviewers)

  • CHANGELOG entry

@stonko1994 stonko1994 marked this pull request as ready for review May 23, 2024 13:21
@stonko1994 stonko1994 requested a review from Andr3wid May 23, 2024 13:22
Copy link
Contributor

@Andr3wid Andr3wid left a comment

Choose a reason for hiding this comment

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

Nicely separated PRs 🙌

@stonko1994 stonko1994 merged commit ada2d66 into develop May 28, 2024
2 checks passed
@stonko1994 stonko1994 deleted the feature/assign-components-to-html-elements branch May 28, 2024 06:05
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