Skip to content

Conversation

@Kyle-Ye
Copy link
Collaborator

@Kyle-Ye Kyle-Ye commented Jan 3, 2026

No description provided.

@augmentcode
Copy link

augmentcode bot commented Jan 3, 2026

🤖 Augment PR Summary

Summary: This PR updates UIKit hosting integration to better track UIKit-driven state changes (traits, safe area, tint, clips) and to bridge UIKit animation blocks into OpenSwiftUI transactions.

Changes:

  • Added QuartzCore shims for the private CATransactionCompletionItem and a C helper (_CATransactionCompletionItem()) to support animation completion/listener wiring.
  • Extended UIKit private safe wrappers on UIView to expose current animation block state, duration, and curve.
  • Expanded UIKit↔OpenSwiftUI conversion utilities (contrast, content size category, layout direction, legibility weight, size classes).
  • Introduced Animation→Core Animation conversion helpers and a Transaction.currentUIViewTransaction(canDisableAnimations:) helper to synthesize transactions from UIKit animation blocks.
  • Updated _UIHostingView to react to clipsToBounds, tint changes, trait changes (optionally emitting an empty transaction), and safe-area changes.
  • Added an alwaysOnBridge reference to UIHostingController and a placeholder safe-area change callback hook.

Technical Notes: The new transaction bridging relies on private UIKit/QuartzCore SPI via “safe wrapper” indirection and compiles conditionally based on QuartzCore availability.

🤖 Was this summary useful? React with 👍 or 👎

Copy link

@augmentcode augmentcode bot left a comment

Choose a reason for hiding this comment

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

Review completed. 1 suggestions posted.

Fix All in Augment

Comment augment review to trigger a new review at any time.

}
}

open override func tintColorDidChange() {
Copy link

Choose a reason for hiding this comment

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

UIView override hooks like tintColorDidChange() typically need to call super to preserve UIKit’s internal tint propagation/behavior; otherwise some subview updates can be skipped. This likely also applies to the new traitCollectionDidChange(_:) and safeAreaInsetsDidChange() overrides in this same block.

Fix This in Augment

🤖 Was this useful? React with 👍 or 👎

@codecov
Copy link

codecov bot commented Jan 3, 2026

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 14.29%. Comparing base (15e20e7) to head (d4d88fa).
⚠️ Report is 1 commits behind head on main.

❗ There is a different number of reports uploaded between BASE (15e20e7) and HEAD (d4d88fa). Click for more details.

HEAD has 1 upload less than BASE
Flag BASE (15e20e7) HEAD (d4d88fa)
2 1
Additional details and impacted files
@@             Coverage Diff             @@
##             main     #702       +/-   ##
===========================================
- Coverage   28.75%   14.29%   -14.46%     
===========================================
  Files         589      563       -26     
  Lines       35836    33190     -2646     
===========================================
- Hits        10305     4745     -5560     
- Misses      25531    28445     +2914     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@Kyle-Ye Kyle-Ye merged commit c3a3efb into main Jan 3, 2026
7 of 11 checks passed
@Kyle-Ye Kyle-Ye deleted the feature/ui_hostingview branch January 3, 2026 10:26
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