Skip to content

Conversation

@mattcosta7
Copy link
Contributor

@mattcosta7 mattcosta7 commented Dec 15, 2025

Closing - No meaningful performance impact

This PR was originally created as part of the INP optimization effort (#7312), but upon review, the change has no measurable performance impact.

What the change does

// Before
const style = window.getComputedStyle(element)
if (style.display === 'none') {
  return
}
if (style.visibility === 'hidden') {
  return
}

// After  
const {display, visibility} = window.getComputedStyle(element)
if (display === 'none' || visibility === 'hidden') {
  return
}

Why it doesn't matter

Both versions call getComputedStyle exactly once. The original code was NOT calling it twice - it stored the result in a variable and read properties from it.

The only differences are:

  • Destructuring syntax (style preference, not performance)
  • One combined if instead of two (micro-optimization with no measurable impact)

Conclusion

This is a code style change, not a performance optimization. Closing to keep the PR set focused on changes with actual INP impact.

Combine display and visibility checks into a single getComputedStyle call.

Part of #7312
@changeset-bot
Copy link

changeset-bot bot commented Dec 15, 2025

🦋 Changeset detected

Latest commit: 9bc4202

The changes in this PR will be included in the next version bump.

This PR includes changesets to release 1 package
Name Type
@primer/react Patch

Not sure what this means? Click here to learn what changesets are.

Click here if you're a maintainer who wants to add another changeset to this PR

@github-actions github-actions bot added the integration-tests: recommended This change needs to be tested for breaking changes. See https://arc.net/l/quote/tdmpakpm label Dec 15, 2025
@github-actions
Copy link
Contributor

👋 Hi, this pull request contains changes to the source code that github/github-ui depends on. If you are GitHub staff, test these changes with github/github-ui using the integration workflow. Or, apply the integration-tests: skipped manually label to skip these checks.

Copy link
Contributor Author

Closing - this change has no meaningful performance impact. See updated PR description for details.

@mattcosta7 mattcosta7 closed this Dec 15, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

integration-tests: recommended This change needs to be tested for breaking changes. See https://arc.net/l/quote/tdmpakpm

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants