← 输入框|github.com|刷新
Skip to content

Feather(Views): Fix theme section clipping on iOS 26 - #492

Merged
claration merged 1 commit into
claration:mainfrom
shgew:fix/theme-section-clipping
Oct 2, 2025
Merged

claration merged 1 commit into
claration:mainfrom
shgew:fix/theme-section-clipping

Conversation

@shgew

@shgew shgew commented Oct 2, 2025

Copy link
Copy Markdown
Contributor
iOS Version Before After
iOS 18
after-before-18.mov
after-before-18.mov
iOS 26
before-26.mov
after-26.mov

@claration

Copy link
Copy Markdown
Owner

hmmmm this is a solution but maybe try increasing the corner radiuses of those cells in ios 26?

@shgew

shgew commented Oct 2, 2025

Copy link
Copy Markdown
Contributor Author

hmmmm this is a solution but maybe try increasing the corner radiuses of those cells in ios 26?

Do you mean instead of this solution or in addition to?

@claration

claration commented Oct 2, 2025 •

Copy link
Copy Markdown
Owner

Well the way feather supports liquid glass is via userdefaults boolean, so we cannot use an #if available unless iOS 26 has some layout issues that can appear. So dont this unless necessary.

You could probably make it not clip regardless of version and I would happily accept it.

@shgew

shgew commented Oct 2, 2025 •

Copy link
Copy Markdown
Contributor Author

@khcrysalis Updated with an entity to determine Liquid Glass status. Please let me know if I should remove the conditional iOS check.
The reason I introduced it is because .listSectionMargins(.horizontal, 0) modifier is only available from iOS 26. I couldn't find any other way to remove the clipping without changing the style of the whole list.

If you compile the project with Xcode 16, then it won't compile with the check in place.

@claration

Copy link
Copy Markdown
Owner

@shgew that change was unnecessary and it worked fine before

we also cannot use newer sdk features at this moment.

@shgew

shgew commented Oct 2, 2025 •

Copy link
Copy Markdown
Contributor Author

@shgew that change was unnecessary and it worked fine before

sorry. not sure what you mean. I reverted clipping changes. let me know if I misunderstood you.

@claration

Copy link
Copy Markdown
Owner

I was talking about liquid glass status, we don't need it.

@claration

claration commented Oct 2, 2025 •

Copy link
Copy Markdown
Owner

Look, you don't understand me clearly, let me explain what feather does for liquid glass.

It does not use iOS 26 SDK. It cannot use new SDK feature, nor should the settings for liquid glass should be changed (not sure why you even changed it in the first place, it works?).

While your original PR has good intentions it seems like you lack understanding of where I'm coming from and why the project is structured this way.

We cannot fix clipping but we can most likely change the corner radius of the cells by checking the Boolean from the that liquid glass userdefault instead of making a#if available check.

@shgew

shgew commented Oct 2, 2025

Copy link
Copy Markdown
Contributor Author

I was talking about liquid glass status, we don't need it.

So... Do you want me to just unconditionally increase corner radius of those cells or base the check solely on @AppStorage("com.apple.SwiftUI.IgnoreSolariumLinkedOnCheck")?

@claration

Copy link
Copy Markdown
Owner

Yes

@shgew

shgew commented Oct 2, 2025

Copy link
Copy Markdown
Contributor Author

Thanks for clarifying your approach. I eventually understood what you meant, but to be honest it took me quite a while to get there because the responses were very short and I had to keep asking for more details.

Also, I want to note that the comment “you lack understanding of where I’m coming from” felt a bit unfair. The difficulty wasn’t that I didn’t want to understand, it’s that it took a lot of back-and-forth before your reasoning became clear. More upfront context from your side would have made this much smoother.

I’ll adjust this PR accordingly now that I understand the direction.

@shgew

shgew commented Oct 2, 2025 •

Copy link
Copy Markdown
Contributor Author

As for the LiquidGlassStatus, the reason I introduced it is because it’s a testable entity, and it also future-proofs the project. It allows retrieving the status in a clean way when the project eventually transitions to Xcode 26, taking care of UIDesignRequiresCompatibility. And it already makes life easier for contributors that work with Xcode 26.

Add LiquidGlassStatus

Revert clipping changes

Revert "Add LiquidGlassStatus"

This reverts commit 568ec82.

Change corner radius based on liquid glass avaiability
@shgew
shgew force-pushed the fix/theme-section-clipping branch from dff9b55 to 08f2401 Compare October 2, 2025 14:32
@claration

Copy link
Copy Markdown
Owner

My apologies for that response I made, was annoyed since that push seemed unrelated. Should've been more clear.

This recent change seems good, when it comes to transitioning to the iOS 26 sdk in the future we can just lookup these userdefaults in the future to get rid of any code that uses these quite easily, so it shouldn't really be a problem. Though, for now we don't have plans on transitioning because the toggle in settings does the job quite well already.

@shgew

shgew commented Oct 2, 2025

Copy link
Copy Markdown
Contributor Author

Totally fair. I understand.

@claration

Copy link
Copy Markdown
Owner

Thank you very much!

@claration
claration merged commit 5a74564 into claration:main Oct 2, 2025
Ragekill3377 added a commit to Ragekill3377/Portal that referenced this pull request Aug 29, 2026
Add LiquidGlassStatus

Revert clipping changes

Revert "Add LiquidGlassStatus"

This reverts commit 568ec82.

Change corner radius based on liquid glass avaiability
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