Setting to hide boost content
For users who prefers only original content (without boosts), this adds a setting to hide the boosts content in the timeline, with a button to reveal it.

Interesting how it shows the toot but hides the content. I’ve been meaning to suggest a feature to filter out toots based on content. E.g. if I follow someone for their tech content but don’t want to see their sports content or whatever.
This kind of UI might be good for that too. I’m sure it’d avoid a lot of complexity that you’d run into if you tried to hide those toots altogether.
I'm not 100% sure we'll want it like that. If the goal is to hide the content, it could literally return EmptyView() instead of the status? But even there we could have some side effects.
In fact I was hesitating between hiding the content (as provided) and completely removing the posts from the list (globally or per user).
How would this relate to Mastodon's built-in "hide boosts" feature?
Yeah, side effects from returning an empty view could be stuff like saying “2 new posts” but only showing 1, or showing none, etc.
Yeah, side effects from returning an empty view could be stuff like saying “2 new posts” but only showing 1, or showing none, etc.
If the choice is to completely hide boosts, I wouldn't do that with EmptyView but by filtering the data source instead.
Make sense but TimelineViewModel is far from simple and probably time for a refactor if we need to inject user settings on top of that. But sound good to filter at the datasource level.
How would this relate to Mastodon's built-in "hide boosts" feature?
You're right! This is already built-in with Mastodon API, on a per-user basis. I'll try it use that.
The "API way" is here: https://github.com/Dimillian/IceCubesApp/pull/305