Skip to content

feat: Push ignored and hidden users to the bottom of the channel member list#833

Open
XavierRaine wants to merge 2 commits into
Fchat-Horizon:developmentfrom
XavierRaine:feat/resort-character-list-on-hide-ads
Open

feat: Push ignored and hidden users to the bottom of the channel member list#833
XavierRaine wants to merge 2 commits into
Fchat-Horizon:developmentfrom
XavierRaine:feat/resort-character-list-on-hide-ads

Conversation

@XavierRaine

@XavierRaine XavierRaine commented Jun 22, 2026

Copy link
Copy Markdown

Issue #150 discusses establishing feature parity between SlimCat's "Not Interested" and Horizon's "Hide Ads" functionality. Part of what is discussed in that issue is the prospect of resorting the full list of members in a channel to place "hidden" users at the bottom - as SlimCat does.

This PR augments the current default sort methodology - the one that places operators and friends at the top of the list - to also place hidden and ignored users at the bottom of the list.

One hypothetical discussed in #150 was dimming hidden users similar to ignored users. To accomplish this, I have refactored the manner in which "isHidden" is consumed to be a property of characters similar to "isIgnored". I have also added a new hidden weight to the character profiler of -0.5.

As written, this will place all hidden users below "normal" users, and all ignored users below hidden users within the channel member list. However, ignoring or hiding a user does not cause them to be resorted within the list. Some other event must cause the list sort order to be updated before the hidden or ignored user is pushed to the bottom. Similarly, unignored or unhidden users will not return to their "normal" sort status until another sort event is triggered.

Some visual behavior within SlimCat already results in "eventual concurrence"; for example, bookmarking or unbookmarking a user causes their sort order to change, but does not update their color until the tab is reselected. I would provide the behavior to rerender the component myself, but I confess I'm not familiar enough with Vue to feel confident in an idiomatic implementation.

Closes #150

@FatCatClient FatCatClient added Needs testing For (new) Pull Requests that have yet to be manually tested by a maintainer Needs code review For (new) Pull Requests that still need a code review by a maintainer. labels Jun 22, 2026
@FatCatClient FatCatClient moved this to Follow Up Before Release in Horizon Releases Jun 22, 2026
@FatCatClient FatCatClient added this to the 2.4.0 milestone Jun 22, 2026
@CodingWithAnxiety

Copy link
Copy Markdown
Member

I want to do my own implementation of the "not interested" feature. I think I'll give it some time before I merge this, as I might have some feedback or want to commit to it myself

@FatCatClient

Copy link
Copy Markdown
Contributor

@CodingWithAnxiety @XavierRaine I had a few ideas for such a feature myself as well, and intended for that to sunset the 'Hide ads' feature. Something that wouldn't be a site-wide block because you might still want to talk to this person, but would save you the effort of having to find them in search results or get positive matches with them.

So yeah, let's look at this later when we're assembling 2.4 stuff. This is a good first step and I think we can add more on top of it.

@github-actions

Copy link
Copy Markdown
Contributor

Artifacts

View all

x64 arm64
linux Download Download
macos Download Download
windows Download Download

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Needs code review For (new) Pull Requests that still need a code review by a maintainer. Needs testing For (new) Pull Requests that have yet to be manually tested by a maintainer

Projects

Status: Follow Up Before Release

Development

Successfully merging this pull request may close these issues.

Feature Request: "Not Interested"

3 participants