sindresorhus / Settings

⚙ Add a settings window to your macOS app in minutes
MIT License
1.43k stars 100 forks source link

Many log warnings when changing scale of TextFields inside SwiftUI views #99

Open Kinark opened 1 year ago

Kinark commented 1 year ago

When you dynamically change the scale of a TextField (like when a @State changes) inside a SwiftUI view inside a Settings Panel, a warning appears in the XCode log:

<_TtGC7SwiftUI16PlatformViewHostGVS_P10$1d0f7449832PlatformViewRepresentableAdaptorVS_P10$1d104826024PlatformTextFieldAdaptor__: 0x12576d9e0> has an maximum length (21.666667) that doesn't satisfy min (21.666667) <= max (21.666667).

It also seems to log that warning on every change of scale, so when you change the scale with animation or apply a scale transition to a TextField, hundreds of warnings are printed on the log.

It seems to happen even when you don't scale the TextField directly (it also happens if you change scale of a View with a child TextField).

I don't think many people use scaling on TextField, but I ended up writing a nice effect using .scale and when I'm using it on a VStack with like, 5 TextFields, I got a ton of warnings.

Oh, thanks for making this package btw. The work you've done for the Swift open source community is ridiculous. Thanks a lot!

sindresorhus commented 1 year ago

I would first make sure that it doesn't happen if you do it directly in a SwiftUI app instead of in a settings view.

Kinark commented 1 year ago

@sindresorhus sorry for the delay, I actually tested that, but forgot to include int he bug report, sorry. It doesn't happen when doing that outside the Settings view.