Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Clean Up Settings #1956

Open
leon-richardt opened this issue Sep 11, 2020 · 10 comments
Open

Clean Up Settings #1956

leon-richardt opened this issue Sep 11, 2020 · 10 comments
Labels
backlog The issue is in the scope of the project but is not being worked on yet. enhancement Feature: Settings Issues related to settings and window layouts

Comments

@leon-richardt
Copy link
Collaborator

leon-richardt commented Sep 11, 2020

What should be added?

Devise a way to clean up and organize Chatterino's "Settings" section. I mean this issue to be a place to collect ideas on how to go about this. What follows is a list of initial ideas.

Basic & Advanced Section

Divide settings into a "Basic" and "Advanced" section, shoving obscure and rarely used options into the "Advanced" section. Sections could be divided by having separate tabs, for example.

For example, Chromium uses this approach:

Screenshot

Chromium settings

"Developer Options"-style Settings

(Originally proposed by @Supinic.)

In order to access these settings, users would have to check a box first. Somewhat similar to the first approach, however it hides more obscure settings behind an additional barrier.

For example, Android uses this approach:

Screenshot

Android settings

Hide obscure settings altogether

This is the most radical approach but I will mention it anyway as it might inspire some other solution.

Remove obscure options from the GUI altogether and expose them only via editing the configuration file directly. This is probably a hassle to migrate users to though. (And thus very unlikely to be implemented.)

Why should it be added?

Chatterino's settings are getting increasingly cluttered as the application grows in functionality. A search bar exists to quickly navigate to a setting but still, discoverability of potentially interesting features is hurt by having to sift through many irrelevant options.

At the same time, the average user likely only cares about a small subset of settings available to them. To demonstrate, I compiled a quick list of configuration options that I think are irrelevant to most users:

List of rarely used settings
  • "Show which channels are live in tabs"
  • "Show input when it's empty"
  • "Show message length while typing"
  • "Timestamp format"
  • The "R9K" section
  • The "Cache" section
  • The "AppData" section
  • "Restart on crash"
  • "Use libsecret/KWallet/Gnome keychain to secure passwords"
  • "Automatically close user popup when it loses focus"
  • "Enable experimental IRC support"
  • "Show unhandled IRC messages"

(This is not meant to be a complete list but rather a demonstration that there are many rarely changed settings.)

I am looking forward to other suggestions!

@fourtf
Copy link
Member

fourtf commented Sep 12, 2020

I would like to see the "Basic & Advanced Section" added to the general settings.

@zneix
Copy link
Collaborator

zneix commented Sep 12, 2020

How about also adding some kind of guide through some settings for new / less advanced users to Chatterino's wiki / docs?

@leon-richardt
Copy link
Collaborator Author

leon-richardt commented Sep 12, 2020

How about also adding some kind of guide through some settings for new / less advanced users to Chatterino's wiki / docs?

Definitely a good idea, although it is probably more appropriate to discuss this over at Chatterino/wiki. (Also cc: #184)

@gempir
Copy link
Contributor

gempir commented Sep 13, 2020

I feel like without user tracking you can't just assume options aren't used. I personally use atleast 4 of the options and I have heard of other users using some of the options.

So removing the from the GUI is bad IMO, rather hide them with Advanced or under Developer Options which I really like because most new users like streamers are overwhelmed with the options at first.

@pajlada
Copy link
Member

pajlada commented Sep 13, 2020

👍 to Basic & Advanced Section

@leon-richardt
Copy link
Collaborator Author

leon-richardt commented Sep 13, 2020

I feel like without user tracking you can't just assume options aren't used. I personally use atleast 4 of the options and I have heard of other users using some of the options.

Yeah, that will probably be the most tricky part of the change. I'm not sure what the best way to classify settings into "Basic" and "Advanced" would be (without resorting to user-tracking).

Maybe some kind of poll among users? Feels a little "invasive" to me. And answers would probably skewed towards dedicated/power users anyway. 🤔

@dnsge
Copy link
Contributor

dnsge commented Sep 14, 2020

Idea:

For message options, what if the settings menu had a message preview that updated as you changed the settings?
For example, a few messages in a ChannelView right next to settings like "Visible Badges", "Emotes", "Separate with lines", "Alternate background color", "Timestamp format", etc.

@fourtf fourtf added the backlog The issue is in the scope of the project but is not being worked on yet. label Sep 26, 2020
@Mm2PL Mm2PL added the Feature: Settings Issues related to settings and window layouts label Aug 12, 2022
@jupjohn
Copy link
Contributor

jupjohn commented Apr 25, 2024

I'd like to expand on some of the previous comments with a slightly modified layout:

  • Basic settings: anything that most people would probably care about (e.g. show badges,
  • Advanced settings: slightly less used, but probably should still be changeable in-app
  • Settings file-only: settings that are intended primarily for developers/"power users" (i.e. audio backend, chat send protocol, most of the time gates)

I don't think we have a file watcher for settings in place, but if this approach was used I'd recommend adding one and potentially a popup to state that settings have changed.

@Mm2PL
Copy link
Collaborator

Mm2PL commented Apr 25, 2024

Settings file-only: settings that are intended primarily for developers/"power users" (i.e. audio backend, chat send protocol, most of the time gates)

I'm highly against having more settings file only settings. Editing them is a nightmare. IMO only settings that should get a treatment like that are time gates for which we have helix and no other option. And even these have problems: they have had GUI controls, we probably should expect users to change them, taking away that GUI makes it way harder to reset them or debug behaviour caused by them.

@jupjohn
Copy link
Contributor

jupjohn commented Apr 27, 2024

@Mm2PL that's a fair point around removing controls that users may "depend on;" I guess I'm only talking about super niche settings that regular users wouldn't want to change (which is subjective, eh.)

With neri's tinegate cleanup I can only see a few items that I'd class as meaningless to the average user. Perhaps a "developers" subsection of advanced would suffice.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
backlog The issue is in the scope of the project but is not being worked on yet. enhancement Feature: Settings Issues related to settings and window layouts
Projects
None yet
Development

No branches or pull requests

8 participants